@tidecloak/js 0.11.5 → 0.12.14
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/dist/cjs/modules/tide-js/Clients/EnclaveToMobileTunnelClient.js +55 -0
- package/dist/cjs/modules/tide-js/Clients/EnclaveToMobileTunnelClient.js.map +1 -0
- package/dist/cjs/modules/tide-js/Clients/NodeClient.js +72 -31
- package/dist/cjs/modules/tide-js/Clients/NodeClient.js.map +1 -1
- package/dist/cjs/modules/tide-js/Clients/WebSocketClientBase.js +51 -0
- package/dist/cjs/modules/tide-js/Clients/WebSocketClientBase.js.map +1 -0
- package/dist/cjs/modules/tide-js/Cryptide/Components/Schemes/Ed25519/Ed25519Components.js +3 -3
- package/dist/cjs/modules/tide-js/Cryptide/Components/Schemes/Ed25519/Ed25519Components.js.map +1 -1
- package/dist/cjs/modules/tide-js/Cryptide/Components/Schemes/Ed25519/Ed25519Scheme.js +21 -0
- package/dist/cjs/modules/tide-js/Cryptide/Components/Schemes/Ed25519/Ed25519Scheme.js.map +1 -1
- package/dist/cjs/modules/tide-js/Cryptide/Encryption/ElGamal.js +12 -0
- package/dist/cjs/modules/tide-js/Cryptide/Encryption/ElGamal.js.map +1 -1
- package/dist/cjs/modules/tide-js/Cryptide/Serialization.js +2 -0
- package/dist/cjs/modules/tide-js/Cryptide/Serialization.js.map +1 -1
- package/dist/cjs/modules/tide-js/Cryptide/TideKey.js +8 -0
- package/dist/cjs/modules/tide-js/Cryptide/TideKey.js.map +1 -1
- package/dist/cjs/modules/tide-js/Flow/AuthenticationFlows/dCMKPasswordFlow.js +7 -11
- package/dist/cjs/modules/tide-js/Flow/AuthenticationFlows/dCMKPasswordFlow.js.map +1 -1
- package/dist/cjs/modules/tide-js/Flow/AuthenticationFlows/dMobileAuthenticationFlow.js +199 -0
- package/dist/cjs/modules/tide-js/Flow/AuthenticationFlows/dMobileAuthenticationFlow.js.map +1 -0
- package/dist/cjs/modules/tide-js/Flow/SigningFlows/dVVKSigningFlow.js +7 -6
- package/dist/cjs/modules/tide-js/Flow/SigningFlows/dVVKSigningFlow.js.map +1 -1
- package/dist/cjs/modules/tide-js/Flow/SigningFlows/dVVKSigningFlow2Step.js +134 -0
- package/dist/cjs/modules/tide-js/Flow/SigningFlows/dVVKSigningFlow2Step.js.map +1 -0
- package/dist/cjs/modules/tide-js/Flow/dKeyGenerationFlow.js +4 -24
- package/dist/cjs/modules/tide-js/Flow/dKeyGenerationFlow.js.map +1 -1
- package/dist/cjs/modules/tide-js/Math/KeyAuthentication.js +95 -0
- package/dist/cjs/modules/tide-js/Math/KeyAuthentication.js.map +1 -1
- package/dist/cjs/modules/tide-js/Models/BaseTideRequest.js +21 -0
- package/dist/cjs/modules/tide-js/Models/BaseTideRequest.js.map +1 -1
- package/dist/cjs/modules/tide-js/Models/ModelRegistry.js +50 -1
- package/dist/cjs/modules/tide-js/Models/ModelRegistry.js.map +1 -1
- package/dist/cjs/modules/tide-js/Models/Responses/KeyAuth/Convert/DecryptedDeviceConvertResponse.js +45 -0
- package/dist/cjs/modules/tide-js/Models/Responses/KeyAuth/Convert/DecryptedDeviceConvertResponse.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/Responses/KeyAuth/Convert/DeviceConvertResponse.js +36 -0
- package/dist/cjs/modules/tide-js/Models/Responses/KeyAuth/Convert/DeviceConvertResponse.js.map +1 -0
- package/dist/cjs/modules/tide-js/Tests/KeyAuthentication.js +160 -3
- package/dist/cjs/modules/tide-js/Tests/KeyAuthentication.js.map +1 -1
- package/dist/cjs/modules/tide-js/Tests/KeyGeneration.js +3 -1
- package/dist/cjs/modules/tide-js/Tests/KeyGeneration.js.map +1 -1
- package/dist/cjs/modules/tide-js/Tests/StripeLicensing.js +2 -2
- package/dist/cjs/modules/tide-js/Tests/Tunelling.js +63 -0
- package/dist/cjs/modules/tide-js/Tests/Tunelling.js.map +1 -0
- package/dist/cjs/modules/tide-js/Tests/index.js +8 -1
- package/dist/cjs/modules/tide-js/Tests/index.js.map +1 -1
- package/dist/cjs/modules/tide-js/Tools/Utils.js +3 -1
- package/dist/cjs/modules/tide-js/Tools/Utils.js.map +1 -1
- package/dist/esm/modules/tide-js/Clients/EnclaveToMobileTunnelClient.js +49 -0
- package/dist/esm/modules/tide-js/Clients/EnclaveToMobileTunnelClient.js.map +1 -0
- package/dist/esm/modules/tide-js/Clients/NodeClient.js +72 -31
- package/dist/esm/modules/tide-js/Clients/NodeClient.js.map +1 -1
- package/dist/esm/modules/tide-js/Clients/WebSocketClientBase.js +48 -0
- package/dist/esm/modules/tide-js/Clients/WebSocketClientBase.js.map +1 -0
- package/dist/esm/modules/tide-js/Cryptide/Components/Schemes/Ed25519/Ed25519Components.js +3 -3
- package/dist/esm/modules/tide-js/Cryptide/Components/Schemes/Ed25519/Ed25519Components.js.map +1 -1
- package/dist/esm/modules/tide-js/Cryptide/Components/Schemes/Ed25519/Ed25519Scheme.js +21 -0
- package/dist/esm/modules/tide-js/Cryptide/Components/Schemes/Ed25519/Ed25519Scheme.js.map +1 -1
- package/dist/esm/modules/tide-js/Cryptide/Encryption/ElGamal.js +12 -0
- package/dist/esm/modules/tide-js/Cryptide/Encryption/ElGamal.js.map +1 -1
- package/dist/esm/modules/tide-js/Cryptide/Serialization.js +2 -0
- package/dist/esm/modules/tide-js/Cryptide/Serialization.js.map +1 -1
- package/dist/esm/modules/tide-js/Cryptide/TideKey.js +8 -0
- package/dist/esm/modules/tide-js/Cryptide/TideKey.js.map +1 -1
- package/dist/esm/modules/tide-js/Flow/AuthenticationFlows/dCMKPasswordFlow.js +7 -11
- package/dist/esm/modules/tide-js/Flow/AuthenticationFlows/dCMKPasswordFlow.js.map +1 -1
- package/dist/esm/modules/tide-js/Flow/AuthenticationFlows/dMobileAuthenticationFlow.js +193 -0
- package/dist/esm/modules/tide-js/Flow/AuthenticationFlows/dMobileAuthenticationFlow.js.map +1 -0
- package/dist/esm/modules/tide-js/Flow/SigningFlows/dVVKSigningFlow.js +7 -6
- package/dist/esm/modules/tide-js/Flow/SigningFlows/dVVKSigningFlow.js.map +1 -1
- package/dist/esm/modules/tide-js/Flow/SigningFlows/dVVKSigningFlow2Step.js +128 -0
- package/dist/esm/modules/tide-js/Flow/SigningFlows/dVVKSigningFlow2Step.js.map +1 -0
- package/dist/esm/modules/tide-js/Flow/dKeyGenerationFlow.js +4 -24
- package/dist/esm/modules/tide-js/Flow/dKeyGenerationFlow.js.map +1 -1
- package/dist/esm/modules/tide-js/Math/KeyAuthentication.js +93 -1
- package/dist/esm/modules/tide-js/Math/KeyAuthentication.js.map +1 -1
- package/dist/esm/modules/tide-js/Models/BaseTideRequest.js +21 -0
- package/dist/esm/modules/tide-js/Models/BaseTideRequest.js.map +1 -1
- package/dist/esm/modules/tide-js/Models/ModelRegistry.js +51 -2
- package/dist/esm/modules/tide-js/Models/ModelRegistry.js.map +1 -1
- package/dist/esm/modules/tide-js/Models/Responses/KeyAuth/Convert/DecryptedDeviceConvertResponse.js +39 -0
- package/dist/esm/modules/tide-js/Models/Responses/KeyAuth/Convert/DecryptedDeviceConvertResponse.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/Responses/KeyAuth/Convert/DeviceConvertResponse.js +33 -0
- package/dist/esm/modules/tide-js/Models/Responses/KeyAuth/Convert/DeviceConvertResponse.js.map +1 -0
- package/dist/esm/modules/tide-js/Tests/KeyAuthentication.js +158 -5
- package/dist/esm/modules/tide-js/Tests/KeyAuthentication.js.map +1 -1
- package/dist/esm/modules/tide-js/Tests/KeyGeneration.js +4 -2
- package/dist/esm/modules/tide-js/Tests/KeyGeneration.js.map +1 -1
- package/dist/esm/modules/tide-js/Tests/StripeLicensing.js +2 -2
- package/dist/esm/modules/tide-js/Tests/Tunelling.js +56 -0
- package/dist/esm/modules/tide-js/Tests/Tunelling.js.map +1 -0
- package/dist/esm/modules/tide-js/Tests/index.js +9 -2
- package/dist/esm/modules/tide-js/Tests/index.js.map +1 -1
- package/dist/esm/modules/tide-js/Tools/Utils.js +3 -1
- package/dist/esm/modules/tide-js/Tools/Utils.js.map +1 -1
- package/dist/types/modules/tide-js/Clients/EnclaveToMobileTunnelClient.d.ts +19 -0
- package/dist/types/modules/tide-js/Clients/NodeClient.d.ts +36 -12
- package/dist/types/modules/tide-js/Clients/WebSocketClientBase.d.ts +12 -0
- package/dist/types/modules/tide-js/Cryptide/Components/Schemes/Ed25519/Ed25519Components.d.ts +3 -3
- package/dist/types/modules/tide-js/Cryptide/Components/Schemes/Ed25519/Ed25519Scheme.d.ts +2 -0
- package/dist/types/modules/tide-js/Cryptide/Encryption/DH.d.ts +1 -1
- package/dist/types/modules/tide-js/Cryptide/Encryption/ElGamal.d.ts +5 -0
- package/dist/types/modules/tide-js/Cryptide/Serialization.d.ts +3 -3
- package/dist/types/modules/tide-js/Cryptide/Signing/TideSignature.d.ts +1 -1
- package/dist/types/modules/tide-js/Cryptide/TideKey.d.ts +2 -0
- package/dist/types/modules/tide-js/Flow/AuthenticationFlows/dCMKPasswordFlow.d.ts +3 -4
- package/dist/types/modules/tide-js/Flow/AuthenticationFlows/dMobileAuthenticationFlow.d.ts +39 -0
- package/dist/types/modules/tide-js/Flow/SigningFlows/dTestVVkSigningFlow.d.ts +2 -2
- package/dist/types/modules/tide-js/Flow/SigningFlows/dVVKSigningFlow2Step.d.ts +69 -0
- package/dist/types/modules/tide-js/Flow/dKeyGenerationFlow.d.ts +3 -19
- package/dist/types/modules/tide-js/Math/KeyAuthentication.d.ts +49 -0
- package/dist/types/modules/tide-js/Math/KeySigning.d.ts +1 -1
- package/dist/types/modules/tide-js/Models/AdminAuthorization.d.ts +1 -1
- package/dist/types/modules/tide-js/Models/AuthRequest.d.ts +1 -1
- package/dist/types/modules/tide-js/Models/BaseTideRequest.d.ts +10 -1
- package/dist/types/modules/tide-js/Models/Responses/KeyAuth/Convert/DecryptedDeviceConvertResponse.d.ts +15 -0
- package/dist/types/modules/tide-js/Models/Responses/KeyAuth/Convert/DeviceConvertResponse.d.ts +11 -0
- package/dist/types/modules/tide-js/Tests/KeyAuthentication.d.ts +4 -0
- package/dist/types/modules/tide-js/Tests/Tunelling.d.ts +2 -0
- package/dist/types/modules/tide-js/Tests/index.d.ts +12 -0
- package/package.json +2 -2
|
@@ -21,9 +21,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
21
21
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
22
|
exports.GetDecryptedChallenge = GetDecryptedChallenge;
|
|
23
23
|
exports.PrismConvertReply = PrismConvertReply;
|
|
24
|
+
exports.DevicePrismConvertReply = DevicePrismConvertReply;
|
|
24
25
|
exports.CmkConvertReply = CmkConvertReply;
|
|
26
|
+
exports.DeviceConvertReply = DeviceConvertReply;
|
|
25
27
|
exports.ConvertRememberedReply = ConvertRememberedReply;
|
|
26
28
|
exports.AuthenticateBasicReply = AuthenticateBasicReply;
|
|
29
|
+
exports.AuthenticateDeviceReply = AuthenticateDeviceReply;
|
|
27
30
|
exports.AuthenticateConsentReply = AuthenticateConsentReply;
|
|
28
31
|
const Hash_js_1 = require("../Cryptide/Hashing/Hash.js");
|
|
29
32
|
const Utils_js_1 = require("../Tools/Utils.js");
|
|
@@ -42,6 +45,10 @@ const ConvertRememberedResponse_js_1 = __importDefault(require("../Models/Respon
|
|
|
42
45
|
const VendorData_js_1 = __importDefault(require("../Models/VendorData.js"));
|
|
43
46
|
const Ed25519_js_1 = require("../Cryptide/Ed25519.js");
|
|
44
47
|
const Ed25519Components_js_1 = require("../Cryptide/Components/Schemes/Ed25519/Ed25519Components.js");
|
|
48
|
+
const DeviceConvertResponse_js_1 = __importDefault(require("../Models/Responses/KeyAuth/Convert/DeviceConvertResponse.js"));
|
|
49
|
+
const DecryptedDeviceConvertResponse_js_1 = __importDefault(require("../Models/Responses/KeyAuth/Convert/DecryptedDeviceConvertResponse.js"));
|
|
50
|
+
const TideKey_js_1 = __importDefault(require("../Cryptide/TideKey.js"));
|
|
51
|
+
const BaseComponent_js_1 = require("../Cryptide/Components/BaseComponent.js");
|
|
45
52
|
/**
|
|
46
53
|
* For use in change password flow
|
|
47
54
|
* @param {PrismConvertResponse[]} convertResponses
|
|
@@ -92,6 +99,30 @@ async function PrismConvertReply(convertResponses, ids, mgORKi, r1, prkECDHi) {
|
|
|
92
99
|
const expired = (0, Utils_js_1.CurrentTime)() + (0, Math_js_1.Min)(decPrismRequesti.map(d => d.Exti));
|
|
93
100
|
return { prismAuthis, timestampi, selfRequesti, expired };
|
|
94
101
|
}
|
|
102
|
+
/**
|
|
103
|
+
* @param {PrismConvertResponse[]} convertResponses
|
|
104
|
+
* @param {bigint[]} ids
|
|
105
|
+
* @param {Point[]} mgORKi
|
|
106
|
+
* @param {bigint} r1
|
|
107
|
+
*/
|
|
108
|
+
async function DevicePrismConvertReply(convertResponses, ids, mgORKi, r1) {
|
|
109
|
+
// ∑ gPass ⋅ r1 ⋅ PRISMi ⋅ li / r1
|
|
110
|
+
const gPassPRISM = index_js_1.Interpolation.AggregatePointsWithIds(convertResponses.map(resp => resp.GBlurPassPrismi), ids).divide(r1);
|
|
111
|
+
const gPassPRISM_hashed = await gPassPRISM.hash();
|
|
112
|
+
const prismAuthis = await index_js_1.DH.generateECDHi(mgORKi, gPassPRISM_hashed);
|
|
113
|
+
let decPrismRequesti;
|
|
114
|
+
try {
|
|
115
|
+
const pre_decPrismRequesti = convertResponses.map(async (chall, i) => DecryptedPrismConvertResponse_js_1.default.from(await index_js_1.AES.decryptData(chall.EncRequesti, prismAuthis[i])));
|
|
116
|
+
decPrismRequesti = await Promise.all(pre_decPrismRequesti);
|
|
117
|
+
}
|
|
118
|
+
catch {
|
|
119
|
+
throw Error("enclave.invalidAccount");
|
|
120
|
+
}
|
|
121
|
+
const timestampi = (0, Math_js_1.median)(decPrismRequesti.map(resp => resp.Timestampi));
|
|
122
|
+
// Calculate when the stored token expires
|
|
123
|
+
const expired = (0, Utils_js_1.CurrentTime)() + (0, Math_js_1.Min)(decPrismRequesti.map(d => d.Exti));
|
|
124
|
+
return { prismAuthis, timestampi, prkRequesti: decPrismRequesti.map(d => d.PRKRequesti), expired };
|
|
125
|
+
}
|
|
95
126
|
/**
|
|
96
127
|
* @param {CMKConvertResponse[]} convertResponses
|
|
97
128
|
* @param {bigint[]} ids
|
|
@@ -126,6 +157,44 @@ async function CmkConvertReply(convertResponses, ids, prismAuthis, gCMK, timesta
|
|
|
126
157
|
const { blurHCMKMul, blur, gRMul } = await (0, BlindSig_js_1.genBlindMessage)(gCMKR, gCMKAuth, authToken.toUint8Array(), CMKMul);
|
|
127
158
|
return { VUID: VUID, blurHCMKMul, r4: blur, gCMKAuth, authToken, gRMul };
|
|
128
159
|
}
|
|
160
|
+
/**
|
|
161
|
+
* @param {Uint8Array[]} encRequesti
|
|
162
|
+
* @param {Uint8Array[]} appAuthi
|
|
163
|
+
* @param {bigint[]} ids
|
|
164
|
+
* @param {Point} gCMK
|
|
165
|
+
* @param {string} qPub
|
|
166
|
+
* @param {string} uDeObf
|
|
167
|
+
* @param {TideKey} blurerKPriv
|
|
168
|
+
* @param {Ed25519PublicComponent} gSessKeyPub
|
|
169
|
+
* @param {string} purpose
|
|
170
|
+
* @param {string} sessionId
|
|
171
|
+
* @param {Point} gCMKR
|
|
172
|
+
*/
|
|
173
|
+
async function DeviceConvertReply(encRequesti, appAuthi, ids, gCMK, qPub, uDeObf, blurerKPriv, gSessKeyPub, purpose, sessionId, gCMKR) {
|
|
174
|
+
let decPrismRequesti;
|
|
175
|
+
try {
|
|
176
|
+
const pre_decPrismRequesti = encRequesti.map(async (chall, i) => DecryptedDeviceConvertResponse_js_1.default.from((0, Serialization_js_1.StringFromUint8Array)(await index_js_1.AES.decryptDataRawOutput(chall, appAuthi[i]))));
|
|
177
|
+
decPrismRequesti = await Promise.all(pre_decPrismRequesti);
|
|
178
|
+
}
|
|
179
|
+
catch (ex) {
|
|
180
|
+
console.log(ex);
|
|
181
|
+
throw Error("enclave.invalidAccount");
|
|
182
|
+
}
|
|
183
|
+
const timestampi = (0, Math_js_1.median)(decPrismRequesti.map(resp => resp.Timestampi));
|
|
184
|
+
// Calculate when the stored token expires
|
|
185
|
+
const expired = (0, Utils_js_1.CurrentTime)() + (0, Math_js_1.Min)(decPrismRequesti.map(d => d.Exti));
|
|
186
|
+
// CMK part
|
|
187
|
+
const userPRISM = index_js_1.Interpolation.AggregatePointsWithIds(decPrismRequesti.map(d => d.UserPRISMi), ids);
|
|
188
|
+
const userPRISMdec = userPRISM.mul((0, Math_js_1.mod)((0, Serialization_js_1.BigIntFromByteArray)(await index_js_1.DH.computeSharedKey(TideKey_js_1.default.FromSerializedComponent(qPub).get_public_component().public, blurerKPriv.get_private_component().priv))));
|
|
189
|
+
const gUserCMK = userPRISMdec.divide(TideKey_js_1.default.FromSerializedComponent(uDeObf).get_private_component().priv);
|
|
190
|
+
const gUserCMK_Hash = await index_js_1.Hash.SHA512_Digest(gUserCMK.toRawBytes());
|
|
191
|
+
const CMKMul = (0, Math_js_1.mod)((0, Serialization_js_1.BigIntFromByteArray)(gUserCMK_Hash.slice(0, 32)));
|
|
192
|
+
const VUID = (0, Serialization_js_1.Bytes2Hex)(gUserCMK_Hash.slice(-32));
|
|
193
|
+
const gCMKAuth = gCMK.mul(CMKMul);
|
|
194
|
+
const authToken = AuthRequest_js_1.default.new(VUID, purpose, gSessKeyPub.Serialize().ToString(), timestampi + (0, Utils_js_1.randBetween)(30, 90), sessionId);
|
|
195
|
+
const { blurHCMKMul, blur, gRMul } = await (0, BlindSig_js_1.genBlindMessage)(gCMKR, gCMKAuth, authToken.toUint8Array(), CMKMul);
|
|
196
|
+
return { VUID, gCMKAuth, authToken, r4: blur, decPrismRequesti, timestampi, expired, blurHCMKMul, gRMul };
|
|
197
|
+
}
|
|
129
198
|
/**
|
|
130
199
|
* @param {ConvertRememberedResponse[]} responses
|
|
131
200
|
* @param {bigint[]} mIdORKi
|
|
@@ -190,6 +259,32 @@ async function AuthenticateBasicReply(vuid, prkECDHi, encSigi, gCMKAuth, authTok
|
|
|
190
259
|
return VendorEncryptedData;
|
|
191
260
|
}
|
|
192
261
|
}
|
|
262
|
+
/**
|
|
263
|
+
*
|
|
264
|
+
* @param {string} vuid
|
|
265
|
+
* @param {Uint8Array} sig
|
|
266
|
+
* @param {Point} gCMKAuth
|
|
267
|
+
* @param {AuthRequest} authToken
|
|
268
|
+
* @param {bigint} r4
|
|
269
|
+
* @param {Point} gRMul
|
|
270
|
+
* @param {Point} gVRK
|
|
271
|
+
*/
|
|
272
|
+
async function AuthenticateDeviceReply(vuid, sig, gCMKAuth, authToken, r4, gRMul, gVRK) {
|
|
273
|
+
const blindS = (0, Serialization_js_1.BigIntFromByteArray)(sig.slice(-32));
|
|
274
|
+
const usig = await (0, BlindSig_js_1.unblindSignature)(blindS, r4);
|
|
275
|
+
const blindSigValid = await (0, BlindSig_js_1.verifyBlindSignature)(usig, gRMul, gCMKAuth, authToken.toUint8Array());
|
|
276
|
+
if (!blindSigValid)
|
|
277
|
+
throw Error("Blind Signature Failed");
|
|
278
|
+
const blindSig = (0, Serialization_js_1.bytesToBase64)((0, BlindSig_js_1.serializeBlindSig)(usig, gRMul));
|
|
279
|
+
if (gVRK == null) {
|
|
280
|
+
const vendorData = new VendorData_js_1.default(vuid, gCMKAuth, blindSig, authToken).toString();
|
|
281
|
+
return vendorData;
|
|
282
|
+
}
|
|
283
|
+
else {
|
|
284
|
+
const VendorEncryptedData = await index_js_1.ElGamal.encryptData((0, Serialization_js_1.StringToUint8Array)(new VendorData_js_1.default(vuid, gCMKAuth, blindSig, authToken).toString()), gVRK);
|
|
285
|
+
return VendorEncryptedData;
|
|
286
|
+
}
|
|
287
|
+
}
|
|
193
288
|
/**
|
|
194
289
|
*
|
|
195
290
|
* @param {string} vuid
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KeyAuthentication.js","sourceRoot":"","sources":["../../../../../modules/tide-js/Math/KeyAuthentication.js"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"KeyAuthentication.js","sourceRoot":"","sources":["../../../../../modules/tide-js/Math/KeyAuthentication.js"],"names":[],"mappings":";AAAA,GAAG;AACH,gEAAgE;AAChE,yCAAyC;AACzC,GAAG;AACH,gEAAgE;AAChE,4DAA4D;AAC5D,+DAA+D;AAC/D,kEAAkE;AAClE,6DAA6D;AAC7D,gEAAgE;AAChE,oCAAoC;AACpC,6DAA6D;AAC7D,8DAA8D;AAC9D,wCAAwC;AACxC,qDAAqD;AACrD,EAAE;;;;;AAgCF,sDAgBC;AASD,8CAuBC;AAOD,0DAoBC;AAeD,0CAuBC;AAeD,gDA4BC;AAYD,wDA6BC;AAYD,wDAiBC;AAWD,0DAcC;AAeD,4DAiBC;AAxTD,yDAA4F;AAC5F,gDAA6D;AAC7D,mEAA0J;AAC1J,iDAAgE;AAChE,0HAA+F;AAC/F,mDAA0F;AAC1F,wIAA6G;AAC7G,sHAA2F;AAC3F,4IAAiH;AACjH,8EAAmD;AACnD,iEAA6H;AAC7H,+HAAoG;AACpG,sJAA2H;AAC3H,oIAAyG;AACzG,4EAAiD;AACjD,uDAA+C;AAC/C,sGAAqG;AACrG,4HAAiG;AACjG,8IAAmH;AACnH,wEAA6C;AAC7C,8EAAwE;AACxE;;;;;;;GAOG;AACI,KAAK,UAAU,qBAAqB,CAAC,gBAAgB,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;IACzE,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,kBAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAA,iBAAO,EAAC,EAAE,CAAC,CAAC,CAAC;IACrI,MAAM,iBAAiB,GAAG,IAAA,aAAG,EAAC,IAAA,sCAAmB,EAAC,MAAM,IAAA,uBAAa,EAAC,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC;IAEjG,MAAM,cAAc,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,MAAM,IAAA,uBAAa,EAAC,GAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAA,CAAC,mCAAmC;IAChJ,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,yCAAyC;IAEhG,IAAI,mBAAmB,CAAC;IACxB,IAAG,CAAC;QACA,MAAM,WAAW,GAAG,gBAAgB,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,cAAG,CAAC,WAAW,CAAC,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvH,mBAAmB,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACzD,CAAC;IAAA,MAAK,CAAC;QACH,MAAM,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC1C,CAAC;IAED,OAAO,mBAAmB,CAAC;AAC/B,CAAC;AAED;;;;;;GAMG;AACI,KAAK,UAAU,iBAAiB,CAAC,gBAAgB,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ;IAC/E,kCAAkC;IAClC,MAAM,UAAU,GAAG,wBAAa,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC5H,MAAM,iBAAiB,GAAG,MAAM,UAAU,CAAC,IAAI,EAAE,CAAC;IAElD,MAAM,WAAW,GAAG,MAAM,aAAE,CAAC,aAAa,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAEtE,IAAI,gBAAgB,CAAC;IACrB,IAAG,CAAC;QACA,MAAM,oBAAoB,GAAG,gBAAgB,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,0CAA6B,CAAC,IAAI,CAAC,MAAM,cAAG,CAAC,WAAW,CAAC,KAAK,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACpK,gBAAgB,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAC/D,CAAC;IAAA,MAAK,CAAC;QACH,MAAM,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC1C,CAAC;IACD,MAAM,UAAU,GAAG,IAAA,gBAAM,EAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IAEzE,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,cAAG,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACrH,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAEzD,0CAA0C;IAC1C,MAAM,OAAO,GAAG,IAAA,sBAAW,GAAE,GAAG,IAAA,aAAG,EAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAEvE,OAAO,EAAC,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,OAAO,EAAC,CAAA;AAC3D,CAAC;AACD;;;;;GAKG;AACI,KAAK,UAAU,uBAAuB,CAAC,gBAAgB,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;IAC3E,kCAAkC;IAClC,MAAM,UAAU,GAAG,wBAAa,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC5H,MAAM,iBAAiB,GAAG,MAAM,UAAU,CAAC,IAAI,EAAE,CAAC;IAElD,MAAM,WAAW,GAAG,MAAM,aAAE,CAAC,aAAa,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAEtE,IAAI,gBAAgB,CAAC;IACrB,IAAG,CAAC;QACA,MAAM,oBAAoB,GAAG,gBAAgB,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,0CAA6B,CAAC,IAAI,CAAC,MAAM,cAAG,CAAC,WAAW,CAAC,KAAK,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACpK,gBAAgB,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAC/D,CAAC;IAAA,MAAK,CAAC;QACH,MAAM,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC1C,CAAC;IACD,MAAM,UAAU,GAAG,IAAA,gBAAM,EAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IAEzE,0CAA0C;IAC1C,MAAM,OAAO,GAAG,IAAA,sBAAW,GAAE,GAAG,IAAA,aAAG,EAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAEvE,OAAO,EAAC,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,OAAO,EAAC,CAAA;AACpG,CAAC;AAED;;;;;;;;;;;;GAYG;AACI,KAAK,UAAU,eAAe,CAAC,gBAAgB,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW;IAC/I,IAAI,OAAO,CAAC;IACZ,IAAG,CAAC;QACA,MAAM,WAAW,GAAG,gBAAgB,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,wCAA2B,CAAC,IAAI,CAAC,MAAM,cAAG,CAAC,WAAW,CAAC,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzJ,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAC7C,CAAC;IAAA,MAAK,CAAC;QACH,MAAM,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC1C,CAAC;IAED,MAAM,SAAS,GAAG,wBAAa,CAAC,sBAAsB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,GAAG,CAAC,CAAC;IAC5F,MAAM,YAAY,GAAG,SAAS,CAAC,GAAG,CAAC,IAAA,aAAG,EAAC,IAAA,sCAAmB,EAAC,MAAM,aAAE,CAAC,gBAAgB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IAE3G,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,aAAa,GAAG,MAAM,eAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;IAEtE,MAAM,MAAM,GAAG,IAAA,aAAG,EAAC,IAAA,sCAAmB,EAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IACpE,MAAM,IAAI,GAAG,IAAA,4BAAS,EAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,KAAK,GAAG,wBAAa,CAAC,eAAe,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IACvF,MAAM,SAAS,GAAG,wBAAW,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,WAAW,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE,EAAE,UAAU,GAAG,IAAA,sBAAW,EAAC,EAAE,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IAC/H,MAAM,EAAC,WAAW,EAAE,IAAI,EAAE,KAAK,EAAC,GAAG,MAAM,IAAA,6BAAe,EAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,YAAY,EAAE,EAAE,MAAM,CAAC,CAAC;IAE5G,OAAO,EAAC,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAC,CAAA;AAC1E,CAAC;AAED;;;;;;;;;;;;GAYG;AACI,KAAK,UAAU,kBAAkB,CAAC,WAAW,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK;IACxI,IAAI,gBAAgB,CAAC;IACrB,IAAG,CAAC;QACA,MAAM,oBAAoB,GAAG,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,2CAA8B,CAAC,IAAI,CAAC,IAAA,uCAAoB,EAAC,MAAM,cAAG,CAAC,oBAAoB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChL,gBAAgB,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAC/D,CAAC;IAAA,OAAM,EAAE,EAAC,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,MAAM,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC1C,CAAC;IACD,MAAM,UAAU,GAAG,IAAA,gBAAM,EAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IAEzE,0CAA0C;IAC1C,MAAM,OAAO,GAAG,IAAA,sBAAW,GAAE,GAAG,IAAA,aAAG,EAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAEvE,WAAW;IACX,MAAM,SAAS,GAAG,wBAAa,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,GAAG,CAAC,CAAC;IACrG,MAAM,YAAY,GAAG,SAAS,CAAC,GAAG,CAAC,IAAA,aAAG,EAAC,IAAA,sCAAmB,EAAC,MAAM,aAAE,CAAC,gBAAgB,CAAC,oBAAO,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,oBAAoB,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,qBAAqB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAEvM,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,CAAC,oBAAO,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC,qBAAqB,EAAE,CAAC,IAAI,CAAC,CAAC;IAC3G,MAAM,aAAa,GAAG,MAAM,eAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;IAEtE,MAAM,MAAM,GAAG,IAAA,aAAG,EAAC,IAAA,sCAAmB,EAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IACpE,MAAM,IAAI,GAAG,IAAA,4BAAS,EAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,SAAS,GAAG,wBAAW,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,WAAW,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE,EAAE,UAAU,GAAG,IAAA,sBAAW,EAAC,EAAE,EAAE,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC;IAClI,MAAM,EAAC,WAAW,EAAE,IAAI,EAAE,KAAK,EAAC,GAAG,MAAM,IAAA,6BAAe,EAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,YAAY,EAAE,EAAE,MAAM,CAAC,CAAC;IAE5G,OAAO,EAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAC,CAAA;AAC3G,CAAC;AACD;;;;;;;;;;GAUG;AACI,KAAK,UAAU,sBAAsB,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW;IAC3H,MAAM,qBAAqB,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,EAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,+CAAkC,CAAC,IAAI,CAAC,MAAM,cAAG,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/J,MAAM,kBAAkB,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;IAEpE,MAAM,SAAS,GAAG,eAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;IAEzE,MAAM,SAAS,GAAG,wBAAa,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,CAAC;IAC3G,MAAM,YAAY,GAAG,SAAS,CAAC,GAAG,CAAC,IAAA,aAAG,EAAC,IAAA,sCAAmB,EAAC,MAAM,aAAE,CAAC,gBAAgB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IAE3G,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,aAAa,GAAG,MAAM,eAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;IAEtE,MAAM,MAAM,GAAG,IAAA,aAAG,EAAC,IAAA,sCAAmB,EAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IACpE,MAAM,IAAI,GAAG,IAAA,4BAAS,EAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,KAAK,GAAG,wBAAa,CAAC,eAAe,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAEhF,MAAM,SAAS,GAAG,wBAAW,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE,EAAE,SAAS,GAAG,IAAA,sBAAW,EAAC,EAAE,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IAE7H,MAAM,EAAC,WAAW,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAC,GAAG,MAAM,IAAA,6BAAe,EAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,YAAY,EAAE,EAAE,MAAM,CAAC,CAAC;IAChH,OAAO;QACH,IAAI;QACJ,QAAQ;QACR,WAAW;QACX,EAAE;QACF,KAAK;QACL,SAAS;QACT,QAAQ;KACX,CAAA;AACL,CAAC;AACD;;;;;;;;;;GAUG;AACI,KAAK,UAAU,sBAAsB,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI;IACtG,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,iCAAoB,CAAC,IAAI,CAAC,MAAM,cAAG,CAAC,WAAW,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvH,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAEjD,MAAM,MAAM,GAAG,IAAA,aAAG,EAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7E,MAAM,GAAG,GAAG,MAAM,IAAA,8BAAgB,EAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC/C,MAAM,aAAa,GAAG,MAAM,IAAA,kCAAoB,EAAC,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,YAAY,EAAE,CAAC,CAAC;IACjG,IAAG,CAAC,aAAa;QAAE,MAAM,KAAK,CAAC,wBAAwB,CAAC,CAAC;IACzD,MAAM,QAAQ,GAAG,IAAA,gCAAa,EAAC,IAAA,+BAAiB,EAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IAE9D,IAAG,IAAI,IAAI,IAAI,EAAC,CAAC;QACb,MAAM,UAAU,GAAG,IAAI,uBAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC;QAClF,OAAO,UAAU,CAAC;IACtB,CAAC;SAAI,CAAC;QACF,MAAM,mBAAmB,GAAG,MAAM,kBAAO,CAAC,WAAW,CAAC,IAAA,qCAAkB,EAAC,IAAI,uBAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;QAChJ,OAAO,mBAAmB,CAAC;IAC/B,CAAC;AACL,CAAC;AACD;;;;;;;;;GASG;AACI,KAAK,UAAU,uBAAuB,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI;IACzF,MAAM,MAAM,GAAG,IAAA,sCAAmB,EAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACnD,MAAM,IAAI,GAAG,MAAM,IAAA,8BAAgB,EAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAChD,MAAM,aAAa,GAAG,MAAM,IAAA,kCAAoB,EAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,YAAY,EAAE,CAAC,CAAC;IAClG,IAAG,CAAC,aAAa;QAAE,MAAM,KAAK,CAAC,wBAAwB,CAAC,CAAC;IACzD,MAAM,QAAQ,GAAG,IAAA,gCAAa,EAAC,IAAA,+BAAiB,EAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;IAE/D,IAAG,IAAI,IAAI,IAAI,EAAC,CAAC;QACb,MAAM,UAAU,GAAG,IAAI,uBAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC;QAClF,OAAO,UAAU,CAAC;IACtB,CAAC;SAAI,CAAC;QACF,MAAM,mBAAmB,GAAG,MAAM,kBAAO,CAAC,WAAW,CAAC,IAAA,qCAAkB,EAAC,IAAI,uBAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;QAChJ,OAAO,mBAAmB,CAAC;IAC/B,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;GAYG;AACI,KAAK,UAAU,wBAAwB,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa;IAChI,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,iCAAoB,CAAC,IAAI,CAAC,MAAM,cAAG,CAAC,WAAW,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvH,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAEjD,MAAM,MAAM,GAAG,IAAA,aAAG,EAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7E,MAAM,GAAG,GAAG,MAAM,IAAA,8BAAgB,EAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC/C,MAAM,aAAa,GAAG,MAAM,IAAA,kCAAoB,EAAC,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,YAAY,EAAE,CAAC,CAAC;IACjG,IAAG,CAAC,aAAa;QAAE,MAAM,KAAK,CAAC,wBAAwB,CAAC,CAAC;IACzD,MAAM,QAAQ,GAAG,IAAA,gCAAa,EAAC,IAAA,+BAAiB,EAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IAE9D,MAAM,UAAU,GAAG,IAAI,uBAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IACvE,MAAM,mBAAmB,GAAG,MAAM,kBAAO,CAAC,WAAW,CAAC,IAAA,qCAAkB,EAAC,IAAI,CAAC,SAAS,CAAC;QACpF,UAAU,EAAE,UAAU,CAAC,QAAQ,EAAE;QACjC,OAAO,EAAE,CAAC,MAAM,gBAAK,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;KACtD,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAEX,OAAO,mBAAmB,CAAC;AAC/B,CAAC"}
|
|
@@ -28,6 +28,27 @@ class BaseTideRequest {
|
|
|
28
28
|
this.rules = new Uint8Array();
|
|
29
29
|
this.rulesCert = new Uint8Array();
|
|
30
30
|
}
|
|
31
|
+
/**
|
|
32
|
+
* This isn't copying. Just created another BaseTideRequest object that allows you to point each individual field to OTHER sections of memory.
|
|
33
|
+
* If you modify an existing 'replicated' field, you'll also modify the other object you originally replicated.
|
|
34
|
+
*/
|
|
35
|
+
replicate() {
|
|
36
|
+
const r = new BaseTideRequest(this.name, this.version, this.authFlow, this.draft, this.dyanmicData);
|
|
37
|
+
r.authorization = this.authorization;
|
|
38
|
+
r.authorizerCert = this.authorizerCert;
|
|
39
|
+
r.authorizer = this.authorizer;
|
|
40
|
+
r.expiry = this.expiry;
|
|
41
|
+
r.rules = this.rules;
|
|
42
|
+
r.rulesCert = this.rulesCert;
|
|
43
|
+
return r;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* @param {Uint8Array} d
|
|
47
|
+
*/
|
|
48
|
+
setNewDynamicData(d) {
|
|
49
|
+
this.dyanmicData = d;
|
|
50
|
+
return this;
|
|
51
|
+
}
|
|
31
52
|
/**
|
|
32
53
|
*
|
|
33
54
|
* @param {number} timeFromNowInSeconds
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseTideRequest.js","sourceRoot":"","sources":["../../../../../modules/tide-js/Models/BaseTideRequest.js"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"BaseTideRequest.js","sourceRoot":"","sources":["../../../../../modules/tide-js/Models/BaseTideRequest.js"],"names":[],"mappings":"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"}
|
|
@@ -157,10 +157,59 @@ class RuleSettingSignRequestBuilder extends HumanReadableModelBuilder {
|
|
|
157
157
|
};
|
|
158
158
|
}
|
|
159
159
|
}
|
|
160
|
+
class OffboardSignRequestBuilder extends HumanReadableModelBuilder {
|
|
161
|
+
get _id() { return this._name + ":" + this._version; }
|
|
162
|
+
constructor(data, expiry) {
|
|
163
|
+
super(data, expiry);
|
|
164
|
+
this._name = "Offboard";
|
|
165
|
+
this._version = "1";
|
|
166
|
+
this._humanReadableName = "Tide Offboarding";
|
|
167
|
+
}
|
|
168
|
+
getHumanReadableObject() {
|
|
169
|
+
let summary = [];
|
|
170
|
+
summary.push(["WARNING WARNING WARNING", ""]);
|
|
171
|
+
summary.push(["APPROVING THIS REQUEST WILL CRIPPLE YOUR LICENSED TIDE ACCOUNT", ""]);
|
|
172
|
+
summary.push(["ONLY APPROVE THIS REQUEST IF YOU INTEND TO OFFBOARD FROM THE TIDE NETWORK", ""]);
|
|
173
|
+
summary.push(["THIS ACTION IS UNRECOVERABLE", ""]);
|
|
174
|
+
const vrk = (0, Serialization_js_1.Bytes2Hex)((0, Serialization_js_1.GetValue)(this._data, 0));
|
|
175
|
+
let body = {
|
|
176
|
+
"Vendor Rotating Key for Offboarding": vrk
|
|
177
|
+
};
|
|
178
|
+
return {
|
|
179
|
+
summary: summary,
|
|
180
|
+
pretty: body
|
|
181
|
+
};
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
class LicenseSignRequestBuilder extends HumanReadableModelBuilder {
|
|
185
|
+
get _id() { return this._name + ":" + this._version; }
|
|
186
|
+
constructor(data, expiry) {
|
|
187
|
+
super(data, expiry);
|
|
188
|
+
this._name = "RotateVRK";
|
|
189
|
+
this._version = "1";
|
|
190
|
+
this._humanReadableName = "Rotating VRK";
|
|
191
|
+
}
|
|
192
|
+
getHumanReadableObject() {
|
|
193
|
+
const authPack = new Serialization_js_1.AuthorizerPack(this._data);
|
|
194
|
+
let summary = [];
|
|
195
|
+
summary.push(["Signing new license", authPack.Authorizer.GVRK.Serialize().ToString()]);
|
|
196
|
+
let body = {
|
|
197
|
+
"AuthFlow": authPack.AuthFlow,
|
|
198
|
+
"Authorizer": authPack.Authorizer.GVRK.Serialize().ToString(),
|
|
199
|
+
"SignModels": authPack.SignModels
|
|
200
|
+
};
|
|
201
|
+
return {
|
|
202
|
+
summary: summary,
|
|
203
|
+
pretty: body
|
|
204
|
+
};
|
|
205
|
+
}
|
|
206
|
+
}
|
|
160
207
|
const modelBuildersMap = {
|
|
161
208
|
[new UserContextSignRequestBuilder()._id]: UserContextSignRequestBuilder,
|
|
162
209
|
[new CardanoTxSignRequestBuilder()._id]: CardanoTxSignRequestBuilder,
|
|
163
|
-
[new RuleSettingSignRequestBuilder()._id]: RuleSettingSignRequestBuilder
|
|
210
|
+
[new RuleSettingSignRequestBuilder()._id]: RuleSettingSignRequestBuilder,
|
|
211
|
+
[new OffboardSignRequestBuilder()._id]: OffboardSignRequestBuilder,
|
|
212
|
+
[new LicenseSignRequestBuilder()._id]: LicenseSignRequestBuilder
|
|
164
213
|
};
|
|
165
214
|
const unixSecondsToLocaleString = (unixSeconds) => {
|
|
166
215
|
const milliseconds = unixSeconds * 1000;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModelRegistry.js","sourceRoot":"","sources":["../../../../../modules/tide-js/Models/ModelRegistry.js"],"names":[],"mappings":";;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"ModelRegistry.js","sourceRoot":"","sources":["../../../../../modules/tide-js/Models/ModelRegistry.js"],"names":[],"mappings":"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"}
|
package/dist/cjs/modules/tide-js/Models/Responses/KeyAuth/Convert/DecryptedDeviceConvertResponse.js
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//
|
|
3
|
+
// Tide Protocol - Infrastructure for a TRUE Zero-Trust paradigm
|
|
4
|
+
// Copyright (C) 2022 Tide Foundation Ltd
|
|
5
|
+
//
|
|
6
|
+
// This program is free software and is subject to the terms of
|
|
7
|
+
// the Tide Community Open Code License as published by the
|
|
8
|
+
// Tide Foundation Limited. You may modify it and redistribute
|
|
9
|
+
// it in accordance with and subject to the terms of that License.
|
|
10
|
+
// This program is distributed WITHOUT WARRANTY of any kind,
|
|
11
|
+
// including without any implied warranty of MERCHANTABILITY or
|
|
12
|
+
// FITNESS FOR A PARTICULAR PURPOSE.
|
|
13
|
+
// See the Tide Community Open Code License for more details.
|
|
14
|
+
// You should have received a copy of the Tide Community Open
|
|
15
|
+
// Code License along with this program.
|
|
16
|
+
// If not, see https://tide.org/licenses_tcoc2-0-0-en
|
|
17
|
+
//
|
|
18
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
19
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
20
|
+
};
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
const Ed25519_js_1 = require("../../../../Cryptide/Ed25519.js");
|
|
23
|
+
const TideKey_js_1 = __importDefault(require("../../../../Cryptide/TideKey.js"));
|
|
24
|
+
class DecryptedDeviceConvertResponse {
|
|
25
|
+
/**
|
|
26
|
+
* @param {string} PRKRequesti
|
|
27
|
+
* @param {bigint} Timestampi
|
|
28
|
+
* @param {number} Exti
|
|
29
|
+
* @param {Point} UserPRISMi
|
|
30
|
+
*/
|
|
31
|
+
constructor(PRKRequesti, Timestampi, Exti, UserPRISMi) {
|
|
32
|
+
this.PRKRequesti = PRKRequesti;
|
|
33
|
+
this.Timestampi = Timestampi;
|
|
34
|
+
this.Exti = Exti;
|
|
35
|
+
this.UserPRISMi = UserPRISMi;
|
|
36
|
+
}
|
|
37
|
+
static from(data) {
|
|
38
|
+
const obj = JSON.parse(data);
|
|
39
|
+
const timestamp = BigInt(obj.Timestampi);
|
|
40
|
+
const userPRISMi = TideKey_js_1.default.FromSerializedComponent(obj.UserPRISMi).get_public_component().public;
|
|
41
|
+
return new DecryptedDeviceConvertResponse(obj.PRKRequesti, timestamp, obj.Exti, userPRISMi);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
exports.default = DecryptedDeviceConvertResponse;
|
|
45
|
+
//# sourceMappingURL=DecryptedDeviceConvertResponse.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DecryptedDeviceConvertResponse.js","sourceRoot":"","sources":["../../../../../../../../modules/tide-js/Models/Responses/KeyAuth/Convert/DecryptedDeviceConvertResponse.js"],"names":[],"mappings":";AAAA,GAAG;AACH,gEAAgE;AAChE,yCAAyC;AACzC,GAAG;AACH,gEAAgE;AAChE,4DAA4D;AAC5D,+DAA+D;AAC/D,kEAAkE;AAClE,6DAA6D;AAC7D,gEAAgE;AAChE,oCAAoC;AACpC,6DAA6D;AAC7D,8DAA8D;AAC9D,wCAAwC;AACxC,qDAAqD;AACrD,EAAE;;;;;AAEF,gEAAwD;AACxD,iFAAsD;AAGtD,MAAqB,8BAA8B;IAC/C;;;;;OAKG;IACH,YAAY,WAAW,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU;QACjD,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,IAAI;QACZ,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC7B,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACzC,MAAM,UAAU,GAAG,oBAAO,CAAC,uBAAuB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,oBAAoB,EAAE,CAAC,MAAM,CAAC;QACjG,OAAO,IAAI,8BAA8B,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,EAAE,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAChG,CAAC;CACJ;AAnBD,iDAmBC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//
|
|
3
|
+
// Tide Protocol - Infrastructure for a TRUE Zero-Trust paradigm
|
|
4
|
+
// Copyright (C) 2022 Tide Foundation Ltd
|
|
5
|
+
//
|
|
6
|
+
// This program is free software and is subject to the terms of
|
|
7
|
+
// the Tide Community Open Code License as published by the
|
|
8
|
+
// Tide Foundation Limited. You may modify it and redistribute
|
|
9
|
+
// it in accordance with and subject to the terms of that License.
|
|
10
|
+
// This program is distributed WITHOUT WARRANTY of any kind,
|
|
11
|
+
// including without any implied warranty of MERCHANTABILITY or
|
|
12
|
+
// FITNESS FOR A PARTICULAR PURPOSE.
|
|
13
|
+
// See the Tide Community Open Code License for more details.
|
|
14
|
+
// You should have received a copy of the Tide Community Open
|
|
15
|
+
// Code License along with this program.
|
|
16
|
+
// If not, see https://tide.org/licenses_tcoc2-0-0-en
|
|
17
|
+
//
|
|
18
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
+
const Ed25519_js_1 = require("../../../../Cryptide/Ed25519.js");
|
|
20
|
+
class DeviceConvertResponse {
|
|
21
|
+
/**
|
|
22
|
+
* @param {string} EncRequesti
|
|
23
|
+
* @param {Point} GCMKRi
|
|
24
|
+
*/
|
|
25
|
+
constructor(EncRequesti, GCMKRi) {
|
|
26
|
+
this.EncRequesti = EncRequesti;
|
|
27
|
+
this.GCMKRi = GCMKRi;
|
|
28
|
+
}
|
|
29
|
+
static from(data) {
|
|
30
|
+
const obj = JSON.parse(data);
|
|
31
|
+
const gCMKRi = Ed25519_js_1.Point.fromBase64(obj.GCMKRi);
|
|
32
|
+
return new DeviceConvertResponse(obj.EncRequesti, gCMKRi);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
exports.default = DeviceConvertResponse;
|
|
36
|
+
//# sourceMappingURL=DeviceConvertResponse.js.map
|
package/dist/cjs/modules/tide-js/Models/Responses/KeyAuth/Convert/DeviceConvertResponse.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DeviceConvertResponse.js","sourceRoot":"","sources":["../../../../../../../../modules/tide-js/Models/Responses/KeyAuth/Convert/DeviceConvertResponse.js"],"names":[],"mappings":";AAAA,GAAG;AACH,gEAAgE;AAChE,yCAAyC;AACzC,GAAG;AACH,gEAAgE;AAChE,4DAA4D;AAC5D,+DAA+D;AAC/D,kEAAkE;AAClE,6DAA6D;AAC7D,gEAAgE;AAChE,oCAAoC;AACpC,6DAA6D;AAC7D,8DAA8D;AAC9D,wCAAwC;AACxC,qDAAqD;AACrD,EAAE;;AAEF,gEAAwD;AAExD,MAAqB,qBAAqB;IACtC;;;OAGG;IACH,YAAY,WAAW,EAAE,MAAM;QAC3B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACxB,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,IAAI;QACZ,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC7B,MAAM,MAAM,GAAG,kBAAK,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAC3C,OAAO,IAAI,qBAAqB,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IAC9D,CAAC;CACJ;AAdD,wCAcC"}
|
|
@@ -5,6 +5,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.CMKAuth_Basic = CMKAuth_Basic;
|
|
7
7
|
exports.CMKAuth_Remembered = CMKAuth_Remembered;
|
|
8
|
+
exports.Mobile_CMKAuth_Pairing = Mobile_CMKAuth_Pairing;
|
|
9
|
+
exports.Mobile_Authentication_Real_Pairing = Mobile_Authentication_Real_Pairing;
|
|
10
|
+
exports.Mobile_Authentication_Real_Login = Mobile_Authentication_Real_Login;
|
|
11
|
+
exports.Mobile_Authentication_Real_SignUp = Mobile_Authentication_Real_SignUp;
|
|
8
12
|
const OrkInfo_js_1 = __importDefault(require("../Models/Infos/OrkInfo.js"));
|
|
9
13
|
const H2P_js_1 = __importDefault(require("../Cryptide/Hashing/H2P.js"));
|
|
10
14
|
const index_js_1 = require("../Cryptide/index.js");
|
|
@@ -18,6 +22,12 @@ const EnclaveEntry_js_1 = __importDefault(require("../Models/EnclaveEntry.js"));
|
|
|
18
22
|
const KeyInfo_js_1 = __importDefault(require("../Models/Infos/KeyInfo.js"));
|
|
19
23
|
const NetworkClient_js_1 = __importDefault(require("../Clients/NetworkClient.js"));
|
|
20
24
|
const Utils_js_1 = require("../Tools/Utils.js");
|
|
25
|
+
const TideKey_js_1 = __importDefault(require("../Cryptide/TideKey.js"));
|
|
26
|
+
const Serialization_js_1 = require("../Cryptide/Serialization.js");
|
|
27
|
+
const EnclaveToMobileTunnelClient_js_1 = __importDefault(require("../Clients/EnclaveToMobileTunnelClient.js"));
|
|
28
|
+
const dMobileAuthenticationFlow_js_1 = __importDefault(require("../Flow/AuthenticationFlows/dMobileAuthenticationFlow.js"));
|
|
29
|
+
const Ed25519Scheme_js_1 = __importDefault(require("../Cryptide/Components/Schemes/Ed25519/Ed25519Scheme.js"));
|
|
30
|
+
const Ed25519Components_js_1 = require("../Cryptide/Components/Schemes/Ed25519/Ed25519Components.js");
|
|
21
31
|
async function CMKAuth_Basic() {
|
|
22
32
|
// basic username, password test flow
|
|
23
33
|
var orks;
|
|
@@ -48,9 +58,10 @@ async function CMKAuth_Basic() {
|
|
|
48
58
|
await genFlow.Commit();
|
|
49
59
|
};
|
|
50
60
|
const authenticate = async () => {
|
|
61
|
+
const skey = TideKey_js_1.default.NewKey(Ed25519Scheme_js_1.default);
|
|
51
62
|
const keyInfo = await new NetworkClient_js_1.default("http://host.docker.internal:1001").GetKeyInfo(uid);
|
|
52
63
|
const dAuthFlow = new dCMKPasswordFlow_js_1.default(keyInfo, sessID, true, true, "http://host.docker.internal:3000/voucher/new");
|
|
53
|
-
await dAuthFlow.Convert(
|
|
64
|
+
await dAuthFlow.Convert(skey, gPass, GK, true);
|
|
54
65
|
await dAuthFlow.Authenticate(gSessKey); // gVRK can be anything for testing
|
|
55
66
|
};
|
|
56
67
|
await create();
|
|
@@ -90,12 +101,13 @@ async function CMKAuth_Remembered() {
|
|
|
90
101
|
await genFlow.Commit();
|
|
91
102
|
};
|
|
92
103
|
const authenticate = async () => {
|
|
104
|
+
const skey = new TideKey_js_1.default(new Ed25519Components_js_1.Ed25519PrivateComponent((0, Serialization_js_1.BigIntFromByteArray)(sessKey)));
|
|
93
105
|
const keyInfo = await new NetworkClient_js_1.default("http://localhost:1001").GetKeyInfo(uid);
|
|
94
106
|
const dAuthFlow = new dCMKPasswordFlow_js_1.default(keyInfo, sessID, true, true, "http://localhost:3000/voucher/new");
|
|
95
|
-
await dAuthFlow.Convert(
|
|
107
|
+
await dAuthFlow.Convert(skey, gPass, GK, true);
|
|
96
108
|
const { bitwise, expired, selfRequesti } = await dAuthFlow.Authenticate(gSessKey); // gVRK can be anything for testing
|
|
97
109
|
const userInfo = new KeyInfo_js_1.default(uid, GK, keyInfo.UserM, orks);
|
|
98
|
-
const auth = new EnclaveEntry_js_1.default(user, "1", BigInt(expired), userInfo, bitwise, selfRequesti,
|
|
110
|
+
const auth = new EnclaveEntry_js_1.default(user, "1", BigInt(expired), userInfo, bitwise, selfRequesti, skey.get_private_component().Serialize().ToBytes());
|
|
99
111
|
return auth;
|
|
100
112
|
};
|
|
101
113
|
const authenticateNoPassword = async (auth) => {
|
|
@@ -110,4 +122,149 @@ async function CMKAuth_Remembered() {
|
|
|
110
122
|
i++;
|
|
111
123
|
}
|
|
112
124
|
}
|
|
125
|
+
async function Mobile_CMKAuth_Pairing() {
|
|
126
|
+
// Enclave variables
|
|
127
|
+
const voucherURL = "http://localhost:3000/voucher/new";
|
|
128
|
+
const browserKey = TideKey_js_1.default.NewKey(Ed25519Scheme_js_1.default);
|
|
129
|
+
const vendorPublicKey = browserKey;
|
|
130
|
+
const returnURL = "http://returnURL";
|
|
131
|
+
const returnURLSig = await vendorPublicKey.sign((0, Serialization_js_1.StringToUint8Array)(returnURL));
|
|
132
|
+
const signedReturnURL = (0, Serialization_js_1.CreateTideMemoryFromArray)([(0, Serialization_js_1.StringToUint8Array)(returnURL), returnURLSig]);
|
|
133
|
+
const sessionKey = browserKey;
|
|
134
|
+
const sessionKeySig = (0, Serialization_js_1.bytesToBase64)(await sessionKey.sign(browserKey.get_public_component().Serialize().ToBytes()));
|
|
135
|
+
;
|
|
136
|
+
const appReq = JSON.stringify({
|
|
137
|
+
networkSessKeyPub: sessionKey.get_public_component().Serialize().ToString(),
|
|
138
|
+
vendorSessKeyPub: sessionKey.get_public_component().Serialize().ToString(),
|
|
139
|
+
sessionId: "sessionID",
|
|
140
|
+
returnURL: returnURL,
|
|
141
|
+
rememberMe: false
|
|
142
|
+
});
|
|
143
|
+
const appReqSig = (0, Serialization_js_1.bytesToBase64)(await browserKey.sign((0, Serialization_js_1.StringToUint8Array)(appReq)));
|
|
144
|
+
// Enclave initiates a tunnel with orks - provided an invite link
|
|
145
|
+
const homeOrkUrl = "http://localhost:1001";
|
|
146
|
+
const enclaveClient = new EnclaveToMobileTunnelClient_js_1.default(homeOrkUrl);
|
|
147
|
+
const inviteLink = await enclaveClient.initializeConnection();
|
|
148
|
+
await enclaveClient.waitForAppReady();
|
|
149
|
+
const pre_mobileDone = enclaveClient.passEnclaveInfo(voucherURL, browserKey, appReq, appReqSig, sessionKeySig, vendorPublicKey);
|
|
150
|
+
// Create user we can pair phone to
|
|
151
|
+
const user = Date.now().toString();
|
|
152
|
+
const persona = "1";
|
|
153
|
+
const emails = ["testEmail1@doge.com"];
|
|
154
|
+
const password = "pass";
|
|
155
|
+
const gPass = await (0, H2P_js_1.default)(password);
|
|
156
|
+
const uid = await index_js_1.Serialization.GetUID(user);
|
|
157
|
+
const sessKey = index_js_2.Math.GenSessKey();
|
|
158
|
+
const gSessKey = index_js_2.Math.GetPublic(sessKey);
|
|
159
|
+
const sessID = "123ID";
|
|
160
|
+
const VRK = BigInt(123456789);
|
|
161
|
+
const gVRK = (0, Math_js_1.GetPublic)(VRK);
|
|
162
|
+
let GK;
|
|
163
|
+
let keyM;
|
|
164
|
+
let orks;
|
|
165
|
+
const create = async () => {
|
|
166
|
+
// create account first
|
|
167
|
+
const purpose = "NEW";
|
|
168
|
+
const { reservationConfirmation, activeOrks } = (await dKeyGenerationFlow_js_1.default.ReserveUID(uid, "http://localhost:3000/voucher/new", gSessKey));
|
|
169
|
+
orks = activeOrks.slice(0, Utils_js_1.Max);
|
|
170
|
+
const genFlow = new dKeyGenerationFlow_js_1.default(uid, gVRK.toBase64(), orks, sessKey, gSessKey, purpose, "http://localhost:3000/voucher/new", emails);
|
|
171
|
+
const { gMultiplied, gK } = await genFlow.GenShard(2, [null, gPass], reservationConfirmation); // auths can be null if purpose is "new", for now...
|
|
172
|
+
GK = gK;
|
|
173
|
+
const gPrismAuth = await (0, Math_js_1.CreateGPrismAuth)(gMultiplied[1]);
|
|
174
|
+
await genFlow.SetShard(gPrismAuth.toBase64(), "CMK");
|
|
175
|
+
await genFlow.Commit();
|
|
176
|
+
};
|
|
177
|
+
await create();
|
|
178
|
+
console.log("Now it begins");
|
|
179
|
+
// Mobile authentication flow begins
|
|
180
|
+
const mobileAuthFlow = new dMobileAuthenticationFlow_js_1.default(inviteLink);
|
|
181
|
+
const deviceKey = TideKey_js_1.default.NewKey(Ed25519Scheme_js_1.default);
|
|
182
|
+
const data = await mobileAuthFlow.ensureReady(user);
|
|
183
|
+
const pre_pairDone = mobileAuthFlow.pairNewDevice(deviceKey.get_private_component().Serialize().ToString(), password, "test", sessionKey);
|
|
184
|
+
// Enclave client recieves mobile authentication data
|
|
185
|
+
const mobileDone = await pre_mobileDone;
|
|
186
|
+
// Enclave checks it can decrypt the encrypted data
|
|
187
|
+
const decrpytedMobileData = JSON.parse((0, Serialization_js_1.StringFromUint8Array)(await sessionKey.asymmetricDecrypt((0, Serialization_js_1.base64ToBytes)(mobileDone))));
|
|
188
|
+
// Check values inside decryptedMobileData are as expected
|
|
189
|
+
const requiredProperties = ['prkRequesti', 'vendorData', 'rememberMe', 'enclaveEntry',];
|
|
190
|
+
for (const property of requiredProperties) {
|
|
191
|
+
if (Object.keys(decrpytedMobileData).indexOf(property) == -1) {
|
|
192
|
+
throw new Error(`The decrpytedMobileData object is missing the required '${property}' property.`);
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
// Now let's use these values to log in for real
|
|
196
|
+
// verify blind sig
|
|
197
|
+
await enclaveClient.indicateSuccess();
|
|
198
|
+
await pre_pairDone; // await the finalization of the commit
|
|
199
|
+
// PAIRING DONE -------------
|
|
200
|
+
// Now let's try a log in with the self requestis we just got from the pairing proccess (simulating a remember me login)
|
|
201
|
+
// Must first create EnclaveEntry object AND decrypt prk requestis into self requestis
|
|
202
|
+
// Generate prkECDHi
|
|
203
|
+
const userinfo = KeyInfo_js_1.default.fromNativeTypeObject(decrpytedMobileData.enclaveEntry.userInfo);
|
|
204
|
+
// compute ECDHI for orks that are part of bitwise (also sorted orks so keys match up with request indexes)
|
|
205
|
+
const prkECDHi = await index_js_1.DH.generateECDHi((0, Utils_js_1.sortORKs)(userinfo.OrkInfo).map(o => o.orkPublic).filter((_, i) => decrpytedMobileData.enclaveEntry.orksBitwise[i] == true), sessionKey.get_private_component().priv);
|
|
206
|
+
const selfRequesti = await Promise.all(prkECDHi.map((dh, i) => index_js_1.AES.decryptDataRawOutput((0, Serialization_js_1.base64ToBytes)(decrpytedMobileData.prkRequesti[i]), dh)));
|
|
207
|
+
const ee = new EnclaveEntry_js_1.default(decrpytedMobileData.enclaveEntry.username, "1", decrpytedMobileData.enclaveEntry.expired, KeyInfo_js_1.default.fromNativeTypeObject(decrpytedMobileData.enclaveEntry.userInfo), decrpytedMobileData.enclaveEntry.orksBitwise, selfRequesti.map(s => (0, Serialization_js_1.bytesToBase64)(s)), sessionKey.get_private_component().Serialize().ToBytes());
|
|
208
|
+
const loginFlow = new dCMKPasswordlessFlow_js_1.default("sess", ee, voucherURL);
|
|
209
|
+
await loginFlow.ConvertRemembered();
|
|
210
|
+
const f = await loginFlow.AuthenticateRemembered(null); // no gvrk
|
|
211
|
+
console.log("Test passed");
|
|
212
|
+
}
|
|
213
|
+
async function Mobile_Authentication_Real_Pairing() {
|
|
214
|
+
// This test is so i don't have to continuosly debug a mobile phone when testing mobile login
|
|
215
|
+
// This test WILL NOT create a user, since it's assumed a user has already created a Tide Account on an enclave in the past
|
|
216
|
+
// This test will ONLY replicate a mobile authentication on a phone but with a REAL enclave
|
|
217
|
+
const mobileKey = "AAAAcB5h5SR5IoUXfBMMxafY8AY4iukS7OfZ+sQT6fdxNvc="; // always use the same for tests
|
|
218
|
+
// 1. Enter tunnel address
|
|
219
|
+
const inviteLink = window.prompt("Whats the invite link?");
|
|
220
|
+
// 2. Pair mobile
|
|
221
|
+
// I'm going to assume the user created on the enclave was username="a" password ="a"
|
|
222
|
+
const username = "a";
|
|
223
|
+
const password = "a";
|
|
224
|
+
const mobileFlow = new dMobileAuthenticationFlow_js_1.default(inviteLink);
|
|
225
|
+
const { browserKeyIdentifier, vendorReturnURL, userID } = await mobileFlow.ensureReady(username);
|
|
226
|
+
console.log("Browser key identifier: " + browserKeyIdentifier);
|
|
227
|
+
console.log("Vendor return URL: " + vendorReturnURL);
|
|
228
|
+
console.log("User id: " + userID);
|
|
229
|
+
await mobileFlow.pairNewDevice(mobileKey, password, "test");
|
|
230
|
+
console.log("'Mobile' pairing proccess done");
|
|
231
|
+
}
|
|
232
|
+
async function Mobile_Authentication_Real_Login() {
|
|
233
|
+
// This test is so i don't have to continuosly debug a mobile phone when testing mobile login
|
|
234
|
+
// This test WILL NOT create a user, since it's assumed a user has already created a Tide Account on an enclave in the past
|
|
235
|
+
// This test will ONLY replicate a mobile authentication on a phone but with a REAL enclave
|
|
236
|
+
const mobileKey = "AAAAcB5h5SR5IoUXfBMMxafY8AY4iukS7OfZ+sQT6fdxNvc="; // always use the same for tests
|
|
237
|
+
// 1. Enter tunnel address
|
|
238
|
+
const inviteLink = window.prompt("Whats the invite link?");
|
|
239
|
+
// 2. Pair mobile
|
|
240
|
+
// I'm going to assume the user created on the enclave was username="a" password ="a"
|
|
241
|
+
const username = "a";
|
|
242
|
+
const password = "a";
|
|
243
|
+
const mobileFlow = new dMobileAuthenticationFlow_js_1.default(inviteLink);
|
|
244
|
+
const { browserKeyIdentifier, vendorReturnURL, userID } = await mobileFlow.ensureReady(username);
|
|
245
|
+
console.log("Browser key identifier: " + browserKeyIdentifier);
|
|
246
|
+
console.log("Vendor return URL: " + vendorReturnURL);
|
|
247
|
+
console.log("User id: " + userID);
|
|
248
|
+
await mobileFlow.authenticate(mobileKey);
|
|
249
|
+
await mobileFlow.finish();
|
|
250
|
+
console.log("'Mobile' login proccess done");
|
|
251
|
+
}
|
|
252
|
+
async function Mobile_Authentication_Real_SignUp() {
|
|
253
|
+
// This test is so i don't have to continuosly debug a mobile phone when testing mobile login
|
|
254
|
+
// This test WILL NOT create a user, since it's assumed a user has already created a Tide Account on an enclave in the past
|
|
255
|
+
// This test will ONLY replicate a mobile authentication on a phone but with a REAL enclave
|
|
256
|
+
const mobileKey = "AAAAcB5h5SR5IoUXfBMMxafY8AY4iukS7OfZ+sQT6fdxNvc="; // always use the same for tests
|
|
257
|
+
// 1. Enter tunnel address
|
|
258
|
+
const inviteLink = window.prompt("Whats the invite link?");
|
|
259
|
+
// 2. Pair mobile
|
|
260
|
+
// I'm going to assume the user created on the enclave was username="a" password ="a"
|
|
261
|
+
const username = "a";
|
|
262
|
+
const mobileFlow = new dMobileAuthenticationFlow_js_1.default(inviteLink);
|
|
263
|
+
const { browserKeyIdentifier, vendorReturnURL, userID } = await mobileFlow.ensureReady(username);
|
|
264
|
+
console.log("Browser key identifier: " + browserKeyIdentifier);
|
|
265
|
+
console.log("Vendor return URL: " + vendorReturnURL);
|
|
266
|
+
console.log("User id: " + userID);
|
|
267
|
+
await mobileFlow.createNewAccount(mobileKey, "test", "a@e.co");
|
|
268
|
+
console.log("'Mobile' creation proccess done");
|
|
269
|
+
}
|
|
113
270
|
//# sourceMappingURL=KeyAuthentication.js.map
|