๐Ÿ” flutter_native_secure_storage

A lightweight, secure Flutter plugin for storing sensitive data using
Android Keystore and iOS Keychain โ€” with no Dart-side encryption.

Built for production apps, SDKs, and enterprise use cases.


โœจ Features

โœ… Android Keystore (AES-256 + GCM)
โœ… iOS Keychain (ThisDeviceOnly)
โœ… Hardware-backed security when available
โœ… App-bound secrets (auto wiped on uninstall)
โœ… Zero configuration
โœ… Minimal & clean API
โœ… No third-party native dependencies


๐Ÿšซ Why NOT flutter_secure_storage?

Feature flutter_secure_storage flutter_native_secure_storage
Native-only crypto โŒ โœ…
Hardware-backed keys โŒ โœ…
Transparent behavior โŒ โœ…
Enterprise friendly โš ๏ธ โœ…
Minimal API โŒ โœ…

๐Ÿ“ฆ Installation

Add to pubspec.yaml:

dependencies:
  flutter_native_secure_storage: ^1.0.0

Then run:

flutter pub get

๐Ÿš€ Usage

Write Secure Value

await SecureStorage.write('auth_token', 'abc123');

Read Secure Value

final token = await SecureStorage.read('auth_token');

Delete a Key

await SecureStorage.delete('auth_token');

Clear All Secure Data

await SecureStorage.clear();

๐Ÿง  How It Works

Android

  • AES key stored in Android Keystore
  • Encryption: AES/GCM/NoPadding
  • Encrypted values stored in SharedPreferences

iOS

  • Secrets stored in Keychain
  • Access: AfterFirstUnlockThisDeviceOnly
  • Automatically removed on uninstall

๐Ÿ“Œ No encryption logic exists in Dart.


๐Ÿ” Security Guarantees

โœ” Secrets never leave the device
โœ” No cloud or iCloud sync
โœ” Protected from backup leaks
โœ” Resistant to reverse-engineering
โœ” Safe for banking & enterprise apps


๐Ÿงช Platform Support

  • Android 8+
  • iOS 13+

๐Ÿ›ฃ Roadmap

  • ๐Ÿ”’ Biometric protection (FaceID / Fingerprint)
  • ๐Ÿ”„ Key rotation
  • ๐Ÿ›ก Root / Jailbreak detection
  • ๐Ÿ“ Encrypted file storage

๐Ÿ“„ License

MIT License