@okee-e2ee/protocol 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/constants/index.d.ts +2 -0
- package/dist/constants/index.d.ts.map +1 -0
- package/dist/constants/index.js +1 -0
- package/dist/constants/protocol.d.ts +2 -0
- package/dist/constants/protocol.d.ts.map +1 -0
- package/dist/constants/protocol.js +1 -0
- package/dist/crypto-core/constants/algorithms.d.ts +27 -0
- package/dist/crypto-core/constants/algorithms.d.ts.map +1 -0
- package/dist/crypto-core/constants/algorithms.js +26 -0
- package/dist/crypto-core/constants/context.d.ts +2 -0
- package/dist/crypto-core/constants/context.d.ts.map +1 -0
- package/dist/crypto-core/constants/context.js +5 -0
- package/dist/crypto-core/constants/index.d.ts +4 -0
- package/dist/crypto-core/constants/index.d.ts.map +1 -0
- package/dist/crypto-core/constants/index.js +3 -0
- package/dist/crypto-core/constants/protocol.d.ts +3 -0
- package/dist/crypto-core/constants/protocol.d.ts.map +1 -0
- package/dist/crypto-core/constants/protocol.js +2 -0
- package/dist/crypto-core/contracts/CodecContract.d.ts +7 -0
- package/dist/crypto-core/contracts/CodecContract.d.ts.map +1 -0
- package/dist/crypto-core/contracts/CodecContract.js +1 -0
- package/dist/crypto-core/contracts/index.d.ts +2 -0
- package/dist/crypto-core/contracts/index.d.ts.map +1 -0
- package/dist/crypto-core/contracts/index.js +1 -0
- package/dist/crypto-core/encoding/ByteReader.d.ts +20 -0
- package/dist/crypto-core/encoding/ByteReader.d.ts.map +1 -0
- package/dist/crypto-core/encoding/ByteReader.js +79 -0
- package/dist/crypto-core/encoding/ByteWriter.d.ts +20 -0
- package/dist/crypto-core/encoding/ByteWriter.d.ts.map +1 -0
- package/dist/crypto-core/encoding/ByteWriter.js +95 -0
- package/dist/crypto-core/encoding/helpers/encode-signature-input.d.ts +3 -0
- package/dist/crypto-core/encoding/helpers/encode-signature-input.d.ts.map +1 -0
- package/dist/crypto-core/encoding/helpers/encode-signature-input.js +7 -0
- package/dist/crypto-core/encoding/helpers/index.d.ts +2 -0
- package/dist/crypto-core/encoding/helpers/index.d.ts.map +1 -0
- package/dist/crypto-core/encoding/helpers/index.js +1 -0
- package/dist/crypto-core/encoding/index.d.ts +4 -0
- package/dist/crypto-core/encoding/index.d.ts.map +1 -0
- package/dist/crypto-core/encoding/index.js +3 -0
- package/dist/crypto-core/errors/CryptoCoreError.d.ts +11 -0
- package/dist/crypto-core/errors/CryptoCoreError.d.ts.map +1 -0
- package/dist/crypto-core/errors/CryptoCoreError.js +10 -0
- package/dist/crypto-core/errors/error-codes.d.ts +7 -0
- package/dist/crypto-core/errors/error-codes.d.ts.map +1 -0
- package/dist/crypto-core/errors/error-codes.js +5 -0
- package/dist/crypto-core/errors/error-messages.d.ts +3 -0
- package/dist/crypto-core/errors/error-messages.d.ts.map +1 -0
- package/dist/crypto-core/errors/error-messages.js +6 -0
- package/dist/crypto-core/errors/helpers/execute-crypto-core-or-throw.d.ts +13 -0
- package/dist/crypto-core/errors/helpers/execute-crypto-core-or-throw.d.ts.map +1 -0
- package/dist/crypto-core/errors/helpers/execute-crypto-core-or-throw.js +22 -0
- package/dist/crypto-core/errors/helpers/index.d.ts +2 -0
- package/dist/crypto-core/errors/helpers/index.d.ts.map +1 -0
- package/dist/crypto-core/errors/helpers/index.js +1 -0
- package/dist/crypto-core/errors/index.d.ts +5 -0
- package/dist/crypto-core/errors/index.d.ts.map +1 -0
- package/dist/crypto-core/errors/index.js +4 -0
- package/dist/crypto-core/index.d.ts +8 -0
- package/dist/crypto-core/index.d.ts.map +1 -0
- package/dist/crypto-core/index.js +7 -0
- package/dist/crypto-core/model/brand.d.ts +11 -0
- package/dist/crypto-core/model/brand.d.ts.map +1 -0
- package/dist/crypto-core/model/brand.js +1 -0
- package/dist/crypto-core/model/crypto-inputs.d.ts +20 -0
- package/dist/crypto-core/model/crypto-inputs.d.ts.map +1 -0
- package/dist/crypto-core/model/crypto-inputs.js +1 -0
- package/dist/crypto-core/model/index.d.ts +5 -0
- package/dist/crypto-core/model/index.d.ts.map +1 -0
- package/dist/crypto-core/model/index.js +4 -0
- package/dist/crypto-core/model/keys.d.ts +15 -0
- package/dist/crypto-core/model/keys.d.ts.map +1 -0
- package/dist/crypto-core/model/keys.js +1 -0
- package/dist/crypto-core/model/x-wing.d.ts +10 -0
- package/dist/crypto-core/model/x-wing.d.ts.map +1 -0
- package/dist/crypto-core/model/x-wing.js +1 -0
- package/dist/crypto-core/primitives/CryptoPrimitivesFacade.d.ts +19 -0
- package/dist/crypto-core/primitives/CryptoPrimitivesFacade.d.ts.map +1 -0
- package/dist/crypto-core/primitives/CryptoPrimitivesFacade.js +145 -0
- package/dist/crypto-core/primitives/contracts/CryptoPrimitivesFacadeContract.d.ts +16 -0
- package/dist/crypto-core/primitives/contracts/CryptoPrimitivesFacadeContract.d.ts.map +1 -0
- package/dist/crypto-core/primitives/contracts/CryptoPrimitivesFacadeContract.js +1 -0
- package/dist/crypto-core/primitives/contracts/CryptoPrimitivesPort.d.ts +18 -0
- package/dist/crypto-core/primitives/contracts/CryptoPrimitivesPort.d.ts.map +1 -0
- package/dist/crypto-core/primitives/contracts/CryptoPrimitivesPort.js +1 -0
- package/dist/crypto-core/primitives/contracts/XWingPort.d.ts +8 -0
- package/dist/crypto-core/primitives/contracts/XWingPort.d.ts.map +1 -0
- package/dist/crypto-core/primitives/contracts/XWingPort.js +1 -0
- package/dist/crypto-core/primitives/contracts/index.d.ts +4 -0
- package/dist/crypto-core/primitives/contracts/index.d.ts.map +1 -0
- package/dist/crypto-core/primitives/contracts/index.js +3 -0
- package/dist/crypto-core/primitives/index.d.ts +3 -0
- package/dist/crypto-core/primitives/index.d.ts.map +1 -0
- package/dist/crypto-core/primitives/index.js +2 -0
- package/dist/crypto-core/signature/SignatureFacade.d.ts +23 -0
- package/dist/crypto-core/signature/SignatureFacade.d.ts.map +1 -0
- package/dist/crypto-core/signature/SignatureFacade.js +112 -0
- package/dist/crypto-core/signature/contracts/Ed25519Port.d.ts +9 -0
- package/dist/crypto-core/signature/contracts/Ed25519Port.d.ts.map +1 -0
- package/dist/crypto-core/signature/contracts/Ed25519Port.js +1 -0
- package/dist/crypto-core/signature/contracts/MlDsaPort.d.ts +9 -0
- package/dist/crypto-core/signature/contracts/MlDsaPort.d.ts.map +1 -0
- package/dist/crypto-core/signature/contracts/MlDsaPort.js +1 -0
- package/dist/crypto-core/signature/contracts/SignatureFacadeContract.d.ts +12 -0
- package/dist/crypto-core/signature/contracts/SignatureFacadeContract.d.ts.map +1 -0
- package/dist/crypto-core/signature/contracts/SignatureFacadeContract.js +1 -0
- package/dist/crypto-core/signature/contracts/index.d.ts +4 -0
- package/dist/crypto-core/signature/contracts/index.d.ts.map +1 -0
- package/dist/crypto-core/signature/contracts/index.js +3 -0
- package/dist/crypto-core/signature/index.d.ts +4 -0
- package/dist/crypto-core/signature/index.d.ts.map +1 -0
- package/dist/crypto-core/signature/index.js +3 -0
- package/dist/crypto-core/signature/model/index.d.ts +2 -0
- package/dist/crypto-core/signature/model/index.d.ts.map +1 -0
- package/dist/crypto-core/signature/model/index.js +1 -0
- package/dist/crypto-core/signature/model/signature-model.d.ts +18 -0
- package/dist/crypto-core/signature/model/signature-model.d.ts.map +1 -0
- package/dist/crypto-core/signature/model/signature-model.js +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +3 -0
- package/dist/transport/codecs/RelayEncryptionKeyBundleCodec.d.ts +10 -0
- package/dist/transport/codecs/RelayEncryptionKeyBundleCodec.d.ts.map +1 -0
- package/dist/transport/codecs/RelayEncryptionKeyBundleCodec.js +42 -0
- package/dist/transport/codecs/RelayIdentityPublicKeyCodec.d.ts +10 -0
- package/dist/transport/codecs/RelayIdentityPublicKeyCodec.d.ts.map +1 -0
- package/dist/transport/codecs/RelayIdentityPublicKeyCodec.js +27 -0
- package/dist/transport/codecs/index.d.ts +3 -0
- package/dist/transport/codecs/index.d.ts.map +1 -0
- package/dist/transport/codecs/index.js +2 -0
- package/dist/transport/constants/index.d.ts +3 -0
- package/dist/transport/constants/index.d.ts.map +1 -0
- package/dist/transport/constants/index.js +2 -0
- package/dist/transport/constants/relay-constants.d.ts +4 -0
- package/dist/transport/constants/relay-constants.d.ts.map +1 -0
- package/dist/transport/constants/relay-constants.js +4 -0
- package/dist/transport/constants/transport-context.d.ts +3 -0
- package/dist/transport/constants/transport-context.d.ts.map +1 -0
- package/dist/transport/constants/transport-context.js +5 -0
- package/dist/transport/helpers/derive-relay-identity-fingerprint.d.ts +4 -0
- package/dist/transport/helpers/derive-relay-identity-fingerprint.d.ts.map +1 -0
- package/dist/transport/helpers/derive-relay-identity-fingerprint.js +7 -0
- package/dist/transport/helpers/encode-relay-key-bundle-signature-input.d.ts +4 -0
- package/dist/transport/helpers/encode-relay-key-bundle-signature-input.d.ts.map +1 -0
- package/dist/transport/helpers/encode-relay-key-bundle-signature-input.js +7 -0
- package/dist/transport/helpers/index.d.ts +3 -0
- package/dist/transport/helpers/index.d.ts.map +1 -0
- package/dist/transport/helpers/index.js +2 -0
- package/dist/transport/index.d.ts +5 -0
- package/dist/transport/index.d.ts.map +1 -0
- package/dist/transport/index.js +4 -0
- package/dist/transport/model/index.d.ts +4 -0
- package/dist/transport/model/index.d.ts.map +1 -0
- package/dist/transport/model/index.js +3 -0
- package/dist/transport/model/queue-model.d.ts +16 -0
- package/dist/transport/model/queue-model.d.ts.map +1 -0
- package/dist/transport/model/queue-model.js +1 -0
- package/dist/transport/model/relay-address.d.ts +7 -0
- package/dist/transport/model/relay-address.d.ts.map +1 -0
- package/dist/transport/model/relay-address.js +1 -0
- package/dist/transport/model/relay-key-bundle.d.ts +15 -0
- package/dist/transport/model/relay-key-bundle.d.ts.map +1 -0
- package/dist/transport/model/relay-key-bundle.js +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/constants/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./protocol";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../src/constants/protocol.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,EAAG,cAAuB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export const OKEE_PROTOCOL_ID = "okee-e2ee/v1";
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export declare const CRYPTO_ALGORITHMS: {
|
|
2
|
+
readonly dh: "X25519";
|
|
3
|
+
readonly ed25519: "Ed25519";
|
|
4
|
+
readonly mlDsa: "ML-DSA-65";
|
|
5
|
+
readonly xWing: "X-Wing";
|
|
6
|
+
readonly aead256: "AES-256-GCM";
|
|
7
|
+
readonly hash: "SHA-256";
|
|
8
|
+
readonly hmac: "HMAC-SHA-256";
|
|
9
|
+
readonly hkdf: "HKDF-SHA-256";
|
|
10
|
+
};
|
|
11
|
+
export declare const CRYPTO_SIZES_BYTES: {
|
|
12
|
+
readonly dhPublicKey: 32;
|
|
13
|
+
readonly dhSharedSecret: 32;
|
|
14
|
+
readonly ed25519PublicKey: 32;
|
|
15
|
+
readonly ed25519Signature: 64;
|
|
16
|
+
readonly mlDsaPublicKey: 1952;
|
|
17
|
+
readonly mlDsaSignature: 3309;
|
|
18
|
+
readonly xWingPublicKey: 1216;
|
|
19
|
+
readonly xWingCiphertext: 1120;
|
|
20
|
+
readonly xWingSharedSecret: 32;
|
|
21
|
+
readonly aeadKey: 32;
|
|
22
|
+
readonly aeadNonce: 12;
|
|
23
|
+
readonly aeadTag: 16;
|
|
24
|
+
readonly sha256: 32;
|
|
25
|
+
};
|
|
26
|
+
export declare const HKDF_SHA_256_MAX_OUTPUT_BYTES: number;
|
|
27
|
+
//# sourceMappingURL=algorithms.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"algorithms.d.ts","sourceRoot":"","sources":["../../../src/crypto-core/constants/algorithms.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB;aAC7B,EAAE,EAAE,QAAQ;aACZ,OAAO,EAAE,SAAS;aAClB,KAAK,EAAE,WAAW;aAClB,KAAK,EAAE,QAAQ;aACf,OAAO,EAAE,aAAa;aACtB,IAAI,EAAE,SAAS;aACf,IAAI,EAAE,cAAc;aACpB,IAAI,EAAE,cAAc;CACX,CAAC;AAEX,eAAO,MAAM,kBAAkB;aAC9B,WAAW,EAAE,EAAE;aACf,cAAc,EAAE,EAAE;aAClB,gBAAgB,EAAE,EAAE;aACpB,gBAAgB,EAAE,EAAE;aACpB,cAAc,EAAE,IAAI;aACpB,cAAc,EAAE,IAAI;aACpB,cAAc,EAAE,IAAI;aACpB,eAAe,EAAE,IAAI;aACrB,iBAAiB,EAAE,EAAE;aACrB,OAAO,EAAE,EAAE;aACX,SAAS,EAAE,EAAE;aACb,OAAO,EAAE,EAAE;aACX,MAAM,EAAE,EAAE;CACD,CAAC;AAEX,eAAO,MAAM,6BAA6B,QAAkC,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export const CRYPTO_ALGORITHMS = {
|
|
2
|
+
dh: "X25519",
|
|
3
|
+
ed25519: "Ed25519",
|
|
4
|
+
mlDsa: "ML-DSA-65",
|
|
5
|
+
xWing: "X-Wing",
|
|
6
|
+
aead256: "AES-256-GCM",
|
|
7
|
+
hash: "SHA-256",
|
|
8
|
+
hmac: "HMAC-SHA-256",
|
|
9
|
+
hkdf: "HKDF-SHA-256"
|
|
10
|
+
};
|
|
11
|
+
export const CRYPTO_SIZES_BYTES = {
|
|
12
|
+
dhPublicKey: 32,
|
|
13
|
+
dhSharedSecret: 32,
|
|
14
|
+
ed25519PublicKey: 32,
|
|
15
|
+
ed25519Signature: 64,
|
|
16
|
+
mlDsaPublicKey: 1952,
|
|
17
|
+
mlDsaSignature: 3309,
|
|
18
|
+
xWingPublicKey: 1216,
|
|
19
|
+
xWingCiphertext: 1120,
|
|
20
|
+
xWingSharedSecret: 32,
|
|
21
|
+
aeadKey: 32,
|
|
22
|
+
aeadNonce: 12,
|
|
23
|
+
aeadTag: 16,
|
|
24
|
+
sha256: 32
|
|
25
|
+
};
|
|
26
|
+
export const HKDF_SHA_256_MAX_OUTPUT_BYTES = 255 * CRYPTO_SIZES_BYTES.sha256;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/crypto-core/constants/context.ts"],"names":[],"mappings":"AAIA,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE/D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/crypto-core/constants/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../../src/crypto-core/constants/protocol.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAEjE,eAAO,MAAM,oBAAoB,EAAG,yCAAkD,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { DecodeError, Result } from "@okee-e2ee/core";
|
|
2
|
+
import { EncodedPayload } from "../../crypto-core/model";
|
|
3
|
+
export interface CodecContract<T> {
|
|
4
|
+
encode(value: T): EncodedPayload<T>;
|
|
5
|
+
decode(bytes: EncodedPayload<T>): Result<T, DecodeError>;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=CodecContract.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CodecContract.d.ts","sourceRoot":"","sources":["../../../src/crypto-core/contracts/CodecContract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAEvE,MAAM,WAAW,aAAa,CAAC,CAAC;IAC/B,MAAM,CAAC,KAAK,EAAE,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;IACpC,MAAM,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;CACzD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/crypto-core/contracts/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./CodecContract";
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Bytes } from "../../crypto-core/model";
|
|
2
|
+
export declare class ByteReader {
|
|
3
|
+
private readonly _bytes;
|
|
4
|
+
private readonly _view;
|
|
5
|
+
private _position;
|
|
6
|
+
constructor(bytes: Bytes);
|
|
7
|
+
get offset(): number;
|
|
8
|
+
get remaining(): number;
|
|
9
|
+
get done(): boolean;
|
|
10
|
+
readU8(): number;
|
|
11
|
+
readU32(): number;
|
|
12
|
+
readU64(): bigint;
|
|
13
|
+
readFixedBytes(size: number): Bytes;
|
|
14
|
+
readBytes(): Bytes;
|
|
15
|
+
readString(): string;
|
|
16
|
+
readOptional<T>(readValue: (reader: this) => T): T | undefined;
|
|
17
|
+
assertEnd(): void;
|
|
18
|
+
private _requireBytes;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=ByteReader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ByteReader.d.ts","sourceRoot":"","sources":["../../../src/crypto-core/encoding/ByteReader.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,uCAAuC,CAAC;AAE9D,qBAAa,UAAU;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAQ;IAC/B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAW;IACjC,OAAO,CAAC,SAAS,CAAK;IAEtB,YAAmB,KAAK,EAAE,KAAK,EAO9B;IAED,IAAW,MAAM,IAAI,MAAM,CAE1B;IAED,IAAW,SAAS,IAAI,MAAM,CAE7B;IAED,IAAW,IAAI,IAAI,OAAO,CAEzB;IAEM,MAAM,IAAI,MAAM,CAKtB;IAEM,OAAO,IAAI,MAAM,CAKvB;IAEM,OAAO,IAAI,MAAM,CAKvB;IAEM,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,CASzC;IAEM,SAAS,IAAI,KAAK,CAGxB;IAEM,UAAU,IAAI,MAAM,CAS1B;IAEM,YAAY,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,MAAM,EAAE,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAQpE;IAEM,SAAS,IAAI,IAAI,CAIvB;IAED,OAAO,CAAC,aAAa;CAQrB"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { DecodeError } from "@okee-e2ee/core/errors";
|
|
2
|
+
export class ByteReader {
|
|
3
|
+
_bytes;
|
|
4
|
+
_view;
|
|
5
|
+
_position = 0;
|
|
6
|
+
constructor(bytes) {
|
|
7
|
+
this._bytes = new Uint8Array(bytes);
|
|
8
|
+
this._view = new DataView(this._bytes.buffer, this._bytes.byteOffset, this._bytes.byteLength);
|
|
9
|
+
}
|
|
10
|
+
get offset() {
|
|
11
|
+
return this._position;
|
|
12
|
+
}
|
|
13
|
+
get remaining() {
|
|
14
|
+
return this._bytes.byteLength - this._position;
|
|
15
|
+
}
|
|
16
|
+
get done() {
|
|
17
|
+
return this.remaining === 0;
|
|
18
|
+
}
|
|
19
|
+
readU8() {
|
|
20
|
+
this._requireBytes(1);
|
|
21
|
+
const value = this._view.getUint8(this._position);
|
|
22
|
+
this._position += 1;
|
|
23
|
+
return value;
|
|
24
|
+
}
|
|
25
|
+
readU32() {
|
|
26
|
+
this._requireBytes(4);
|
|
27
|
+
const value = this._view.getUint32(this._position, false);
|
|
28
|
+
this._position += 4;
|
|
29
|
+
return value;
|
|
30
|
+
}
|
|
31
|
+
readU64() {
|
|
32
|
+
this._requireBytes(8);
|
|
33
|
+
const value = this._view.getBigUint64(this._position, false);
|
|
34
|
+
this._position += 8;
|
|
35
|
+
return value;
|
|
36
|
+
}
|
|
37
|
+
readFixedBytes(size) {
|
|
38
|
+
if (!Number.isSafeInteger(size) || size < 0) {
|
|
39
|
+
throw new RangeError("size must be a non-negative safe integer");
|
|
40
|
+
}
|
|
41
|
+
this._requireBytes(size);
|
|
42
|
+
const value = this._bytes.slice(this._position, this._position + size);
|
|
43
|
+
this._position += size;
|
|
44
|
+
return value;
|
|
45
|
+
}
|
|
46
|
+
readBytes() {
|
|
47
|
+
const byteLength = this.readU32();
|
|
48
|
+
return this.readFixedBytes(byteLength);
|
|
49
|
+
}
|
|
50
|
+
readString() {
|
|
51
|
+
const startOffset = this._position;
|
|
52
|
+
const value = this.readBytes();
|
|
53
|
+
try {
|
|
54
|
+
return new TextDecoder("utf-8", { fatal: true }).decode(value);
|
|
55
|
+
}
|
|
56
|
+
catch {
|
|
57
|
+
throw new DecodeError("value is not valid UTF-8", startOffset);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
readOptional(readValue) {
|
|
61
|
+
const tagOffset = this._position;
|
|
62
|
+
const tag = this.readU8();
|
|
63
|
+
if (tag === 0)
|
|
64
|
+
return undefined;
|
|
65
|
+
if (tag === 1)
|
|
66
|
+
return readValue(this);
|
|
67
|
+
throw new DecodeError("optional tag must be 0 or 1", tagOffset);
|
|
68
|
+
}
|
|
69
|
+
assertEnd() {
|
|
70
|
+
if (!this.done) {
|
|
71
|
+
throw new DecodeError(`unexpected ${this.remaining} trailing bytes`, this._position);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
_requireBytes(byteLength) {
|
|
75
|
+
if (this.remaining < byteLength) {
|
|
76
|
+
throw new DecodeError(`expected ${byteLength} bytes, only ${this.remaining} remain`, this._position);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Bytes } from "../../crypto-core/model";
|
|
2
|
+
export declare class ByteWriter {
|
|
3
|
+
private _buffer;
|
|
4
|
+
private _view;
|
|
5
|
+
private _position;
|
|
6
|
+
constructor(initialCapacity?: number);
|
|
7
|
+
get offset(): number;
|
|
8
|
+
toBytes(): Bytes;
|
|
9
|
+
writeU8(value: number): this;
|
|
10
|
+
writeU32(value: number): this;
|
|
11
|
+
writeU64(value: bigint): this;
|
|
12
|
+
writeFixedBytes(value: Bytes, size: number): this;
|
|
13
|
+
writeBytes(value: Bytes): this;
|
|
14
|
+
writeString(value: string): this;
|
|
15
|
+
writeOptional<T>(value: T | undefined, writeValue: (writer: this, value: T) => void): this;
|
|
16
|
+
private _writeRawBytes;
|
|
17
|
+
private _ensureCapacity;
|
|
18
|
+
private _assertUnsignedInteger;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=ByteWriter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ByteWriter.d.ts","sourceRoot":"","sources":["../../../src/crypto-core/encoding/ByteWriter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,uCAAuC,CAAC;AAO9D,qBAAa,UAAU;IACtB,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,KAAK,CAAW;IACxB,OAAO,CAAC,SAAS,CAAK;IAEtB,YAAmB,eAAe,SAAmB,EAOpD;IAED,IAAW,MAAM,IAAI,MAAM,CAE1B;IAEM,OAAO,IAAI,KAAK,CAEtB;IAEM,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAMlC;IAEM,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAMnC;IAEM,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CASnC;IAEM,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAUvD;IAEM,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAOpC;IAEM,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAEtC;IAEM,aAAa,CAAC,CAAC,EACrB,KAAK,EAAE,CAAC,GAAG,SAAS,EACpB,UAAU,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,KAAK,IAAI,GAC1C,IAAI,CAQN;IAED,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,eAAe;IAavB,OAAO,CAAC,sBAAsB;CAK9B"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
const DEFAULT_CAPACITY = 128;
|
|
2
|
+
const MAX_U8 = 0xff;
|
|
3
|
+
const MAX_U32 = 0xffff_ffff;
|
|
4
|
+
const MAX_U64 = 0xffffffffffffffffn;
|
|
5
|
+
export class ByteWriter {
|
|
6
|
+
_buffer;
|
|
7
|
+
_view;
|
|
8
|
+
_position = 0;
|
|
9
|
+
constructor(initialCapacity = DEFAULT_CAPACITY) {
|
|
10
|
+
if (!Number.isSafeInteger(initialCapacity) || initialCapacity < 0) {
|
|
11
|
+
throw new RangeError("initialCapacity must be a non-negative safe integer");
|
|
12
|
+
}
|
|
13
|
+
this._buffer = new ArrayBuffer(initialCapacity);
|
|
14
|
+
this._view = new DataView(this._buffer);
|
|
15
|
+
}
|
|
16
|
+
get offset() {
|
|
17
|
+
return this._position;
|
|
18
|
+
}
|
|
19
|
+
toBytes() {
|
|
20
|
+
return new Uint8Array(this._buffer.slice(0, this._position));
|
|
21
|
+
}
|
|
22
|
+
writeU8(value) {
|
|
23
|
+
this._assertUnsignedInteger(value, MAX_U8, "value must be an unsigned 8-bit integer");
|
|
24
|
+
this._ensureCapacity(1);
|
|
25
|
+
this._view.setUint8(this._position, value);
|
|
26
|
+
this._position += 1;
|
|
27
|
+
return this;
|
|
28
|
+
}
|
|
29
|
+
writeU32(value) {
|
|
30
|
+
this._assertUnsignedInteger(value, MAX_U32, "value must be an unsigned 32-bit integer");
|
|
31
|
+
this._ensureCapacity(4);
|
|
32
|
+
this._view.setUint32(this._position, value, false);
|
|
33
|
+
this._position += 4;
|
|
34
|
+
return this;
|
|
35
|
+
}
|
|
36
|
+
writeU64(value) {
|
|
37
|
+
if (value < 0n || value > MAX_U64) {
|
|
38
|
+
throw new RangeError("value must be an unsigned 64-bit integer");
|
|
39
|
+
}
|
|
40
|
+
this._ensureCapacity(8);
|
|
41
|
+
this._view.setBigUint64(this._position, value, false);
|
|
42
|
+
this._position += 8;
|
|
43
|
+
return this;
|
|
44
|
+
}
|
|
45
|
+
writeFixedBytes(value, size) {
|
|
46
|
+
if (!Number.isSafeInteger(size) || size < 0) {
|
|
47
|
+
throw new RangeError("size must be a non-negative safe integer");
|
|
48
|
+
}
|
|
49
|
+
if (value.byteLength !== size) {
|
|
50
|
+
throw new RangeError(`value must be exactly ${size} bytes long`);
|
|
51
|
+
}
|
|
52
|
+
return this._writeRawBytes(value);
|
|
53
|
+
}
|
|
54
|
+
writeBytes(value) {
|
|
55
|
+
if (value.byteLength > MAX_U32) {
|
|
56
|
+
throw new RangeError("value must not exceed 4294967295 bytes");
|
|
57
|
+
}
|
|
58
|
+
this.writeU32(value.byteLength);
|
|
59
|
+
return this._writeRawBytes(value);
|
|
60
|
+
}
|
|
61
|
+
writeString(value) {
|
|
62
|
+
return this.writeBytes(new TextEncoder().encode(value));
|
|
63
|
+
}
|
|
64
|
+
writeOptional(value, writeValue) {
|
|
65
|
+
if (value === undefined) {
|
|
66
|
+
return this.writeU8(0);
|
|
67
|
+
}
|
|
68
|
+
this.writeU8(1);
|
|
69
|
+
writeValue(this, value);
|
|
70
|
+
return this;
|
|
71
|
+
}
|
|
72
|
+
_writeRawBytes(value) {
|
|
73
|
+
this._ensureCapacity(value.byteLength);
|
|
74
|
+
new Uint8Array(this._buffer, this._position, value.byteLength).set(value);
|
|
75
|
+
this._position += value.byteLength;
|
|
76
|
+
return this;
|
|
77
|
+
}
|
|
78
|
+
_ensureCapacity(additionalBytes) {
|
|
79
|
+
const requiredCapacity = this._position + additionalBytes;
|
|
80
|
+
if (requiredCapacity <= this._buffer.byteLength)
|
|
81
|
+
return;
|
|
82
|
+
let nextCapacity = Math.max(this._buffer.byteLength, 1);
|
|
83
|
+
while (nextCapacity < requiredCapacity)
|
|
84
|
+
nextCapacity *= 2;
|
|
85
|
+
const nextBuffer = new ArrayBuffer(nextCapacity);
|
|
86
|
+
new Uint8Array(nextBuffer).set(new Uint8Array(this._buffer, 0, this._position));
|
|
87
|
+
this._buffer = nextBuffer;
|
|
88
|
+
this._view = new DataView(nextBuffer);
|
|
89
|
+
}
|
|
90
|
+
_assertUnsignedInteger(value, max, message) {
|
|
91
|
+
if (!Number.isInteger(value) || value < 0 || value > max) {
|
|
92
|
+
throw new RangeError(message);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"encode-signature-input.d.ts","sourceRoot":"","sources":["../../../../src/crypto-core/encoding/helpers/encode-signature-input.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,uCAAuC,CAAC;AAE9D,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,GAAG,KAAK,CAK3E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/crypto-core/encoding/helpers/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./encode-signature-input";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/crypto-core/encoding/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ErrorDetails, ExtendedErrorOptions, LibraryError } from "@okee-e2ee/core/errors";
|
|
2
|
+
import { CryptoCoreErrorCode } from "./error-codes";
|
|
3
|
+
export type CryptoCoreErrorDetails = ErrorDetails<{
|
|
4
|
+
readonly algorithm?: string;
|
|
5
|
+
}>;
|
|
6
|
+
export declare class CryptoCoreError extends LibraryError<CryptoCoreErrorCode, CryptoCoreErrorDetails> {
|
|
7
|
+
readonly code: CryptoCoreErrorCode;
|
|
8
|
+
readonly name = "CryptoCoreError";
|
|
9
|
+
constructor(code: CryptoCoreErrorCode, options?: ExtendedErrorOptions<CryptoCoreErrorDetails>);
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=CryptoCoreError.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CryptoCoreError.d.ts","sourceRoot":"","sources":["../../../src/crypto-core/errors/CryptoCoreError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAE1F,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAGpD,MAAM,MAAM,sBAAsB,GAAG,YAAY,CAAC;IACjD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC,CAAC;AAEH,qBAAa,eAAgB,SAAQ,YAAY,CAAC,mBAAmB,EAAE,sBAAsB,CAAC;aAI5E,IAAI,EAAE,mBAAmB;IAH1C,SAAgB,IAAI,qBAAqB;IAEzC,YACiB,IAAI,EAAE,mBAAmB,EACzC,OAAO,CAAC,EAAE,oBAAoB,CAAC,sBAAsB,CAAC,EAGtD;CACD"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { LibraryError } from "@okee-e2ee/core/errors";
|
|
2
|
+
import { CRYPTO_CORE_ERROR_MESSAGES } from "./error-messages";
|
|
3
|
+
export class CryptoCoreError extends LibraryError {
|
|
4
|
+
code;
|
|
5
|
+
name = "CryptoCoreError";
|
|
6
|
+
constructor(code, options) {
|
|
7
|
+
super(code, CRYPTO_CORE_ERROR_MESSAGES[code], options);
|
|
8
|
+
this.code = code;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare const CRYPTO_CORE_ERROR_CODES: {
|
|
2
|
+
readonly operationFailed: "CRYPTO_OPERATION_FAILED";
|
|
3
|
+
readonly aeadAuthenticationFailed: "AEAD_AUTHENTICATION_FAILED";
|
|
4
|
+
readonly dhSharedSecretInvalid: "DH_SHARED_SECRET_INVALID";
|
|
5
|
+
};
|
|
6
|
+
export type CryptoCoreErrorCode = (typeof CRYPTO_CORE_ERROR_CODES)[keyof typeof CRYPTO_CORE_ERROR_CODES];
|
|
7
|
+
//# sourceMappingURL=error-codes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-codes.d.ts","sourceRoot":"","sources":["../../../src/crypto-core/errors/error-codes.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB;aACnC,eAAe,EAAE,yBAAyB;aAC1C,wBAAwB,EAAE,4BAA4B;aACtD,qBAAqB,EAAE,0BAA0B;CACxC,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAC9B,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,OAAO,uBAAuB,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-messages.d.ts","sourceRoot":"","sources":["../../../src/crypto-core/errors/error-messages.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAE7E,eAAO,MAAM,0BAA0B,EAAE,MAAM,CAAC,mBAAmB,EAAE,MAAM,CAI1E,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { CRYPTO_CORE_ERROR_CODES } from "./error-codes";
|
|
2
|
+
export const CRYPTO_CORE_ERROR_MESSAGES = {
|
|
3
|
+
[CRYPTO_CORE_ERROR_CODES.operationFailed]: "Cryptographic operation failed",
|
|
4
|
+
[CRYPTO_CORE_ERROR_CODES.aeadAuthenticationFailed]: "AEAD authentication failed",
|
|
5
|
+
[CRYPTO_CORE_ERROR_CODES.dhSharedSecretInvalid]: "DH produced an invalid shared secret"
|
|
6
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { CryptoCoreErrorCode } from "..";
|
|
2
|
+
type ExecuteCryptoCoreInput<T> = {
|
|
3
|
+
readonly operationName: string;
|
|
4
|
+
readonly operation: () => Promise<T>;
|
|
5
|
+
readonly errorCode?: CryptoCoreErrorCode;
|
|
6
|
+
};
|
|
7
|
+
type ExecuteCryptoCoreSyncInput<T> = Omit<ExecuteCryptoCoreInput<T>, "operation"> & {
|
|
8
|
+
readonly operation: () => T;
|
|
9
|
+
};
|
|
10
|
+
export declare function executeAsyncCryptoCoreOrThrow<T>(input: ExecuteCryptoCoreInput<T>): Promise<T>;
|
|
11
|
+
export declare function executeSyncCryptoCoreOrThrow<T>(input: ExecuteCryptoCoreSyncInput<T>): T;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=execute-crypto-core-or-throw.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"execute-crypto-core-or-throw.d.ts","sourceRoot":"","sources":["../../../../src/crypto-core/errors/helpers/execute-crypto-core-or-throw.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,mBAAmB,EAAE,MAAM,IAAI,CAAC;AAInF,KAAK,sBAAsB,CAAC,CAAC,IAAI;IAChC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC;IACrC,QAAQ,CAAC,SAAS,CAAC,EAAE,mBAAmB,CAAC;CACzC,CAAC;AAEF,KAAK,0BAA0B,CAAC,CAAC,IAAI,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,GAAG;IACnF,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;CAC5B,CAAC;AAEF,wBAAgB,6BAA6B,CAAC,CAAC,EAAE,KAAK,EAAE,sBAAsB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAK7F;AAED,wBAAgB,4BAA4B,CAAC,CAAC,EAAE,KAAK,EAAE,0BAA0B,CAAC,CAAC,CAAC,GAAG,CAAC,CAKvF"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { CRYPTO_CORE_ERROR_CODES, CryptoCoreError } from "..";
|
|
2
|
+
import { executeAsyncOrThrow, executeSyncOrThrow } from "@okee-e2ee/core/errors";
|
|
3
|
+
export function executeAsyncCryptoCoreOrThrow(input) {
|
|
4
|
+
return executeAsyncOrThrow({
|
|
5
|
+
operation: input.operation,
|
|
6
|
+
mapError: error => _mapCryptoCoreError(error, input.operationName, input.errorCode)
|
|
7
|
+
});
|
|
8
|
+
}
|
|
9
|
+
export function executeSyncCryptoCoreOrThrow(input) {
|
|
10
|
+
return executeSyncOrThrow({
|
|
11
|
+
operation: input.operation,
|
|
12
|
+
mapError: error => _mapCryptoCoreError(error, input.operationName, input.errorCode)
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
function _mapCryptoCoreError(error, operationName, errorCode = CRYPTO_CORE_ERROR_CODES.operationFailed) {
|
|
16
|
+
if (error instanceof CryptoCoreError)
|
|
17
|
+
return;
|
|
18
|
+
return new CryptoCoreError(errorCode, {
|
|
19
|
+
cause: error,
|
|
20
|
+
details: { operation: operationName }
|
|
21
|
+
});
|
|
22
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/crypto-core/errors/helpers/index.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./execute-crypto-core-or-throw";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/crypto-core/errors/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/crypto-core/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Bytes } from "./keys";
|
|
2
|
+
declare const brand: unique symbol;
|
|
3
|
+
export type Branded<T, Brand extends string> = T & {
|
|
4
|
+
readonly [brand]: Brand;
|
|
5
|
+
};
|
|
6
|
+
declare const encodedPayloadType: unique symbol;
|
|
7
|
+
export type EncodedPayload<T = unknown> = Bytes & {
|
|
8
|
+
readonly [encodedPayloadType]?: T;
|
|
9
|
+
};
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=brand.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"brand.d.ts","sourceRoot":"","sources":["../../../src/crypto-core/model/brand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAE/B,OAAO,CAAC,MAAM,KAAK,EAAE,OAAO,MAAM,CAAC;AAEnC,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,KAAK,SAAS,MAAM,IAAI,CAAC,GAAG;IAClD,QAAQ,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;CACxB,CAAC;AAEF,OAAO,CAAC,MAAM,kBAAkB,EAAE,OAAO,MAAM,CAAC;AAEhD,MAAM,MAAM,cAAc,CAAC,CAAC,GAAG,OAAO,IAAI,KAAK,GAAG;IACjD,QAAQ,CAAC,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC;CAClC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Bytes } from "./keys";
|
|
2
|
+
export type HkdfInput = {
|
|
3
|
+
inputKeyMaterial: Bytes;
|
|
4
|
+
salt: Bytes;
|
|
5
|
+
info: Bytes;
|
|
6
|
+
outputLength: number;
|
|
7
|
+
};
|
|
8
|
+
export type AeadEncryptInput = {
|
|
9
|
+
key: Bytes;
|
|
10
|
+
nonce: Bytes;
|
|
11
|
+
plaintext: Bytes;
|
|
12
|
+
associatedData: Bytes;
|
|
13
|
+
};
|
|
14
|
+
export type AeadDecryptInput = {
|
|
15
|
+
key: Bytes;
|
|
16
|
+
nonce: Bytes;
|
|
17
|
+
ciphertext: Bytes;
|
|
18
|
+
associatedData: Bytes;
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=crypto-inputs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"crypto-inputs.d.ts","sourceRoot":"","sources":["../../../src/crypto-core/model/crypto-inputs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAE/B,MAAM,MAAM,SAAS,GAAG;IACvB,gBAAgB,EAAE,KAAK,CAAC;IACxB,IAAI,EAAE,KAAK,CAAC;IACZ,IAAI,EAAE,KAAK,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC9B,GAAG,EAAE,KAAK,CAAC;IACX,KAAK,EAAE,KAAK,CAAC;IACb,SAAS,EAAE,KAAK,CAAC;IACjB,cAAc,EAAE,KAAK,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC9B,GAAG,EAAE,KAAK,CAAC;IACX,KAAK,EAAE,KAAK,CAAC;IACb,UAAU,EAAE,KAAK,CAAC;IAClB,cAAc,EAAE,KAAK,CAAC;CACtB,CAAC"}
|