react-native-quick-crypto 0.7.0 → 0.7.1
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.
- package/android/CMakeLists.txt +2 -0
- package/cpp/Cipher/MGLRsa.cpp +179 -3
- package/cpp/Cipher/MGLRsa.h +40 -0
- package/cpp/JSIUtils/MGLJSIUtils.h +8 -0
- package/cpp/MGLKeys.cpp +41 -43
- package/cpp/MGLKeys.h +9 -2
- package/cpp/MGLQuickCryptoHostObject.cpp +6 -6
- package/cpp/Utils/MGLUtils.cpp +71 -1
- package/cpp/Utils/MGLUtils.h +55 -1
- package/cpp/webcrypto/MGLWebCrypto.cpp +89 -37
- package/cpp/webcrypto/MGLWebCrypto.h +5 -7
- package/cpp/webcrypto/crypto_aes.cpp +516 -0
- package/cpp/webcrypto/crypto_aes.h +79 -0
- package/cpp/webcrypto/crypto_ec.cpp +4 -20
- package/cpp/webcrypto/crypto_ec.h +0 -5
- package/cpp/webcrypto/crypto_keygen.cpp +86 -0
- package/cpp/webcrypto/crypto_keygen.h +38 -0
- package/lib/commonjs/Cipher.js +3 -1
- package/lib/commonjs/Cipher.js.map +1 -1
- package/lib/commonjs/Hashnames.js +20 -8
- package/lib/commonjs/Hashnames.js.map +1 -1
- package/lib/commonjs/NativeQuickCrypto/Cipher.js +13 -1
- package/lib/commonjs/NativeQuickCrypto/Cipher.js.map +1 -1
- package/lib/commonjs/NativeQuickCrypto/NativeQuickCrypto.js.map +1 -1
- package/lib/commonjs/NativeQuickCrypto/aes.js +6 -0
- package/lib/commonjs/NativeQuickCrypto/aes.js.map +1 -0
- package/lib/commonjs/NativeQuickCrypto/keygen.js +6 -0
- package/lib/commonjs/NativeQuickCrypto/keygen.js.map +1 -0
- package/lib/commonjs/NativeQuickCrypto/rsa.js +6 -0
- package/lib/commonjs/NativeQuickCrypto/rsa.js.map +1 -0
- package/lib/commonjs/Utils.js +30 -6
- package/lib/commonjs/Utils.js.map +1 -1
- package/lib/commonjs/aes.js +184 -227
- package/lib/commonjs/aes.js.map +1 -1
- package/lib/commonjs/index.js +12 -2
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/keygen.js +56 -0
- package/lib/commonjs/keygen.js.map +1 -0
- package/lib/commonjs/keys.js +74 -5
- package/lib/commonjs/keys.js.map +1 -1
- package/lib/commonjs/rsa.js +115 -196
- package/lib/commonjs/rsa.js.map +1 -1
- package/lib/commonjs/sig.js.map +1 -1
- package/lib/commonjs/subtle.js +140 -78
- package/lib/commonjs/subtle.js.map +1 -1
- package/lib/commonjs/webcrypto.js +14 -0
- package/lib/commonjs/webcrypto.js.map +1 -0
- package/lib/module/Cipher.js +3 -1
- package/lib/module/Cipher.js.map +1 -1
- package/lib/module/Hashnames.js +20 -8
- package/lib/module/Hashnames.js.map +1 -1
- package/lib/module/NativeQuickCrypto/Cipher.js +12 -0
- package/lib/module/NativeQuickCrypto/Cipher.js.map +1 -1
- package/lib/module/NativeQuickCrypto/NativeQuickCrypto.js.map +1 -1
- package/lib/module/NativeQuickCrypto/aes.js +2 -0
- package/lib/module/NativeQuickCrypto/aes.js.map +1 -0
- package/lib/module/NativeQuickCrypto/keygen.js +2 -0
- package/lib/module/NativeQuickCrypto/keygen.js.map +1 -0
- package/lib/module/NativeQuickCrypto/rsa.js +2 -0
- package/lib/module/NativeQuickCrypto/rsa.js.map +1 -0
- package/lib/module/Utils.js +26 -5
- package/lib/module/Utils.js.map +1 -1
- package/lib/module/aes.js +183 -228
- package/lib/module/aes.js.map +1 -1
- package/lib/module/index.js +11 -2
- package/lib/module/index.js.map +1 -1
- package/lib/module/keygen.js +47 -0
- package/lib/module/keygen.js.map +1 -0
- package/lib/module/keys.js +68 -4
- package/lib/module/keys.js.map +1 -1
- package/lib/module/rsa.js +115 -198
- package/lib/module/rsa.js.map +1 -1
- package/lib/module/sig.js.map +1 -1
- package/lib/module/subtle.js +143 -82
- package/lib/module/subtle.js.map +1 -1
- package/lib/module/webcrypto.js +8 -0
- package/lib/module/webcrypto.js.map +1 -0
- package/lib/typescript/Cipher.d.ts +0 -1
- package/lib/typescript/Cipher.d.ts.map +1 -1
- package/lib/typescript/Hash.d.ts.map +1 -1
- package/lib/typescript/Hashnames.d.ts +2 -2
- package/lib/typescript/Hashnames.d.ts.map +1 -1
- package/lib/typescript/NativeQuickCrypto/Cipher.d.ts +5 -0
- package/lib/typescript/NativeQuickCrypto/Cipher.d.ts.map +1 -1
- package/lib/typescript/NativeQuickCrypto/NativeQuickCrypto.d.ts +4 -1
- package/lib/typescript/NativeQuickCrypto/NativeQuickCrypto.d.ts.map +1 -1
- package/lib/typescript/NativeQuickCrypto/aes.d.ts +5 -0
- package/lib/typescript/NativeQuickCrypto/aes.d.ts.map +1 -0
- package/lib/typescript/NativeQuickCrypto/keygen.d.ts +4 -0
- package/lib/typescript/NativeQuickCrypto/keygen.d.ts.map +1 -0
- package/lib/typescript/NativeQuickCrypto/rsa.d.ts +5 -0
- package/lib/typescript/NativeQuickCrypto/rsa.d.ts.map +1 -0
- package/lib/typescript/NativeQuickCrypto/webcrypto.d.ts +12 -2
- package/lib/typescript/NativeQuickCrypto/webcrypto.d.ts.map +1 -1
- package/lib/typescript/Utils.d.ts +4 -4
- package/lib/typescript/Utils.d.ts.map +1 -1
- package/lib/typescript/aes.d.ts +18 -1
- package/lib/typescript/aes.d.ts.map +1 -1
- package/lib/typescript/ec.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +27 -24
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/keygen.d.ts +6 -0
- package/lib/typescript/keygen.d.ts.map +1 -0
- package/lib/typescript/keys.d.ts +55 -17
- package/lib/typescript/keys.d.ts.map +1 -1
- package/lib/typescript/rsa.d.ts +9 -1
- package/lib/typescript/rsa.d.ts.map +1 -1
- package/lib/typescript/sig.d.ts +3 -17
- package/lib/typescript/sig.d.ts.map +1 -1
- package/lib/typescript/subtle.d.ts +6 -5
- package/lib/typescript/subtle.d.ts.map +1 -1
- package/lib/typescript/webcrypto.d.ts +9 -0
- package/lib/typescript/webcrypto.d.ts.map +1 -0
- package/package.json +2 -2
- package/src/Cipher.ts +1 -1
- package/src/Hashnames.ts +23 -21
- package/src/NativeQuickCrypto/Cipher.ts +32 -0
- package/src/NativeQuickCrypto/NativeQuickCrypto.ts +6 -0
- package/src/NativeQuickCrypto/aes.ts +14 -0
- package/src/NativeQuickCrypto/keygen.ts +7 -0
- package/src/NativeQuickCrypto/rsa.ts +12 -0
- package/src/NativeQuickCrypto/webcrypto.ts +26 -2
- package/src/Utils.ts +37 -8
- package/src/aes.ts +259 -222
- package/src/index.ts +10 -1
- package/src/keygen.ts +80 -0
- package/src/keys.ts +139 -30
- package/src/rsa.ts +161 -187
- package/src/sig.ts +7 -23
- package/src/subtle.ts +211 -93
- package/src/webcrypto.ts +8 -0
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
#ifndef crypto_aes_h
|
|
2
|
+
#define crypto_aes_h
|
|
3
|
+
|
|
4
|
+
#include <jsi/jsi.h>
|
|
5
|
+
|
|
6
|
+
#include "MGLKeys.h"
|
|
7
|
+
#ifdef ANDROID
|
|
8
|
+
#include "Utils/MGLUtils.h"
|
|
9
|
+
#else
|
|
10
|
+
#include "MGLUtils.h"
|
|
11
|
+
#endif
|
|
12
|
+
|
|
13
|
+
namespace margelo {
|
|
14
|
+
|
|
15
|
+
namespace jsi = facebook::jsi;
|
|
16
|
+
|
|
17
|
+
constexpr size_t kAesBlockSize = 16;
|
|
18
|
+
constexpr unsigned kNoAuthTagLength = static_cast<unsigned>(-1);
|
|
19
|
+
constexpr const char* kDefaultWrapIV = "\xa6\xa6\xa6\xa6\xa6\xa6\xa6\xa6";
|
|
20
|
+
|
|
21
|
+
#define VARIANTS(V) \
|
|
22
|
+
V(CTR_128, AES_CTR_Cipher) \
|
|
23
|
+
V(CTR_192, AES_CTR_Cipher) \
|
|
24
|
+
V(CTR_256, AES_CTR_Cipher) \
|
|
25
|
+
V(CBC_128, AES_Cipher) \
|
|
26
|
+
V(CBC_192, AES_Cipher) \
|
|
27
|
+
V(CBC_256, AES_Cipher) \
|
|
28
|
+
V(GCM_128, AES_Cipher) \
|
|
29
|
+
V(GCM_192, AES_Cipher) \
|
|
30
|
+
V(GCM_256, AES_Cipher) \
|
|
31
|
+
V(KW_128, AES_Cipher) \
|
|
32
|
+
V(KW_192, AES_Cipher) \
|
|
33
|
+
V(KW_256, AES_Cipher)
|
|
34
|
+
|
|
35
|
+
enum AESKeyVariant {
|
|
36
|
+
#define V(name, _) kKeyVariantAES_ ## name,
|
|
37
|
+
VARIANTS(V)
|
|
38
|
+
#undef V
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
struct AESCipherConfig final {
|
|
42
|
+
enum Mode {
|
|
43
|
+
kEncrypt,
|
|
44
|
+
kDecrypt,
|
|
45
|
+
// kWrapKey,
|
|
46
|
+
// kUnwrapKey,
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
Mode mode;
|
|
50
|
+
AESKeyVariant variant;
|
|
51
|
+
std::shared_ptr<KeyObjectData> key;
|
|
52
|
+
ByteSource data;
|
|
53
|
+
const EVP_CIPHER* cipher;
|
|
54
|
+
ByteSource iv; // Used for both iv or counter
|
|
55
|
+
size_t length;
|
|
56
|
+
ByteSource tag; // Used only for authenticated modes (GCM)
|
|
57
|
+
ByteSource additional_data;
|
|
58
|
+
|
|
59
|
+
AESCipherConfig() = default;
|
|
60
|
+
|
|
61
|
+
// AESCipherConfig(AESCipherConfig&& other) noexcept;
|
|
62
|
+
|
|
63
|
+
// AESCipherConfig& operator=(AESCipherConfig&& other) noexcept;
|
|
64
|
+
|
|
65
|
+
// void MemoryInfo(MemoryTracker* tracker) const override;
|
|
66
|
+
// SET_MEMORY_INFO_NAME(AESCipherConfig)
|
|
67
|
+
// SET_SELF_SIZE(AESCipherConfig)
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
class AESCipher {
|
|
71
|
+
public:
|
|
72
|
+
AESCipher() {}
|
|
73
|
+
AESCipherConfig GetParamsFromJS(jsi::Runtime &rt, const jsi::Value *args);
|
|
74
|
+
WebCryptoCipherStatus DoCipher(const AESCipherConfig ¶ms, ByteSource *out);
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
} // namespace margelo
|
|
78
|
+
|
|
79
|
+
#endif // crypto_aes_h
|
|
@@ -61,10 +61,10 @@ WebCryptoKeyExportStatus ECDH::doExport(jsi::Runtime &rt,
|
|
|
61
61
|
switch (format) {
|
|
62
62
|
case kWebCryptoKeyFormatRaw:
|
|
63
63
|
return EC_Raw_Export(key_data.get(), params, out);
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
64
|
+
case kWebCryptoKeyFormatPKCS8:
|
|
65
|
+
if (key_data->GetKeyType() != kKeyTypePrivate)
|
|
66
|
+
return WebCryptoKeyExportStatus::INVALID_KEY_TYPE;
|
|
67
|
+
return PKEY_PKCS8_Export(key_data.get(), out);
|
|
68
68
|
case kWebCryptoKeyFormatSPKI: {
|
|
69
69
|
if (key_data->GetKeyType() != kKeyTypePublic)
|
|
70
70
|
throw std::runtime_error("Invalid type public to be exported");
|
|
@@ -122,22 +122,6 @@ WebCryptoKeyExportStatus ECDH::doExport(jsi::Runtime &rt,
|
|
|
122
122
|
}
|
|
123
123
|
}
|
|
124
124
|
|
|
125
|
-
WebCryptoKeyExportStatus PKEY_SPKI_Export(KeyObjectData* key_data,
|
|
126
|
-
ByteSource* out) {
|
|
127
|
-
CHECK_EQ(key_data->GetKeyType(), kKeyTypePublic);
|
|
128
|
-
ManagedEVPPKey m_pkey = key_data->GetAsymmetricKey();
|
|
129
|
-
// Mutex::ScopedLock lock(*m_pkey.mutex());
|
|
130
|
-
BIOPointer bio(BIO_new(BIO_s_mem()));
|
|
131
|
-
CHECK(bio);
|
|
132
|
-
if (!i2d_PUBKEY_bio(bio.get(), m_pkey.get())) {
|
|
133
|
-
throw std::runtime_error("Failed to export key");
|
|
134
|
-
return WebCryptoKeyExportStatus::FAILED;
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
*out = ByteSource::FromBIO(bio);
|
|
138
|
-
return WebCryptoKeyExportStatus::OK;
|
|
139
|
-
}
|
|
140
|
-
|
|
141
125
|
WebCryptoKeyExportStatus EC_Raw_Export(KeyObjectData* key_data,
|
|
142
126
|
const ECKeyExportConfig& params,
|
|
143
127
|
ByteSource* out) {
|
|
@@ -14,11 +14,9 @@
|
|
|
14
14
|
#include "MGLKeys.h"
|
|
15
15
|
#ifdef ANDROID
|
|
16
16
|
#include "Utils/MGLUtils.h"
|
|
17
|
-
#include "webcrypto/MGLWebCrypto.h"
|
|
18
17
|
#include "JSIUtils/MGLJSIUtils.h"
|
|
19
18
|
#else
|
|
20
19
|
#include "MGLUtils.h"
|
|
21
|
-
#include "MGLWebCrypto.h"
|
|
22
20
|
#include "MGLJSIUtils.h"
|
|
23
21
|
#endif
|
|
24
22
|
|
|
@@ -44,9 +42,6 @@ class ECDH final {
|
|
|
44
42
|
ByteSource* out);
|
|
45
43
|
};
|
|
46
44
|
|
|
47
|
-
WebCryptoKeyExportStatus PKEY_SPKI_Export(KeyObjectData* key_data,
|
|
48
|
-
ByteSource* out);
|
|
49
|
-
|
|
50
45
|
WebCryptoKeyExportStatus EC_Raw_Export(KeyObjectData* key_data,
|
|
51
46
|
const ECKeyExportConfig ¶ms,
|
|
52
47
|
ByteSource* out);
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
#include "crypto_keygen.h"
|
|
2
|
+
|
|
3
|
+
#ifdef ANDROID
|
|
4
|
+
#include "JSIUtils/MGLJSIMacros.h"
|
|
5
|
+
#include "JSIUtils/MGLJSIUtils.h"
|
|
6
|
+
#include "Utils/MGLUtils.h"
|
|
7
|
+
#else
|
|
8
|
+
#include "MGLJSIMacros.h"
|
|
9
|
+
#include "MGLJSIUtils.h"
|
|
10
|
+
#include "MGLUtils.h"
|
|
11
|
+
#endif
|
|
12
|
+
|
|
13
|
+
namespace margelo {
|
|
14
|
+
|
|
15
|
+
FieldDefinition GenerateSecretKeyFieldDefinition(
|
|
16
|
+
std::shared_ptr<react::CallInvoker> jsCallInvoker,
|
|
17
|
+
std::shared_ptr<DispatchQueue::dispatch_queue> workerQueue) {
|
|
18
|
+
return buildPair(
|
|
19
|
+
"generateSecretKey", JSIF([=]) {
|
|
20
|
+
auto skg = new SecretKeyGen();
|
|
21
|
+
CHECK(skg->GetParamsFromJS(runtime, arguments));
|
|
22
|
+
// make and return a promise
|
|
23
|
+
auto promiseConstructor = runtime.global().getPropertyAsFunction(runtime, "Promise");
|
|
24
|
+
auto promise = promiseConstructor.callAsConstructor(
|
|
25
|
+
runtime,
|
|
26
|
+
jsi::Function::createFromHostFunction(
|
|
27
|
+
runtime,
|
|
28
|
+
jsi::PropNameID::forAscii(runtime, "executor"),
|
|
29
|
+
2,
|
|
30
|
+
[&jsCallInvoker, skg](
|
|
31
|
+
jsi::Runtime &runtime, const jsi::Value &,
|
|
32
|
+
const jsi::Value *promiseArgs, size_t) -> jsi::Value {
|
|
33
|
+
auto resolve = std::make_shared<jsi::Value>(runtime, promiseArgs[0]);
|
|
34
|
+
auto reject = std::make_shared<jsi::Value>(runtime, promiseArgs[1]);
|
|
35
|
+
try {
|
|
36
|
+
jsCallInvoker->invokeAsync([&runtime, resolve, skg]() {
|
|
37
|
+
if (skg->DoKeyGen()) {
|
|
38
|
+
auto res = jsi::Object::createFromHostObject(runtime, skg->GetHandle());
|
|
39
|
+
resolve->asObject(runtime).asFunction(runtime).call(runtime, std::move(res));
|
|
40
|
+
} else {
|
|
41
|
+
throw std::runtime_error("Error generating key");
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
} catch (std::exception e) {
|
|
45
|
+
jsCallInvoker->invokeAsync([&runtime, reject, e]() {
|
|
46
|
+
auto res = jsi::String::createFromUtf8(runtime, e.what());
|
|
47
|
+
reject->asObject(runtime).asFunction(runtime).call(runtime, std::move(res));
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
return {};
|
|
51
|
+
}
|
|
52
|
+
)
|
|
53
|
+
);
|
|
54
|
+
return promise;
|
|
55
|
+
});
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
bool SecretKeyGen::GetParamsFromJS(jsi::Runtime &rt, const jsi::Value *args) {
|
|
59
|
+
SecretKeyGenConfig params;
|
|
60
|
+
unsigned int offset = 0;
|
|
61
|
+
|
|
62
|
+
// length
|
|
63
|
+
CHECK(CheckIsUint32(args[offset]));
|
|
64
|
+
uint32_t bits = (uint32_t)args[offset].asNumber();
|
|
65
|
+
params.length = bits / CHAR_BIT;
|
|
66
|
+
|
|
67
|
+
this->params_ = std::move(params);
|
|
68
|
+
return true;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
bool SecretKeyGen::DoKeyGen() {
|
|
72
|
+
// TODO: threading / async here, as we don't have jsi::Runtime
|
|
73
|
+
ByteSource::Builder bytes(this->params_.length);
|
|
74
|
+
if (CSPRNG(bytes.data<unsigned char>(), this->params_.length).is_err())
|
|
75
|
+
return false;
|
|
76
|
+
auto key_data = std::move(bytes).release();
|
|
77
|
+
this->key_ = KeyObjectData::CreateSecret(std::move(key_data));
|
|
78
|
+
return true;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
std::shared_ptr<KeyObjectHandle> SecretKeyGen::GetHandle() {
|
|
82
|
+
auto handle = KeyObjectHandle::Create(this->key_);
|
|
83
|
+
return handle;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
} // namespace margelo
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
#ifndef crypto_keygen_h
|
|
2
|
+
#define crypto_keygen_h
|
|
3
|
+
|
|
4
|
+
#include <jsi/jsi.h>
|
|
5
|
+
|
|
6
|
+
#include "MGLKeys.h"
|
|
7
|
+
#ifdef ANDROID
|
|
8
|
+
#include "Utils/MGLUtils.h"
|
|
9
|
+
#else
|
|
10
|
+
#include "MGLUtils.h"
|
|
11
|
+
#endif
|
|
12
|
+
|
|
13
|
+
namespace margelo {
|
|
14
|
+
|
|
15
|
+
namespace jsi = facebook::jsi;
|
|
16
|
+
|
|
17
|
+
FieldDefinition GenerateSecretKeyFieldDefinition(
|
|
18
|
+
std::shared_ptr<react::CallInvoker> jsCallInvoker,
|
|
19
|
+
std::shared_ptr<DispatchQueue::dispatch_queue> workerQueue);
|
|
20
|
+
|
|
21
|
+
struct SecretKeyGenConfig {
|
|
22
|
+
size_t length; // in bytes
|
|
23
|
+
SecretKeyGenConfig() = default;
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
class SecretKeyGen {
|
|
27
|
+
public:
|
|
28
|
+
bool GetParamsFromJS(jsi::Runtime &rt, const jsi::Value *args);
|
|
29
|
+
bool DoKeyGen();
|
|
30
|
+
std::shared_ptr<KeyObjectHandle> GetHandle();
|
|
31
|
+
private:
|
|
32
|
+
SecretKeyGenConfig params_;
|
|
33
|
+
std::shared_ptr<KeyObjectData> key_;
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
} // namespace margelo
|
|
37
|
+
|
|
38
|
+
#endif // crypto_keygen_h
|
package/lib/commonjs/Cipher.js
CHANGED
|
@@ -285,7 +285,9 @@ function internalGenerateKeyPair(isAsync, type, options, callback) {
|
|
|
285
285
|
}
|
|
286
286
|
if (type === 'rsa') {
|
|
287
287
|
if (isAsync) {
|
|
288
|
-
_NativeQuickCrypto.NativeQuickCrypto.generateKeyPair(_Cipher.KeyVariant.RSA_SSA_PKCS1_v1_5,
|
|
288
|
+
_NativeQuickCrypto.NativeQuickCrypto.generateKeyPair(_Cipher.KeyVariant.RSA_SSA_PKCS1_v1_5,
|
|
289
|
+
// Used also for RSA-OAEP
|
|
290
|
+
modulusLength, publicExponent, ...encoding).then(([err, publicKey, privateKey]) => {
|
|
289
291
|
if (publicKey instanceof _reactNativeBuffer.Buffer) {
|
|
290
292
|
publicKey = _reactNativeBuffer.Buffer.from(publicKey);
|
|
291
293
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_NativeQuickCrypto","require","_readableStream","_interopRequireDefault","_Utils","_Cipher","_string_decoder","_reactNativeBuffer","_safeBuffer","_constants","_keys","obj","__esModule","default","ECCurve","exports","global","process","nextTick","setImmediate","createInternalCipher","NativeQuickCrypto","createCipher","createInternalDecipher","createDecipher","_publicEncrypt","publicEncrypt","_publicDecrypt","publicDecrypt","_privateDecrypt","privateDecrypt","getUIntOption","options","key","value","Error","normalizeEncoding","enc","retried","toLowerCase","validateEncoding","data","encoding","normalizedEncoding","length","getDecoder","decoder","StringDecoder","CipherCommon","Stream","Transform","constructor","cipherType","cipherKey","isCipher","iv","cipherKeyBuffer","binaryLikeToArrayBuffer","authTagLength","args","cipher_type","cipher_key","auth_tag_len","internal","update","inputEncoding","outputEncoding","defaultEncoding","getDefaultEncoding","ArrayBuffer","isView","ret","write","SBuffer","from","final","end","_transform","chunk","callback","push","_flush","setAutoPadding","autoPadding","setAAD","buffer","plaintextLength","getAuthTag","setAuthTag","tag","Cipher","Decipher","algorithm","password","createDecipheriv","createCipheriv","rsaFunctionFor","method","defaultPadding","keyType","format","type","passphrase","preparePrivateKey","preparePublicOrPrivateKey","padding","oaepHash","oaepLabel","undefined","validateString","rawRes","Buffer","constants","RSA_PKCS1_OAEP_PADDING","RSA_PKCS1_PADDING","parseKeyEncoding","kEmptyObject","publicKeyEncoding","privateKeyEncoding","publicFormat","publicType","parsePublicKeyEncoding","privateFormat","privateType","cipher","parsePrivateKeyEncoding","internalGenerateKeyPair","isAsync","validateObject","modulusLength","validateUint32","publicExponent","generateKeyPair","KeyVariant","RSA_SSA_PKCS1_v1_5","then","err","publicKey","privateKey","catch","generateKeyPairSync","hash","mgf1Hash","hashAlgorithm","mgf1HashAlgorithm","saltLength","validateInt32","RSA_PSS","namedCurve","paramEncodingFlag","OPENSSL_EC_NAMED_CURVE","paramEncoding","OPENSSL_EC_EXPLICIT_CURVE","EC","validateFunction","generateKeyPairPromise","Promise","resolve","reject","_"],"sourceRoot":"../../src","sources":["Cipher.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_NativeQuickCrypto","require","_readableStream","_interopRequireDefault","_Utils","_Cipher","_string_decoder","_reactNativeBuffer","_safeBuffer","_constants","_keys","obj","__esModule","default","ECCurve","exports","global","process","nextTick","setImmediate","createInternalCipher","NativeQuickCrypto","createCipher","createInternalDecipher","createDecipher","_publicEncrypt","publicEncrypt","_publicDecrypt","publicDecrypt","_privateDecrypt","privateDecrypt","getUIntOption","options","key","value","Error","normalizeEncoding","enc","retried","toLowerCase","validateEncoding","data","encoding","normalizedEncoding","length","getDecoder","decoder","StringDecoder","CipherCommon","Stream","Transform","constructor","cipherType","cipherKey","isCipher","iv","cipherKeyBuffer","binaryLikeToArrayBuffer","authTagLength","args","cipher_type","cipher_key","auth_tag_len","internal","update","inputEncoding","outputEncoding","defaultEncoding","getDefaultEncoding","ArrayBuffer","isView","ret","write","SBuffer","from","final","end","_transform","chunk","callback","push","_flush","setAutoPadding","autoPadding","setAAD","buffer","plaintextLength","getAuthTag","setAuthTag","tag","Cipher","Decipher","algorithm","password","createDecipheriv","createCipheriv","rsaFunctionFor","method","defaultPadding","keyType","format","type","passphrase","preparePrivateKey","preparePublicOrPrivateKey","padding","oaepHash","oaepLabel","undefined","validateString","rawRes","Buffer","constants","RSA_PKCS1_OAEP_PADDING","RSA_PKCS1_PADDING","parseKeyEncoding","kEmptyObject","publicKeyEncoding","privateKeyEncoding","publicFormat","publicType","parsePublicKeyEncoding","privateFormat","privateType","cipher","parsePrivateKeyEncoding","internalGenerateKeyPair","isAsync","validateObject","modulusLength","validateUint32","publicExponent","generateKeyPair","KeyVariant","RSA_SSA_PKCS1_v1_5","then","err","publicKey","privateKey","catch","generateKeyPairSync","hash","mgf1Hash","hashAlgorithm","mgf1HashAlgorithm","saltLength","validateInt32","RSA_PSS","namedCurve","paramEncodingFlag","OPENSSL_EC_NAMED_CURVE","paramEncoding","OPENSSL_EC_EXPLICIT_CURVE","EC","validateFunction","generateKeyPairPromise","Promise","resolve","reject","_"],"sourceRoot":"../../src","sources":["Cipher.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -26,6 +26,14 @@ const kHashNames = {
|
|
|
26
26
|
[HashContext.JwkRsaOaep]: 'RSA-OAEP',
|
|
27
27
|
[HashContext.JwkHmac]: 'HS1'
|
|
28
28
|
},
|
|
29
|
+
sha224: {
|
|
30
|
+
[HashContext.Node]: 'sha224',
|
|
31
|
+
[HashContext.WebCrypto]: 'SHA-224',
|
|
32
|
+
[HashContext.JwkRsa]: 'RS224',
|
|
33
|
+
[HashContext.JwkRsaPss]: 'PS224',
|
|
34
|
+
[HashContext.JwkRsaOaep]: 'RSA-OAEP-224',
|
|
35
|
+
[HashContext.JwkHmac]: 'HS224'
|
|
36
|
+
},
|
|
29
37
|
sha256: {
|
|
30
38
|
[HashContext.Node]: 'sha256',
|
|
31
39
|
[HashContext.WebCrypto]: 'SHA-256',
|
|
@@ -49,6 +57,10 @@ const kHashNames = {
|
|
|
49
57
|
[HashContext.JwkRsaPss]: 'PS512',
|
|
50
58
|
[HashContext.JwkRsaOaep]: 'RSA-OAEP-512',
|
|
51
59
|
[HashContext.JwkHmac]: 'HS512'
|
|
60
|
+
},
|
|
61
|
+
ripemd160: {
|
|
62
|
+
[HashContext.Node]: 'ripemd160',
|
|
63
|
+
[HashContext.WebCrypto]: 'RIPEMD-160'
|
|
52
64
|
}
|
|
53
65
|
};
|
|
54
66
|
{
|
|
@@ -63,13 +75,13 @@ const kHashNames = {
|
|
|
63
75
|
}
|
|
64
76
|
}
|
|
65
77
|
function normalizeHashName(algo, context = HashContext.Node) {
|
|
66
|
-
if (typeof algo
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
}
|
|
73
|
-
|
|
78
|
+
if (typeof algo !== 'undefined') {
|
|
79
|
+
const normAlgo = algo.toString().toLowerCase();
|
|
80
|
+
try {
|
|
81
|
+
const alias = kHashNames[normAlgo][context];
|
|
82
|
+
if (alias) return alias;
|
|
83
|
+
} catch (_e) {}
|
|
84
|
+
}
|
|
85
|
+
throw new Error(`Invalid Hash Algorithm: ${algo}`);
|
|
74
86
|
}
|
|
75
87
|
//# sourceMappingURL=Hashnames.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["HashContext","exports","kHashNames","sha1","Node","WebCrypto","JwkRsa","JwkRsaPss","JwkRsaOaep","JwkHmac","sha256","sha384","sha512","keys","Object","n","length","contexts","i","alias","toLowerCase","undefined","normalizeHashName","algo","context","
|
|
1
|
+
{"version":3,"names":["HashContext","exports","kHashNames","sha1","Node","WebCrypto","JwkRsa","JwkRsaPss","JwkRsaOaep","JwkHmac","sha224","sha256","sha384","sha512","ripemd160","keys","Object","n","length","contexts","i","alias","toLowerCase","undefined","normalizeHashName","algo","context","normAlgo","toString","_e","Error"],"sourceRoot":"../../src","sources":["Hashnames.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.KeyVariant = void 0;
|
|
6
|
+
exports.KeyVariantLookup = exports.KeyVariant = void 0;
|
|
7
7
|
// TODO: until shared, keep in sync with C++ side (cpp/Utils/MGLUtils.h)
|
|
8
8
|
let KeyVariant = exports.KeyVariant = /*#__PURE__*/function (KeyVariant) {
|
|
9
9
|
KeyVariant[KeyVariant["RSA_SSA_PKCS1_v1_5"] = 0] = "RSA_SSA_PKCS1_v1_5";
|
|
@@ -15,4 +15,16 @@ let KeyVariant = exports.KeyVariant = /*#__PURE__*/function (KeyVariant) {
|
|
|
15
15
|
KeyVariant[KeyVariant["DH"] = 6] = "DH";
|
|
16
16
|
return KeyVariant;
|
|
17
17
|
}({});
|
|
18
|
+
const KeyVariantLookup = exports.KeyVariantLookup = {
|
|
19
|
+
'RSASSA-PKCS1-v1_5': KeyVariant.RSA_SSA_PKCS1_v1_5,
|
|
20
|
+
'RSA-PSS': KeyVariant.RSA_PSS,
|
|
21
|
+
'RSA-OAEP': KeyVariant.RSA_OAEP,
|
|
22
|
+
'ECDSA': KeyVariant.DSA,
|
|
23
|
+
'ECDH': KeyVariant.EC,
|
|
24
|
+
'Ed25519': KeyVariant.NID,
|
|
25
|
+
'Ed448': KeyVariant.NID,
|
|
26
|
+
'X25519': KeyVariant.NID,
|
|
27
|
+
'X448': KeyVariant.NID,
|
|
28
|
+
'DH': KeyVariant.DH
|
|
29
|
+
};
|
|
18
30
|
//# sourceMappingURL=Cipher.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["KeyVariant","exports"],"sourceRoot":"../../../src","sources":["NativeQuickCrypto/Cipher.ts"],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"names":["KeyVariant","exports","KeyVariantLookup","RSA_SSA_PKCS1_v1_5","RSA_PSS","RSA_OAEP","DSA","EC","NID","DH"],"sourceRoot":"../../../src","sources":["NativeQuickCrypto/Cipher.ts"],"mappings":";;;;;;AAUA;AAAA,IACYA,UAAU,GAAAC,OAAA,CAAAD,UAAA,0BAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAA,OAAVA,UAAU;AAAA;AAUf,MAAME,gBAA4C,GAAAD,OAAA,CAAAC,gBAAA,GAAG;EAC1D,mBAAmB,EAAEF,UAAU,CAACG,kBAAkB;EAClD,SAAS,EAAEH,UAAU,CAACI,OAAO;EAC7B,UAAU,EAAEJ,UAAU,CAACK,QAAQ;EAC/B,OAAO,EAAEL,UAAU,CAACM,GAAG;EACvB,MAAM,EAAEN,UAAU,CAACO,EAAE;EACrB,SAAS,EAAEP,UAAU,CAACQ,GAAG;EACzB,OAAO,EAAER,UAAU,CAACQ,GAAG;EACvB,QAAQ,EAAER,UAAU,CAACQ,GAAG;EACxB,MAAM,EAAER,UAAU,CAACQ,GAAG;EACtB,IAAI,EAAER,UAAU,CAACS;AACnB,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","global","__QuickCryptoProxy","QuickCryptoModule","NativeModules","QuickCrypto","message","Platform","OS","ExpoConstants","NativeUnimoduleProxy","modulesConstants","ExponentConstants","appOwnership","Error","nativeCallSyncHook","install","result","proxy","NativeQuickCrypto","exports"],"sourceRoot":"../../../src","sources":["NativeQuickCrypto/NativeQuickCrypto.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;
|
|
1
|
+
{"version":3,"names":["_reactNative","require","global","__QuickCryptoProxy","QuickCryptoModule","NativeModules","QuickCrypto","message","Platform","OS","ExpoConstants","NativeUnimoduleProxy","modulesConstants","ExponentConstants","appOwnership","Error","nativeCallSyncHook","install","result","proxy","NativeQuickCrypto","exports"],"sourceRoot":"../../../src","sources":["NativeQuickCrypto/NativeQuickCrypto.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAuCA;;AAMA;AACA,IAAIC,MAAM,CAACC,kBAAkB,IAAI,IAAI,EAAE;EACrC;EACA,MAAMC,iBAAiB,GAAGC,0BAAa,CAACC,WAAW;EACnD,IAAIF,iBAAiB,IAAI,IAAI,EAAE;IAC7B,IAAIG,OAAO,GACT,kGAAkG;IACpGA,OAAO,IACL,2GAA2G;IAC7G,IAAIC,qBAAQ,CAACC,EAAE,KAAK,KAAK,IAAID,qBAAQ,CAACC,EAAE,KAAK,OAAO,EAAE;MACpDF,OAAO,IAAI,4DAA4D;IACzE;IACA,IAAIC,qBAAQ,CAACC,EAAE,KAAK,SAAS,EAAE;MAC7BF,OAAO,IAAI,iCAAiC;IAC9C;IACA;IACA,MAAMG,aAAa,GACjBL,0BAAa,CAACM,oBAAoB,EAAEC,gBAAgB,EAAEC,iBAAiB;IACzE,IAAIH,aAAa,IAAI,IAAI,EAAE;MACzB,IAAIA,aAAa,CAACI,YAAY,KAAK,MAAM,EAAE;QACzC;QACA,MAAM,IAAIC,KAAK,CACb,uHACF,CAAC;MACH,CAAC,MAAM;QACL;QACAR,OAAO,IAAI,wCAAwC;MACrD;IACF;IAEAA,OAAO,IAAI,oCAAoC;IAC/C,MAAM,IAAIQ,KAAK,CAACR,OAAO,CAAC;EAC1B;;EAEA;EACA,IAAIL,MAAM,CAACc,kBAAkB,IAAI,IAAI,IAAIZ,iBAAiB,CAACa,OAAO,IAAI,IAAI,EAAE;IAC1E,MAAM,IAAIF,KAAK,CACb,oRACF,CAAC;EACH;;EAEA;EACA,MAAMG,MAAM,GAAGd,iBAAiB,CAACa,OAAO,CAAC,CAAC;EAC1C,IAAIC,MAAM,KAAK,IAAI,EACjB,MAAM,IAAIH,KAAK,CACZ,oKAAmKG,MAAO,EAC7K,CAAC;;EAEH;EACA,IAAIhB,MAAM,CAACC,kBAAkB,IAAI,IAAI,EACnC,MAAM,IAAIY,KAAK,CACb,4JACF,CAAC;AACL;AAEA,MAAMI,KAAK,GAAGjB,MAAM,CAACC,kBAAkB;AAChC,MAAMiB,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,GAAGD,KAAqC","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["NativeQuickCrypto/aes.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["NativeQuickCrypto/keygen.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["NativeQuickCrypto/rsa.ts"],"mappings":"","ignoreList":[]}
|
package/lib/commonjs/Utils.js
CHANGED
|
@@ -25,10 +25,12 @@ var _exportNames = {
|
|
|
25
25
|
validateByteLength: true,
|
|
26
26
|
getUsagesUnion: true,
|
|
27
27
|
validateKeyOps: true,
|
|
28
|
+
bigIntArrayToUnsignedInt: true,
|
|
28
29
|
getHashes: true,
|
|
29
30
|
getCiphers: true
|
|
30
31
|
};
|
|
31
32
|
exports.ab2str = ab2str;
|
|
33
|
+
exports.bigIntArrayToUnsignedInt = void 0;
|
|
32
34
|
exports.binaryLikeToArrayBuffer = binaryLikeToArrayBuffer;
|
|
33
35
|
exports.bufferLikeToArrayBuffer = bufferLikeToArrayBuffer;
|
|
34
36
|
exports.getCiphers = void 0;
|
|
@@ -204,10 +206,10 @@ function validateString(str, name) {
|
|
|
204
206
|
return isString;
|
|
205
207
|
}
|
|
206
208
|
function validateFunction(f) {
|
|
207
|
-
return f
|
|
209
|
+
return f !== null && typeof f === 'function';
|
|
208
210
|
}
|
|
209
211
|
function isStringOrBuffer(val) {
|
|
210
|
-
return typeof val === 'string' || ArrayBuffer.isView(val);
|
|
212
|
+
return typeof val === 'string' || ArrayBuffer.isView(val) || val instanceof ArrayBuffer;
|
|
211
213
|
}
|
|
212
214
|
function validateObject(value, name, options) {
|
|
213
215
|
const useDefaultOptions = options == null;
|
|
@@ -425,9 +427,11 @@ const validateMaxBufferLength = (data, name) => {
|
|
|
425
427
|
// https://github.com/denoland/deno/blob/v1.29.1/ext/crypto/00_crypto.js#L195
|
|
426
428
|
exports.validateMaxBufferLength = validateMaxBufferLength;
|
|
427
429
|
const normalizeAlgorithm = (algorithm, op) => {
|
|
428
|
-
if (typeof algorithm === 'string')
|
|
429
|
-
|
|
430
|
-
|
|
430
|
+
if (typeof algorithm === 'string') {
|
|
431
|
+
return normalizeAlgorithm({
|
|
432
|
+
name: algorithm
|
|
433
|
+
}, op);
|
|
434
|
+
}
|
|
431
435
|
|
|
432
436
|
// 1.
|
|
433
437
|
const registeredAlgorithms = kSupportedAlgorithms[op];
|
|
@@ -571,9 +575,29 @@ const validateKeyOps = (keyOps, usagesSet) => {
|
|
|
571
575
|
}
|
|
572
576
|
};
|
|
573
577
|
|
|
578
|
+
// In WebCrypto, the publicExponent option in RSA is represented as a
|
|
579
|
+
// WebIDL "BigInteger"... that is, a Uint8Array that allows an arbitrary
|
|
580
|
+
// number of leading zero bits. Our conventional APIs for reading
|
|
581
|
+
// an unsigned int from a Buffer are not adequate. The implementation
|
|
582
|
+
// here is adapted from the chromium implementation here:
|
|
583
|
+
// https://github.com/chromium/chromium/blob/HEAD/third_party/blink/public/platform/web_crypto_algorithm_params.h, but ported to JavaScript
|
|
584
|
+
// Returns undefined if the conversion was unsuccessful.
|
|
585
|
+
exports.validateKeyOps = validateKeyOps;
|
|
586
|
+
const bigIntArrayToUnsignedInt = input => {
|
|
587
|
+
let result = 0;
|
|
588
|
+
for (let n = 0; n < input.length; ++n) {
|
|
589
|
+
const n_reversed = input.length - n - 1;
|
|
590
|
+
if (n_reversed >= 4 && input[n]) return; // Too large
|
|
591
|
+
// @ts-ignore
|
|
592
|
+
// eslint-disable-next-line no-bitwise
|
|
593
|
+
result |= input[n] << 8 * n_reversed;
|
|
594
|
+
}
|
|
595
|
+
return result;
|
|
596
|
+
};
|
|
597
|
+
|
|
574
598
|
// TODO: these used to be shipped by crypto-browserify in quickcrypto v0.6
|
|
575
599
|
// could instead fetch from OpenSSL if needed and handle breaking changes
|
|
576
|
-
exports.
|
|
600
|
+
exports.bigIntArrayToUnsignedInt = bigIntArrayToUnsignedInt;
|
|
577
601
|
const getHashes = () => ['sha1', 'sha224', 'sha256', 'sha384', 'sha512', 'md5', 'rmd160', 'sha224WithRSAEncryption', 'RSA-SHA224', 'sha256WithRSAEncryption', 'RSA-SHA256', 'sha384WithRSAEncryption', 'RSA-SHA384', 'sha512WithRSAEncryption', 'RSA-SHA512', 'RSA-SHA1', 'ecdsa-with-SHA1', 'sha256', 'sha224', 'sha384', 'sha512', 'DSA-SHA', 'DSA-SHA1', 'DSA', 'DSA-WITH-SHA224', 'DSA-SHA224', 'DSA-WITH-SHA256', 'DSA-SHA256', 'DSA-WITH-SHA384', 'DSA-SHA384', 'DSA-WITH-SHA512', 'DSA-SHA512', 'DSA-RIPEMD160', 'ripemd160WithRSA', 'RSA-RIPEMD160', 'md5WithRSAEncryption', 'RSA-MD5'];
|
|
578
602
|
|
|
579
603
|
// TODO: these used to be shipped by crypto-browserify in quickcrypto v0.6
|