react-native-quick-crypto 1.0.11 → 1.0.13

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.
Files changed (197) hide show
  1. package/android/CMakeLists.txt +7 -0
  2. package/cpp/cipher/CCMCipher.cpp +4 -1
  3. package/cpp/cipher/ChaCha20Cipher.cpp +3 -1
  4. package/cpp/cipher/ChaCha20Poly1305Cipher.cpp +5 -5
  5. package/cpp/cipher/ChaCha20Poly1305Cipher.hpp +1 -2
  6. package/cpp/cipher/HybridCipher.cpp +10 -1
  7. package/cpp/cipher/HybridCipher.hpp +2 -0
  8. package/cpp/cipher/HybridRsaCipher.cpp +0 -13
  9. package/cpp/cipher/XChaCha20Poly1305Cipher.cpp +7 -5
  10. package/cpp/cipher/XChaCha20Poly1305Cipher.hpp +1 -2
  11. package/cpp/cipher/XSalsa20Cipher.cpp +4 -0
  12. package/cpp/cipher/XSalsa20Poly1305Cipher.cpp +7 -5
  13. package/cpp/cipher/XSalsa20Poly1305Cipher.hpp +1 -2
  14. package/cpp/ecdh/HybridECDH.cpp +20 -133
  15. package/cpp/keys/HybridKeyObjectHandle.cpp +144 -141
  16. package/cpp/keys/HybridKeyObjectHandle.hpp +6 -3
  17. package/cpp/keys/KeyObjectData.hpp +2 -0
  18. package/cpp/kmac/HybridKmac.cpp +83 -0
  19. package/cpp/kmac/HybridKmac.hpp +31 -0
  20. package/cpp/mldsa/HybridMlDsaKeyPair.cpp +11 -20
  21. package/cpp/mldsa/HybridMlDsaKeyPair.hpp +4 -2
  22. package/cpp/mlkem/HybridMlKemKeyPair.cpp +319 -0
  23. package/cpp/mlkem/HybridMlKemKeyPair.hpp +48 -0
  24. package/cpp/sign/SignUtils.hpp +9 -26
  25. package/cpp/utils/QuickCryptoUtils.cpp +44 -0
  26. package/cpp/utils/QuickCryptoUtils.hpp +39 -0
  27. package/cpp/x509/HybridX509Certificate.cpp +174 -0
  28. package/cpp/x509/HybridX509Certificate.hpp +51 -0
  29. package/lib/commonjs/cipher.js +15 -2
  30. package/lib/commonjs/cipher.js.map +1 -1
  31. package/lib/commonjs/dhKeyPair.js +3 -3
  32. package/lib/commonjs/dhKeyPair.js.map +1 -1
  33. package/lib/commonjs/dsa.js +3 -3
  34. package/lib/commonjs/dsa.js.map +1 -1
  35. package/lib/commonjs/ec.js +18 -18
  36. package/lib/commonjs/ec.js.map +1 -1
  37. package/lib/commonjs/ed.js +9 -9
  38. package/lib/commonjs/ed.js.map +1 -1
  39. package/lib/commonjs/hash.js +17 -12
  40. package/lib/commonjs/hash.js.map +1 -1
  41. package/lib/commonjs/hkdf.js.map +1 -1
  42. package/lib/commonjs/index.js +22 -0
  43. package/lib/commonjs/index.js.map +1 -1
  44. package/lib/commonjs/keys/classes.js +2 -2
  45. package/lib/commonjs/keys/classes.js.map +1 -1
  46. package/lib/commonjs/keys/index.js +24 -0
  47. package/lib/commonjs/keys/index.js.map +1 -1
  48. package/lib/commonjs/keys/publicCipher.js +2 -2
  49. package/lib/commonjs/keys/publicCipher.js.map +1 -1
  50. package/lib/commonjs/keys/signVerify.js +0 -2
  51. package/lib/commonjs/keys/signVerify.js.map +1 -1
  52. package/lib/commonjs/mlkem.js +219 -0
  53. package/lib/commonjs/mlkem.js.map +1 -0
  54. package/lib/commonjs/pbkdf2.js +18 -1
  55. package/lib/commonjs/pbkdf2.js.map +1 -1
  56. package/lib/commonjs/rsa.js +7 -7
  57. package/lib/commonjs/rsa.js.map +1 -1
  58. package/lib/commonjs/specs/kmac.nitro.js +6 -0
  59. package/lib/commonjs/specs/kmac.nitro.js.map +1 -0
  60. package/lib/commonjs/specs/mlKemKeyPair.nitro.js +6 -0
  61. package/lib/commonjs/specs/mlKemKeyPair.nitro.js.map +1 -0
  62. package/lib/commonjs/specs/x509certificate.nitro.js +6 -0
  63. package/lib/commonjs/specs/x509certificate.nitro.js.map +1 -0
  64. package/lib/commonjs/subtle.js +292 -112
  65. package/lib/commonjs/subtle.js.map +1 -1
  66. package/lib/commonjs/utils/conversion.js +3 -3
  67. package/lib/commonjs/utils/conversion.js.map +1 -1
  68. package/lib/commonjs/utils/hashnames.js +31 -0
  69. package/lib/commonjs/utils/hashnames.js.map +1 -1
  70. package/lib/commonjs/utils/types.js.map +1 -1
  71. package/lib/commonjs/x509certificate.js +189 -0
  72. package/lib/commonjs/x509certificate.js.map +1 -0
  73. package/lib/module/cipher.js +16 -3
  74. package/lib/module/cipher.js.map +1 -1
  75. package/lib/module/dhKeyPair.js +1 -1
  76. package/lib/module/dhKeyPair.js.map +1 -1
  77. package/lib/module/dsa.js +1 -1
  78. package/lib/module/dsa.js.map +1 -1
  79. package/lib/module/ec.js +6 -6
  80. package/lib/module/ec.js.map +1 -1
  81. package/lib/module/ed.js +1 -1
  82. package/lib/module/ed.js.map +1 -1
  83. package/lib/module/hash.js +17 -12
  84. package/lib/module/hash.js.map +1 -1
  85. package/lib/module/hkdf.js.map +1 -1
  86. package/lib/module/index.js +6 -0
  87. package/lib/module/index.js.map +1 -1
  88. package/lib/module/keys/classes.js +2 -2
  89. package/lib/module/keys/classes.js.map +1 -1
  90. package/lib/module/keys/index.js +25 -1
  91. package/lib/module/keys/index.js.map +1 -1
  92. package/lib/module/keys/publicCipher.js +2 -2
  93. package/lib/module/keys/publicCipher.js.map +1 -1
  94. package/lib/module/keys/signVerify.js +0 -2
  95. package/lib/module/keys/signVerify.js.map +1 -1
  96. package/lib/module/mlkem.js +211 -0
  97. package/lib/module/mlkem.js.map +1 -0
  98. package/lib/module/pbkdf2.js +18 -1
  99. package/lib/module/pbkdf2.js.map +1 -1
  100. package/lib/module/rsa.js +1 -1
  101. package/lib/module/rsa.js.map +1 -1
  102. package/lib/module/specs/kmac.nitro.js +4 -0
  103. package/lib/module/specs/kmac.nitro.js.map +1 -0
  104. package/lib/module/specs/mlKemKeyPair.nitro.js +4 -0
  105. package/lib/module/specs/mlKemKeyPair.nitro.js.map +1 -0
  106. package/lib/module/specs/x509certificate.nitro.js +4 -0
  107. package/lib/module/specs/x509certificate.nitro.js.map +1 -0
  108. package/lib/module/subtle.js +292 -112
  109. package/lib/module/subtle.js.map +1 -1
  110. package/lib/module/utils/conversion.js +3 -4
  111. package/lib/module/utils/conversion.js.map +1 -1
  112. package/lib/module/utils/hashnames.js +31 -0
  113. package/lib/module/utils/hashnames.js.map +1 -1
  114. package/lib/module/utils/types.js.map +1 -1
  115. package/lib/module/x509certificate.js +184 -0
  116. package/lib/module/x509certificate.js.map +1 -0
  117. package/lib/tsconfig.tsbuildinfo +1 -1
  118. package/lib/typescript/cipher.d.ts +3 -0
  119. package/lib/typescript/cipher.d.ts.map +1 -1
  120. package/lib/typescript/dhKeyPair.d.ts +1 -1
  121. package/lib/typescript/dhKeyPair.d.ts.map +1 -1
  122. package/lib/typescript/dsa.d.ts +1 -1
  123. package/lib/typescript/dsa.d.ts.map +1 -1
  124. package/lib/typescript/ec.d.ts +1 -1
  125. package/lib/typescript/ec.d.ts.map +1 -1
  126. package/lib/typescript/ed.d.ts +1 -1
  127. package/lib/typescript/ed.d.ts.map +1 -1
  128. package/lib/typescript/hash.d.ts.map +1 -1
  129. package/lib/typescript/hkdf.d.ts +2 -6
  130. package/lib/typescript/hkdf.d.ts.map +1 -1
  131. package/lib/typescript/index.d.ts +15 -4
  132. package/lib/typescript/index.d.ts.map +1 -1
  133. package/lib/typescript/keys/classes.d.ts +5 -5
  134. package/lib/typescript/keys/classes.d.ts.map +1 -1
  135. package/lib/typescript/keys/index.d.ts +2 -2
  136. package/lib/typescript/keys/index.d.ts.map +1 -1
  137. package/lib/typescript/keys/signVerify.d.ts.map +1 -1
  138. package/lib/typescript/mlkem.d.ts +30 -0
  139. package/lib/typescript/mlkem.d.ts.map +1 -0
  140. package/lib/typescript/pbkdf2.d.ts +2 -2
  141. package/lib/typescript/pbkdf2.d.ts.map +1 -1
  142. package/lib/typescript/rsa.d.ts +1 -1
  143. package/lib/typescript/rsa.d.ts.map +1 -1
  144. package/lib/typescript/specs/keyObjectHandle.nitro.d.ts +1 -0
  145. package/lib/typescript/specs/keyObjectHandle.nitro.d.ts.map +1 -1
  146. package/lib/typescript/specs/kmac.nitro.d.ts +10 -0
  147. package/lib/typescript/specs/kmac.nitro.d.ts.map +1 -0
  148. package/lib/typescript/specs/mlKemKeyPair.nitro.d.ts +18 -0
  149. package/lib/typescript/specs/mlKemKeyPair.nitro.d.ts.map +1 -0
  150. package/lib/typescript/specs/x509certificate.nitro.d.ts +34 -0
  151. package/lib/typescript/specs/x509certificate.nitro.d.ts.map +1 -0
  152. package/lib/typescript/subtle.d.ts +10 -0
  153. package/lib/typescript/subtle.d.ts.map +1 -1
  154. package/lib/typescript/utils/conversion.d.ts.map +1 -1
  155. package/lib/typescript/utils/hashnames.d.ts +1 -1
  156. package/lib/typescript/utils/hashnames.d.ts.map +1 -1
  157. package/lib/typescript/utils/types.d.ts +13 -7
  158. package/lib/typescript/utils/types.d.ts.map +1 -1
  159. package/lib/typescript/x509certificate.d.ts +64 -0
  160. package/lib/typescript/x509certificate.d.ts.map +1 -0
  161. package/nitrogen/generated/android/QuickCrypto+autolinking.cmake +3 -0
  162. package/nitrogen/generated/android/QuickCryptoOnLoad.cpp +30 -0
  163. package/nitrogen/generated/ios/QuickCryptoAutolinking.mm +30 -0
  164. package/nitrogen/generated/shared/c++/AsymmetricKeyType.hpp +12 -0
  165. package/nitrogen/generated/shared/c++/HybridKeyObjectHandleSpec.cpp +1 -0
  166. package/nitrogen/generated/shared/c++/HybridKeyObjectHandleSpec.hpp +1 -0
  167. package/nitrogen/generated/shared/c++/HybridKmacSpec.cpp +23 -0
  168. package/nitrogen/generated/shared/c++/HybridKmacSpec.hpp +66 -0
  169. package/nitrogen/generated/shared/c++/HybridMlKemKeyPairSpec.cpp +31 -0
  170. package/nitrogen/generated/shared/c++/HybridMlKemKeyPairSpec.hpp +74 -0
  171. package/nitrogen/generated/shared/c++/HybridX509CertificateHandleSpec.cpp +46 -0
  172. package/nitrogen/generated/shared/c++/HybridX509CertificateHandleSpec.hpp +96 -0
  173. package/package.json +4 -1
  174. package/src/cipher.ts +17 -3
  175. package/src/dhKeyPair.ts +1 -1
  176. package/src/dsa.ts +1 -1
  177. package/src/ec.ts +9 -9
  178. package/src/ed.ts +2 -2
  179. package/src/hash.ts +34 -11
  180. package/src/hkdf.ts +2 -7
  181. package/src/index.ts +7 -0
  182. package/src/keys/classes.ts +10 -9
  183. package/src/keys/index.ts +37 -2
  184. package/src/keys/publicCipher.ts +2 -2
  185. package/src/keys/signVerify.ts +0 -5
  186. package/src/mlkem.ts +350 -0
  187. package/src/pbkdf2.ts +34 -5
  188. package/src/rsa.ts +1 -1
  189. package/src/specs/keyObjectHandle.nitro.ts +5 -0
  190. package/src/specs/kmac.nitro.ts +12 -0
  191. package/src/specs/mlKemKeyPair.nitro.ts +32 -0
  192. package/src/specs/x509certificate.nitro.ts +38 -0
  193. package/src/subtle.ts +551 -125
  194. package/src/utils/conversion.ts +10 -4
  195. package/src/utils/hashnames.ts +33 -2
  196. package/src/utils/types.ts +42 -5
  197. package/src/x509certificate.ts +277 -0
@@ -10,7 +10,7 @@ export type RandomCallback<T> = (err: Error | null, value: T) => void;
10
10
  export type BufferLike = ArrayBuffer | ArrayBufferLike | CraftzdogBuffer | SafeBuffer | ArrayBufferView;
11
11
  export type BinaryLike = string | Buffer | ArrayBuffer | ArrayBufferLike | ArrayBufferView | CraftzdogBuffer | SafeBuffer | TypedArray | DataView;
12
12
  export type BinaryLikeNode = CipherKey | BinaryLike | KeyObject;
13
- export type DigestAlgorithm = 'SHA-1' | 'SHA-256' | 'SHA-384' | 'SHA-512';
13
+ export type DigestAlgorithm = 'SHA-1' | 'SHA-256' | 'SHA-384' | 'SHA-512' | 'SHA3-256' | 'SHA3-384' | 'SHA3-512' | 'cSHAKE128' | 'cSHAKE256';
14
14
  export type HashAlgorithm = DigestAlgorithm | 'SHA-224' | 'RIPEMD-160';
15
15
  export type RSAKeyPairAlgorithm = 'RSASSA-PKCS1-v1_5' | 'RSA-PSS' | 'RSA-OAEP';
16
16
  export interface RsaHashedKeyGenParams {
@@ -32,8 +32,13 @@ export interface RsaKeyAlgorithm {
32
32
  export type ECKeyPairAlgorithm = 'ECDSA' | 'ECDH';
33
33
  export type CFRGKeyPairAlgorithm = 'Ed25519' | 'Ed448' | 'X25519' | 'X448';
34
34
  export type CFRGKeyPairType = 'ed25519' | 'ed448' | 'x25519' | 'x448';
35
- export type PQCKeyPairAlgorithm = 'ML-DSA-44' | 'ML-DSA-65' | 'ML-DSA-87';
36
- export type PQCKeyPairType = 'ml-dsa-44' | 'ml-dsa-65' | 'ml-dsa-87';
35
+ export type PQCKeyPairAlgorithm = 'ML-DSA-44' | 'ML-DSA-65' | 'ML-DSA-87' | 'ML-KEM-512' | 'ML-KEM-768' | 'ML-KEM-1024';
36
+ export type PQCKeyPairType = 'ml-dsa-44' | 'ml-dsa-65' | 'ml-dsa-87' | 'ml-kem-512' | 'ml-kem-768' | 'ml-kem-1024';
37
+ export type MlKemAlgorithm = 'ML-KEM-512' | 'ML-KEM-768' | 'ML-KEM-1024';
38
+ export interface EncapsulateResult {
39
+ sharedKey: ArrayBuffer;
40
+ ciphertext: ArrayBuffer;
41
+ }
37
42
  export type RSAKeyPairType = 'rsa' | 'rsa-pss';
38
43
  export type ECKeyPairType = 'ec';
39
44
  export type DSAKeyPairType = 'dsa';
@@ -41,7 +46,7 @@ export type DHKeyPairType = 'dh';
41
46
  export type KeyPairAlgorithm = RSAKeyPairAlgorithm | ECKeyPairAlgorithm | CFRGKeyPairAlgorithm | PQCKeyPairAlgorithm;
42
47
  export type AESAlgorithm = 'AES-CTR' | 'AES-CBC' | 'AES-GCM' | 'AES-KW' | 'AES-OCB';
43
48
  export type SecretKeyAlgorithm = 'HMAC' | AESAlgorithm;
44
- export type SignVerifyAlgorithm = 'RSASSA-PKCS1-v1_5' | 'RSA-PSS' | 'ECDSA' | 'HMAC' | 'Ed25519' | 'Ed448' | 'ML-DSA-44' | 'ML-DSA-65' | 'ML-DSA-87';
49
+ export type SignVerifyAlgorithm = 'RSASSA-PKCS1-v1_5' | 'RSA-PSS' | 'ECDSA' | 'HMAC' | 'KMAC128' | 'KMAC256' | 'Ed25519' | 'Ed448' | 'ML-DSA-44' | 'ML-DSA-65' | 'ML-DSA-87';
45
50
  export type Argon2Algorithm = 'Argon2d' | 'Argon2i' | 'Argon2id';
46
51
  export type DeriveBitsAlgorithm = 'PBKDF2' | 'HKDF' | 'ECDH' | 'X25519' | 'X448' | Argon2Algorithm;
47
52
  export type EncryptDecryptAlgorithm = 'RSA-OAEP' | 'AES-CTR' | 'AES-CBC' | 'AES-GCM' | 'AES-KW' | 'AES-OCB' | 'ChaCha20-Poly1305';
@@ -93,7 +98,7 @@ export type SubtleAlgorithm = {
93
98
  name: AnyAlgorithm;
94
99
  salt?: string | BufferLike;
95
100
  iterations?: number;
96
- hash?: HashAlgorithm | {
101
+ hash?: HashAlgorithm | string | {
97
102
  name: string;
98
103
  };
99
104
  namedCurve?: NamedCurve;
@@ -111,6 +116,7 @@ export type SubtleAlgorithm = {
111
116
  secretValue?: BufferLike;
112
117
  associatedData?: BufferLike;
113
118
  version?: number;
119
+ customization?: BufferLike;
114
120
  };
115
121
  export type KeyPairType = CFRGKeyPairType | RSAKeyPairType | ECKeyPairType | DSAKeyPairType | DHKeyPairType;
116
122
  export type KeyUsage = 'encrypt' | 'decrypt' | 'sign' | 'verify' | 'deriveKey' | 'deriveBits' | 'encapsulateBits' | 'decapsulateBits' | 'encapsulateKey' | 'decapsulateKey' | 'wrapKey' | 'unwrapKey';
@@ -270,8 +276,8 @@ export type DiffieHellmanOptions = {
270
276
  };
271
277
  export type DiffieHellmanCallback = (err: Error | null, secret?: CraftzdogBuffer) => CraftzdogBuffer | void;
272
278
  export type Hex = string | Uint8Array;
273
- export type ImportFormat = 'raw' | 'raw-public' | 'raw-secret' | 'pkcs8' | 'spki' | 'jwk';
274
- export type Operation = 'encrypt' | 'decrypt' | 'sign' | 'verify' | 'generateKey' | 'importKey' | 'exportKey' | 'deriveBits' | 'wrapKey' | 'unwrapKey';
279
+ export type ImportFormat = 'raw' | 'raw-public' | 'raw-secret' | 'raw-seed' | 'pkcs8' | 'spki' | 'jwk';
280
+ export type Operation = 'encrypt' | 'decrypt' | 'sign' | 'verify' | 'generateKey' | 'importKey' | 'exportKey' | 'deriveBits' | 'wrapKey' | 'unwrapKey' | 'encapsulateBits' | 'decapsulateBits' | 'encapsulateKey' | 'decapsulateKey';
275
281
  export interface KeyPairOptions {
276
282
  namedCurve: string;
277
283
  publicKeyEncoding?: {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/utils/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/utils/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,64 @@
1
+ import { Buffer } from '@craftzdog/react-native-buffer';
2
+ import { PublicKeyObject, KeyObject } from './keys';
3
+ import type { BinaryLike } from './utils';
4
+ export interface X509LegacyObject {
5
+ subject: string;
6
+ issuer: string;
7
+ subjectaltname: string;
8
+ infoAccess: string;
9
+ ca: boolean;
10
+ modulus: undefined;
11
+ bits: undefined;
12
+ exponent: undefined;
13
+ valid_from: string;
14
+ valid_to: string;
15
+ fingerprint: string;
16
+ fingerprint256: string;
17
+ fingerprint512: string;
18
+ ext_key_usage: string[];
19
+ serialNumber: string;
20
+ raw: Buffer;
21
+ }
22
+ export interface CheckOptions {
23
+ subject?: 'default' | 'always' | 'never';
24
+ wildcards?: boolean;
25
+ partialWildcards?: boolean;
26
+ multiLabelWildcards?: boolean;
27
+ singleLabelSubdomains?: boolean;
28
+ }
29
+ export declare class X509Certificate {
30
+ private readonly handle;
31
+ private readonly cache;
32
+ constructor(buffer: BinaryLike);
33
+ private cached;
34
+ get subject(): string;
35
+ get subjectAltName(): string;
36
+ get issuer(): string;
37
+ get infoAccess(): string;
38
+ get validFrom(): string;
39
+ get validTo(): string;
40
+ get validFromDate(): Date;
41
+ get validToDate(): Date;
42
+ get fingerprint(): string;
43
+ get fingerprint256(): string;
44
+ get fingerprint512(): string;
45
+ get extKeyUsage(): string[];
46
+ get keyUsage(): string[];
47
+ get serialNumber(): string;
48
+ get signatureAlgorithm(): string;
49
+ get signatureAlgorithmOid(): string;
50
+ get ca(): boolean;
51
+ get raw(): Buffer;
52
+ get publicKey(): PublicKeyObject;
53
+ get issuerCertificate(): undefined;
54
+ checkHost(name: string, options?: CheckOptions): string | undefined;
55
+ checkEmail(email: string, options?: CheckOptions): string | undefined;
56
+ checkIP(ip: string): string | undefined;
57
+ checkIssued(otherCert: X509Certificate): boolean;
58
+ checkPrivateKey(pkey: KeyObject): boolean;
59
+ verify(pkey: KeyObject): boolean;
60
+ toString(): string;
61
+ toJSON(): string;
62
+ toLegacyObject(): X509LegacyObject;
63
+ }
64
+ //# sourceMappingURL=x509certificate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"x509certificate.d.ts","sourceRoot":"","sources":["../../src/x509certificate.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;AAExD,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAU1C,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,SAAS,CAAC;IACnB,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,EAAE,SAAS,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;IACzC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAgCD,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwB;IAC/C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA8B;gBAExC,MAAM,EAAE,UAAU;IAe9B,OAAO,CAAC,MAAM;IASd,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,IAAI,cAAc,IAAI,MAAM,CAE3B;IAED,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,IAAI,aAAa,IAAI,IAAI,CAKxB;IAED,IAAI,WAAW,IAAI,IAAI,CAKtB;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,cAAc,IAAI,MAAM,CAE3B;IAED,IAAI,cAAc,IAAI,MAAM,CAE3B;IAED,IAAI,WAAW,IAAI,MAAM,EAAE,CAE1B;IAED,IAAI,QAAQ,IAAI,MAAM,EAAE,CAEvB;IAED,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED,IAAI,kBAAkB,IAAI,MAAM,CAI/B;IAED,IAAI,qBAAqB,IAAI,MAAM,CAIlC;IAED,IAAI,EAAE,IAAI,OAAO,CAEhB;IAED,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED,IAAI,SAAS,IAAI,eAAe,CAK/B;IAED,IAAI,iBAAiB,IAAI,SAAS,CAEjC;IAED,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,MAAM,GAAG,SAAS;IAOnE,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,MAAM,GAAG,SAAS;IAOrE,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAOvC,WAAW,CAAC,SAAS,EAAE,eAAe,GAAG,OAAO;IAShD,eAAe,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO;IAYzC,MAAM,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO;IAchC,QAAQ,IAAI,MAAM;IAIlB,MAAM,IAAI,MAAM;IAIhB,cAAc,IAAI,gBAAgB;CAoBnC"}
@@ -48,7 +48,9 @@ target_sources(
48
48
  ../nitrogen/generated/shared/c++/HybridHkdfSpec.cpp
49
49
  ../nitrogen/generated/shared/c++/HybridHmacSpec.cpp
50
50
  ../nitrogen/generated/shared/c++/HybridKeyObjectHandleSpec.cpp
51
+ ../nitrogen/generated/shared/c++/HybridKmacSpec.cpp
51
52
  ../nitrogen/generated/shared/c++/HybridMlDsaKeyPairSpec.cpp
53
+ ../nitrogen/generated/shared/c++/HybridMlKemKeyPairSpec.cpp
52
54
  ../nitrogen/generated/shared/c++/HybridPbkdf2Spec.cpp
53
55
  ../nitrogen/generated/shared/c++/HybridPrimeSpec.cpp
54
56
  ../nitrogen/generated/shared/c++/HybridRandomSpec.cpp
@@ -58,6 +60,7 @@ target_sources(
58
60
  ../nitrogen/generated/shared/c++/HybridSignHandleSpec.cpp
59
61
  ../nitrogen/generated/shared/c++/HybridVerifyHandleSpec.cpp
60
62
  ../nitrogen/generated/shared/c++/HybridUtilsSpec.cpp
63
+ ../nitrogen/generated/shared/c++/HybridX509CertificateHandleSpec.cpp
61
64
  # Android-specific Nitrogen C++ sources
62
65
 
63
66
  )
@@ -29,8 +29,10 @@
29
29
  #include "HybridHash.hpp"
30
30
  #include "HybridHkdf.hpp"
31
31
  #include "HybridHmac.hpp"
32
+ #include "HybridKmac.hpp"
32
33
  #include "HybridKeyObjectHandle.hpp"
33
34
  #include "HybridMlDsaKeyPair.hpp"
35
+ #include "HybridMlKemKeyPair.hpp"
34
36
  #include "HybridPbkdf2.hpp"
35
37
  #include "HybridPrime.hpp"
36
38
  #include "HybridRandom.hpp"
@@ -40,6 +42,7 @@
40
42
  #include "HybridSignHandle.hpp"
41
43
  #include "HybridUtils.hpp"
42
44
  #include "HybridVerifyHandle.hpp"
45
+ #include "HybridX509Certificate.hpp"
43
46
 
44
47
  namespace margelo::nitro::crypto {
45
48
 
@@ -179,6 +182,15 @@ int initialize(JavaVM* vm) {
179
182
  return std::make_shared<HybridHmac>();
180
183
  }
181
184
  );
185
+ HybridObjectRegistry::registerHybridObjectConstructor(
186
+ "Kmac",
187
+ []() -> std::shared_ptr<HybridObject> {
188
+ static_assert(std::is_default_constructible_v<HybridKmac>,
189
+ "The HybridObject \"HybridKmac\" is not default-constructible! "
190
+ "Create a public constructor that takes zero arguments to be able to autolink this HybridObject.");
191
+ return std::make_shared<HybridKmac>();
192
+ }
193
+ );
182
194
  HybridObjectRegistry::registerHybridObjectConstructor(
183
195
  "KeyObjectHandle",
184
196
  []() -> std::shared_ptr<HybridObject> {
@@ -197,6 +209,15 @@ int initialize(JavaVM* vm) {
197
209
  return std::make_shared<HybridMlDsaKeyPair>();
198
210
  }
199
211
  );
212
+ HybridObjectRegistry::registerHybridObjectConstructor(
213
+ "MlKemKeyPair",
214
+ []() -> std::shared_ptr<HybridObject> {
215
+ static_assert(std::is_default_constructible_v<HybridMlKemKeyPair>,
216
+ "The HybridObject \"HybridMlKemKeyPair\" is not default-constructible! "
217
+ "Create a public constructor that takes zero arguments to be able to autolink this HybridObject.");
218
+ return std::make_shared<HybridMlKemKeyPair>();
219
+ }
220
+ );
200
221
  HybridObjectRegistry::registerHybridObjectConstructor(
201
222
  "Pbkdf2",
202
223
  []() -> std::shared_ptr<HybridObject> {
@@ -278,6 +299,15 @@ int initialize(JavaVM* vm) {
278
299
  return std::make_shared<HybridVerifyHandle>();
279
300
  }
280
301
  );
302
+ HybridObjectRegistry::registerHybridObjectConstructor(
303
+ "X509CertificateHandle",
304
+ []() -> std::shared_ptr<HybridObject> {
305
+ static_assert(std::is_default_constructible_v<HybridX509Certificate>,
306
+ "The HybridObject \"HybridX509Certificate\" is not default-constructible! "
307
+ "Create a public constructor that takes zero arguments to be able to autolink this HybridObject.");
308
+ return std::make_shared<HybridX509Certificate>();
309
+ }
310
+ );
281
311
  });
282
312
  }
283
313
 
@@ -24,8 +24,10 @@
24
24
  #include "HybridHash.hpp"
25
25
  #include "HybridHkdf.hpp"
26
26
  #include "HybridHmac.hpp"
27
+ #include "HybridKmac.hpp"
27
28
  #include "HybridKeyObjectHandle.hpp"
28
29
  #include "HybridMlDsaKeyPair.hpp"
30
+ #include "HybridMlKemKeyPair.hpp"
29
31
  #include "HybridPbkdf2.hpp"
30
32
  #include "HybridPrime.hpp"
31
33
  #include "HybridRandom.hpp"
@@ -35,6 +37,7 @@
35
37
  #include "HybridSignHandle.hpp"
36
38
  #include "HybridUtils.hpp"
37
39
  #include "HybridVerifyHandle.hpp"
40
+ #include "HybridX509Certificate.hpp"
38
41
 
39
42
  @interface QuickCryptoAutolinking : NSObject
40
43
  @end
@@ -171,6 +174,15 @@
171
174
  return std::make_shared<HybridHmac>();
172
175
  }
173
176
  );
177
+ HybridObjectRegistry::registerHybridObjectConstructor(
178
+ "Kmac",
179
+ []() -> std::shared_ptr<HybridObject> {
180
+ static_assert(std::is_default_constructible_v<HybridKmac>,
181
+ "The HybridObject \"HybridKmac\" is not default-constructible! "
182
+ "Create a public constructor that takes zero arguments to be able to autolink this HybridObject.");
183
+ return std::make_shared<HybridKmac>();
184
+ }
185
+ );
174
186
  HybridObjectRegistry::registerHybridObjectConstructor(
175
187
  "KeyObjectHandle",
176
188
  []() -> std::shared_ptr<HybridObject> {
@@ -189,6 +201,15 @@
189
201
  return std::make_shared<HybridMlDsaKeyPair>();
190
202
  }
191
203
  );
204
+ HybridObjectRegistry::registerHybridObjectConstructor(
205
+ "MlKemKeyPair",
206
+ []() -> std::shared_ptr<HybridObject> {
207
+ static_assert(std::is_default_constructible_v<HybridMlKemKeyPair>,
208
+ "The HybridObject \"HybridMlKemKeyPair\" is not default-constructible! "
209
+ "Create a public constructor that takes zero arguments to be able to autolink this HybridObject.");
210
+ return std::make_shared<HybridMlKemKeyPair>();
211
+ }
212
+ );
192
213
  HybridObjectRegistry::registerHybridObjectConstructor(
193
214
  "Pbkdf2",
194
215
  []() -> std::shared_ptr<HybridObject> {
@@ -270,6 +291,15 @@
270
291
  return std::make_shared<HybridVerifyHandle>();
271
292
  }
272
293
  );
294
+ HybridObjectRegistry::registerHybridObjectConstructor(
295
+ "X509CertificateHandle",
296
+ []() -> std::shared_ptr<HybridObject> {
297
+ static_assert(std::is_default_constructible_v<HybridX509Certificate>,
298
+ "The HybridObject \"HybridX509Certificate\" is not default-constructible! "
299
+ "Create a public constructor that takes zero arguments to be able to autolink this HybridObject.");
300
+ return std::make_shared<HybridX509Certificate>();
301
+ }
302
+ );
273
303
  }
274
304
 
275
305
  @end
@@ -41,6 +41,9 @@ namespace margelo::nitro::crypto {
41
41
  ML_DSA_44 SWIFT_NAME(mlDsa44) = 9,
42
42
  ML_DSA_65 SWIFT_NAME(mlDsa65) = 10,
43
43
  ML_DSA_87 SWIFT_NAME(mlDsa87) = 11,
44
+ ML_KEM_512 SWIFT_NAME(mlKem512) = 12,
45
+ ML_KEM_768 SWIFT_NAME(mlKem768) = 13,
46
+ ML_KEM_1024 SWIFT_NAME(mlKem1024) = 14,
44
47
  } CLOSED_ENUM;
45
48
 
46
49
  } // namespace margelo::nitro::crypto
@@ -65,6 +68,9 @@ namespace margelo::nitro {
65
68
  case hashString("ml-dsa-44"): return margelo::nitro::crypto::AsymmetricKeyType::ML_DSA_44;
66
69
  case hashString("ml-dsa-65"): return margelo::nitro::crypto::AsymmetricKeyType::ML_DSA_65;
67
70
  case hashString("ml-dsa-87"): return margelo::nitro::crypto::AsymmetricKeyType::ML_DSA_87;
71
+ case hashString("ml-kem-512"): return margelo::nitro::crypto::AsymmetricKeyType::ML_KEM_512;
72
+ case hashString("ml-kem-768"): return margelo::nitro::crypto::AsymmetricKeyType::ML_KEM_768;
73
+ case hashString("ml-kem-1024"): return margelo::nitro::crypto::AsymmetricKeyType::ML_KEM_1024;
68
74
  default: [[unlikely]]
69
75
  throw std::invalid_argument("Cannot convert \"" + unionValue + "\" to enum AsymmetricKeyType - invalid value!");
70
76
  }
@@ -83,6 +89,9 @@ namespace margelo::nitro {
83
89
  case margelo::nitro::crypto::AsymmetricKeyType::ML_DSA_44: return JSIConverter<std::string>::toJSI(runtime, "ml-dsa-44");
84
90
  case margelo::nitro::crypto::AsymmetricKeyType::ML_DSA_65: return JSIConverter<std::string>::toJSI(runtime, "ml-dsa-65");
85
91
  case margelo::nitro::crypto::AsymmetricKeyType::ML_DSA_87: return JSIConverter<std::string>::toJSI(runtime, "ml-dsa-87");
92
+ case margelo::nitro::crypto::AsymmetricKeyType::ML_KEM_512: return JSIConverter<std::string>::toJSI(runtime, "ml-kem-512");
93
+ case margelo::nitro::crypto::AsymmetricKeyType::ML_KEM_768: return JSIConverter<std::string>::toJSI(runtime, "ml-kem-768");
94
+ case margelo::nitro::crypto::AsymmetricKeyType::ML_KEM_1024: return JSIConverter<std::string>::toJSI(runtime, "ml-kem-1024");
86
95
  default: [[unlikely]]
87
96
  throw std::invalid_argument("Cannot convert AsymmetricKeyType to JS - invalid value: "
88
97
  + std::to_string(static_cast<int>(arg)) + "!");
@@ -106,6 +115,9 @@ namespace margelo::nitro {
106
115
  case hashString("ml-dsa-44"):
107
116
  case hashString("ml-dsa-65"):
108
117
  case hashString("ml-dsa-87"):
118
+ case hashString("ml-kem-512"):
119
+ case hashString("ml-kem-768"):
120
+ case hashString("ml-kem-1024"):
109
121
  return true;
110
122
  default:
111
123
  return false;
@@ -19,6 +19,7 @@ namespace margelo::nitro::crypto {
19
19
  prototype.registerHybridMethod("getAsymmetricKeyType", &HybridKeyObjectHandleSpec::getAsymmetricKeyType);
20
20
  prototype.registerHybridMethod("init", &HybridKeyObjectHandleSpec::init);
21
21
  prototype.registerHybridMethod("initECRaw", &HybridKeyObjectHandleSpec::initECRaw);
22
+ prototype.registerHybridMethod("initPqcRaw", &HybridKeyObjectHandleSpec::initPqcRaw);
22
23
  prototype.registerHybridMethod("initJwk", &HybridKeyObjectHandleSpec::initJwk);
23
24
  prototype.registerHybridMethod("keyDetail", &HybridKeyObjectHandleSpec::keyDetail);
24
25
  prototype.registerHybridMethod("keyEquals", &HybridKeyObjectHandleSpec::keyEquals);
@@ -80,6 +80,7 @@ namespace margelo::nitro::crypto {
80
80
  virtual AsymmetricKeyType getAsymmetricKeyType() = 0;
81
81
  virtual bool init(KeyType keyType, const std::variant<std::shared_ptr<ArrayBuffer>, std::string>& key, std::optional<KFormatType> format, std::optional<KeyEncoding> type, const std::optional<std::shared_ptr<ArrayBuffer>>& passphrase) = 0;
82
82
  virtual bool initECRaw(const std::string& namedCurve, const std::shared_ptr<ArrayBuffer>& keyData) = 0;
83
+ virtual bool initPqcRaw(const std::string& algorithmName, const std::shared_ptr<ArrayBuffer>& keyData, bool isPublic) = 0;
83
84
  virtual std::optional<KeyType> initJwk(const JWK& keyData, std::optional<NamedCurve> namedCurve) = 0;
84
85
  virtual KeyDetail keyDetail() = 0;
85
86
  virtual bool keyEquals(const std::shared_ptr<HybridKeyObjectHandleSpec>& other) = 0;
@@ -0,0 +1,23 @@
1
+ ///
2
+ /// HybridKmacSpec.cpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #include "HybridKmacSpec.hpp"
9
+
10
+ namespace margelo::nitro::crypto {
11
+
12
+ void HybridKmacSpec::loadHybridMethods() {
13
+ // load base methods/properties
14
+ HybridObject::loadHybridMethods();
15
+ // load custom methods/properties
16
+ registerHybrids(this, [](Prototype& prototype) {
17
+ prototype.registerHybridMethod("createKmac", &HybridKmacSpec::createKmac);
18
+ prototype.registerHybridMethod("update", &HybridKmacSpec::update);
19
+ prototype.registerHybridMethod("digest", &HybridKmacSpec::digest);
20
+ });
21
+ }
22
+
23
+ } // namespace margelo::nitro::crypto
@@ -0,0 +1,66 @@
1
+ ///
2
+ /// HybridKmacSpec.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #if __has_include(<NitroModules/HybridObject.hpp>)
11
+ #include <NitroModules/HybridObject.hpp>
12
+ #else
13
+ #error NitroModules cannot be found! Are you sure you installed NitroModules properly?
14
+ #endif
15
+
16
+
17
+
18
+ #include <string>
19
+ #include <NitroModules/ArrayBuffer.hpp>
20
+ #include <optional>
21
+
22
+ namespace margelo::nitro::crypto {
23
+
24
+ using namespace margelo::nitro;
25
+
26
+ /**
27
+ * An abstract base class for `Kmac`
28
+ * Inherit this class to create instances of `HybridKmacSpec` in C++.
29
+ * You must explicitly call `HybridObject`'s constructor yourself, because it is virtual.
30
+ * @example
31
+ * ```cpp
32
+ * class HybridKmac: public HybridKmacSpec {
33
+ * public:
34
+ * HybridKmac(...): HybridObject(TAG) { ... }
35
+ * // ...
36
+ * };
37
+ * ```
38
+ */
39
+ class HybridKmacSpec: public virtual HybridObject {
40
+ public:
41
+ // Constructor
42
+ explicit HybridKmacSpec(): HybridObject(TAG) { }
43
+
44
+ // Destructor
45
+ ~HybridKmacSpec() override = default;
46
+
47
+ public:
48
+ // Properties
49
+
50
+
51
+ public:
52
+ // Methods
53
+ virtual void createKmac(const std::string& algorithm, const std::shared_ptr<ArrayBuffer>& key, double outputLength, const std::optional<std::shared_ptr<ArrayBuffer>>& customization) = 0;
54
+ virtual void update(const std::shared_ptr<ArrayBuffer>& data) = 0;
55
+ virtual std::shared_ptr<ArrayBuffer> digest() = 0;
56
+
57
+ protected:
58
+ // Hybrid Setup
59
+ void loadHybridMethods() override;
60
+
61
+ protected:
62
+ // Tag for logging
63
+ static constexpr auto TAG = "Kmac";
64
+ };
65
+
66
+ } // namespace margelo::nitro::crypto
@@ -0,0 +1,31 @@
1
+ ///
2
+ /// HybridMlKemKeyPairSpec.cpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #include "HybridMlKemKeyPairSpec.hpp"
9
+
10
+ namespace margelo::nitro::crypto {
11
+
12
+ void HybridMlKemKeyPairSpec::loadHybridMethods() {
13
+ // load base methods/properties
14
+ HybridObject::loadHybridMethods();
15
+ // load custom methods/properties
16
+ registerHybrids(this, [](Prototype& prototype) {
17
+ prototype.registerHybridMethod("setVariant", &HybridMlKemKeyPairSpec::setVariant);
18
+ prototype.registerHybridMethod("generateKeyPair", &HybridMlKemKeyPairSpec::generateKeyPair);
19
+ prototype.registerHybridMethod("generateKeyPairSync", &HybridMlKemKeyPairSpec::generateKeyPairSync);
20
+ prototype.registerHybridMethod("getPublicKey", &HybridMlKemKeyPairSpec::getPublicKey);
21
+ prototype.registerHybridMethod("getPrivateKey", &HybridMlKemKeyPairSpec::getPrivateKey);
22
+ prototype.registerHybridMethod("setPublicKey", &HybridMlKemKeyPairSpec::setPublicKey);
23
+ prototype.registerHybridMethod("setPrivateKey", &HybridMlKemKeyPairSpec::setPrivateKey);
24
+ prototype.registerHybridMethod("encapsulate", &HybridMlKemKeyPairSpec::encapsulate);
25
+ prototype.registerHybridMethod("encapsulateSync", &HybridMlKemKeyPairSpec::encapsulateSync);
26
+ prototype.registerHybridMethod("decapsulate", &HybridMlKemKeyPairSpec::decapsulate);
27
+ prototype.registerHybridMethod("decapsulateSync", &HybridMlKemKeyPairSpec::decapsulateSync);
28
+ });
29
+ }
30
+
31
+ } // namespace margelo::nitro::crypto
@@ -0,0 +1,74 @@
1
+ ///
2
+ /// HybridMlKemKeyPairSpec.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #if __has_include(<NitroModules/HybridObject.hpp>)
11
+ #include <NitroModules/HybridObject.hpp>
12
+ #else
13
+ #error NitroModules cannot be found! Are you sure you installed NitroModules properly?
14
+ #endif
15
+
16
+
17
+
18
+ #include <string>
19
+ #include <NitroModules/Promise.hpp>
20
+ #include <NitroModules/ArrayBuffer.hpp>
21
+
22
+ namespace margelo::nitro::crypto {
23
+
24
+ using namespace margelo::nitro;
25
+
26
+ /**
27
+ * An abstract base class for `MlKemKeyPair`
28
+ * Inherit this class to create instances of `HybridMlKemKeyPairSpec` in C++.
29
+ * You must explicitly call `HybridObject`'s constructor yourself, because it is virtual.
30
+ * @example
31
+ * ```cpp
32
+ * class HybridMlKemKeyPair: public HybridMlKemKeyPairSpec {
33
+ * public:
34
+ * HybridMlKemKeyPair(...): HybridObject(TAG) { ... }
35
+ * // ...
36
+ * };
37
+ * ```
38
+ */
39
+ class HybridMlKemKeyPairSpec: public virtual HybridObject {
40
+ public:
41
+ // Constructor
42
+ explicit HybridMlKemKeyPairSpec(): HybridObject(TAG) { }
43
+
44
+ // Destructor
45
+ ~HybridMlKemKeyPairSpec() override = default;
46
+
47
+ public:
48
+ // Properties
49
+
50
+
51
+ public:
52
+ // Methods
53
+ virtual void setVariant(const std::string& variant) = 0;
54
+ virtual std::shared_ptr<Promise<void>> generateKeyPair(double publicFormat, double publicType, double privateFormat, double privateType) = 0;
55
+ virtual void generateKeyPairSync(double publicFormat, double publicType, double privateFormat, double privateType) = 0;
56
+ virtual std::shared_ptr<ArrayBuffer> getPublicKey() = 0;
57
+ virtual std::shared_ptr<ArrayBuffer> getPrivateKey() = 0;
58
+ virtual void setPublicKey(const std::shared_ptr<ArrayBuffer>& keyData, double format, double type) = 0;
59
+ virtual void setPrivateKey(const std::shared_ptr<ArrayBuffer>& keyData, double format, double type) = 0;
60
+ virtual std::shared_ptr<Promise<std::shared_ptr<ArrayBuffer>>> encapsulate() = 0;
61
+ virtual std::shared_ptr<ArrayBuffer> encapsulateSync() = 0;
62
+ virtual std::shared_ptr<Promise<std::shared_ptr<ArrayBuffer>>> decapsulate(const std::shared_ptr<ArrayBuffer>& ciphertext) = 0;
63
+ virtual std::shared_ptr<ArrayBuffer> decapsulateSync(const std::shared_ptr<ArrayBuffer>& ciphertext) = 0;
64
+
65
+ protected:
66
+ // Hybrid Setup
67
+ void loadHybridMethods() override;
68
+
69
+ protected:
70
+ // Tag for logging
71
+ static constexpr auto TAG = "MlKemKeyPair";
72
+ };
73
+
74
+ } // namespace margelo::nitro::crypto
@@ -0,0 +1,46 @@
1
+ ///
2
+ /// HybridX509CertificateHandleSpec.cpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #include "HybridX509CertificateHandleSpec.hpp"
9
+
10
+ namespace margelo::nitro::crypto {
11
+
12
+ void HybridX509CertificateHandleSpec::loadHybridMethods() {
13
+ // load base methods/properties
14
+ HybridObject::loadHybridMethods();
15
+ // load custom methods/properties
16
+ registerHybrids(this, [](Prototype& prototype) {
17
+ prototype.registerHybridMethod("init", &HybridX509CertificateHandleSpec::init);
18
+ prototype.registerHybridMethod("subject", &HybridX509CertificateHandleSpec::subject);
19
+ prototype.registerHybridMethod("subjectAltName", &HybridX509CertificateHandleSpec::subjectAltName);
20
+ prototype.registerHybridMethod("issuer", &HybridX509CertificateHandleSpec::issuer);
21
+ prototype.registerHybridMethod("infoAccess", &HybridX509CertificateHandleSpec::infoAccess);
22
+ prototype.registerHybridMethod("validFrom", &HybridX509CertificateHandleSpec::validFrom);
23
+ prototype.registerHybridMethod("validTo", &HybridX509CertificateHandleSpec::validTo);
24
+ prototype.registerHybridMethod("validFromDate", &HybridX509CertificateHandleSpec::validFromDate);
25
+ prototype.registerHybridMethod("validToDate", &HybridX509CertificateHandleSpec::validToDate);
26
+ prototype.registerHybridMethod("signatureAlgorithm", &HybridX509CertificateHandleSpec::signatureAlgorithm);
27
+ prototype.registerHybridMethod("signatureAlgorithmOid", &HybridX509CertificateHandleSpec::signatureAlgorithmOid);
28
+ prototype.registerHybridMethod("serialNumber", &HybridX509CertificateHandleSpec::serialNumber);
29
+ prototype.registerHybridMethod("fingerprint", &HybridX509CertificateHandleSpec::fingerprint);
30
+ prototype.registerHybridMethod("fingerprint256", &HybridX509CertificateHandleSpec::fingerprint256);
31
+ prototype.registerHybridMethod("fingerprint512", &HybridX509CertificateHandleSpec::fingerprint512);
32
+ prototype.registerHybridMethod("raw", &HybridX509CertificateHandleSpec::raw);
33
+ prototype.registerHybridMethod("pem", &HybridX509CertificateHandleSpec::pem);
34
+ prototype.registerHybridMethod("publicKey", &HybridX509CertificateHandleSpec::publicKey);
35
+ prototype.registerHybridMethod("keyUsage", &HybridX509CertificateHandleSpec::keyUsage);
36
+ prototype.registerHybridMethod("ca", &HybridX509CertificateHandleSpec::ca);
37
+ prototype.registerHybridMethod("checkIssued", &HybridX509CertificateHandleSpec::checkIssued);
38
+ prototype.registerHybridMethod("checkPrivateKey", &HybridX509CertificateHandleSpec::checkPrivateKey);
39
+ prototype.registerHybridMethod("verify", &HybridX509CertificateHandleSpec::verify);
40
+ prototype.registerHybridMethod("checkHost", &HybridX509CertificateHandleSpec::checkHost);
41
+ prototype.registerHybridMethod("checkEmail", &HybridX509CertificateHandleSpec::checkEmail);
42
+ prototype.registerHybridMethod("checkIP", &HybridX509CertificateHandleSpec::checkIP);
43
+ });
44
+ }
45
+
46
+ } // namespace margelo::nitro::crypto