better_local_auth 0.0.6 copy "better_local_auth: ^0.0.6" to clipboard
better_local_auth: ^0.0.6 copied to clipboard

Enhanced local authentication plugin for biometrics with required cryptoObject support for Android security compliance.

Changelog #

0.0.6 #

Standard API Compatibility Restored #

  • Android Compatibility Align: Restored full contract compatibility with the official local_auth package on Android. Removed custom mappings in BetterLocalAuth.java, returning raw "weak" and "strong" biometric capabilities directly over the platform channel.
  • Dart Platform Translation: Updated default_method_channel_platform.dart to support translating 'weak' and 'strong' types back to BiometricType.weak and BiometricType.strong in Dart. This perfectly restores the official package behavior and prevents custom app checks (that rely on the original API contract) from breaking.

0.0.5 #

Security & Architecture Upgrades #

  • Android Refactor: Replaced complex reflection for setting the negative button in AuthenticationHelper.java with a clean direct call to the native API using standard DialogInterface.OnClickListener lambdas and @RequiresApi annotations.
  • Android Bugfix: Fixed a crucial mapping bug in BetterLocalAuth.java where "strong" biometrics (like secure fingerprints) were mapped to "face" and "weak" biometrics were mapped to "fingerprint". Strong fingerprint devices now correctly return BiometricType.fingerprint and show the correct fingerprint icons in the Dart UI.
  • iOS Secure Enclave Integration: Upgraded KeychainHelper.storeInKeychain(...) in BetterLocalAuth.swift to enforce hardware-protected SecAccessControl with .biometryAny for high-security ThisDeviceOnly keychain profiles. This protects against client-side dynamic attacks (like Frida hooks) by locking the secure token directly inside the Apple Secure Enclave.
  • Hardened Cryptography: Removed insecure, software-only in-memory RSA keypair fallbacks in AuthenticationHelper.java. The package now safely fails-fast if hardware-backed TEE key generation fails, removing potential bypass backdoors.

0.0.4 #

  • Bugfix release

0.0.3 #

  • Bugfix release

0.0.2 #

  • Bugfix release

0.0.1 #

Initial release of better_local_auth package.

Features #

  • Forked from local_auth-3.0.1 with enhanced security features
  • Required cryptoObject parameter for Android authentication
  • Required keychainOptions parameter for iOS authentication
  • Consolidated platform implementations into single package
  • Removed support for Windows, Web, Linux, and macOS platforms
  • Added BetterLocalAuthentication class with enhanced API
  • Added migration helper utilities
  • Comprehensive documentation and migration guide

Breaking Changes from local_auth-3.0.1 #

  1. Android: cryptoObject parameter is now required for all authenticate() calls
  2. iOS: keychainOptions parameter is now required for all authenticate() calls
  3. Platform Support: Windows, Web, Linux, and macOS platforms are no longer supported
  4. AuthenticationOptions: Now requires cryptoObject and keychainOptions parameters

New Features #

  1. BetterLocalAuthentication class with factory methods for crypto objects
  2. authenticateEnhanced() method returning AuthResult with detailed information
  3. MigrationHelper utilities for analyzing and migrating from local_auth
  4. Enhanced error types for crypto and keychain operations
  5. Comprehensive example application

Security Improvements #

  1. Android authentication now requires cryptographic operations
  2. iOS authentication integrates with Keychain for secure storage
  3. Prevents security warnings from static analysis tools like Ostorlab
  4. Hardware-backed security on both platforms

Documentation #

  • Comprehensive README with usage examples
  • API reference documentation
  • Migration guide from local_auth
  • Troubleshooting guide
  • Example application with all features demonstrated
1
likes
140
points
65
downloads

Documentation

API reference

Publisher

verified publisherjhonaiquel.com

Weekly Downloads

Enhanced local authentication plugin for biometrics with required cryptoObject support for Android security compliance.

Homepage

Topics

#authentication #biometrics #local-auth #security #crypto

License

BSD-3-Clause (license)

Dependencies

flutter, plugin_platform_interface

More

Packages that depend on better_local_auth

Packages that implement better_local_auth