@onekeyfe/react-native-aes-crypto 3.0.8 → 3.0.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -148,7 +148,7 @@ class AesCryptoModule(reactContext: ReactApplicationContext) :
148
148
 
149
149
  private fun shaX(data: String, algorithm: String): String {
150
150
  val md = MessageDigest.getInstance(algorithm)
151
- md.update(data.toByteArray())
151
+ md.update(Hex.decode(data))
152
152
  return bytesToHex(md.digest())
153
153
  }
154
154
 
@@ -160,13 +160,13 @@ class AesCryptoModule(reactContext: ReactApplicationContext) :
160
160
  else -> SHA512Digest()
161
161
  }
162
162
  val gen = PKCS5S2ParametersGenerator(algorithmDigest)
163
- gen.init(pwd.toByteArray(Charsets.UTF_8), salt.toByteArray(Charsets.UTF_8), cost)
163
+ gen.init(Hex.decode(pwd), Hex.decode(salt), cost)
164
164
  val key = (gen.generateDerivedParameters(length) as KeyParameter).key
165
165
  return bytesToHex(key)
166
166
  }
167
167
 
168
168
  private fun hmacX(text: String, key: String, algorithm: String): String {
169
- val contentData = text.toByteArray(Charsets.UTF_8)
169
+ val contentData = Hex.decode(text)
170
170
  val akHexData = Hex.decode(key)
171
171
  val mac = Mac.getInstance(algorithm)
172
172
  val secretKey = SecretKeySpec(akHexData, algorithm)
@@ -182,8 +182,8 @@ class AesCryptoModule(reactContext: ReactApplicationContext) :
182
182
  val cipher = Cipher.getInstance(algorithm)
183
183
  val ivSpec = if (hexIv == null || hexIv.isEmpty()) emptyIvSpec else IvParameterSpec(Hex.decode(hexIv))
184
184
  cipher.init(Cipher.ENCRYPT_MODE, secretKey, ivSpec)
185
- val encrypted = cipher.doFinal(text.toByteArray(Charsets.UTF_8))
186
- return Base64.encodeToString(encrypted, Base64.NO_WRAP)
185
+ val encrypted = cipher.doFinal(Hex.decode(text))
186
+ return bytesToHex(encrypted)
187
187
  }
188
188
 
189
189
  private fun decryptImpl(ciphertext: String, hexKey: String, hexIv: String?, algorithm: String): String? {
@@ -194,7 +194,7 @@ class AesCryptoModule(reactContext: ReactApplicationContext) :
194
194
  val cipher = Cipher.getInstance(algorithm)
195
195
  val ivSpec = if (hexIv == null || hexIv.isEmpty()) emptyIvSpec else IvParameterSpec(Hex.decode(hexIv))
196
196
  cipher.init(Cipher.DECRYPT_MODE, secretKey, ivSpec)
197
- val decrypted = cipher.doFinal(Base64.decode(ciphertext, Base64.NO_WRAP))
198
- return String(decrypted, Charsets.UTF_8)
197
+ val decrypted = cipher.doFinal(Hex.decode(ciphertext))
198
+ return bytesToHex(decrypted)
199
199
  }
200
200
  }
package/ios/AesCrypto.mm CHANGED
@@ -234,11 +234,11 @@ static NSData *aesCTR(NSString *operation, NSData *inputData, NSString *key, NSS
234
234
 
235
235
  int status = CCKeyDerivationPBKDF(
236
236
  kCCPBKDF2,
237
- passwordData.bytes, passwordData.length,
238
- saltData.bytes, saltData.length,
237
+ (const char *)passwordData.bytes, passwordData.length,
238
+ (const uint8_t *)saltData.bytes, saltData.length,
239
239
  prf,
240
240
  (unsigned int)cost,
241
- hashKeyData.mutableBytes, hashKeyData.length);
241
+ (uint8_t *)hashKeyData.mutableBytes, hashKeyData.length);
242
242
 
243
243
  if (status == kCCParamError) {
244
244
  reject(@"keygen_fail", @"Key derivation parameter error", nil);
@@ -321,7 +321,7 @@ static NSData *aesCTR(NSString *operation, NSData *inputData, NSString *key, NSS
321
321
  @try {
322
322
  NSData *inputData = fromHex(text);
323
323
  NSMutableData *result = [[NSMutableData alloc] initWithLength:CC_SHA1_DIGEST_LENGTH];
324
- CC_SHA1(inputData.bytes, (CC_LONG)inputData.length, result.mutableBytes);
324
+ CC_SHA1((const void *)inputData.bytes, (CC_LONG)inputData.length, (unsigned char *)result.mutableBytes);
325
325
  resolve(toHex(result));
326
326
  } @catch (NSException *exception) {
327
327
  reject(@"sha1_fail", exception.reason, nil);
@@ -343,7 +343,7 @@ static NSData *aesCTR(NSString *operation, NSData *inputData, NSString *key, NSS
343
343
  reject(@"sha256_fail", @"Memory allocation error", nil);
344
344
  return;
345
345
  }
346
- CC_SHA256(inputData.bytes, (CC_LONG)inputData.length, buffer);
346
+ CC_SHA256((const void *)inputData.bytes, (CC_LONG)inputData.length, buffer);
347
347
  NSData *result = [NSData dataWithBytesNoCopy:buffer
348
348
  length:CC_SHA256_DIGEST_LENGTH
349
349
  freeWhenDone:YES];
@@ -368,7 +368,7 @@ static NSData *aesCTR(NSString *operation, NSData *inputData, NSString *key, NSS
368
368
  reject(@"sha512_fail", @"Memory allocation error", nil);
369
369
  return;
370
370
  }
371
- CC_SHA512(inputData.bytes, (CC_LONG)inputData.length, buffer);
371
+ CC_SHA512((const void *)inputData.bytes, (CC_LONG)inputData.length, buffer);
372
372
  NSData *result = [NSData dataWithBytesNoCopy:buffer
373
373
  length:CC_SHA512_DIGEST_LENGTH
374
374
  freeWhenDone:YES];
@@ -1,5 +1,15 @@
1
1
  "use strict";
2
2
 
3
3
  import NativeAesCrypto from "./NativeAesCrypto.js";
4
+ export const encrypt = NativeAesCrypto.encrypt.bind(NativeAesCrypto);
5
+ export const decrypt = NativeAesCrypto.decrypt.bind(NativeAesCrypto);
6
+ export const pbkdf2 = NativeAesCrypto.pbkdf2.bind(NativeAesCrypto);
7
+ export const hmac256 = NativeAesCrypto.hmac256.bind(NativeAesCrypto);
8
+ export const hmac512 = NativeAesCrypto.hmac512.bind(NativeAesCrypto);
9
+ export const sha1 = NativeAesCrypto.sha1.bind(NativeAesCrypto);
10
+ export const sha256 = NativeAesCrypto.sha256.bind(NativeAesCrypto);
11
+ export const sha512 = NativeAesCrypto.sha512.bind(NativeAesCrypto);
12
+ export const randomUuid = NativeAesCrypto.randomUuid.bind(NativeAesCrypto);
13
+ export const randomKey = NativeAesCrypto.randomKey.bind(NativeAesCrypto);
4
14
  export default NativeAesCrypto;
5
15
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["NativeAesCrypto"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,OAAOA,eAAe,MAAM,sBAAmB;AAE/C,eAAeA,eAAe","ignoreList":[]}
1
+ {"version":3,"names":["NativeAesCrypto","encrypt","bind","decrypt","pbkdf2","hmac256","hmac512","sha1","sha256","sha512","randomUuid","randomKey"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,OAAOA,eAAe,MAAM,sBAAmB;AAE/C,OAAO,MAAMC,OAAO,GAAGD,eAAe,CAACC,OAAO,CAACC,IAAI,CAACF,eAAe,CAAC;AACpE,OAAO,MAAMG,OAAO,GAAGH,eAAe,CAACG,OAAO,CAACD,IAAI,CAACF,eAAe,CAAC;AACpE,OAAO,MAAMI,MAAM,GAAGJ,eAAe,CAACI,MAAM,CAACF,IAAI,CAACF,eAAe,CAAC;AAClE,OAAO,MAAMK,OAAO,GAAGL,eAAe,CAACK,OAAO,CAACH,IAAI,CAACF,eAAe,CAAC;AACpE,OAAO,MAAMM,OAAO,GAAGN,eAAe,CAACM,OAAO,CAACJ,IAAI,CAACF,eAAe,CAAC;AACpE,OAAO,MAAMO,IAAI,GAAGP,eAAe,CAACO,IAAI,CAACL,IAAI,CAACF,eAAe,CAAC;AAC9D,OAAO,MAAMQ,MAAM,GAAGR,eAAe,CAACQ,MAAM,CAACN,IAAI,CAACF,eAAe,CAAC;AAClE,OAAO,MAAMS,MAAM,GAAGT,eAAe,CAACS,MAAM,CAACP,IAAI,CAACF,eAAe,CAAC;AAClE,OAAO,MAAMU,UAAU,GAAGV,eAAe,CAACU,UAAU,CAACR,IAAI,CAACF,eAAe,CAAC;AAC1E,OAAO,MAAMW,SAAS,GAAGX,eAAe,CAACW,SAAS,CAACT,IAAI,CAACF,eAAe,CAAC;AAExE,eAAeA,eAAe","ignoreList":[]}
@@ -1,4 +1,14 @@
1
1
  import NativeAesCrypto from './NativeAesCrypto';
2
+ export declare const encrypt: (data: string, key: string, iv: string, algorithm: string) => Promise<string>;
3
+ export declare const decrypt: (base64: string, key: string, iv: string, algorithm: string) => Promise<string>;
4
+ export declare const pbkdf2: (password: string, salt: string, cost: number, length: number, algorithm: string) => Promise<string>;
5
+ export declare const hmac256: (base64: string, key: string) => Promise<string>;
6
+ export declare const hmac512: (base64: string, key: string) => Promise<string>;
7
+ export declare const sha1: (text: string) => Promise<string>;
8
+ export declare const sha256: (text: string) => Promise<string>;
9
+ export declare const sha512: (text: string) => Promise<string>;
10
+ export declare const randomUuid: () => Promise<string>;
11
+ export declare const randomKey: (length: number) => Promise<string>;
2
12
  export default NativeAesCrypto;
3
13
  export type { Spec as AesCryptoSpec } from './NativeAesCrypto';
4
14
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAEhD,eAAe,eAAe,CAAC;AAC/B,YAAY,EAAE,IAAI,IAAI,aAAa,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAEhD,eAAO,MAAM,OAAO,+EAAgD,CAAC;AACrE,eAAO,MAAM,OAAO,iFAAgD,CAAC;AACrE,eAAO,MAAM,MAAM,sGAA+C,CAAC;AACnE,eAAO,MAAM,OAAO,kDAAgD,CAAC;AACrE,eAAO,MAAM,OAAO,kDAAgD,CAAC;AACrE,eAAO,MAAM,IAAI,mCAA6C,CAAC;AAC/D,eAAO,MAAM,MAAM,mCAA+C,CAAC;AACnE,eAAO,MAAM,MAAM,mCAA+C,CAAC;AACnE,eAAO,MAAM,UAAU,uBAAmD,CAAC;AAC3E,eAAO,MAAM,SAAS,qCAAkD,CAAC;AAEzE,eAAe,eAAe,CAAC;AAC/B,YAAY,EAAE,IAAI,IAAI,aAAa,EAAE,MAAM,mBAAmB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@onekeyfe/react-native-aes-crypto",
3
- "version": "3.0.8",
3
+ "version": "3.0.10",
4
4
  "description": "react-native-aes-crypto",
5
5
  "main": "./lib/module/index.js",
6
6
  "types": "./lib/typescript/src/index.d.ts",
package/src/index.tsx CHANGED
@@ -1,4 +1,15 @@
1
1
  import NativeAesCrypto from './NativeAesCrypto';
2
2
 
3
+ export const encrypt = NativeAesCrypto.encrypt.bind(NativeAesCrypto);
4
+ export const decrypt = NativeAesCrypto.decrypt.bind(NativeAesCrypto);
5
+ export const pbkdf2 = NativeAesCrypto.pbkdf2.bind(NativeAesCrypto);
6
+ export const hmac256 = NativeAesCrypto.hmac256.bind(NativeAesCrypto);
7
+ export const hmac512 = NativeAesCrypto.hmac512.bind(NativeAesCrypto);
8
+ export const sha1 = NativeAesCrypto.sha1.bind(NativeAesCrypto);
9
+ export const sha256 = NativeAesCrypto.sha256.bind(NativeAesCrypto);
10
+ export const sha512 = NativeAesCrypto.sha512.bind(NativeAesCrypto);
11
+ export const randomUuid = NativeAesCrypto.randomUuid.bind(NativeAesCrypto);
12
+ export const randomKey = NativeAesCrypto.randomKey.bind(NativeAesCrypto);
13
+
3
14
  export default NativeAesCrypto;
4
15
  export type { Spec as AesCryptoSpec } from './NativeAesCrypto';