flutter_secure_storage icon indicating copy to clipboard operation
flutter_secure_storage copied to clipboard

StorageCipher initialization failed cause by AndroidKeyStore not found

Open Dabbit-Chan opened this issue 1 year ago • 2 comments

E/SecureStorageAndroid(17759): StorageCipher initialization failed
E/SecureStorageAndroid(17759): java.security.KeyStoreException: AndroidKeyStore not found
E/SecureStorageAndroid(17759): 	at java.security.KeyStore.getInstance(KeyStore.java:904)
E/SecureStorageAndroid(17759): 	at com.it_nomads.fluttersecurestorage.ciphers.RSACipher18Implementation.createRSAKeysIfNeeded(RSACipher18Implementation.java:107)
E/SecureStorageAndroid(17759): 	at com.it_nomads.fluttersecurestorage.ciphers.RSACipher18Implementation.<init>(RSACipher18Implementation.java:36)
E/SecureStorageAndroid(17759): 	at com.it_nomads.fluttersecurestorage.ciphers.KeyCipherAlgorithm$$ExternalSyntheticLambda0.apply(Unknown Source:2)
E/SecureStorageAndroid(17759): 	at com.it_nomads.fluttersecurestorage.ciphers.StorageCipherFactory.getCurrentStorageCipher(StorageCipherFactory.java:82)
E/SecureStorageAndroid(17759): 	at com.it_nomads.fluttersecurestorage.FlutterSecureStorage.initStorageCipher(FlutterSecureStorage.java:181)
E/SecureStorageAndroid(17759): 	at com.it_nomads.fluttersecurestorage.FlutterSecureStorage.ensureInitialized(FlutterSecureStorage.java:154)
E/SecureStorageAndroid(17759): 	at com.it_nomads.fluttersecurestorage.FlutterSecureStorage.write(FlutterSecureStorage.java:102)
E/SecureStorageAndroid(17759): 	at com.it_nomads.fluttersecurestorage.FlutterSecureStoragePlugin$MethodRunner.run(FlutterSecureStoragePlugin.java:139)
E/SecureStorageAndroid(17759): 	at android.os.Handler.handleCallback(Handler.java:958)
E/SecureStorageAndroid(17759): 	at android.os.Handler.dispatchMessage(Handler.java:99)
E/SecureStorageAndroid(17759): 	at android.os.Looper.loopOnce(Looper.java:224)
E/SecureStorageAndroid(17759): 	at android.os.Looper.loop(Looper.java:318)
E/SecureStorageAndroid(17759): 	at android.os.HandlerThread.run(HandlerThread.java:67)
E/SecureStorageAndroid(17759): Caused by: java.security.NoSuchAlgorithmException: AndroidKeyStore KeyStore not available
E/SecureStorageAndroid(17759): 	at sun.security.jca.GetInstance.getInstance(GetInstance.java:159)
E/SecureStorageAndroid(17759): 	at java.security.Security.getImpl(Security.java:628)
E/SecureStorageAndroid(17759): 	at java.security.KeyStore.getInstance(KeyStore.java:901)
E/SecureStorageAndroid(17759): 	... 13 more
E/flutter (17759): [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: PlatformException(Exception encountered, write, java.lang.NullPointerException: Attempt to invoke interface method 'byte[] com.it_nomads.fluttersecurestorage.ciphers.StorageCipher.encrypt(byte[])' on a null object reference
E/flutter (17759): 	at com.it_nomads.fluttersecurestorage.FlutterSecureStorage.write(FlutterSecureStorage.java:109)
E/flutter (17759): 	at com.it_nomads.fluttersecurestorage.FlutterSecureStoragePlugin$MethodRunner.run(FlutterSecureStoragePlugin.java:139)
E/flutter (17759): 	at android.os.Handler.handleCallback(Handler.java:958)
E/flutter (17759): 	at android.os.Handler.dispatchMessage(Handler.java:99)
E/flutter (17759): 	at android.os.Looper.loopOnce(Looper.java:224)
E/flutter (17759): 	at android.os.Looper.loop(Looper.java:318)
E/flutter (17759): 	at android.os.HandlerThread.run(HandlerThread.java:67)
E/flutter (17759): , null)
E/flutter (17759): #0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:651:7)
E/flutter (17759): #1      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:334:18)
E/flutter (17759): <asynchronous suspension>
E/flutter (17759): #2      SpUtil._set (package:***/utils/sp_util.dart:20:12)
E/flutter (17759): <asynchronous suspension>
E/flutter (17759): #3      SpUtil.setBool (package:***/utils/sp_util.dart:68:12)
E/flutter (17759): <asynchronous suspension>
E/flutter (17759): #4      _TutorialPageState.build.<anonymous closure> (package:***/module/tutorial/tutorial_page.dart:23:13)
E/flutter (17759): <asynchronous suspension>
E/flutter (17759): 

Version:

flutter_secure_storage: 9.0.0
flutter: 3.19.6
dart: 3.3.4
OS: Xiaomi HyperOS 1.0.31.0.UNCCNXM base on Android14
Phone: xiaomi14

Dabbit-Chan avatar May 15 '24 07:05 Dabbit-Chan

same problem

Jayden666z avatar May 22 '24 06:05 Jayden666z

E/SecureStorageAndroid(17759): StorageCipher initialization failed
E/SecureStorageAndroid(17759): java.security.KeyStoreException: AndroidKeyStore not found
E/SecureStorageAndroid(17759): 	at java.security.KeyStore.getInstance(KeyStore.java:904)
E/SecureStorageAndroid(17759): 	at com.it_nomads.fluttersecurestorage.ciphers.RSACipher18Implementation.createRSAKeysIfNeeded(RSACipher18Implementation.java:107)
E/SecureStorageAndroid(17759): 	at com.it_nomads.fluttersecurestorage.ciphers.RSACipher18Implementation.<init>(RSACipher18Implementation.java:36)
E/SecureStorageAndroid(17759): 	at com.it_nomads.fluttersecurestorage.ciphers.KeyCipherAlgorithm$$ExternalSyntheticLambda0.apply(Unknown Source:2)
E/SecureStorageAndroid(17759): 	at com.it_nomads.fluttersecurestorage.ciphers.StorageCipherFactory.getCurrentStorageCipher(StorageCipherFactory.java:82)
E/SecureStorageAndroid(17759): 	at com.it_nomads.fluttersecurestorage.FlutterSecureStorage.initStorageCipher(FlutterSecureStorage.java:181)
E/SecureStorageAndroid(17759): 	at com.it_nomads.fluttersecurestorage.FlutterSecureStorage.ensureInitialized(FlutterSecureStorage.java:154)
E/SecureStorageAndroid(17759): 	at com.it_nomads.fluttersecurestorage.FlutterSecureStorage.write(FlutterSecureStorage.java:102)
E/SecureStorageAndroid(17759): 	at com.it_nomads.fluttersecurestorage.FlutterSecureStoragePlugin$MethodRunner.run(FlutterSecureStoragePlugin.java:139)
E/SecureStorageAndroid(17759): 	at android.os.Handler.handleCallback(Handler.java:958)
E/SecureStorageAndroid(17759): 	at android.os.Handler.dispatchMessage(Handler.java:99)
E/SecureStorageAndroid(17759): 	at android.os.Looper.loopOnce(Looper.java:224)
E/SecureStorageAndroid(17759): 	at android.os.Looper.loop(Looper.java:318)
E/SecureStorageAndroid(17759): 	at android.os.HandlerThread.run(HandlerThread.java:67)
E/SecureStorageAndroid(17759): Caused by: java.security.NoSuchAlgorithmException: AndroidKeyStore KeyStore not available
E/SecureStorageAndroid(17759): 	at sun.security.jca.GetInstance.getInstance(GetInstance.java:159)
E/SecureStorageAndroid(17759): 	at java.security.Security.getImpl(Security.java:628)
E/SecureStorageAndroid(17759): 	at java.security.KeyStore.getInstance(KeyStore.java:901)
E/SecureStorageAndroid(17759): 	... 13 more
E/flutter (17759): [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: PlatformException(Exception encountered, write, java.lang.NullPointerException: Attempt to invoke interface method 'byte[] com.it_nomads.fluttersecurestorage.ciphers.StorageCipher.encrypt(byte[])' on a null object reference
E/flutter (17759): 	at com.it_nomads.fluttersecurestorage.FlutterSecureStorage.write(FlutterSecureStorage.java:109)
E/flutter (17759): 	at com.it_nomads.fluttersecurestorage.FlutterSecureStoragePlugin$MethodRunner.run(FlutterSecureStoragePlugin.java:139)
E/flutter (17759): 	at android.os.Handler.handleCallback(Handler.java:958)
E/flutter (17759): 	at android.os.Handler.dispatchMessage(Handler.java:99)
E/flutter (17759): 	at android.os.Looper.loopOnce(Looper.java:224)
E/flutter (17759): 	at android.os.Looper.loop(Looper.java:318)
E/flutter (17759): 	at android.os.HandlerThread.run(HandlerThread.java:67)
E/flutter (17759): , null)
E/flutter (17759): #0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:651:7)
E/flutter (17759): #1      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:334:18)
E/flutter (17759): <asynchronous suspension>
E/flutter (17759): #2      SpUtil._set (package:***/utils/sp_util.dart:20:12)
E/flutter (17759): <asynchronous suspension>
E/flutter (17759): #3      SpUtil.setBool (package:***/utils/sp_util.dart:68:12)
E/flutter (17759): <asynchronous suspension>
E/flutter (17759): #4      _TutorialPageState.build.<anonymous closure> (package:***/module/tutorial/tutorial_page.dart:23:13)
E/flutter (17759): <asynchronous suspension>
E/flutter (17759): 

Version:

flutter_secure_storage: 9.0.0
flutter: 3.19.6
dart: 3.3.4
OS: Xiaomi HyperOS 1.0.31.0.UNCCNXM base on Android14
Phone: xiaomi14

upgrade your application versionCode and try

jeyolive avatar Jun 19 '24 08:06 jeyolive

E/SecureStorageAndroid(17759): StorageCipher initialization failed
E/SecureStorageAndroid(17759): java.security.KeyStoreException: AndroidKeyStore not found
E/SecureStorageAndroid(17759): 	at java.security.KeyStore.getInstance(KeyStore.java:904)
E/SecureStorageAndroid(17759): 	at com.it_nomads.fluttersecurestorage.ciphers.RSACipher18Implementation.createRSAKeysIfNeeded(RSACipher18Implementation.java:107)
E/SecureStorageAndroid(17759): 	at com.it_nomads.fluttersecurestorage.ciphers.RSACipher18Implementation.<init>(RSACipher18Implementation.java:36)
E/SecureStorageAndroid(17759): 	at com.it_nomads.fluttersecurestorage.ciphers.KeyCipherAlgorithm$$ExternalSyntheticLambda0.apply(Unknown Source:2)
E/SecureStorageAndroid(17759): 	at com.it_nomads.fluttersecurestorage.ciphers.StorageCipherFactory.getCurrentStorageCipher(StorageCipherFactory.java:82)
E/SecureStorageAndroid(17759): 	at com.it_nomads.fluttersecurestorage.FlutterSecureStorage.initStorageCipher(FlutterSecureStorage.java:181)
E/SecureStorageAndroid(17759): 	at com.it_nomads.fluttersecurestorage.FlutterSecureStorage.ensureInitialized(FlutterSecureStorage.java:154)
E/SecureStorageAndroid(17759): 	at com.it_nomads.fluttersecurestorage.FlutterSecureStorage.write(FlutterSecureStorage.java:102)
E/SecureStorageAndroid(17759): 	at com.it_nomads.fluttersecurestorage.FlutterSecureStoragePlugin$MethodRunner.run(FlutterSecureStoragePlugin.java:139)
E/SecureStorageAndroid(17759): 	at android.os.Handler.handleCallback(Handler.java:958)
E/SecureStorageAndroid(17759): 	at android.os.Handler.dispatchMessage(Handler.java:99)
E/SecureStorageAndroid(17759): 	at android.os.Looper.loopOnce(Looper.java:224)
E/SecureStorageAndroid(17759): 	at android.os.Looper.loop(Looper.java:318)
E/SecureStorageAndroid(17759): 	at android.os.HandlerThread.run(HandlerThread.java:67)
E/SecureStorageAndroid(17759): Caused by: java.security.NoSuchAlgorithmException: AndroidKeyStore KeyStore not available
E/SecureStorageAndroid(17759): 	at sun.security.jca.GetInstance.getInstance(GetInstance.java:159)
E/SecureStorageAndroid(17759): 	at java.security.Security.getImpl(Security.java:628)
E/SecureStorageAndroid(17759): 	at java.security.KeyStore.getInstance(KeyStore.java:901)
E/SecureStorageAndroid(17759): 	... 13 more
E/flutter (17759): [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: PlatformException(Exception encountered, write, java.lang.NullPointerException: Attempt to invoke interface method 'byte[] com.it_nomads.fluttersecurestorage.ciphers.StorageCipher.encrypt(byte[])' on a null object reference
E/flutter (17759): 	at com.it_nomads.fluttersecurestorage.FlutterSecureStorage.write(FlutterSecureStorage.java:109)
E/flutter (17759): 	at com.it_nomads.fluttersecurestorage.FlutterSecureStoragePlugin$MethodRunner.run(FlutterSecureStoragePlugin.java:139)
E/flutter (17759): 	at android.os.Handler.handleCallback(Handler.java:958)
E/flutter (17759): 	at android.os.Handler.dispatchMessage(Handler.java:99)
E/flutter (17759): 	at android.os.Looper.loopOnce(Looper.java:224)
E/flutter (17759): 	at android.os.Looper.loop(Looper.java:318)
E/flutter (17759): 	at android.os.HandlerThread.run(HandlerThread.java:67)
E/flutter (17759): , null)
E/flutter (17759): #0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:651:7)
E/flutter (17759): #1      MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:334:18)
E/flutter (17759): <asynchronous suspension>
E/flutter (17759): #2      SpUtil._set (package:***/utils/sp_util.dart:20:12)
E/flutter (17759): <asynchronous suspension>
E/flutter (17759): #3      SpUtil.setBool (package:***/utils/sp_util.dart:68:12)
E/flutter (17759): <asynchronous suspension>
E/flutter (17759): #4      _TutorialPageState.build.<anonymous closure> (package:***/module/tutorial/tutorial_page.dart:23:13)
E/flutter (17759): <asynchronous suspension>
E/flutter (17759): 

Version:

flutter_secure_storage: 9.0.0
flutter: 3.19.6
dart: 3.3.4
OS: Xiaomi HyperOS 1.0.31.0.UNCCNXM base on Android14
Phone: xiaomi14

upgrade your application versionCode and try

What do you mean by "application versionCode"? Flutter version or flutter_secure_storage version?

Dabbit-Chan avatar Jul 25 '24 06:07 Dabbit-Chan

Hi, can you please use the latest version 9.2.2 of this package, and check if the issue still persists.

juliansteenbakker avatar Aug 13 '24 20:08 juliansteenbakker

Hi, can you please use the latest version 9.2.2 of this package, and check if the issue still persists.

I am now using 9.2.2, but the issue still persists.

Dabbit-Chan avatar Aug 14 '24 01:08 Dabbit-Chan

same problem

SeniorZhai avatar Oct 22 '24 05:10 SeniorZhai