Native Encryptor for Flutter
A powerful plugin for secure data handling in your Flutter apps.
Key Features
- Native Code Integration: Ensures top-tier security and performance.
- Random Salt & IV: Adds an extra layer of protection.
- Passphrase-Based Encryption: Customizable and flexible security.
- User-Friendly API:** Simplifies integration into your Flutter app.
- Cross-Platform Compatibility: Works seamlessly on both iOS and Android.
Screenshots
Installation
-
Add to
pubspec.yaml
:YAML
dependencies:
native_encryptor: <latest_version>
- Fetch the plugin:
Bash
flutter pub get
- Import in your Dart code:
Dart
import 'package:native_encryptor/native_encryptor.dart';
Basic Usage
Dart
import 'package:flutter/material.dart';
import 'package:native_encryptor/native_encryptor.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatefulWidget {
const MyApp({super.key});
@override
State<MyApp> createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
final _nativeEncryptorPlugin = NativeEncryptor();
final TextEditingController _controller = TextEditingController(text: "Secret Message");
String? encryptedData;
String? decryptedData;
final String passphrase = "YourSecretPassphrase";
Future<void> encrypt() async {
encryptedData = await _nativeEncryptorPlugin.encrypt(
passPhrase: passphrase,
contentToEncrypt: _controller.text,
);
setState(() {});
}
Future<void> decrypt() async {
decryptedData = await _nativeEncryptorPlugin.decrypt(
passPhrase: passphrase,
concatenatedCipherText: encryptedData!,
);
setState(() {});
}
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(title: const Text('Native Encryptor')),
body: Padding(
padding: const EdgeInsets.all(16.0),
child: Column(
children: [
TextField(
controller: _controller,
decoration: const InputDecoration(labelText: 'Enter text'),
),
ElevatedButton(onPressed: encrypt, child: const Text('Encrypt')),
if (encryptedData != null)
Text('Encrypted: $encryptedData'),
ElevatedButton(onPressed: decrypt, child: const Text('Decrypt')),
if (decryptedData != null)
Text('Decrypted: $decryptedData'),
],
),
),
),
);
}
}
API Reference
encrypt({required String passPhrase, required String contentToEncrypt})
Encrypts the given content with the provided passphrase. Returns: The encrypted data as a string.decrypt({required String passPhrase, required String concatenatedCipherText})
Decrypts the given encrypted data with the provided passphrase. Returns: The original decrypted content.getPlatformVersion()
Retrieves the current platform version for debugging purposes.
License
This plugin is licensed under the MIT License.
Contributing
We welcome contributions! Please feel free to open issues or submit pull requests.
About Me
Hi there! I'm Subhash (you can also call me SubhashDev11). I'm a passionate developer with a strong interest in mention your area of expertise - web development, mobile development, data science etc.
. I'm constantly striving to learn new technologies and build innovative solutions.
Connect with me:
- GitHub: https://github.com/subhashDev11
- LinkedIn: https://www.linkedin.com/in/subhashcs/
- Medium: https://medium.com/@subhashchandrashukla
Enhance your Flutter app's security with Native Encryptor!