@tidecloak/js 0.9.13 → 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/README.md +53 -4
- package/dist/cjs/lib/tidecloak.js +12 -10
- package/dist/cjs/lib/tidecloak.js.map +1 -1
- 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/cjs/src/index.js +4 -1
- package/dist/cjs/src/index.js.map +1 -1
- package/dist/esm/lib/tidecloak.js +12 -10
- package/dist/esm/lib/tidecloak.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/esm/src/index.js +1 -0
- package/dist/esm/src/index.js.map +1 -1
- package/dist/types/lib/tidecloak.d.ts +1 -0
- 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/ElGamal.d.ts +5 -0
- package/dist/types/modules/tide-js/Cryptide/Serialization.d.ts +1 -1
- 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/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/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/dist/types/src/index.d.ts +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
export default function WebSocketClientBase(url, protocols) {
|
|
2
|
+
if (!(this instanceof WebSocketClientBase)) {
|
|
3
|
+
throw new Error("The 'AuthorizedEncryptionFlow' constructor must be invoked with 'new'.");
|
|
4
|
+
}
|
|
5
|
+
var base = this;
|
|
6
|
+
const socket = new WebSocket(url, protocols);
|
|
7
|
+
base.getSocketUrl = () => socket.url;
|
|
8
|
+
/**
|
|
9
|
+
* @param {string} type
|
|
10
|
+
* @returns
|
|
11
|
+
*/
|
|
12
|
+
base.waitForMessage = async function (type) {
|
|
13
|
+
return new Promise((resolve) => {
|
|
14
|
+
const handler = (event) => {
|
|
15
|
+
const data = JSON.parse(event.data);
|
|
16
|
+
if (type === data.type) {
|
|
17
|
+
// Correctly awaited type, return message
|
|
18
|
+
socket.removeEventListener("message", handler);
|
|
19
|
+
console.log("[WEBSOCKET] Recieved type: <" + type + "> successfully");
|
|
20
|
+
resolve(data.message);
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
socket.onmessage = e => handler(e);
|
|
24
|
+
});
|
|
25
|
+
};
|
|
26
|
+
base.sendMessage = async function (msg) {
|
|
27
|
+
await waitForConnectionReady();
|
|
28
|
+
socket.send(JSON.stringify(msg));
|
|
29
|
+
};
|
|
30
|
+
base.close = async function () {
|
|
31
|
+
await waitForConnectionReady();
|
|
32
|
+
socket.close();
|
|
33
|
+
};
|
|
34
|
+
async function waitForConnectionReady() {
|
|
35
|
+
if (socket.readyState === socket.OPEN)
|
|
36
|
+
return;
|
|
37
|
+
if (socket.readyState === socket.CLOSED || socket.readyState === socket.CLOSING)
|
|
38
|
+
throw `Socket is in the process of closing or is already closed`;
|
|
39
|
+
const readyAwaiter = new Promise((res) => {
|
|
40
|
+
socket.onopen = () => res();
|
|
41
|
+
socket.onerror = (event) => {
|
|
42
|
+
throw event;
|
|
43
|
+
};
|
|
44
|
+
});
|
|
45
|
+
return readyAwaiter;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=WebSocketClientBase.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WebSocketClientBase.js","sourceRoot":"","sources":["../../../../../modules/tide-js/Clients/WebSocketClientBase.js"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,GAAG,EAAE,SAAS;IACtD,IAAI,CAAC,CAAC,IAAI,YAAY,mBAAmB,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAA;IAC7F,CAAC;IAED,IAAI,IAAI,GAAG,IAAI,CAAC;IAChB,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAE7C,IAAI,CAAC,YAAY,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC;IAErC;;;OAGG;IACH,IAAI,CAAC,cAAc,GAAG,KAAK,WAAU,IAAI;QACrC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC3B,MAAM,OAAO,GAAG,CAAC,KAAK,EAAE,EAAE;gBACtB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACpC,IAAG,IAAI,KAAK,IAAI,CAAC,IAAI,EAAC,CAAC;oBACnB,yCAAyC;oBACzC,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;oBAC/C,OAAO,CAAC,GAAG,CAAC,8BAA8B,GAAG,IAAI,GAAG,gBAAgB,CAAC,CAAC;oBACtE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC1B,CAAC;YACL,CAAC,CAAC;YACF,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;IACP,CAAC,CAAA;IAED,IAAI,CAAC,WAAW,GAAG,KAAK,WAAU,GAAG;QACjC,MAAM,sBAAsB,EAAE,CAAC;QAC/B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;IACrC,CAAC,CAAA;IAED,IAAI,CAAC,KAAK,GAAG,KAAK;QACd,MAAM,sBAAsB,EAAE,CAAC;QAC/B,MAAM,CAAC,KAAK,EAAE,CAAC;IACnB,CAAC,CAAA;IAED,KAAK,UAAU,sBAAsB;QACjC,IAAG,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,IAAI;YAAE,OAAO;QAC7C,IAAG,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,OAAO;YAAE,MAAM,0DAA0D,CAAC;QAEjJ,MAAM,YAAY,GAAG,IAAI,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACrC,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC;YAC5B,MAAM,CAAC,OAAO,GAAG,CAAC,KAAK,EAAE,EAAE;gBACvB,MAAM,KAAK,CAAC;YAChB,CAAC,CAAA;QACL,CAAC,CAAC,CAAC;QACH,OAAO,YAAY,CAAC;IACxB,CAAC;AACL,CAAC"}
|
|
@@ -140,15 +140,15 @@ export class Ed25519SeedComponent extends BaseSeedComponent {
|
|
|
140
140
|
head[0] &= 248; // Clamp bits: 0b1111_1000,
|
|
141
141
|
head[31] &= 127; // 0b0111_1111,
|
|
142
142
|
head[31] |= 64; // 0b0100_0000
|
|
143
|
-
return
|
|
143
|
+
return head;
|
|
144
144
|
}
|
|
145
145
|
GetPrivate() {
|
|
146
|
-
return new Ed25519PrivateComponent(this.rawBytes);
|
|
146
|
+
return new Ed25519PrivateComponent(mod(BigIntFromByteArray(this.rawBytes)));
|
|
147
147
|
}
|
|
148
148
|
GetPublic() {
|
|
149
149
|
return this.GetPrivate().GetPublic();
|
|
150
150
|
}
|
|
151
|
-
static
|
|
151
|
+
static New() {
|
|
152
152
|
return new Ed25519SeedComponent(this.GenerateSeed());
|
|
153
153
|
}
|
|
154
154
|
}
|
package/dist/esm/modules/tide-js/Cryptide/Components/Schemes/Ed25519/Ed25519Components.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Ed25519Components.js","sourceRoot":"","sources":["../../../../../../../../modules/tide-js/Cryptide/Components/Schemes/Ed25519/Ed25519Components.js"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Ed25519Components.js","sourceRoot":"","sources":["../../../../../../../../modules/tide-js/Cryptide/Components/Schemes/Ed25519/Ed25519Components.js"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
var _a;
|
|
2
2
|
import { sign, signAsync, signNonDeterministicAsync, verifyAsync } from "../../../Ed25519.js";
|
|
3
|
+
import ElGamal from "../../../Encryption/ElGamal.js";
|
|
3
4
|
import BaseScheme from "../BaseScheme.js";
|
|
4
5
|
import { SchemeType } from "../SchemeRegistry.js";
|
|
5
6
|
import { Ed25519PrivateComponent, Ed25519PublicComponent, Ed25519SeedComponent } from "./Ed25519Components.js";
|
|
@@ -32,5 +33,25 @@ Ed25519Scheme.GetVerifyingFunction = () => {
|
|
|
32
33
|
};
|
|
33
34
|
return verifyingFunc;
|
|
34
35
|
};
|
|
36
|
+
Ed25519Scheme.GetEncryptingFunction = () => {
|
|
37
|
+
const encryptingFunc = async (msg, component) => {
|
|
38
|
+
if (msg instanceof Uint8Array && component instanceof Ed25519PublicComponent) {
|
|
39
|
+
return await ElGamal.encryptDataRaw(msg, component.public);
|
|
40
|
+
}
|
|
41
|
+
else
|
|
42
|
+
throw Error("Mismatch between expected types (Uint8Array, Ed25519PublicComponent)");
|
|
43
|
+
};
|
|
44
|
+
return encryptingFunc;
|
|
45
|
+
};
|
|
46
|
+
Ed25519Scheme.GetDecryptingFunction = () => {
|
|
47
|
+
const decryptingFunc = async (cipher, component) => {
|
|
48
|
+
if (cipher instanceof Uint8Array && component instanceof Ed25519PrivateComponent) {
|
|
49
|
+
return await ElGamal.decryptDataRaw(cipher, component.priv);
|
|
50
|
+
}
|
|
51
|
+
else
|
|
52
|
+
throw Error("Mismatch between expected types (Uint8Array, Ed25519PrivateComponent)");
|
|
53
|
+
};
|
|
54
|
+
return decryptingFunc;
|
|
55
|
+
};
|
|
35
56
|
export default Ed25519Scheme;
|
|
36
57
|
//# sourceMappingURL=Ed25519Scheme.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Ed25519Scheme.js","sourceRoot":"","sources":["../../../../../../../../modules/tide-js/Cryptide/Components/Schemes/Ed25519/Ed25519Scheme.js"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,yBAAyB,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC9F,OAAO,UAAU,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE/G,MAAqB,aAAc,SAAQ,UAAU;IACjD,MAAM,KAAK,IAAI,KAAK,OAAO,eAAe,CAAC,CAAC,CAAC;;;AAC7C;;;GAGG;AACI,gCAAkB,GAAG,GAAG,EAAE;IAC7B,MAAM,WAAW,GAAG,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE;QACnC,IAAG,GAAG,YAAY,UAAU,IAAI,SAAS,YAAY,uBAAuB,EAAC,CAAC;YAC1E,OAAO,yBAAyB,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;QAC1D,CAAC;QACD,MAAM,KAAK,CAAC,kEAAkE,CAAC,CAAC;IACpF,CAAC,CAAA;IACD,OAAO,WAAW,CAAC;AACvB,CAAC,AARwB,CAQxB;AACM,kCAAoB,GAAG,GAAG,EAAE;IAC/B,MAAM,aAAa,GAAG,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE;QACtD,IAAG,GAAG,YAAY,UAAU,IAAI,SAAS,YAAY,UAAU,IAAI,SAAS,YAAY,sBAAsB,EAAC,CAAC;YAC5G,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,SAAS,EAAE,GAAG,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;YACpE,IAAG,CAAC,KAAK;gBAAE,MAAM,KAAK,CAAC,6BAA6B,CAAC,CAAC;QAC1D,CAAC;;YACI,MAAM,KAAK,CAAC,6EAA6E,CAAC,CAAC;IACpG,CAAC,CAAA;IACD,OAAO,aAAa,CAAC;AACzB,CAAC,AAT0B,CAS1B;
|
|
1
|
+
{"version":3,"file":"Ed25519Scheme.js","sourceRoot":"","sources":["../../../../../../../../modules/tide-js/Cryptide/Components/Schemes/Ed25519/Ed25519Scheme.js"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,yBAAyB,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC9F,OAAO,OAAO,MAAM,gCAAgC,CAAC;AACrD,OAAO,UAAU,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE/G,MAAqB,aAAc,SAAQ,UAAU;IACjD,MAAM,KAAK,IAAI,KAAK,OAAO,eAAe,CAAC,CAAC,CAAC;;;AAC7C;;;GAGG;AACI,gCAAkB,GAAG,GAAG,EAAE;IAC7B,MAAM,WAAW,GAAG,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE;QACnC,IAAG,GAAG,YAAY,UAAU,IAAI,SAAS,YAAY,uBAAuB,EAAC,CAAC;YAC1E,OAAO,yBAAyB,CAAC,GAAG,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;QAC1D,CAAC;QACD,MAAM,KAAK,CAAC,kEAAkE,CAAC,CAAC;IACpF,CAAC,CAAA;IACD,OAAO,WAAW,CAAC;AACvB,CAAC,AARwB,CAQxB;AACM,kCAAoB,GAAG,GAAG,EAAE;IAC/B,MAAM,aAAa,GAAG,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE;QACtD,IAAG,GAAG,YAAY,UAAU,IAAI,SAAS,YAAY,UAAU,IAAI,SAAS,YAAY,sBAAsB,EAAC,CAAC;YAC5G,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,SAAS,EAAE,GAAG,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;YACpE,IAAG,CAAC,KAAK;gBAAE,MAAM,KAAK,CAAC,6BAA6B,CAAC,CAAC;QAC1D,CAAC;;YACI,MAAM,KAAK,CAAC,6EAA6E,CAAC,CAAC;IACpG,CAAC,CAAA;IACD,OAAO,aAAa,CAAC;AACzB,CAAC,AAT0B,CAS1B;AACM,mCAAqB,GAAG,GAAG,EAAE;IAChC,MAAM,cAAc,GAAG,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;QAC5C,IAAG,GAAG,YAAY,UAAU,IAAI,SAAS,YAAY,sBAAsB,EAAC,CAAC;YACzE,OAAO,MAAM,OAAO,CAAC,cAAc,CAAC,GAAG,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;QAC/D,CAAC;;YACI,MAAM,KAAK,CAAC,sEAAsE,CAAC,CAAC;IAC7F,CAAC,CAAA;IACD,OAAO,cAAc,CAAC;AAC1B,CAAC,AAR2B,CAQ3B;AACM,mCAAqB,GAAG,GAAG,EAAE;IAChC,MAAM,cAAc,GAAG,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE;QAC/C,IAAG,MAAM,YAAY,UAAU,IAAI,SAAS,YAAY,uBAAuB,EAAC,CAAC;YAC7E,OAAO,MAAM,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;QAChE,CAAC;;YACI,MAAM,KAAK,CAAC,uEAAuE,CAAC,CAAC;IAC9F,CAAC,CAAA;IACD,OAAO,cAAc,CAAC;AAC1B,CAAC,AAR2B,CAQ3B;eA1CgB,aAAa"}
|
|
@@ -52,5 +52,17 @@ export default class ElGamal {
|
|
|
52
52
|
const decrypted = await decryptDataRawOutput(c2, await SHA256_Digest(c1Point.mul(priv).toRawBytes()));
|
|
53
53
|
return decrypted;
|
|
54
54
|
}
|
|
55
|
+
/**
|
|
56
|
+
* @param {Uint8Array} base64_c1_c2
|
|
57
|
+
* @param {bigint | Uint8Array} k
|
|
58
|
+
*/
|
|
59
|
+
static async decryptDataRaw(base64_c1_c2, k) {
|
|
60
|
+
const priv = typeof (k) == 'bigint' ? k : BigIntFromByteArray(k);
|
|
61
|
+
const c1 = base64_c1_c2.slice(0, 32);
|
|
62
|
+
const c2 = base64_c1_c2.slice(32);
|
|
63
|
+
const c1Point = Point.fromBytes(c1);
|
|
64
|
+
const decrypted = await decryptDataRawOutput(c2, await SHA256_Digest(c1Point.mul(priv).toRawBytes()));
|
|
65
|
+
return decrypted;
|
|
66
|
+
}
|
|
55
67
|
}
|
|
56
68
|
//# sourceMappingURL=ElGamal.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ElGamal.js","sourceRoot":"","sources":["../../../../../../modules/tide-js/Cryptide/Encryption/ElGamal.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,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AACnF,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAE3G,MAAM,CAAC,OAAO,OAAO,OAAO;IACxB;;;;OAIG;IACH,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,EAAE,SAAS;QAC1C,OAAO,aAAa,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,EAAE,SAAS;QAC7C,MAAM,CAAC,GAAG,YAAY,EAAE,CAAC;QACzB,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;QAC1C,MAAM,EAAE,GAAG,MAAM,oBAAoB,CAAC,UAAU,EAAE,MAAM,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QACtG,OAAO,iBAAiB,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IACvC,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,OAAM,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAA,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;QAC/D,MAAM,CAAC,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC;QACtC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC1B,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAEvB,MAAM,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QACpC,MAAM,SAAS,GAAG,MAAM,oBAAoB,CAAC,EAAE,EAAE,MAAM,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QACtG,OAAO,SAAS,CAAC;IACrB,CAAC;CACJ"}
|
|
1
|
+
{"version":3,"file":"ElGamal.js","sourceRoot":"","sources":["../../../../../../modules/tide-js/Cryptide/Encryption/ElGamal.js"],"names":[],"mappings":"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"}
|
|
@@ -113,6 +113,8 @@ export function CreateTideMemory(initialValue, totalLength, version = 1) {
|
|
|
113
113
|
* @param {Uint8Array[]} datas
|
|
114
114
|
*/
|
|
115
115
|
export function CreateTideMemoryFromArray(datas) {
|
|
116
|
+
if (!datas.every(d => d instanceof Uint8Array))
|
|
117
|
+
throw Error("Expecting all datas to be Uint8Array");
|
|
116
118
|
const length = datas.reduce((sum, next) => sum + 4 + next.length, 0);
|
|
117
119
|
const mem = CreateTideMemory(datas[0], length);
|
|
118
120
|
for (let i = 1; i < datas.length; i++) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Serialization.js","sourceRoot":"","sources":["../../../../../modules/tide-js/Cryptide/Serialization.js"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Serialization.js","sourceRoot":"","sources":["../../../../../modules/tide-js/Cryptide/Serialization.js"],"names":[],"mappings":"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"}
|
|
@@ -49,6 +49,14 @@ export default class TideKey {
|
|
|
49
49
|
const f = this.component.Scheme.GetVerifyingFunction();
|
|
50
50
|
return await f(message, signature, this.get_public_component());
|
|
51
51
|
}
|
|
52
|
+
async asymmetricDecrypt(cipher) {
|
|
53
|
+
const d = this.component.Scheme.GetDecryptingFunction();
|
|
54
|
+
return await d(cipher, this.get_private_component());
|
|
55
|
+
}
|
|
56
|
+
async asymmetricEncrypt(message) {
|
|
57
|
+
const e = this.component.Scheme.GetEncryptingFunction();
|
|
58
|
+
return await e(message, this.get_public_component());
|
|
59
|
+
}
|
|
52
60
|
async prepVouchersReq(gORKn) {
|
|
53
61
|
// Ensure scheme is Ed25519 for tide vouchers
|
|
54
62
|
if (this.component.Scheme !== Ed25519Scheme)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TideKey.js","sourceRoot":"","sources":["../../../../../modules/tide-js/Cryptide/TideKey.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,+BAA+B,CAAC;AAC/G,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mDAAmD,CAAC;AACzF,OAAO,aAAa,MAAM,+CAA+C,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEtG,MAAM,CAAC,OAAO,OAAO,OAAO;IAExB,MAAM,CAAC,MAAM,CAAC,MAAM;QAChB,MAAM,WAAW,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;QACjD,OAAO,IAAI,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;IACtD,CAAC;IAED,MAAM,CAAC,uBAAuB,CAAC,CAAC;QAC5B,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAOD,YAAY,CAAC;QALb,6BAA6B;QAC7B,cAAS,GAAG,SAAS,CAAC;QAKlB,IAAG,CAAC,YAAY,aAAa;YAAE,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;;YAC7C,MAAM,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACpE,CAAC;IACD;;;OAGG;IACH,qBAAqB;QACjB,IAAG,CAAC,oBAAoB,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,YAAY,oBAAoB,CAAC;YAAE,MAAM,KAAK,CAAC,2CAA2C,CAAC,CAAC;QACtK,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,SAAS,YAAY,oBAAoB,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;QACtH,OAAO,IAAI,CAAC,gBAAgB,CAAC;IACjC,CAAC;IACD;;OAEG;IACH,oBAAoB;QAChB,IAAG,CAAC,oBAAoB,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,YAAY,mBAAmB,CAAC;YAAE,MAAM,KAAK,CAAC,0CAA0C,CAAC,CAAC;QACnK,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,SAAS,YAAY,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;QACnH,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,OAAO;QACd,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC;QACrD,OAAO,MAAM,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC;IAC1D,CAAC;IACD,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS;QAC3B,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAC;QACvD,OAAO,MAAM,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC;IACpE,CAAC;
|
|
1
|
+
{"version":3,"file":"TideKey.js","sourceRoot":"","sources":["../../../../../modules/tide-js/Cryptide/TideKey.js"],"names":[],"mappings":"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"}
|
|
@@ -51,8 +51,11 @@ export default class dCMKPasswordFlow {
|
|
|
51
51
|
* @param {Point} gPass
|
|
52
52
|
* @param {Point} gCMK
|
|
53
53
|
* @param {boolean} rememberMe
|
|
54
|
+
* @param {TideKey} vendorSessionKey
|
|
54
55
|
*/
|
|
55
|
-
async Convert(sessKey, gPass, gCMK, rememberMe) {
|
|
56
|
+
async Convert(sessKey, gPass, gCMK, rememberMe, vendorSessionKey = null) {
|
|
57
|
+
if (vendorSessionKey == null)
|
|
58
|
+
vendorSessionKey = sessKey;
|
|
56
59
|
const clients = this.keyInfo.OrkInfo.map(ork => new NodeClient(ork.orkURL)); // create node clients
|
|
57
60
|
const voucherFlow = new VoucherFlow(this.keyInfo.OrkInfo.map(o => o.orkPaymentPublic), this.voucherURL, "signin");
|
|
58
61
|
const { vouchers, k } = await voucherFlow.GetVouchers();
|
|
@@ -72,7 +75,7 @@ export default class dCMKPasswordFlow {
|
|
|
72
75
|
prkECDHi,
|
|
73
76
|
...await CmkConvertReply(fulfilledResponses.map(c => c.CMKConvertResponse), ids, prismAuthis, gCMK, timestampi, this.sessID, this.purpose, Point.fromBytes(Hex2Bytes(vouchers.qPub).slice(-32)), // to translate between tide component and native object
|
|
74
77
|
BigIntFromByteArray(base64ToBytes(vouchers.UDeObf).slice(-32)), // to translate between tide component and native object
|
|
75
|
-
k.get_private_component().priv,
|
|
78
|
+
k.get_private_component().priv, vendorSessionKey.get_public_component())
|
|
76
79
|
};
|
|
77
80
|
return {
|
|
78
81
|
VUID: this.cState.VUID
|
|
@@ -105,22 +108,15 @@ export default class dCMKPasswordFlow {
|
|
|
105
108
|
}
|
|
106
109
|
/**
|
|
107
110
|
* @param {Point} gVRK If a null value is provided, no encryption is applied.
|
|
108
|
-
* @param {Uint8Array} sessKey
|
|
109
|
-
* @param {string} consentToSign
|
|
110
111
|
*/
|
|
111
|
-
async Authenticate(gVRK
|
|
112
|
+
async Authenticate(gVRK) {
|
|
112
113
|
if (this.cState == undefined)
|
|
113
114
|
throw Error("Convert State is undefined");
|
|
114
115
|
const cmkClients = this.keyInfo.OrkInfo.map(ork => new NodeClient(ork.orkURL));
|
|
115
116
|
const pre_encSig = cmkClients.map((client, i) => client.Authenticate(this.keyInfo.UserId, this.cState.selfRequesti[i], this.cState.blurHCMKMul, serializeBitArray(this.cState.bitwise), this.cmkCommitted, this.prismCommitted));
|
|
116
117
|
const encSig = await Promise.all(pre_encSig);
|
|
117
118
|
let vendorEncryptedData;
|
|
118
|
-
|
|
119
|
-
vendorEncryptedData = await AuthenticateBasicReply(this.cState.VUID, this.cState.prkECDHi, encSig, this.cState.gCMKAuth, this.cState.authToken, this.cState.r4, this.cState.gRMul, gVRK);
|
|
120
|
-
}
|
|
121
|
-
else {
|
|
122
|
-
vendorEncryptedData = await AuthenticateConsentReply(this.cState.VUID, this.cState.prkECDHi, encSig, this.cState.gCMKAuth, this.cState.authToken, this.cState.r4, this.cState.gRMul, gVRK, BigIntFromByteArray(sessKey), consentToSign);
|
|
123
|
-
}
|
|
119
|
+
vendorEncryptedData = await AuthenticateBasicReply(this.cState.VUID, this.cState.prkECDHi, encSig, this.cState.gCMKAuth, this.cState.authToken, this.cState.r4, this.cState.gRMul, gVRK);
|
|
124
120
|
return {
|
|
125
121
|
bitwise: this.cState.bitwise,
|
|
126
122
|
expired: this.cState.expired,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dCMKPasswordFlow.js","sourceRoot":"","sources":["../../../../../../modules/tide-js/Flow/AuthenticationFlows/dCMKPasswordFlow.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,OAAO,UAAU,MAAM,6BAA6B,CAAC;AACrD,OAAO,EAAC,EAAE,EAAE,aAAa,EAAC,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,eAAe,EAAE,iBAAiB,EAAG,MAAM,iCAAiC,CAAC;AACxI,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAC/C,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,mBAAmB,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvK,OAAO,YAAY,MAAM,8BAA8B,CAAC;AACxD,OAAO,WAAW,MAAM,gCAAgC,CAAC;AACzD,OAAO,OAAO,MAAM,+BAA+B,CAAC;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAClD,OAAO,OAAO,MAAM,2BAA2B,CAAC;AAEhD,MAAM,CAAC,OAAO,OAAO,gBAAgB;IACjC;;;;;;;OAOG;IACH,YAAY,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,UAAU,EAAE,OAAO,GAAC,IAAI;QAC/E,IAAI,CAAC,OAAO,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QACvG,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACtD,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;QAChC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAA;QACpC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAA;QAEjD,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;IAChC,CAAC;IAEG
|
|
1
|
+
{"version":3,"file":"dCMKPasswordFlow.js","sourceRoot":"","sources":["../../../../../../modules/tide-js/Flow/AuthenticationFlows/dCMKPasswordFlow.js"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
import { dKeyGenerationFlow, NodeClient, SimClient } from "../../index.js";
|
|
2
|
+
import WebSocketClientBase from "../../Clients/WebSocketClientBase.js";
|
|
3
|
+
import { DH } from "../../Cryptide/index.js";
|
|
4
|
+
import { Ed25519PrivateComponent, Ed25519PublicComponent } from "../../Cryptide/Components/Schemes/Ed25519/Ed25519Components.js";
|
|
5
|
+
import Ed25519Scheme from "../../Cryptide/Components/Schemes/Ed25519/Ed25519Scheme.js";
|
|
6
|
+
import HashToPoint from "../../Cryptide/Hashing/H2P.js";
|
|
7
|
+
import { base64ToBase64Url, base64ToBytes, BigIntFromByteArray, BigIntToByteArray, bytesToBase64, CreateTideMemoryFromArray, GetUID, GetValue, StringFromUint8Array, StringToUint8Array } from "../../Cryptide/Serialization.js";
|
|
8
|
+
import TideKey from "../../Cryptide/TideKey.js";
|
|
9
|
+
import { AuthenticateBasicReply, AuthenticateDeviceReply, CmkConvertReply, DeviceConvertReply, DevicePrismConvertReply, PrismConvertReply } from "../../Math/KeyAuthentication.js";
|
|
10
|
+
import BaseTideRequest from "../../Models/BaseTideRequest.js";
|
|
11
|
+
import KeyInfo from "../../Models/Infos/KeyInfo.js";
|
|
12
|
+
import PrismConvertResponse from "../../Models/Responses/KeyAuth/Convert/PrismConvertResponse.js";
|
|
13
|
+
import dVVKSigningFlow2Step from "../SigningFlows/dVVKSigningFlow2Step.js";
|
|
14
|
+
import { Max, sortORKs } from "../../Tools/Utils.js";
|
|
15
|
+
export default class dMobileAuthenticationFlow {
|
|
16
|
+
constructor(scannedQrCodeAddress) {
|
|
17
|
+
this.webSocketClient = new WebSocketClientBase(scannedQrCodeAddress);
|
|
18
|
+
this.requestInfo = this.webSocketClient.waitForMessage("requested info");
|
|
19
|
+
this.webSocketClient.sendMessage({
|
|
20
|
+
type: "ready",
|
|
21
|
+
message: ":)"
|
|
22
|
+
}); // no need to await this since we're only curious about awaiting requestInfo
|
|
23
|
+
}
|
|
24
|
+
async configureFlowSettings() {
|
|
25
|
+
let request = await this.requestInfo;
|
|
26
|
+
const requiredProperties = ['appReq', 'appReqSignature', 'sessionKeySignature', 'voucherURL', 'browserPublicKey', 'vendorPublicKey'];
|
|
27
|
+
for (const property of requiredProperties) {
|
|
28
|
+
if (!request[property]) {
|
|
29
|
+
throw new Error(`dMobileAuthenicationFlow: The configuration object is missing the required '${property}' property.`);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
const socketUrl = this.webSocketClient.getSocketUrl(); // or `.socketUrl` if you added a getter
|
|
33
|
+
const u = new URL(socketUrl);
|
|
34
|
+
if (u.protocol === 'wss:')
|
|
35
|
+
u.protocol = 'https:';
|
|
36
|
+
else if (u.protocol === 'ws:')
|
|
37
|
+
u.protocol = 'http:';
|
|
38
|
+
else
|
|
39
|
+
throw new Error('Expected ws:// or wss:// URL');
|
|
40
|
+
this.homeOrkOrigin = u.origin;
|
|
41
|
+
this.appReq = request.appReq;
|
|
42
|
+
this.sigAppReq = request.appReqSignature;
|
|
43
|
+
this.sessKeyProof = request.sessionKeySignature;
|
|
44
|
+
this.browserPublicKey = TideKey.FromSerializedComponent(request.browserPublicKey);
|
|
45
|
+
this.vendorPublicKey = TideKey.FromSerializedComponent(request.vendorPublicKey);
|
|
46
|
+
this.voucherURL = request.voucherURL;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* @param {string} username
|
|
50
|
+
*/
|
|
51
|
+
async ensureReady(username) {
|
|
52
|
+
await this.configureFlowSettings();
|
|
53
|
+
// Verify details
|
|
54
|
+
// otherwise, abort
|
|
55
|
+
await this.browserPublicKey.verify(StringToUint8Array(this.appReq), base64ToBytes(this.sigAppReq));
|
|
56
|
+
const appReqParsed = JSON.parse(this.appReq);
|
|
57
|
+
this.enclaveVendorSessionKeyPublic = TideKey.FromSerializedComponent(appReqParsed["vendorSessKeyPub"]);
|
|
58
|
+
this.enclaveNetworkSessionKeyPublic = TideKey.FromSerializedComponent(appReqParsed["networkSessKeyPub"]);
|
|
59
|
+
await this.enclaveVendorSessionKeyPublic.verify(this.browserPublicKey.get_public_component().Serialize().ToBytes(), base64ToBytes(this.sessKeyProof));
|
|
60
|
+
this.sessionId = appReqParsed["sessionId"];
|
|
61
|
+
this.rememberMe = appReqParsed["rememberMe"];
|
|
62
|
+
// BIG NOTE
|
|
63
|
+
// enclaveVendorSessionKey public is the key used to identifiy this enclave to the vendor, and will be used alongside the DOKEN
|
|
64
|
+
// enclaveNetworkSessionKey is the key used to identify this enclave to the Tide Network for quick sign in functionality
|
|
65
|
+
// They should NEVER be the same as to ensure the Tide Network can't correlate CMKs to VVKs
|
|
66
|
+
// Checks if gBRK is familiar (expected to do that (outside this flow) in mobile app)
|
|
67
|
+
// ...
|
|
68
|
+
// Short printable source URL
|
|
69
|
+
this.userId = await GetUID(username);
|
|
70
|
+
this.username = username;
|
|
71
|
+
return {
|
|
72
|
+
browserKeyIdentifier: this.browserPublicKey.get_public_component().Serialize().ToString(),
|
|
73
|
+
vendorReturnURL: appReqParsed['returnURL'],
|
|
74
|
+
userID: this.userId
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
*
|
|
79
|
+
* @param {string} devicePrivateKey
|
|
80
|
+
*/
|
|
81
|
+
async authenticate(devicePrivateKey, testSessionKey = null, testUserInfo = null) {
|
|
82
|
+
if (!this.userId)
|
|
83
|
+
throw 'Make sure you run ensureReady first';
|
|
84
|
+
const deviceSessionKey = testSessionKey ? testSessionKey : TideKey.NewKey(Ed25519Scheme);
|
|
85
|
+
const simClient = new SimClient(this.homeOrkOrigin);
|
|
86
|
+
const userInfo = testUserInfo ? testUserInfo : await simClient.GetKeyInfo(this.userId);
|
|
87
|
+
const userInfoRef = new KeyInfo(userInfo.UserId, userInfo.UserPublic, userInfo.UserM, userInfo.OrkInfo.slice()); // we need the full ork list later for the enclave encrypted data
|
|
88
|
+
const signingFlow = new dVVKSigningFlow2Step(this.userId, userInfo.UserPublic, userInfo.OrkInfo, deviceSessionKey, null, this.voucherURL);
|
|
89
|
+
signingFlow.overrideVoucherAction("signin");
|
|
90
|
+
const draft = CreateTideMemoryFromArray([this.enclaveNetworkSessionKeyPublic.get_public_component().Serialize().ToBytes(), new Uint8Array([this.rememberMe ? 1 : 0])]);
|
|
91
|
+
const request = new BaseTideRequest((testSessionKey ? "Test" : "") + "DeviceAuthentication", "1", "", draft);
|
|
92
|
+
signingFlow.setRequest(request);
|
|
93
|
+
const pre_encRequesti = signingFlow.preSign();
|
|
94
|
+
// Compute appAuthi will awaiting request
|
|
95
|
+
const dvk = TideKey.FromSerializedComponent(devicePrivateKey);
|
|
96
|
+
const encRequesti = await pre_encRequesti;
|
|
97
|
+
const appAuthi = await DH.generateECDHi(sortORKs(userInfo.OrkInfo).map(o => o.orkPublic), dvk.get_private_component().priv); // must be sorted!
|
|
98
|
+
const convertinfo = await DeviceConvertReply(encRequesti, appAuthi.filter((_, i) => signingFlow.preSignState.bitwise[i] == true), // only use the appAuthis for the orks that responded (as shown in bitwise)
|
|
99
|
+
signingFlow.orks.map(o => BigInt(o.orkID)), // use signing flow orks reference since these reference the orks that are part of this request
|
|
100
|
+
userInfo.UserPublic, signingFlow.getVouchers().qPub, signingFlow.getVouchers().UDeObf, signingFlow.getVouchers().k, this.enclaveVendorSessionKeyPublic.get_public_component(), "auth", this.sessionId, signingFlow.preSignState.GRj[0]);
|
|
101
|
+
const toSend = convertinfo.decPrismRequesti.map(d => {
|
|
102
|
+
return CreateTideMemoryFromArray([base64ToBytes(d.PRKRequesti), BigIntToByteArray(convertinfo.blurHCMKMul)]);
|
|
103
|
+
});
|
|
104
|
+
const blindSig = (await signingFlow.sign(toSend)).sigs[0];
|
|
105
|
+
const vendorData = await AuthenticateDeviceReply(convertinfo.VUID, blindSig, convertinfo.gCMKAuth, convertinfo.authToken, convertinfo.r4, convertinfo.gRMul, null // - GVRK hereeee
|
|
106
|
+
);
|
|
107
|
+
// Return enclave encrypted data
|
|
108
|
+
this.enclaveEncryptedData = bytesToBase64(await this.browserPublicKey.asymmetricEncrypt(StringToUint8Array(JSON.stringify({
|
|
109
|
+
prkRequesti: convertinfo.decPrismRequesti.map(d => d.PRKRequesti),
|
|
110
|
+
vendorData: vendorData,
|
|
111
|
+
rememberMe: this.rememberMe,
|
|
112
|
+
enclaveEntry: {
|
|
113
|
+
username: this.username,
|
|
114
|
+
//persona, not really supported yet
|
|
115
|
+
expired: convertinfo.expired,
|
|
116
|
+
userInfo: userInfoRef.toNativeTypeObject(),
|
|
117
|
+
orksBitwise: signingFlow.preSignState.bitwise,
|
|
118
|
+
}
|
|
119
|
+
}))));
|
|
120
|
+
}
|
|
121
|
+
async finish() {
|
|
122
|
+
if (!this.enclaveEncryptedData)
|
|
123
|
+
throw 'Call Authenticate() first';
|
|
124
|
+
const success = this.webSocketClient.waitForMessage("login success");
|
|
125
|
+
await this.webSocketClient.sendMessage({
|
|
126
|
+
type: "mobile completed",
|
|
127
|
+
message: this.enclaveEncryptedData
|
|
128
|
+
});
|
|
129
|
+
await success;
|
|
130
|
+
await this.webSocketClient.close();
|
|
131
|
+
}
|
|
132
|
+
async testAuthenticate(devicePrivateKey, sessionKey, userInfo) {
|
|
133
|
+
await this.authenticate(devicePrivateKey, sessionKey, userInfo);
|
|
134
|
+
await this.finish();
|
|
135
|
+
}
|
|
136
|
+
async createNewAccount(devicePrivateKey, deviceName, email) {
|
|
137
|
+
const sessionKey = TideKey.NewKey(Ed25519Scheme);
|
|
138
|
+
const dvk = TideKey.FromSerializedComponent(devicePrivateKey);
|
|
139
|
+
// Reserver UID, get orks to create account
|
|
140
|
+
const { reservationConfirmation, activeOrks } = await dKeyGenerationFlow.ReserveUID(this.userId, this.voucherURL, sessionKey.get_public_component().public, this.homeOrkOrigin);
|
|
141
|
+
// Create a new tide account
|
|
142
|
+
const userOrks = activeOrks.slice(0, Max);
|
|
143
|
+
const keyGen = new dKeyGenerationFlow(this.userId, null, userOrks, sessionKey.get_private_component().rawBytes, sessionKey.get_public_component().public, "NEW", this.voucherURL, [email]);
|
|
144
|
+
const { gMultiplied, gK } = await keyGen.GenShard(1, [null], reservationConfirmation);
|
|
145
|
+
const keyM = (await keyGen.SetShard(dvk.get_public_component().Serialize().ToString(), "CMKDevice")).M;
|
|
146
|
+
// Test account
|
|
147
|
+
await this.testAuthenticate(devicePrivateKey, sessionKey, new KeyInfo(this.userId, gK, keyM, userOrks));
|
|
148
|
+
await keyGen.Commit();
|
|
149
|
+
}
|
|
150
|
+
async pairNewDevice(devicePrivateKey, password, deviceName, sessKey = null) {
|
|
151
|
+
// This is where we submit the new device key to the orks
|
|
152
|
+
// Also we authenticate using the username, password
|
|
153
|
+
// Later - when its a device allowing another device to pair - we'll need to show a qr code
|
|
154
|
+
if (!this.userId)
|
|
155
|
+
throw 'Make sure you run ensureReady first';
|
|
156
|
+
const dvk = TideKey.FromSerializedComponent(devicePrivateKey);
|
|
157
|
+
const sessionKey = sessKey != null ? sessKey : TideKey.NewKey(Ed25519Scheme);
|
|
158
|
+
const simClient = new SimClient(this.homeOrkOrigin);
|
|
159
|
+
const userInfo = await simClient.GetKeyInfo(this.userId);
|
|
160
|
+
const draft = CreateTideMemoryFromArray([
|
|
161
|
+
dvk.get_public_component().Serialize().ToBytes(),
|
|
162
|
+
await dvk.sign(sessionKey.get_public_component().Serialize().ToBytes())
|
|
163
|
+
]);
|
|
164
|
+
const request = new BaseTideRequest("MigratePasswordToMobile", "1", "", draft);
|
|
165
|
+
const signingFlow = new dVVKSigningFlow2Step(this.userId, userInfo.UserPublic, userInfo.OrkInfo, sessionKey, null, this.voucherURL);
|
|
166
|
+
signingFlow.setRequest(request);
|
|
167
|
+
signingFlow.overrideVoucherAction("updateaccount");
|
|
168
|
+
const gPass = new Ed25519PublicComponent(await HashToPoint(password));
|
|
169
|
+
const r1 = Ed25519PrivateComponent.New();
|
|
170
|
+
const gBlurPass = gPass.MultiplyComponent(r1);
|
|
171
|
+
const prismConvertResponses = (await signingFlow.preSign(gBlurPass.Serialize().ToBytes())).map(r => {
|
|
172
|
+
return new PrismConvertResponse(bytesToBase64(GetValue(r, 0)), TideKey.FromSerializedComponent(GetValue(r, 1)).get_public_component().public); // conversion so we can use PrismConvertReply function
|
|
173
|
+
});
|
|
174
|
+
const convertInfo = await DevicePrismConvertReply(prismConvertResponses, signingFlow.orks.map(o => BigInt(o.orkID)), // use signing flow orks reference since these reference the orks that are part of this request
|
|
175
|
+
signingFlow.orks.map(o => o.orkPublic), // use signing flow orks reference since these reference the orks that are part of this request
|
|
176
|
+
r1.priv);
|
|
177
|
+
const dynDatas = convertInfo.prkRequesti.map(p => {
|
|
178
|
+
return CreateTideMemoryFromArray([
|
|
179
|
+
base64ToBytes(p),
|
|
180
|
+
BigIntToByteArray(convertInfo.timestampi),
|
|
181
|
+
StringToUint8Array(deviceName)
|
|
182
|
+
]);
|
|
183
|
+
});
|
|
184
|
+
const M_signature = (await signingFlow.sign(dynDatas)).sigs[0];
|
|
185
|
+
// Now do test sign in
|
|
186
|
+
await this.testAuthenticate(devicePrivateKey, sessionKey);
|
|
187
|
+
// Now we commit
|
|
188
|
+
// We'll need to construct the requests ourselves since this wasn't made as part of the key gen flow
|
|
189
|
+
const preCommit = signingFlow.orks.map(o => new NodeClient(o.orkURL).Commit(this.userId, BigIntFromByteArray(M_signature.slice(-32)), sessionKey.get_public_component().public));
|
|
190
|
+
await Promise.all(preCommit);
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
//# sourceMappingURL=dMobileAuthenticationFlow.js.map
|