You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Oct 24, 2022. It is now read-only.
Current implementation is using class name (CipherPreferencesStorage) as part of shared preferences name (holding the encrypted data). This won't work if Proguard/obfuscation is used in project; classname of CipherPreferencesStorage will be scrambled by obfuscator (unless exclusion rule is added), and shared prefs name could vary per build - resulting in loss of data between builds.
Build app without obfuscation, data is available via com.github.leonardoxh.keystore.store.CipherPreferencesStorage_security_storage.xml shared pref
Recompile same app with obfucation, data is available via ab.c.d_security_storage.xml shared pref
Modify deps, recompile same app with obfucation, data is available via ab.c.e.d_security_storage.xml shared pref
= implementation should not use classname in shared pref name as it will not remain consistant between builds if obfuscation is used
keystore-ultimate/keystore/src/main/java/com/github/leonardoxh/keystore/store/CipherPreferencesStorage.java
Line 24 in e809fd7
Current implementation is using class name (CipherPreferencesStorage) as part of shared preferences name (holding the encrypted data). This won't work if Proguard/obfuscation is used in project; classname of CipherPreferencesStorage will be scrambled by obfuscator (unless exclusion rule is added), and shared prefs name could vary per build - resulting in loss of data between builds.
com.github.leonardoxh.keystore.store.CipherPreferencesStorage_security_storage.xmlshared prefab.c.d_security_storage.xmlshared prefab.c.e.d_security_storage.xmlshared pref= implementation should not use classname in shared pref name as it will not remain consistant between builds if obfuscation is used