@peerbit/crypto 1.0.9 → 2.0.0

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.
@@ -1 +1 @@
1
- {"version":3,"file":"bytes.js","sourceRoot":"","sources":["../../src/bytes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE;IAC3B,IAAI,CAAC,YAAY,UAAU,IAAI,CAAC,CAAC,WAAW,CAAC,IAAI,KAAK,YAAY;QAAE,OAAO,CAAC,CAAC;IAC7E,IAAI,CAAC,YAAY,WAAW;QAAE,OAAO,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;IACvD,IAAI,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;QAC1B,OAAO,IAAI,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC;KAC5D;IACD,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;AACtD,CAAC,CAAC"}
1
+ {"version":3,"file":"bytes.js","sourceRoot":"","sources":["../../src/bytes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE;IAC3B,IAAI,CAAC,YAAY,UAAU,IAAI,CAAC,CAAC,WAAW,CAAC,IAAI,KAAK,YAAY;QAAE,OAAO,CAAC,CAAC;IAC7E,IAAI,CAAC,YAAY,WAAW;QAAE,OAAO,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;IACvD,IAAI,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3B,OAAO,IAAI,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC;IAC7D,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;AACtD,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ed25519-sign-browser.js","sourceRoot":"","sources":["../../src/ed25519-sign-browser.ts"],"names":[],"mappings":"AACA,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAW,SAAS,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,EACxB,IAAgB,EAChB,OAAuB,EACvB,OAAgB,EACf,EAAE;IACH,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAClD;;2GAEuG;IACvG,OAAO,IAAI,gBAAgB,CAAC;QAC3B,OAAO;QACP,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,SAAS,EAAE,MAAM,CAAC,oBAAoB,CACrC,UAAU,EACV,OAAO,CAAC,mBAAmB,CAC3B;KACD,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,EAC1C,SAA2B,EAC3B,IAAgB,EACf,EAAE;IACH,IAAI,GAAG,GAAG,KAAK,CAAC;IAChB,IAAI;QACH,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;QAE5D,MAAM,QAAQ,GAAG,MAAM,CAAC,2BAA2B,CAClD,SAAS,CAAC,SAAS,EACnB,UAAU,EACT,SAAS,CAAC,SAA8B,CAAC,SAAS,CACnD,CAAC;QACF,GAAG,GAAG,QAAQ,CAAC;KACf;IAAC,OAAO,KAAK,EAAE;QACf,OAAO,KAAK,CAAC;KACb;IACD,OAAO,GAAG,CAAC;AACZ,CAAC,CAAC"}
1
+ {"version":3,"file":"ed25519-sign-browser.js","sourceRoot":"","sources":["../../src/ed25519-sign-browser.ts"],"names":[],"mappings":"AACA,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAW,SAAS,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,EACxB,IAAgB,EAChB,OAAuB,EACvB,OAAgB,EACf,EAAE;IACH,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAClD;;2GAEuG;IACvG,OAAO,IAAI,gBAAgB,CAAC;QAC3B,OAAO;QACP,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,SAAS,EAAE,MAAM,CAAC,oBAAoB,CACrC,UAAU,EACV,OAAO,CAAC,mBAAmB,CAC3B;KACD,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,EAC1C,SAA2B,EAC3B,IAAgB,EACf,EAAE;IACH,IAAI,GAAG,GAAG,KAAK,CAAC;IAChB,IAAI,CAAC;QACJ,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;QAE5D,MAAM,QAAQ,GAAG,MAAM,CAAC,2BAA2B,CAClD,SAAS,CAAC,SAAS,EACnB,UAAU,EACT,SAAS,CAAC,SAA8B,CAAC,SAAS,CACnD,CAAC;QACF,GAAG,GAAG,QAAQ,CAAC;IAChB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,OAAO,KAAK,CAAC;IACd,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ed25519-sign.js","sourceRoot":"","sources":["../../src/ed25519-sign.ts"],"names":[],"mappings":"AACA,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAW,SAAS,EAAE,MAAM,cAAc,CAAC;AAElD,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,EACxB,IAAgB,EAChB,OAAuB,EACvB,OAAgB,EACf,EAAE;IACH,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAElD,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,EAAE;QAClC,OAAO,CAAC,UAAU,CAAC,SAAS,GAAG,MAAM,CAAC,gBAAgB,CAAC;YACtD,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,OAAO;YACb,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,mBAAmB,EAAE,IAAI,CAAC;SAC7C,CAAC,CAAC;KACH;IACD,OAAO,IAAI,gBAAgB,CAAC;QAC3B,OAAO;QACP,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC;KACtE,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,EAC1C,SAA2B,EAC3B,IAAgB,EACf,EAAE;IACH,IAAI,GAAG,GAAG,KAAK,CAAC;IAChB,IAAI;QACH,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;QAE5D,8EAA8E,CAAC,sBAAsB;QACrG,MAAM,QAAQ,GAAG,MAAM,CAAC,2BAA2B,CAClD,SAAS,CAAC,SAAS,EACnB,UAAU,EACT,SAAS,CAAC,SAA8B,CAAC,SAAS,CACnD,CAAC;QACF,GAAG,GAAG,QAAQ,CAAC;KACf;IAAC,OAAO,KAAK,EAAE;QACf,OAAO,KAAK,CAAC;KACb;IACD,OAAO,GAAG,CAAC;AACZ,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC;IAC9B,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE;CACxD,CAAC,CAAC;AACH,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;AAChE,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,eAAe;AACzD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU;AAC/C,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW;AACrD,SAAS,KAAK,CAAC,GAAe,EAAE,CAAC,GAAG,KAAK;IACxC,IAAI,CAAC,EAAE;QACN,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC;KACxC;IAED,gBAAgB;IAChB,MAAM,GAAG,GAAG,WAAW,CAAC;IAExB,oDAAoD;IACpD,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC;QAC9B,YAAY;QACZ,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACzB,GAAG;QACH,OAAO;QACP,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC7B,YAAY;QACZ,GAAG;KACH,CAAC,CAAC;IAEH,6CAA6C;IAC7C,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC;QACzB,YAAY;QACZ,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC9B,QAAQ;KACR,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACZ,CAAC"}
1
+ {"version":3,"file":"ed25519-sign.js","sourceRoot":"","sources":["../../src/ed25519-sign.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ed25519.js","sourceRoot":"","sources":["../../src/ed25519.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ed25519.js","sourceRoot":"","sources":["../../src/ed25519.ts"],"names":[],"mappings":"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"}
@@ -2,13 +2,37 @@ export * from "./errors.js";
2
2
  import { AbstractType } from "@dao-xyz/borsh";
3
3
  import { X25519Keypair, X25519PublicKey } from "./x25519.js";
4
4
  import { Ed25519PublicKey } from "./ed25519.js";
5
- import { Keychain } from "./keychain.js";
5
+ export type MaybePromise<T> = Promise<T> | T;
6
+ export type PublicKeyEncryptionParameters = {
7
+ type?: "publicKey";
8
+ receiverPublicKeys: (X25519PublicKey | Ed25519PublicKey)[];
9
+ };
10
+ export type SymmetricKeyEncryptionParameters = {
11
+ type?: "hash";
12
+ };
13
+ export type KeyExchangeOptions = PublicKeyEncryptionParameters | SymmetricKeyEncryptionParameters;
14
+ type EncryptReturnValue<T, Parameters extends KeyExchangeOptions> = EncryptedThing<T, EnvelopeFromParameter<Parameters>>;
15
+ type CipherWithEnvelope<E = PublicKeyEnvelope | HashedKeyEnvelope> = {
16
+ cipher: Uint8Array;
17
+ nonce: Uint8Array;
18
+ envelope: E;
19
+ };
20
+ type EnvelopeFromParameter<Parameters extends KeyExchangeOptions> = Parameters extends PublicKeyEncryptionParameters ? PublicKeyEnvelope : HashedKeyEnvelope;
21
+ type EncryptProvide<Parameters extends KeyExchangeOptions> = (bytes: Uint8Array, parameters: Parameters) => Promise<CipherWithEnvelope<EnvelopeFromParameter<Parameters>>>;
22
+ interface KeyProvider {
23
+ exportByKey(publicKey: X25519PublicKey): Promise<X25519Keypair | undefined>;
24
+ }
25
+ export declare const createLocalEncryptProvider: <K_1 extends Uint8Array | X25519Keypair, Parameters_1 extends KeyExchangeOptions = K_1 extends X25519Keypair ? PublicKeyEncryptionParameters : SymmetricKeyEncryptionParameters>(keys: K_1) => (bytes: Uint8Array, parameters: Parameters_1) => Promise<CipherWithEnvelope<EnvelopeFromParameter<Parameters_1>>>;
26
+ export type DecryptProvider = (encrypted: Uint8Array, nonce: Uint8Array, exchange: Envelope) => Promise<Uint8Array>;
27
+ type KeyResolver = <T extends X25519PublicKey | Uint8Array>(key: T) => Promise<(T extends X25519PublicKey ? X25519Keypair : Uint8Array) | undefined>;
28
+ export declare const createDecrypterFromKeyResolver: (keyResolver: KeyResolver) => DecryptProvider;
6
29
  export declare abstract class MaybeEncrypted<T> {
7
30
  /**
8
31
  * Will throw error if not decrypted
9
32
  */
10
33
  get decrypted(): DecryptedThing<T>;
11
- decrypt(keyOrKeychain?: Keychain | X25519Keypair): Promise<DecryptedThing<T>> | DecryptedThing<T>;
34
+ decrypt(keyResolver?: X25519Keypair | KeyProvider): MaybePromise<DecryptedThing<T>>;
35
+ decrypt(provider?: DecryptProvider): MaybePromise<DecryptedThing<T>>;
12
36
  equals(other: MaybeEncrypted<T>): boolean;
13
37
  /**
14
38
  * Clear cached data
@@ -24,7 +48,8 @@ export declare class DecryptedThing<T> extends MaybeEncrypted<T> {
24
48
  });
25
49
  _value?: T;
26
50
  getValue(clazz: AbstractType<T>): T;
27
- encrypt(x25519Keypair: X25519Keypair, ...receiverPublicKeys: (X25519PublicKey | Ed25519PublicKey)[]): Promise<EncryptedThing<T>>;
51
+ encrypt<Parameters extends KeyExchangeOptions>(provider: EncryptProvide<Parameters>, parameters: Parameters): Promise<EncryptReturnValue<T, Parameters>>;
52
+ encrypt(x25519Keypair: X25519Keypair, receiverPublicKeys: (X25519PublicKey | Ed25519PublicKey)[]): Promise<EncryptReturnValue<T, PublicKeyEncryptionParameters>>;
28
53
  get decrypted(): DecryptedThing<T>;
29
54
  decrypt(): DecryptedThing<T>;
30
55
  equals(other: MaybeEncrypted<T>): boolean;
@@ -49,27 +74,38 @@ export declare class K {
49
74
  });
50
75
  equals(other: K): boolean;
51
76
  }
52
- export declare class Envelope {
77
+ declare abstract class Envelope {
78
+ abstract equals(other: Envelope): boolean;
79
+ }
80
+ declare class PublicKeyEnvelope extends Envelope {
53
81
  _senderPublicKey: X25519PublicKey;
54
82
  _ks: K[];
55
83
  constructor(props?: {
56
84
  senderPublicKey: X25519PublicKey;
57
85
  ks: K[];
58
86
  });
59
- equals(other: Envelope): boolean;
87
+ equals(other: PublicKeyEnvelope): boolean;
88
+ }
89
+ declare class HashedKeyEnvelope extends Envelope {
90
+ hash: Uint8Array;
91
+ constructor(props?: {
92
+ hash: Uint8Array;
93
+ });
94
+ equals(other: HashedKeyEnvelope): boolean;
60
95
  }
61
- export declare class EncryptedThing<T> extends MaybeEncrypted<T> {
96
+ export declare class EncryptedThing<T, E extends Envelope = PublicKeyEnvelope | HashedKeyEnvelope> extends MaybeEncrypted<T> {
62
97
  _encrypted: Uint8Array;
63
98
  _nonce: Uint8Array;
64
- _envelope: Envelope;
99
+ _keyexchange: E;
65
100
  constructor(props?: {
66
101
  encrypted: Uint8Array;
67
102
  nonce: Uint8Array;
68
- envelope: Envelope;
103
+ envelope: E;
69
104
  });
70
105
  _decrypted?: DecryptedThing<T>;
71
106
  get decrypted(): DecryptedThing<T>;
72
- decrypt(keyResolver?: Keychain | X25519Keypair): Promise<DecryptedThing<T>>;
107
+ decrypt(keyResolver?: X25519Keypair | KeyProvider): Promise<DecryptedThing<T>>;
108
+ decrypt(provider?: DecryptProvider): Promise<DecryptedThing<T>>;
73
109
  equals(other: MaybeEncrypted<T>): boolean;
74
110
  clear(): void;
75
111
  get byteLength(): number;
@@ -7,15 +7,114 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  var __metadata = (this && this.__metadata) || function (k, v) {
8
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
9
  };
10
- var DecryptedThing_1, CipherWithNonce_1, K_1, Envelope_1, EncryptedThing_1;
10
+ var DecryptedThing_1, CipherWithNonce_1, K_1, PublicKeyEnvelope_1, HashedKeyEnvelope_1, EncryptedThing_1;
11
11
  export * from "./errors.js";
12
- import { deserialize, field, serialize, variant, vec } from "@dao-xyz/borsh";
12
+ import { deserialize, field, serialize, variant, vec, fixedArray } from "@dao-xyz/borsh";
13
13
  import { equals } from "@peerbit/uint8arrays";
14
14
  import { AccessError } from "./errors.js";
15
15
  import sodium from "libsodium-wrappers";
16
16
  import { X25519Keypair, X25519PublicKey, X25519SecretKey } from "./x25519.js";
17
17
  import { Ed25519PublicKey } from "./ed25519.js";
18
18
  import { randomBytes } from "./random.js";
19
+ import { sha256 } from "./hash.js";
20
+ function isAsymmetriEncryptionParameters(parameters) {
21
+ return (parameters.receiverPublicKeys != null);
22
+ }
23
+ function isAsymmetricEncryptionKeys(parameters) {
24
+ return parameters instanceof X25519Keypair;
25
+ }
26
+ export const createLocalEncryptProvider = (keys) => {
27
+ return async (bytes, parameters) => {
28
+ const nonce = randomBytes(NONCE_LENGTH); // crypto random is faster than sodim random
29
+ if (isAsymmetriEncryptionParameters(parameters) &&
30
+ isAsymmetricEncryptionKeys(keys)) {
31
+ const epheremalKey = sodium.crypto_secretbox_keygen();
32
+ const cipher = sodium.crypto_secretbox_easy(bytes, nonce, epheremalKey);
33
+ const { receiverPublicKeys } = parameters;
34
+ const receiverX25519PublicKeys = await Promise.all(receiverPublicKeys.map((key) => {
35
+ if (key instanceof Ed25519PublicKey) {
36
+ return X25519PublicKey.from(key);
37
+ }
38
+ return key;
39
+ }));
40
+ const ks = receiverX25519PublicKeys.map((receiverPublicKey) => {
41
+ const kNonce = randomBytes(NONCE_LENGTH); // crypto random is faster than sodium random
42
+ return new K({
43
+ encryptedKey: new CipherWithNonce({
44
+ cipher: sodium.crypto_box_easy(epheremalKey, kNonce, receiverPublicKey.publicKey, keys.secretKey.secretKey),
45
+ nonce: kNonce
46
+ }),
47
+ receiverPublicKey
48
+ });
49
+ });
50
+ return {
51
+ cipher: new Uint8Array(cipher), // TODO do we need this clone?
52
+ nonce,
53
+ envelope: new PublicKeyEnvelope({
54
+ senderPublicKey: keys.publicKey,
55
+ ks
56
+ })
57
+ };
58
+ }
59
+ else if (!isAsymmetriEncryptionParameters(parameters) &&
60
+ !isAsymmetricEncryptionKeys(keys)) {
61
+ const cipher = sodium.crypto_secretbox_easy(bytes, nonce, keys);
62
+ return {
63
+ cipher: new Uint8Array(cipher), // TODO do we need this clone?
64
+ nonce,
65
+ envelope: new HashedKeyEnvelope({
66
+ hash: await sha256(keys)
67
+ })
68
+ };
69
+ }
70
+ throw new Error("Unexpected encryption parameters");
71
+ };
72
+ };
73
+ export const createDecrypterFromKeyResolver = (keyResolver) => {
74
+ return async (encrypted, nonce, exchange) => {
75
+ // We only need to open with one of the keys
76
+ let epheremalKey;
77
+ if (exchange instanceof PublicKeyEnvelope) {
78
+ let key;
79
+ for (const [i, k] of exchange._ks.entries()) {
80
+ const exported = await keyResolver(k._receiverPublicKey);
81
+ if (exported) {
82
+ key = {
83
+ index: i,
84
+ keypair: exported
85
+ };
86
+ break;
87
+ }
88
+ }
89
+ if (key) {
90
+ const k = exchange._ks[key.index];
91
+ let secretKey = undefined;
92
+ if (key.keypair instanceof X25519Keypair) {
93
+ secretKey = key.keypair.secretKey;
94
+ }
95
+ else {
96
+ secretKey = await X25519SecretKey.from(key.keypair);
97
+ }
98
+ try {
99
+ epheremalKey = sodium.crypto_box_open_easy(k._encryptedKey.cipher, k._encryptedKey.nonce, exchange._senderPublicKey.publicKey, secretKey.secretKey);
100
+ }
101
+ catch (error) {
102
+ throw new AccessError("Failed to decrypt");
103
+ }
104
+ }
105
+ else {
106
+ throw new AccessError("Failed to resolve decryption key");
107
+ }
108
+ }
109
+ else if (exchange instanceof HashedKeyEnvelope) {
110
+ epheremalKey = await keyResolver(exchange.hash);
111
+ }
112
+ if (!epheremalKey) {
113
+ throw new Error("Failed to resolve ephemeral key");
114
+ }
115
+ return sodium.crypto_secretbox_open_easy(encrypted, nonce, epheremalKey);
116
+ };
117
+ };
19
118
  const NONCE_LENGTH = 24;
20
119
  let MaybeEncrypted = class MaybeEncrypted {
21
120
  /**
@@ -24,7 +123,7 @@ let MaybeEncrypted = class MaybeEncrypted {
24
123
  get decrypted() {
25
124
  throw new Error("Not implented");
26
125
  }
27
- decrypt(keyOrKeychain) {
126
+ decrypt(provider) {
28
127
  throw new Error("Not implemented");
29
128
  }
30
129
  equals(other) {
@@ -60,34 +159,26 @@ let DecryptedThing = DecryptedThing_1 = class DecryptedThing extends MaybeEncryp
60
159
  }
61
160
  return deserialize(this._data, clazz);
62
161
  }
63
- async encrypt(x25519Keypair, ...receiverPublicKeys) {
162
+ async encrypt(keypair, parameters) {
163
+ let provider;
164
+ let options;
165
+ if (keypair instanceof X25519Keypair) {
166
+ provider = createLocalEncryptProvider(keypair);
167
+ options = {
168
+ receiverPublicKeys: parameters,
169
+ type: "publicKey"
170
+ };
171
+ }
172
+ else {
173
+ provider = keypair;
174
+ options = parameters;
175
+ }
64
176
  const bytes = serialize(this);
65
- const epheremalKey = sodium.crypto_secretbox_keygen();
66
- const nonce = randomBytes(NONCE_LENGTH); // crypto random is faster than sodim random
67
- const cipher = sodium.crypto_secretbox_easy(bytes, nonce, epheremalKey);
68
- const receiverX25519PublicKeys = await Promise.all(receiverPublicKeys.map((key) => {
69
- if (key instanceof Ed25519PublicKey) {
70
- return X25519PublicKey.from(key);
71
- }
72
- return key;
73
- }));
74
- const ks = receiverX25519PublicKeys.map((receiverPublicKey) => {
75
- const kNonce = randomBytes(NONCE_LENGTH); // crypto random is faster than sodium random
76
- return new K({
77
- encryptedKey: new CipherWithNonce({
78
- cipher: sodium.crypto_box_easy(epheremalKey, kNonce, receiverPublicKey.publicKey, x25519Keypair.secretKey.secretKey),
79
- nonce: kNonce
80
- }),
81
- receiverPublicKey
82
- });
83
- });
177
+ const { cipher, envelope, nonce } = await provider(bytes, options);
84
178
  const enc = new EncryptedThing({
85
- encrypted: new Uint8Array(cipher),
86
- nonce,
87
- envelope: new Envelope({
88
- senderPublicKey: x25519Keypair.publicKey,
89
- ks
90
- })
179
+ encrypted: cipher,
180
+ envelope,
181
+ nonce
91
182
  });
92
183
  enc._decrypted = this;
93
184
  return enc;
@@ -185,17 +276,21 @@ K = K_1 = __decorate([
185
276
  __metadata("design:paramtypes", [Object])
186
277
  ], K);
187
278
  export { K };
188
- let Envelope = Envelope_1 = class Envelope {
279
+ class Envelope {
280
+ }
281
+ let PublicKeyEnvelope = PublicKeyEnvelope_1 = class PublicKeyEnvelope extends Envelope {
189
282
  _senderPublicKey;
190
283
  _ks;
191
284
  constructor(props) {
285
+ super();
192
286
  if (props) {
193
287
  this._senderPublicKey = props.senderPublicKey;
194
288
  this._ks = props.ks;
195
289
  }
196
290
  }
291
+ // TODO: should this be comparable to AbstractEnvelope?
197
292
  equals(other) {
198
- if (other instanceof Envelope_1) {
293
+ if (other instanceof PublicKeyEnvelope_1) {
199
294
  if (!this._senderPublicKey.equals(other._senderPublicKey)) {
200
295
  return false;
201
296
  }
@@ -217,26 +312,55 @@ let Envelope = Envelope_1 = class Envelope {
217
312
  __decorate([
218
313
  field({ type: X25519PublicKey }),
219
314
  __metadata("design:type", X25519PublicKey)
220
- ], Envelope.prototype, "_senderPublicKey", void 0);
315
+ ], PublicKeyEnvelope.prototype, "_senderPublicKey", void 0);
221
316
  __decorate([
222
317
  field({ type: vec(K) }),
223
318
  __metadata("design:type", Array)
224
- ], Envelope.prototype, "_ks", void 0);
225
- Envelope = Envelope_1 = __decorate([
319
+ ], PublicKeyEnvelope.prototype, "_ks", void 0);
320
+ PublicKeyEnvelope = PublicKeyEnvelope_1 = __decorate([
226
321
  variant(0),
227
322
  __metadata("design:paramtypes", [Object])
228
- ], Envelope);
229
- export { Envelope };
323
+ ], PublicKeyEnvelope);
324
+ let HashedKeyEnvelope = HashedKeyEnvelope_1 = class HashedKeyEnvelope extends Envelope {
325
+ hash;
326
+ // TODO: Do we need a salt here?
327
+ constructor(props) {
328
+ super();
329
+ if (props) {
330
+ this.hash = props.hash;
331
+ }
332
+ }
333
+ // TODO: should this be comparable to AbstractEnvelope?
334
+ equals(other) {
335
+ if (other instanceof HashedKeyEnvelope_1) {
336
+ if (!equals(this.hash, other.hash)) {
337
+ return false;
338
+ }
339
+ return true;
340
+ }
341
+ else {
342
+ return false;
343
+ }
344
+ }
345
+ };
346
+ __decorate([
347
+ field({ type: fixedArray("u8", 32) }),
348
+ __metadata("design:type", Uint8Array)
349
+ ], HashedKeyEnvelope.prototype, "hash", void 0);
350
+ HashedKeyEnvelope = HashedKeyEnvelope_1 = __decorate([
351
+ variant(1),
352
+ __metadata("design:paramtypes", [Object])
353
+ ], HashedKeyEnvelope);
230
354
  let EncryptedThing = EncryptedThing_1 = class EncryptedThing extends MaybeEncrypted {
231
355
  _encrypted;
232
356
  _nonce;
233
- _envelope;
357
+ _keyexchange;
234
358
  constructor(props) {
235
359
  super();
236
360
  if (props) {
237
361
  this._encrypted = props.encrypted;
238
362
  this._nonce = props.nonce;
239
- this._envelope = props.envelope;
363
+ this._keyexchange = props.envelope;
240
364
  }
241
365
  }
242
366
  _decrypted;
@@ -246,71 +370,43 @@ let EncryptedThing = EncryptedThing_1 = class EncryptedThing extends MaybeEncryp
246
370
  }
247
371
  return this._decrypted;
248
372
  }
249
- async decrypt(keyResolver) {
250
- if (this._decrypted) {
251
- return this._decrypted;
252
- }
253
- if (!keyResolver) {
254
- throw new AccessError("Expecting key resolver");
373
+ async decrypt(providerOrResolver) {
374
+ let provider;
375
+ if (typeof providerOrResolver === "function") {
376
+ provider = providerOrResolver;
255
377
  }
256
- // We only need to open with one of the keys
257
- let key;
258
- if (keyResolver instanceof X25519Keypair) {
259
- for (const [i, k] of this._envelope._ks.entries()) {
260
- if (k._receiverPublicKey.equals(keyResolver.publicKey)) {
261
- key = {
262
- index: i,
263
- keypair: keyResolver
264
- };
378
+ else if (providerOrResolver instanceof X25519Keypair) {
379
+ const resolver = (key) => {
380
+ if (key instanceof X25519PublicKey) {
381
+ if (key.equals(providerOrResolver.publicKey)) {
382
+ return providerOrResolver;
383
+ }
265
384
  }
266
- }
385
+ throw new Error("Missing keypair");
386
+ };
387
+ provider = createDecrypterFromKeyResolver(resolver);
267
388
  }
268
- else {
269
- for (const [i, k] of this._envelope._ks.entries()) {
270
- const exported = await keyResolver.exportByKey(k._receiverPublicKey);
271
- if (exported) {
272
- key = {
273
- index: i,
274
- keypair: exported
275
- };
276
- break;
389
+ else if (providerOrResolver) {
390
+ provider = createDecrypterFromKeyResolver(async (key) => {
391
+ if (key instanceof X25519PublicKey) {
392
+ const keypair = await providerOrResolver.exportByKey(key);
393
+ return keypair;
277
394
  }
278
- }
395
+ });
279
396
  }
280
- if (key) {
281
- const k = this._envelope._ks[key.index];
282
- let secretKey = undefined;
283
- if (key.keypair instanceof X25519Keypair) {
284
- secretKey = key.keypair.secretKey;
285
- }
286
- else {
287
- secretKey = await X25519SecretKey.from(key.keypair);
288
- }
289
- let epheremalKey;
290
- try {
291
- epheremalKey = sodium.crypto_box_open_easy(k._encryptedKey.cipher, k._encryptedKey.nonce, this._envelope._senderPublicKey.publicKey, secretKey.secretKey);
292
- }
293
- catch (error) {
294
- throw new AccessError("Failed to decrypt");
295
- }
296
- // TODO: is nested decryption necessary?
297
- /* let der: any = this;
298
- let counter = 0;
299
- while (der instanceof EncryptedThing) {
300
- const decrypted = await sodium.crypto_secretbox_open_easy(this._encrypted, this._nonce, epheremalKey);
301
- der = deserialize(decrypted, DecryptedThing)
302
- counter += 1;
303
- if (counter >= 10) {
304
- throw new Error("Unexpected decryption behaviour, data seems to always be in encrypted state")
305
- }
306
- } */
307
- const der = deserialize(sodium.crypto_secretbox_open_easy(this._encrypted, this._nonce, epheremalKey), DecryptedThing);
308
- this._decrypted = der;
397
+ if (this._decrypted) {
398
+ return this._decrypted;
309
399
  }
310
- else {
311
- throw new AccessError("Failed to resolve decryption key");
400
+ if (!provider) {
401
+ throw new AccessError("Expecting decryption provider");
312
402
  }
313
- return this._decrypted;
403
+ const decrypted = await provider(this._encrypted, this._nonce, this._keyexchange);
404
+ if (decrypted) {
405
+ const der = deserialize(decrypted, DecryptedThing);
406
+ this._decrypted = der;
407
+ return this._decrypted;
408
+ }
409
+ throw new AccessError("Failed to resolve decryption key");
314
410
  }
315
411
  equals(other) {
316
412
  if (other instanceof EncryptedThing_1) {
@@ -320,7 +416,7 @@ let EncryptedThing = EncryptedThing_1 = class EncryptedThing extends MaybeEncryp
320
416
  if (!equals(this._nonce, other._nonce)) {
321
417
  return false;
322
418
  }
323
- if (!this._envelope.equals(other._envelope)) {
419
+ if (!this._keyexchange.equals(other._keyexchange)) {
324
420
  return false;
325
421
  }
326
422
  return true;
@@ -346,8 +442,8 @@ __decorate([
346
442
  ], EncryptedThing.prototype, "_nonce", void 0);
347
443
  __decorate([
348
444
  field({ type: Envelope }),
349
- __metadata("design:type", Envelope)
350
- ], EncryptedThing.prototype, "_envelope", void 0);
445
+ __metadata("design:type", Object)
446
+ ], EncryptedThing.prototype, "_keyexchange", void 0);
351
447
  EncryptedThing = EncryptedThing_1 = __decorate([
352
448
  variant(1),
353
449
  __metadata("design:paramtypes", [Object])
@@ -1 +1 @@
1
- {"version":3,"file":"encryption.js","sourceRoot":"","sources":["../../src/encryption.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"encryption.js","sourceRoot":"","sources":["../../src/encryption.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,6 @@
1
1
  export * from "./key.js";
2
2
  export * from "./ed25519.js";
3
3
  export * from "./signature.js";
4
- export * from "./key.js";
5
4
  export * from "./sepc256k1.js";
6
5
  export * from "./x25519.js";
7
6
  export * from "./encryption.js";
@@ -11,6 +10,5 @@ export * from "./hash.js";
11
10
  export * from "./random.js";
12
11
  export * from "./prehash.js";
13
12
  export * from "./signer.js";
14
- export * from "./keychain.js";
15
13
  declare const ready: Promise<void>;
16
14
  export { ready };
package/lib/esm/index.js CHANGED
@@ -1,7 +1,6 @@
1
1
  export * from "./key.js";
2
2
  export * from "./ed25519.js";
3
3
  export * from "./signature.js";
4
- export * from "./key.js";
5
4
  export * from "./sepc256k1.js";
6
5
  export * from "./x25519.js";
7
6
  export * from "./encryption.js";
@@ -11,8 +10,7 @@ export * from "./hash.js";
11
10
  export * from "./random.js";
12
11
  export * from "./prehash.js";
13
12
  export * from "./signer.js";
14
- export * from "./keychain.js";
15
13
  import libsodium from "libsodium-wrappers";
16
- const ready = libsodium.ready; // TODO can we export ready directly ?
14
+ const ready = libsodium.ready;
17
15
  export { ready };
18
16
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAC3C,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,uCAAuC;AACtE,OAAO,EAAE,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAC3C,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,CAAC"}
package/lib/esm/key.d.ts CHANGED
@@ -41,4 +41,12 @@ export declare abstract class PlainKey implements Key {
41
41
  get bytes(): Uint8Array;
42
42
  hashcode(): string;
43
43
  }
44
+ export declare class ByteKey extends PlainKey {
45
+ key: Uint8Array;
46
+ constructor(properties: {
47
+ key: Uint8Array;
48
+ });
49
+ equals(other: ByteKey): boolean;
50
+ toString(): string;
51
+ }
44
52
  export {};