- Notifications
You must be signed in to change notification settings - Fork860
Replace recommended storage engine for secure storage on react-native#1465
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
base:master
Are you sure you want to change the base?
Uh oh!
There was an error while loading.Please reload this page.
Conversation
react-native-encrypted-storage instead of redux-persist-sensitive-storage: the latter does not store data encrypted on android!
losh11 commentedMar 12, 2024
FYI react-native-encrypted-storage has been deprecated. It hasn't been maintained in over a year, and has been archived by the repo creators. |
I can't find any notes of it being deprecated or archived? However, this repo here seems pretty abandoned too, so... 🤷 |
losh11 commentedMar 13, 2024
If you open up the encrypted-storage repo ongithub, you can see there's a banner on the top that says that the repo has been archived. |
evanwalsh commentedOct 22, 2024
FWIW, this is the thin wrapper around import{getGenericPassword,resetGenericPassword,setGenericPassword,}from'react-native-keychain'constKeychainPersistStore={asyncgetItem(key:string):Promise<string|undefined>{constvalue=awaitgetGenericPassword({service:key})if(value){returnvalue.password}},asyncsetItem(key:string,value:string):Promise<void>{awaitsetGenericPassword('data',value,{service:key})},asyncremoveItem(key:string):Promise<void>{awaitresetGenericPassword({service:key})},} |
The previously recommended
redux-persist-sensitive-storageonly encrypts the data on iOS; on Android it is stored in clear text and readable via the file browser. There exists an alpha-Branch which solves the problem, but this is in alpha years now and not updated anymore. Also, this branch fails on Android 9 and older.We switched toreact-native-encrypted-storage in all our projects; it solves the problems mentioned above and works fine.
This would be a better suggestion than the currently suggested storage library, which has a high risk for security breaches for Android users.