Jakub Sokołowski
9b0d9b2831
gradle: replace deprecated compile with implementation
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-05-03 19:20:23 +02:00
Igor Mandrigin
43e5512cab
Minimal security guarantees for react-native-keychain ( #6 )
...
* Implement security level guarantees for Android.
Supported security levels:
- ANY
- SECURE_SOFTWARE
- SECURE_HARDWARE (TEE or SE guarantees).
(1) Add `getSecurityLevel()` API that returns which security level is
supported on this Android version and the specific device.
(2) For APIs that store credentials, an additional optional parameter was added
that fails storing the credentials if the security level is not what is
expected.
```
// Store the credentials.
// Will fail if Keychain can't guarantee at least SECURE_HARDWARE level of encryption key.
await Keychain.setGenericPassword(username, password, Keychain.SECURITY_LEVEL.SECURE_HARDWARE);
```
(3) StongBox support on Android 9+ (and supported devices [Pixel 3]).
Co-Authored-By: mandrigin <mandrigin@users.noreply.github.com>
2018-12-19 09:11:10 +01:00
Vojtech Novak
ee959ba42e
improve consistency and docs ( #114 )
...
* Update KeychainModule.java
* Update README.md
2018-03-13 16:24:58 +01:00
shofman
61b6626f34
Update DeviceAvailability to work with Android < 6 ( #109 )
...
Validate that the build version supports FingerprintManager before using it. Return false when not supported
2018-02-28 14:14:36 +01:00
Joel Arvidsson
c3990b0c09
Add Android support for getSupportedBiometryType
2018-02-27 16:20:37 +01:00
Vojtech Novak
610ad80134
do not specify RN version in gradle
...
previously this would cause gradle to fetch old rn version even though it wasn't needed
2017-09-06 15:34:50 +02:00
Andrew Jack
fbd9fb996a
Support React Native 0.47 ( #80 )
2017-08-24 23:10:17 +02:00
Pelle Stenild Coltau
ef9b5256ef
Moving null checks from CipherStorageFacebookConceal and PrefsStorage to KeychainModule and introducing checks for empty service in CipherStorageKeystoreAESCBC.
2017-06-29 09:49:35 +02:00
Pelle Stenild Coltau
71f567d65a
Renaming PrefsStorage.resetPassword() to .removeEntry()
2017-06-28 15:40:56 +02:00
Pelle Stenild Coltau
e07e571e63
Upgrading to Facebook Conceal 1.1.3.
2017-06-26 10:18:39 +02:00
Pelle Stenild Coltau
a45f1351c2
Refactoring based on review: CipherStorage.getAPILevel() renamed to getMinSupportedApiLevel(). Fixed issue with no handling of null service in PrefsStorage. Throwing of CryptoFailedException moved to getCipherStorageForCurrentAPILevel(). Removed unused constructor.
2017-06-26 10:06:46 +02:00
Pelle Stenild Coltau
1c0552f88b
Fixed issue with missing cipher storage name. Also did some small refactorings and adding to comments.
2017-06-18 12:55:48 +04:00
Pelle Stenild Coltau
32c5caff39
Refactored implementation to support various encryption algorithms and key storage depending on API level.
2017-06-18 11:38:00 +04:00
Pelle Stenild Coltau
808a7000da
Added support for API levels lower than 23 using Facebook’s conceal.
2017-06-15 16:20:33 +04:00
Pelle Stenild Coltau
025aab835a
Refactored methods regarding the SharedPreferences and moved them to a utility class.
2017-06-15 10:09:59 +04:00
Pelle Stenild Coltau
544b92f262
Addressed review comments: Fixed copy-paste error, fixed migration from Facebook conceal and removed unused variable.
2017-06-15 09:01:09 +04:00
Pelle Stenild Coltau
10463e693d
Replaced RSA implementation with AES-CBC (256 bit) encryption.
2017-06-04 13:01:15 +04:00
Pelle Stenild Coltau
25c1334d0e
Fixing issue where legacy values stored with a NULL service would not be migrated.
...
Signed-off-by: Pelle Stenild Coltau <pcoltau@gmail.com>
2017-05-21 09:57:53 +04:00
Pelle Stenild Coltau
a097053fe1
Splitting resetGenericPasswordForOptionsWithDelimiter() into two different methods: resetGenericPasswordForOptions() and resetGenericPasswordForOptionsLegacy(), in order to make it easier to remove legacy code.
...
Signed-off-by: Pelle Stenild Coltau <pcoltau@gmail.com>
2017-05-18 14:04:58 +04:00
Pelle Stenild Coltau
145a0983cb
Changed KeychainModule to use Android’s KeyStore for creating and storing encryption keys. Also added functionality to automatically migrate existing encrypted data from Facebook’s conceal to encryption using KeyStore keys.
...
Signed-off-by: Pelle Stenild Coltau <pcoltau@gmail.com>
2017-05-18 10:40:14 +04:00
Vojtech Novak
33d1816272
[android] return false instead of exception when entry not present ( #57 )
...
* Update KeychainModule.java
this will return false when a keychain entry is not present, so it'll behave same as on ios
* do not throw on entry reset
2017-03-17 21:00:32 +01:00
Joel Arvidsson
6eb0a35037
Refactor accessible argument into options
2017-02-10 10:58:39 +01:00
Alexander Jarvis
1c4562a421
Add accessible argument for iOS ( #51 )
...
* Fix accessible
* Make accessible configurable
* Fix semicolon
* Remove unused function
2017-02-10 09:34:58 +01:00
Joel Arvidsson
eb9093aed7
Refactors native methods to use promises and deprecate callback argument
2017-01-10 23:00:51 +01:00
Vojtech Novak
732b765c7a
minor refactoring
2016-12-30 10:00:33 +01:00
Vojtech Novak
c19efe56c5
remove a log message, inform if crypto not available
2016-12-16 13:32:54 +01:00
Vojtech Novak
7e3b8642bd
Update KeychainModule.java
2016-12-11 16:30:50 +01:00
Vojtech Novak
0eadf5061e
removed a message that is too annoying in the log
2016-08-26 13:48:57 +02:00
Vojtech Novak
6bd55d7946
removed a message that is too annoying in the log
2016-08-26 13:45:46 +02:00
Andy Hartwell
6b9eabae01
Use Charset instead of StandardCharset for UTF-8 to support sdk < 19
2016-06-17 11:08:40 -07:00
Vojtech Novak
040b2c2128
Fixes callback on saving and resetting the password on android ( #24 )
...
* invoke callback after saving
* invoke callback after pw reset
2016-06-02 22:35:46 +02:00
Vojtech Novak
d05b20c904
Added Android support w/ Facebook Conceal ( #19 )
...
Updates to Android storage
use password
added android support
readme update
implemented internet credentials on android
Merge Android and iOS index into 1 file.
Update flow version
Make error handling more consistent between Android and iOS
removing unneccessary binaries
2016-06-01 00:25:51 +02:00