@ledgerhq/hw-ledger-key-ring-protocol 0.2.1-nightly.0 → 0.2.1-nightly.2

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.
Files changed (63) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/CHANGELOG.md +14 -0
  3. package/lib/ApduDevice.d.ts.map +1 -1
  4. package/lib/ApduDevice.js +37 -41
  5. package/lib/ApduDevice.js.map +1 -1
  6. package/lib/CommandBlock.d.ts +4 -4
  7. package/lib/CommandBlock.d.ts.map +1 -1
  8. package/lib/CommandBlock.js +18 -35
  9. package/lib/CommandBlock.js.map +1 -1
  10. package/lib/CommandStream.d.ts +1 -1
  11. package/lib/CommandStream.d.ts.map +1 -1
  12. package/lib/CommandStream.js +5 -7
  13. package/lib/CommandStream.js.map +1 -1
  14. package/lib/Crypto.d.ts +11 -11
  15. package/lib/Crypto.d.ts.map +1 -1
  16. package/lib/Device.d.ts +1 -1
  17. package/lib/Device.d.ts.map +1 -1
  18. package/lib/Device.js +28 -36
  19. package/lib/Device.js.map +1 -1
  20. package/lib/NobleCrypto.d.ts +13 -15
  21. package/lib/NobleCrypto.d.ts.map +1 -1
  22. package/lib/NobleCrypto.js +90 -148
  23. package/lib/NobleCrypto.js.map +1 -1
  24. package/lib/StreamTreeCipher.d.ts.map +1 -1
  25. package/lib/StreamTreeCipher.js +32 -36
  26. package/lib/StreamTreeCipher.js.map +1 -1
  27. package/lib/__tests__/codec.js +33 -33
  28. package/lib/__tests__/codec.js.map +1 -1
  29. package/lib-es/ApduDevice.d.ts.map +1 -1
  30. package/lib-es/ApduDevice.js +37 -41
  31. package/lib-es/ApduDevice.js.map +1 -1
  32. package/lib-es/CommandBlock.d.ts +4 -4
  33. package/lib-es/CommandBlock.d.ts.map +1 -1
  34. package/lib-es/CommandBlock.js +18 -35
  35. package/lib-es/CommandBlock.js.map +1 -1
  36. package/lib-es/CommandStream.d.ts +1 -1
  37. package/lib-es/CommandStream.d.ts.map +1 -1
  38. package/lib-es/CommandStream.js +5 -7
  39. package/lib-es/CommandStream.js.map +1 -1
  40. package/lib-es/Crypto.d.ts +11 -11
  41. package/lib-es/Crypto.d.ts.map +1 -1
  42. package/lib-es/Device.d.ts +1 -1
  43. package/lib-es/Device.d.ts.map +1 -1
  44. package/lib-es/Device.js +28 -36
  45. package/lib-es/Device.js.map +1 -1
  46. package/lib-es/NobleCrypto.d.ts +13 -15
  47. package/lib-es/NobleCrypto.d.ts.map +1 -1
  48. package/lib-es/NobleCrypto.js +90 -148
  49. package/lib-es/NobleCrypto.js.map +1 -1
  50. package/lib-es/StreamTreeCipher.d.ts.map +1 -1
  51. package/lib-es/StreamTreeCipher.js +32 -36
  52. package/lib-es/StreamTreeCipher.js.map +1 -1
  53. package/lib-es/__tests__/codec.js +33 -33
  54. package/lib-es/__tests__/codec.js.map +1 -1
  55. package/package.json +2 -2
  56. package/src/ApduDevice.ts +10 -14
  57. package/src/CommandBlock.ts +11 -14
  58. package/src/CommandStream.ts +6 -8
  59. package/src/Crypto.ts +11 -11
  60. package/src/Device.ts +26 -34
  61. package/src/NobleCrypto.ts +20 -59
  62. package/src/StreamTreeCipher.ts +15 -15
  63. package/src/__tests__/codec.ts +32 -32
package/lib/Device.js CHANGED
@@ -27,32 +27,26 @@ class SoftwareDevice {
27
27
  });
28
28
  }
29
29
  generateSharedKey() {
30
- return __awaiter(this, void 0, void 0, function* () {
31
- const xpriv = yield Crypto_1.crypto.randomBytes(64);
32
- const pk = yield Crypto_1.crypto.derivePrivate(xpriv, []);
33
- return { xpriv, publicKey: pk.publicKey };
34
- });
30
+ const xpriv = Crypto_1.crypto.randomBytes(64);
31
+ const pk = Crypto_1.crypto.derivePrivate(xpriv, []);
32
+ return { xpriv, publicKey: pk.publicKey };
35
33
  }
36
34
  encryptSharedKey(sharedKey, recipient) {
37
- return __awaiter(this, void 0, void 0, function* () {
38
- const kp = yield Crypto_1.crypto.randomKeypair();
39
- const ecdh = yield Crypto_1.crypto.ecdh(kp, recipient);
40
- const initializationVector = yield Crypto_1.crypto.randomBytes(16);
41
- const encryptedXpriv = yield Crypto_1.crypto.encrypt(ecdh, initializationVector, sharedKey.xpriv);
42
- return {
43
- encryptedXpriv,
44
- publicKey: sharedKey.publicKey,
45
- ephemeralPublicKey: kp.publicKey,
46
- initializationVector,
47
- };
48
- });
35
+ const kp = Crypto_1.crypto.randomKeypair();
36
+ const ecdh = Crypto_1.crypto.ecdh(kp, recipient);
37
+ const initializationVector = Crypto_1.crypto.randomBytes(16);
38
+ const encryptedXpriv = Crypto_1.crypto.encrypt(ecdh, initializationVector, sharedKey.xpriv);
39
+ return {
40
+ encryptedXpriv,
41
+ publicKey: sharedKey.publicKey,
42
+ ephemeralPublicKey: kp.publicKey,
43
+ initializationVector,
44
+ };
49
45
  }
50
46
  decryptSharedKey(encryptedSharedKey) {
51
- return __awaiter(this, void 0, void 0, function* () {
52
- const ecdh = yield Crypto_1.crypto.ecdh(this.keyPair, encryptedSharedKey.ephemeralPublicKey);
53
- const xpriv = yield Crypto_1.crypto.decrypt(ecdh, encryptedSharedKey.initializationVector, encryptedSharedKey.encryptedXpriv);
54
- return { xpriv, publicKey: encryptedSharedKey.publicKey };
55
- });
47
+ const ecdh = Crypto_1.crypto.ecdh(this.keyPair, encryptedSharedKey.ephemeralPublicKey);
48
+ const xpriv = Crypto_1.crypto.decrypt(ecdh, encryptedSharedKey.initializationVector, encryptedSharedKey.encryptedXpriv);
49
+ return { xpriv, publicKey: encryptedSharedKey.publicKey };
56
50
  }
57
51
  deriveKey(tree, path) {
58
52
  return __awaiter(this, void 0, void 0, function* () {
@@ -66,8 +60,8 @@ class SoftwareDevice {
66
60
  ephemeralPublicKey: event.ephemeralPublicKey,
67
61
  initializationVector: event.nonce,
68
62
  };
69
- const sharedKey = yield this.decryptSharedKey(encryptedSharedKey);
70
- const newKey = yield Crypto_1.crypto.derivePrivate(sharedKey.xpriv, path);
63
+ const sharedKey = this.decryptSharedKey(encryptedSharedKey);
64
+ const newKey = Crypto_1.crypto.derivePrivate(sharedKey.xpriv, path);
71
65
  const xpriv = new Uint8Array(64);
72
66
  xpriv.set(newKey.privateKey);
73
67
  xpriv.set(newKey.chainCode, 32);
@@ -94,9 +88,9 @@ class SoftwareDevice {
94
88
  switch (command.getType()) {
95
89
  case CommandBlock_1.CommandType.Seed: {
96
90
  // Generate the shared key
97
- sharedKey = yield this.generateSharedKey();
91
+ sharedKey = this.generateSharedKey();
98
92
  // Encrypt the shared key and inject it in the command
99
- const encryptedSharedKey = yield this.encryptSharedKey(sharedKey, this.keyPair.publicKey);
93
+ const encryptedSharedKey = this.encryptSharedKey(sharedKey, this.keyPair.publicKey);
100
94
  command.groupKey = sharedKey.publicKey;
101
95
  command.encryptedXpriv = encryptedSharedKey.encryptedXpriv;
102
96
  command.ephemeralPublicKey = encryptedSharedKey.ephemeralPublicKey;
@@ -110,7 +104,7 @@ class SoftwareDevice {
110
104
  }
111
105
  sharedKey = yield this.deriveKey(tree, command.path);
112
106
  // Encrypt the shared key and inject it in the command
113
- const encryptedDerivedKey = yield this.encryptSharedKey(sharedKey, this.keyPair.publicKey);
107
+ const encryptedDerivedKey = this.encryptSharedKey(sharedKey, this.keyPair.publicKey);
114
108
  command.groupKey = sharedKey.publicKey;
115
109
  command.encryptedXpriv = encryptedDerivedKey.encryptedXpriv;
116
110
  command.initializationVector = encryptedDerivedKey.initializationVector;
@@ -123,7 +117,7 @@ class SoftwareDevice {
123
117
  // If the current stream is the seed stream, read the key from the first command in the first block
124
118
  const encryptedKey = resolved.getEncryptedKey(this.keyPair.publicKey);
125
119
  if (encryptedKey) {
126
- sharedKey = yield this.decryptSharedKey({
120
+ sharedKey = this.decryptSharedKey({
127
121
  encryptedXpriv: encryptedKey.encryptedXpriv,
128
122
  initializationVector: encryptedKey.initialiationVector,
129
123
  publicKey: encryptedKey.issuer,
@@ -142,7 +136,7 @@ class SoftwareDevice {
142
136
  if (!sharedKey)
143
137
  throw new Error("Cannot find the shared key");
144
138
  }
145
- const encryptedSharedKey = yield this.encryptSharedKey(sharedKey, command.recipient);
139
+ const encryptedSharedKey = this.encryptSharedKey(sharedKey, command.recipient);
146
140
  command.encryptedXpriv = encryptedSharedKey.encryptedXpriv;
147
141
  command.initializationVector = encryptedSharedKey.initializationVector;
148
142
  command.ephemeralPublicKey = encryptedSharedKey.ephemeralPublicKey;
@@ -150,7 +144,7 @@ class SoftwareDevice {
150
144
  }
151
145
  }
152
146
  }
153
- const signature = (yield (0, CommandBlock_1.signCommandBlock)(lastBlock, (yield this.getPublicKey()).publicKey, this.keyPair.privateKey)).signature;
147
+ const signature = (0, CommandBlock_1.signCommandBlock)(lastBlock, (yield this.getPublicKey()).publicKey, this.keyPair.privateKey).signature;
154
148
  lastBlock.signature = signature;
155
149
  return lastBlock;
156
150
  });
@@ -167,11 +161,11 @@ class SoftwareDevice {
167
161
  publicKey: event.groupPublicKey,
168
162
  ephemeralPublicKey: event.ephemeralPublicKey,
169
163
  };
170
- const sharedKey = yield this.decryptSharedKey(encryptedSharedKey);
164
+ const sharedKey = this.decryptSharedKey(encryptedSharedKey);
171
165
  // Derive the key to match the path
172
166
  let index = Crypto_1.DerivationPath.toIndexArray(event.stream.getStreamPath()).length;
173
167
  while (index < path.length) {
174
- const derivation = yield Crypto_1.crypto.derivePrivate(sharedKey.xpriv, [index]);
168
+ const derivation = Crypto_1.crypto.derivePrivate(sharedKey.xpriv, [index]);
175
169
  const xpriv = new Uint8Array(64);
176
170
  xpriv.set(derivation.privateKey);
177
171
  xpriv.set(derivation.chainCode, 32);
@@ -191,10 +185,8 @@ exports.SoftwareDevice = SoftwareDevice;
191
185
  *
192
186
  */
193
187
  function createDevice() {
194
- return __awaiter(this, void 0, void 0, function* () {
195
- const kp = yield Crypto_1.crypto.randomKeypair();
196
- return new SoftwareDevice(kp);
197
- });
188
+ const kp = Crypto_1.crypto.randomKeypair();
189
+ return new SoftwareDevice(kp);
198
190
  }
199
191
  exports.createDevice = createDevice;
200
192
  exports.ISSUER_PLACEHOLDER = new Uint8Array([
package/lib/Device.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Device.js","sourceRoot":"","sources":["../src/Device.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Device.js","sourceRoot":"","sources":["../src/Device.ts"],"names":[],"mappings":"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"}
@@ -1,21 +1,19 @@
1
1
  import { Crypto, KeyPair, KeyPairWithChainCode } from "./Crypto";
2
2
  export declare class NobleCryptoSecp256k1 implements Crypto {
3
- randomKeypair(): Promise<KeyPair>;
4
- derivePrivate(xpriv: Uint8Array, path: number[]): Promise<KeyPairWithChainCode>;
5
- keypairFromSecretKey(secretKey: Uint8Array): Promise<KeyPair>;
3
+ randomKeypair(): KeyPair;
4
+ derivePrivate(xpriv: Uint8Array, path: number[]): KeyPairWithChainCode;
5
+ keypairFromSecretKey(secretKey: Uint8Array): KeyPair;
6
6
  private derEncode;
7
7
  private derDecode;
8
- sign(message: Uint8Array, keyPair: KeyPair): Promise<Uint8Array>;
9
- verify(message: Uint8Array, signature: Uint8Array, publicKey: Uint8Array): Promise<boolean>;
8
+ sign(message: Uint8Array, keyPair: KeyPair): Uint8Array;
9
+ verify(message: Uint8Array, signature: Uint8Array, publicKey: Uint8Array): boolean;
10
10
  private to_array;
11
11
  private normalizeKey;
12
12
  private normalizeNonce;
13
13
  private concat;
14
14
  private enforceLength;
15
- private pad;
16
- private unpad;
17
- encrypt(secret: Uint8Array, nonce: Uint8Array, message: Uint8Array): Promise<Uint8Array>;
18
- decrypt(secret: Uint8Array, nonce: Uint8Array, ciphertext: Uint8Array): Promise<Uint8Array>;
15
+ encrypt(secret: Uint8Array, nonce: Uint8Array, message: Uint8Array): Uint8Array;
16
+ decrypt(secret: Uint8Array, nonce: Uint8Array, ciphertext: Uint8Array): Uint8Array;
19
17
  /**
20
18
  * Ledger Live data are encrypted following pattern based on ECIES.
21
19
  * For each encryption the Ledger Live instance generates a random keypair over secp256k1 (ephemeral public key)
@@ -28,12 +26,12 @@ export declare class NobleCryptoSecp256k1 implements Crypto {
28
26
  16 bytes : Tag/MAC (from AES-256-GCM)
29
27
  variable : Encrypted data
30
28
  */
31
- encryptUserData(commandStreamPrivateKey: Uint8Array, data: Uint8Array): Promise<Uint8Array>;
32
- decryptUserData(commandStreamPrivateKey: Uint8Array, data: Uint8Array): Promise<Uint8Array>;
33
- randomBytes(size: number): Promise<Uint8Array>;
34
- ecdh(keyPair: KeyPair, publicKey: Uint8Array): Promise<Uint8Array>;
35
- computeSymmetricKey(privateKey: Uint8Array, extra: Uint8Array): Promise<Uint8Array>;
36
- hash(message: Uint8Array): Promise<Uint8Array>;
29
+ encryptUserData(commandStreamPrivateKey: Uint8Array, data: Uint8Array): Uint8Array;
30
+ decryptUserData(commandStreamPrivateKey: Uint8Array, data: Uint8Array): Uint8Array;
31
+ randomBytes(size: number): Uint8Array;
32
+ ecdh(keyPair: KeyPair, publicKey: Uint8Array): Uint8Array;
33
+ computeSymmetricKey(privateKey: Uint8Array, extra: Uint8Array): any;
34
+ hash(message: Uint8Array): Uint8Array;
37
35
  from_hex(hex: string): Uint8Array;
38
36
  to_hex(bytes?: Uint8Array | undefined | null): string;
39
37
  }
@@ -1 +1 @@
1
- {"version":3,"file":"NobleCrypto.d.ts","sourceRoot":"","sources":["../src/NobleCrypto.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAMjE,qBAAa,oBAAqB,YAAW,MAAM;IAC3C,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC;IAQjC,aAAa,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAc/E,oBAAoB,CAAC,SAAS,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC;IAOnE,OAAO,CAAC,SAAS;IAajB,OAAO,CAAC,SAAS;IAYX,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC;IAMhE,MAAM,CACV,OAAO,EAAE,UAAU,EACnB,SAAS,EAAE,UAAU,EACrB,SAAS,EAAE,UAAU,GACpB,OAAO,CAAC,OAAO,CAAC;IAMnB,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,MAAM;IAOd,OAAO,CAAC,aAAa;IAarB,OAAO,CAAC,GAAG;IAYX,OAAO,CAAC,KAAK;IAaP,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAWxF,OAAO,CACX,MAAM,EAAE,UAAU,EAClB,KAAK,EAAE,UAAU,EACjB,UAAU,EAAE,UAAU,GACrB,OAAO,CAAC,UAAU,CAAC;IAYtB;;;;;;;;;;;OAWG;IACG,eAAe,CACnB,uBAAuB,EAAE,UAAU,EACnC,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,UAAU,CAAC;IAmChB,eAAe,CACnB,uBAAuB,EAAE,UAAU,EACnC,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,UAAU,CAAC;IA2BhB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAI9C,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAOlE,mBAAmB,CAAC,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAKnF,IAAI,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAIpD,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU;IAQjC,MAAM,CAAC,KAAK,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,IAAI,GAAG,MAAM;CAGtD;AAED,wBAAgB,MAAM,CAAC,KAAK,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,IAAI,GAAG,MAAM,CAKpE"}
1
+ {"version":3,"file":"NobleCrypto.d.ts","sourceRoot":"","sources":["../src/NobleCrypto.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAMjE,qBAAa,oBAAqB,YAAW,MAAM;IACjD,aAAa,IAAI,OAAO;IAQxB,aAAa,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,oBAAoB;IActE,oBAAoB,CAAC,SAAS,EAAE,UAAU,GAAG,OAAO;IAOpD,OAAO,CAAC,SAAS;IAajB,OAAO,CAAC,SAAS;IAYjB,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,UAAU;IAMvD,MAAM,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,GAAG,OAAO;IAMlF,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,MAAM;IAOd,OAAO,CAAC,aAAa;IAarB,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,GAAG,UAAU;IAW/E,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,GAAG,UAAU;IAYlF;;;;;;;;;;;OAWG;IACH,eAAe,CAAC,uBAAuB,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,GAAG,UAAU;IAmClF,eAAe,CAAC,uBAAuB,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,GAAG,UAAU;IA2BlF,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU;IAIrC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,GAAG,UAAU;IAOzD,mBAAmB,CAAC,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU;IAK7D,IAAI,CAAC,OAAO,EAAE,UAAU,GAAG,UAAU;IAIrC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU;IAQjC,MAAM,CAAC,KAAK,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,IAAI,GAAG,MAAM;CAGtD;AAED,wBAAgB,MAAM,CAAC,KAAK,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,IAAI,GAAG,MAAM,CAKpE"}
@@ -22,15 +22,6 @@ var __importStar = (this && this.__importStar) || function (mod) {
22
22
  __setModuleDefault(result, mod);
23
23
  return result;
24
24
  };
25
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
- return new (P || (P = Promise))(function (resolve, reject) {
28
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
29
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
30
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
31
- step((generator = generator.apply(thisArg, _arguments || [])).next());
32
- });
33
- };
34
25
  var __importDefault = (this && this.__importDefault) || function (mod) {
35
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
36
27
  };
@@ -46,36 +37,30 @@ const AES_BLOCK_SIZE = 16;
46
37
  const PRIVATE_KEY_SIZE = 32;
47
38
  class NobleCryptoSecp256k1 {
48
39
  randomKeypair() {
49
- return __awaiter(this, void 0, void 0, function* () {
50
- let pk;
51
- do {
52
- pk = crypto.randomBytes(PRIVATE_KEY_SIZE);
53
- } while (!secp256k1.privateKeyVerify(pk));
54
- return this.keypairFromSecretKey(pk);
55
- });
40
+ let pk;
41
+ do {
42
+ pk = crypto.randomBytes(PRIVATE_KEY_SIZE);
43
+ } while (!secp256k1.privateKeyVerify(pk));
44
+ return this.keypairFromSecretKey(pk);
56
45
  }
57
46
  derivePrivate(xpriv, path) {
58
- return __awaiter(this, void 0, void 0, function* () {
59
- const pk = xpriv.slice(0, 32);
60
- const chainCode = xpriv.slice(32);
61
- let node = bip32.fromPrivateKey(Buffer.from(pk), Buffer.from(chainCode));
62
- for (const index of path) {
63
- node = node.derive(index);
64
- }
65
- return {
66
- publicKey: this.to_array(node.publicKey),
67
- privateKey: this.to_array(node.privateKey),
68
- chainCode: this.to_array(node.chainCode),
69
- };
70
- });
47
+ const pk = xpriv.slice(0, 32);
48
+ const chainCode = xpriv.slice(32);
49
+ let node = bip32.fromPrivateKey(Buffer.from(pk), Buffer.from(chainCode));
50
+ for (const index of path) {
51
+ node = node.derive(index);
52
+ }
53
+ return {
54
+ publicKey: this.to_array(node.publicKey),
55
+ privateKey: this.to_array(node.privateKey),
56
+ chainCode: this.to_array(node.chainCode),
57
+ };
71
58
  }
72
59
  keypairFromSecretKey(secretKey) {
73
- return __awaiter(this, void 0, void 0, function* () {
74
- return {
75
- publicKey: secp256k1.publicKeyCreate(secretKey),
76
- privateKey: secretKey,
77
- };
78
- });
60
+ return {
61
+ publicKey: secp256k1.publicKeyCreate(secretKey),
62
+ privateKey: secretKey,
63
+ };
79
64
  }
80
65
  derEncode(R, S) {
81
66
  if (R[0] > 0x7f) {
@@ -98,18 +83,14 @@ class NobleCryptoSecp256k1 {
98
83
  };
99
84
  }
100
85
  sign(message, keyPair) {
101
- return __awaiter(this, void 0, void 0, function* () {
102
- const signature = secp256k1.ecdsaSign(message, keyPair.privateKey).signature;
103
- // DER encoding
104
- return this.derEncode(signature.slice(0, 32), signature.slice(32, 64));
105
- });
86
+ const signature = secp256k1.ecdsaSign(message, keyPair.privateKey).signature;
87
+ // DER encoding
88
+ return this.derEncode(signature.slice(0, 32), signature.slice(32, 64));
106
89
  }
107
90
  verify(message, signature, publicKey) {
108
- return __awaiter(this, void 0, void 0, function* () {
109
- // DER decoding
110
- const { R, S } = this.derDecode(signature);
111
- return secp256k1.ecdsaVerify(this.concat(R, S), message, publicKey);
112
- });
91
+ // DER decoding
92
+ const { R, S } = this.derDecode(signature);
93
+ return secp256k1.ecdsaVerify(this.concat(R, S), message, publicKey);
113
94
  }
114
95
  to_array(buffer) {
115
96
  return new Uint8Array(buffer);
@@ -145,53 +126,26 @@ class NobleCryptoSecp256k1 {
145
126
  }
146
127
  return buffer;
147
128
  }
148
- pad(message) {
149
- // ISO9797M2 implementation
150
- const padLength = AES_BLOCK_SIZE - (message.length % AES_BLOCK_SIZE);
151
- if (padLength === AES_BLOCK_SIZE) {
152
- return message;
153
- }
154
- const padding = new Uint8Array(padLength);
155
- padding[0] = 0x80;
156
- padding.fill(0, 1);
157
- return this.concat(message, padding);
158
- }
159
- unpad(message) {
160
- // ISO9797M2 implementation
161
- for (let i = message.length - 1; i >= 0; i--) {
162
- if (message[i] === 0x80) {
163
- return message.slice(0, i);
164
- }
165
- if (message[i] !== 0x00) {
166
- return message;
167
- }
168
- }
169
- throw new Error("Invalid padding");
170
- }
171
129
  encrypt(secret, nonce, message) {
172
- return __awaiter(this, void 0, void 0, function* () {
173
- const normalizedSecret = this.normalizeKey(secret);
174
- const normalizeNonce = this.normalizeNonce(nonce);
175
- const cipher = crypto.createCipheriv("aes-256-gcm", normalizedSecret, normalizeNonce);
176
- cipher.setAutoPadding(false);
177
- let result = cipher.update(this.to_hex(message), "hex", "hex");
178
- result += cipher.final("hex");
179
- const bytes = this.from_hex(result);
180
- return this.concat(bytes, cipher.getAuthTag());
181
- });
130
+ const normalizedSecret = this.normalizeKey(secret);
131
+ const normalizeNonce = this.normalizeNonce(nonce);
132
+ const cipher = crypto.createCipheriv("aes-256-gcm", normalizedSecret, normalizeNonce);
133
+ cipher.setAutoPadding(false);
134
+ let result = cipher.update(this.to_hex(message), "hex", "hex");
135
+ result += cipher.final("hex");
136
+ const bytes = this.from_hex(result);
137
+ return this.concat(bytes, cipher.getAuthTag());
182
138
  }
183
139
  decrypt(secret, nonce, ciphertext) {
184
- return __awaiter(this, void 0, void 0, function* () {
185
- const normalizedSecret = this.normalizeKey(secret);
186
- const normalizeNonce = this.normalizeNonce(nonce);
187
- const encryptedData = ciphertext.slice(0, ciphertext.length - AES_BLOCK_SIZE);
188
- const authTag = ciphertext.slice(encryptedData.length);
189
- const decipher = crypto.createDecipheriv("aes-256-gcm", normalizedSecret, normalizeNonce);
190
- decipher.setAuthTag(authTag);
191
- let result = decipher.update(this.to_hex(encryptedData), "hex", "hex");
192
- result += decipher.final("hex");
193
- return this.from_hex(result);
194
- });
140
+ const normalizedSecret = this.normalizeKey(secret);
141
+ const normalizeNonce = this.normalizeNonce(nonce);
142
+ const encryptedData = ciphertext.slice(0, ciphertext.length - AES_BLOCK_SIZE);
143
+ const authTag = ciphertext.slice(encryptedData.length);
144
+ const decipher = crypto.createDecipheriv("aes-256-gcm", normalizedSecret, normalizeNonce);
145
+ decipher.setAuthTag(authTag);
146
+ let result = decipher.update(this.to_hex(encryptedData), "hex", "hex");
147
+ result += decipher.final("hex");
148
+ return this.from_hex(result);
195
149
  }
196
150
  /**
197
151
  * Ledger Live data are encrypted following pattern based on ECIES.
@@ -206,75 +160,63 @@ class NobleCryptoSecp256k1 {
206
160
  variable : Encrypted data
207
161
  */
208
162
  encryptUserData(commandStreamPrivateKey, data) {
209
- return __awaiter(this, void 0, void 0, function* () {
210
- // Generate ephemeral key pair
211
- const ephemeralKeypair = yield this.randomKeypair();
212
- // Derive the shared secret using ECDH
213
- const sharedSecret = yield this.ecdh(yield this.keypairFromSecretKey(commandStreamPrivateKey), ephemeralKeypair.publicKey);
214
- // Normalize the shared secret to be used as AES key
215
- const aesKey = yield this.computeSymmetricKey(sharedSecret, new Uint8Array());
216
- // Generate a random IV (nonce)
217
- const iv = crypto.randomBytes(16);
218
- // Encrypt the data using AES-256-GCM
219
- const cipher = crypto.createCipheriv("aes-256-gcm", aesKey, iv);
220
- let encryptedData = cipher.update(data);
221
- encryptedData = Buffer.concat([encryptedData, cipher.final()]);
222
- const tag = cipher.getAuthTag();
223
- // Serialize the format
224
- const result = new Uint8Array(1 + ephemeralKeypair.publicKey.length + iv.length + tag.length + encryptedData.length);
225
- result[0] = 0x00; // Version of the format
226
- result.set(ephemeralKeypair.publicKey, 1);
227
- result.set(iv, 34);
228
- result.set(tag, 50);
229
- result.set(encryptedData, 66);
230
- return result;
231
- });
163
+ // Generate ephemeral key pair
164
+ const ephemeralKeypair = this.randomKeypair();
165
+ // Derive the shared secret using ECDH
166
+ const sharedSecret = this.ecdh(this.keypairFromSecretKey(commandStreamPrivateKey), ephemeralKeypair.publicKey);
167
+ // Normalize the shared secret to be used as AES key
168
+ const aesKey = this.computeSymmetricKey(sharedSecret, new Uint8Array());
169
+ // Generate a random IV (nonce)
170
+ const iv = crypto.randomBytes(16);
171
+ // Encrypt the data using AES-256-GCM
172
+ const cipher = crypto.createCipheriv("aes-256-gcm", aesKey, iv);
173
+ let encryptedData = cipher.update(data);
174
+ encryptedData = Buffer.concat([encryptedData, cipher.final()]);
175
+ const tag = cipher.getAuthTag();
176
+ // Serialize the format
177
+ const result = new Uint8Array(1 + ephemeralKeypair.publicKey.length + iv.length + tag.length + encryptedData.length);
178
+ result[0] = 0x00; // Version of the format
179
+ result.set(ephemeralKeypair.publicKey, 1);
180
+ result.set(iv, 34);
181
+ result.set(tag, 50);
182
+ result.set(encryptedData, 66);
183
+ return result;
232
184
  }
233
185
  decryptUserData(commandStreamPrivateKey, data) {
234
- return __awaiter(this, void 0, void 0, function* () {
235
- const version = data[0];
236
- if (version !== 0x00) {
237
- throw new Error("Unsupported format version");
238
- }
239
- const ephemeralPublicKey = data.slice(1, 34);
240
- const iv = data.slice(34, 50);
241
- const tag = data.slice(50, 66);
242
- const encryptedData = data.slice(66);
243
- // Derive the shared secret using ECDH
244
- const sharedSecret = yield this.ecdh(yield this.keypairFromSecretKey(commandStreamPrivateKey), ephemeralPublicKey);
245
- // Normalize the shared secret to be used as AES key
246
- const aesKey = yield this.computeSymmetricKey(sharedSecret, new Uint8Array());
247
- // Decrypt the data using AES-256-GCM
248
- const decipher = crypto.createDecipheriv("aes-256-gcm", aesKey, iv);
249
- decipher.setAuthTag(tag);
250
- let decryptedData = decipher.update(encryptedData);
251
- decryptedData = Buffer.concat([decryptedData, decipher.final()]);
252
- return new Uint8Array(decryptedData.buffer, decryptedData.byteOffset, decryptedData.byteLength);
253
- });
186
+ const version = data[0];
187
+ if (version !== 0x00) {
188
+ throw new Error("Unsupported format version");
189
+ }
190
+ const ephemeralPublicKey = data.slice(1, 34);
191
+ const iv = data.slice(34, 50);
192
+ const tag = data.slice(50, 66);
193
+ const encryptedData = data.slice(66);
194
+ // Derive the shared secret using ECDH
195
+ const sharedSecret = this.ecdh(this.keypairFromSecretKey(commandStreamPrivateKey), ephemeralPublicKey);
196
+ // Normalize the shared secret to be used as AES key
197
+ const aesKey = this.computeSymmetricKey(sharedSecret, new Uint8Array());
198
+ // Decrypt the data using AES-256-GCM
199
+ const decipher = crypto.createDecipheriv("aes-256-gcm", aesKey, iv);
200
+ decipher.setAuthTag(tag);
201
+ let decryptedData = decipher.update(encryptedData);
202
+ decryptedData = Buffer.concat([decryptedData, decipher.final()]);
203
+ return new Uint8Array(decryptedData.buffer, decryptedData.byteOffset, decryptedData.byteLength);
254
204
  }
255
205
  randomBytes(size) {
256
- return __awaiter(this, void 0, void 0, function* () {
257
- return crypto.randomBytes(size);
258
- });
206
+ return crypto.randomBytes(size);
259
207
  }
260
208
  ecdh(keyPair, publicKey) {
261
- return __awaiter(this, void 0, void 0, function* () {
262
- const pubkey = Buffer.from(publicKey);
263
- const privkey = Buffer.from(keyPair.privateKey);
264
- const point = ecc.pointMultiply(pubkey, privkey, ecc.isPointCompressed(pubkey));
265
- return point.slice(1);
266
- });
209
+ const pubkey = Buffer.from(publicKey);
210
+ const privkey = Buffer.from(keyPair.privateKey);
211
+ const point = ecc.pointMultiply(pubkey, privkey, ecc.isPointCompressed(pubkey));
212
+ return point.slice(1);
267
213
  }
268
214
  computeSymmetricKey(privateKey, extra) {
269
- return __awaiter(this, void 0, void 0, function* () {
270
- const digest = (0, create_hmac_1.default)("sha256", Buffer.from(extra)).update(Buffer.from(privateKey)).digest();
271
- return digest;
272
- });
215
+ const digest = (0, create_hmac_1.default)("sha256", Buffer.from(extra)).update(Buffer.from(privateKey)).digest();
216
+ return digest;
273
217
  }
274
218
  hash(message) {
275
- return __awaiter(this, void 0, void 0, function* () {
276
- return crypto.createHash("sha256").update(Buffer.from(message)).digest();
277
- });
219
+ return crypto.createHash("sha256").update(Buffer.from(message)).digest();
278
220
  }
279
221
  from_hex(hex) {
280
222
  const bytes = new Uint8Array(hex.length / 2);
@@ -1 +1 @@
1
- {"version":3,"file":"NobleCrypto.js","sourceRoot":"","sources":["../src/NobleCrypto.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NobleCrypto.js","sourceRoot":"","sources":["../src/NobleCrypto.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"StreamTreeCipher.d.ts","sourceRoot":"","sources":["../src/StreamTreeCipher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAU,MAAM,GAAG,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C;;GAEG;AACH,oBAAY,oBAAoB;IAC9B,WAAW,IAAO;IAClB,WAAW,IAAO;CACnB;AAYD;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,OAAO,CAAS;gBAEZ,IAAI,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM;IAKtD,IAAI,IAAI,IAAI,oBAAoB,CAE/B;IAED;;;;;;;;;OASG;IACG,OAAO,CACX,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,EAAE,UAAU,EACnB,KAAK,GAAE,UAAU,GAAG,IAAW,GAC9B,OAAO,CAAC,UAAU,CAAC;YAgCR,eAAe;YAmBf,UAAU;IA4BxB,OAAO,CAAC,UAAU;IAkBlB;;;;;;;;;OASG;IACG,OAAO,CACX,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,MAAM,EAAE,EACd,eAAe,EAAE,UAAU,GAC1B,OAAO,CAAC,UAAU,CAAC;YAgCR,eAAe;IAK7B,MAAM,CAAC,MAAM,CACX,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,oBAAuD,GAC5D,gBAAgB;CAGpB"}
1
+ {"version":3,"file":"StreamTreeCipher.d.ts","sourceRoot":"","sources":["../src/StreamTreeCipher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAU,MAAM,GAAG,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C;;GAEG;AACH,oBAAY,oBAAoB;IAC9B,WAAW,IAAO;IAClB,WAAW,IAAO;CACnB;AAYD;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,OAAO,CAAS;gBAEZ,IAAI,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM;IAKtD,IAAI,IAAI,IAAI,oBAAoB,CAE/B;IAED;;;;;;;;;OASG;IACG,OAAO,CACX,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,EAAE,UAAU,EACnB,KAAK,GAAE,UAAU,GAAG,IAAW,GAC9B,OAAO,CAAC,UAAU,CAAC;YAgCR,eAAe;IAmB7B,OAAO,CAAC,UAAU;IA4BlB,OAAO,CAAC,UAAU;IAkBlB;;;;;;;;;OASG;IACG,OAAO,CACX,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,MAAM,EAAE,EACd,eAAe,EAAE,UAAU,GAC1B,OAAO,CAAC,UAAU,CAAC;IAgCtB,OAAO,CAAC,eAAe;IAKvB,MAAM,CAAC,MAAM,CACX,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,oBAAuD,GAC5D,gBAAgB;CAGpB"}