@libp2p/keychain 1.0.0 → 1.0.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/src/index.js CHANGED
@@ -3,7 +3,7 @@ import { logger } from '@libp2p/logger';
3
3
  import sanitize from 'sanitize-filename';
4
4
  import mergeOptions from 'merge-options';
5
5
  import { Key } from 'interface-datastore/key';
6
- import errCode from 'err-code';
6
+ import { CodeError } from '@libp2p/interfaces/errors';
7
7
  import { codes } from './errors.js';
8
8
  import { toString as uint8ArrayToString } from 'uint8arrays/to-string';
9
9
  import { fromString as uint8ArrayFromString } from 'uint8arrays/from-string';
@@ -125,23 +125,23 @@ export class DefaultKeyChain {
125
125
  async createKey(name, type, size = 2048) {
126
126
  if (!validateKeyName(name) || name === 'self') {
127
127
  await randomDelay();
128
- throw errCode(new Error('Invalid key name'), codes.ERR_INVALID_KEY_NAME);
128
+ throw new CodeError('Invalid key name', codes.ERR_INVALID_KEY_NAME);
129
129
  }
130
130
  if (typeof type !== 'string') {
131
131
  await randomDelay();
132
- throw errCode(new Error('Invalid key type'), codes.ERR_INVALID_KEY_TYPE);
132
+ throw new CodeError('Invalid key type', codes.ERR_INVALID_KEY_TYPE);
133
133
  }
134
134
  const dsname = DsName(name);
135
135
  const exists = await this.components.datastore.has(dsname);
136
136
  if (exists) {
137
137
  await randomDelay();
138
- throw errCode(new Error('Key name already exists'), codes.ERR_KEY_ALREADY_EXISTS);
138
+ throw new CodeError('Key name already exists', codes.ERR_KEY_ALREADY_EXISTS);
139
139
  }
140
140
  switch (type.toLowerCase()) {
141
141
  case 'rsa':
142
142
  if (!Number.isSafeInteger(size) || size < 2048) {
143
143
  await randomDelay();
144
- throw errCode(new Error('Invalid RSA key size'), codes.ERR_INVALID_KEY_SIZE);
144
+ throw new CodeError('Invalid RSA key size', codes.ERR_INVALID_KEY_SIZE);
145
145
  }
146
146
  break;
147
147
  default:
@@ -153,7 +153,7 @@ export class DefaultKeyChain {
153
153
  const kid = await keypair.id();
154
154
  const cached = privates.get(this);
155
155
  if (cached == null) {
156
- throw errCode(new Error('dek missing'), codes.ERR_INVALID_PARAMETERS);
156
+ throw new CodeError('dek missing', codes.ERR_INVALID_PARAMETERS);
157
157
  }
158
158
  const dek = cached.dek;
159
159
  const pem = await keypair.export(dek);
@@ -195,7 +195,7 @@ export class DefaultKeyChain {
195
195
  const keys = await this.listKeys();
196
196
  const key = keys.find((k) => k.id === id);
197
197
  if (key == null) {
198
- throw errCode(new Error(`Key with id '${id}' does not exist.`), codes.ERR_KEY_NOT_FOUND);
198
+ throw new CodeError(`Key with id '${id}' does not exist.`, codes.ERR_KEY_NOT_FOUND);
199
199
  }
200
200
  return key;
201
201
  }
@@ -213,7 +213,7 @@ export class DefaultKeyChain {
213
213
  async findKeyByName(name) {
214
214
  if (!validateKeyName(name)) {
215
215
  await randomDelay();
216
- throw errCode(new Error(`Invalid key name '${name}'`), codes.ERR_INVALID_KEY_NAME);
216
+ throw new CodeError(`Invalid key name '${name}'`, codes.ERR_INVALID_KEY_NAME);
217
217
  }
218
218
  const dsname = DsInfoName(name);
219
219
  try {
@@ -223,7 +223,7 @@ export class DefaultKeyChain {
223
223
  catch (err) {
224
224
  await randomDelay();
225
225
  log.error(err);
226
- throw errCode(new Error(`Key '${name}' does not exist.`), codes.ERR_KEY_NOT_FOUND);
226
+ throw new CodeError(`Key '${name}' does not exist.`, codes.ERR_KEY_NOT_FOUND);
227
227
  }
228
228
  }
229
229
  /**
@@ -235,7 +235,7 @@ export class DefaultKeyChain {
235
235
  async removeKey(name) {
236
236
  if (!validateKeyName(name) || name === 'self') {
237
237
  await randomDelay();
238
- throw errCode(new Error(`Invalid key name '${name}'`), codes.ERR_INVALID_KEY_NAME);
238
+ throw new CodeError(`Invalid key name '${name}'`, codes.ERR_INVALID_KEY_NAME);
239
239
  }
240
240
  const dsname = DsName(name);
241
241
  const keyInfo = await this.findKeyByName(name);
@@ -255,11 +255,11 @@ export class DefaultKeyChain {
255
255
  async renameKey(oldName, newName) {
256
256
  if (!validateKeyName(oldName) || oldName === 'self') {
257
257
  await randomDelay();
258
- throw errCode(new Error(`Invalid old key name '${oldName}'`), codes.ERR_OLD_KEY_NAME_INVALID);
258
+ throw new CodeError(`Invalid old key name '${oldName}'`, codes.ERR_OLD_KEY_NAME_INVALID);
259
259
  }
260
260
  if (!validateKeyName(newName) || newName === 'self') {
261
261
  await randomDelay();
262
- throw errCode(new Error(`Invalid new key name '${newName}'`), codes.ERR_NEW_KEY_NAME_INVALID);
262
+ throw new CodeError(`Invalid new key name '${newName}'`, codes.ERR_NEW_KEY_NAME_INVALID);
263
263
  }
264
264
  const oldDsname = DsName(oldName);
265
265
  const newDsname = DsName(newName);
@@ -268,7 +268,7 @@ export class DefaultKeyChain {
268
268
  const exists = await this.components.datastore.has(newDsname);
269
269
  if (exists) {
270
270
  await randomDelay();
271
- throw errCode(new Error(`Key '${newName}' already exists`), codes.ERR_KEY_ALREADY_EXISTS);
271
+ throw new CodeError(`Key '${newName}' already exists`, codes.ERR_KEY_ALREADY_EXISTS);
272
272
  }
273
273
  try {
274
274
  const pem = await this.components.datastore.get(oldDsname);
@@ -294,11 +294,11 @@ export class DefaultKeyChain {
294
294
  async exportKey(name, password) {
295
295
  if (!validateKeyName(name)) {
296
296
  await randomDelay();
297
- throw errCode(new Error(`Invalid key name '${name}'`), codes.ERR_INVALID_KEY_NAME);
297
+ throw new CodeError(`Invalid key name '${name}'`, codes.ERR_INVALID_KEY_NAME);
298
298
  }
299
299
  if (password == null) {
300
300
  await randomDelay();
301
- throw errCode(new Error('Password is required'), codes.ERR_PASSWORD_REQUIRED);
301
+ throw new CodeError('Password is required', codes.ERR_PASSWORD_REQUIRED);
302
302
  }
303
303
  const dsname = DsName(name);
304
304
  try {
@@ -306,7 +306,7 @@ export class DefaultKeyChain {
306
306
  const pem = uint8ArrayToString(res);
307
307
  const cached = privates.get(this);
308
308
  if (cached == null) {
309
- throw errCode(new Error('dek missing'), codes.ERR_INVALID_PARAMETERS);
309
+ throw new CodeError('dek missing', codes.ERR_INVALID_PARAMETERS);
310
310
  }
311
311
  const dek = cached.dek;
312
312
  const privateKey = await importKey(pem, dek);
@@ -337,17 +337,17 @@ export class DefaultKeyChain {
337
337
  async importKey(name, pem, password) {
338
338
  if (!validateKeyName(name) || name === 'self') {
339
339
  await randomDelay();
340
- throw errCode(new Error(`Invalid key name '${name}'`), codes.ERR_INVALID_KEY_NAME);
340
+ throw new CodeError(`Invalid key name '${name}'`, codes.ERR_INVALID_KEY_NAME);
341
341
  }
342
342
  if (pem == null) {
343
343
  await randomDelay();
344
- throw errCode(new Error('PEM encoded key is required'), codes.ERR_PEM_REQUIRED);
344
+ throw new CodeError('PEM encoded key is required', codes.ERR_PEM_REQUIRED);
345
345
  }
346
346
  const dsname = DsName(name);
347
347
  const exists = await this.components.datastore.has(dsname);
348
348
  if (exists) {
349
349
  await randomDelay();
350
- throw errCode(new Error(`Key '${name}' already exists`), codes.ERR_KEY_ALREADY_EXISTS);
350
+ throw new CodeError(`Key '${name}' already exists`, codes.ERR_KEY_ALREADY_EXISTS);
351
351
  }
352
352
  let privateKey;
353
353
  try {
@@ -355,14 +355,14 @@ export class DefaultKeyChain {
355
355
  }
356
356
  catch (err) {
357
357
  await randomDelay();
358
- throw errCode(new Error('Cannot read the key, most likely the password is wrong'), codes.ERR_CANNOT_READ_KEY);
358
+ throw new CodeError('Cannot read the key, most likely the password is wrong', codes.ERR_CANNOT_READ_KEY);
359
359
  }
360
360
  let kid;
361
361
  try {
362
362
  kid = await privateKey.id();
363
363
  const cached = privates.get(this);
364
364
  if (cached == null) {
365
- throw errCode(new Error('dek missing'), codes.ERR_INVALID_PARAMETERS);
365
+ throw new CodeError('dek missing', codes.ERR_INVALID_PARAMETERS);
366
366
  }
367
367
  const dek = cached.dek;
368
368
  pem = await privateKey.export(dek);
@@ -387,24 +387,24 @@ export class DefaultKeyChain {
387
387
  async importPeer(name, peer) {
388
388
  try {
389
389
  if (!validateKeyName(name)) {
390
- throw errCode(new Error(`Invalid key name '${name}'`), codes.ERR_INVALID_KEY_NAME);
390
+ throw new CodeError(`Invalid key name '${name}'`, codes.ERR_INVALID_KEY_NAME);
391
391
  }
392
392
  if (peer == null) {
393
- throw errCode(new Error('PeerId is required'), codes.ERR_MISSING_PRIVATE_KEY);
393
+ throw new CodeError('PeerId is required', codes.ERR_MISSING_PRIVATE_KEY);
394
394
  }
395
395
  if (peer.privateKey == null) {
396
- throw errCode(new Error('PeerId.privKey is required'), codes.ERR_MISSING_PRIVATE_KEY);
396
+ throw new CodeError('PeerId.privKey is required', codes.ERR_MISSING_PRIVATE_KEY);
397
397
  }
398
398
  const privateKey = await unmarshalPrivateKey(peer.privateKey);
399
399
  const dsname = DsName(name);
400
400
  const exists = await this.components.datastore.has(dsname);
401
401
  if (exists) {
402
402
  await randomDelay();
403
- throw errCode(new Error(`Key '${name}' already exists`), codes.ERR_KEY_ALREADY_EXISTS);
403
+ throw new CodeError(`Key '${name}' already exists`, codes.ERR_KEY_ALREADY_EXISTS);
404
404
  }
405
405
  const cached = privates.get(this);
406
406
  if (cached == null) {
407
- throw errCode(new Error('dek missing'), codes.ERR_INVALID_PARAMETERS);
407
+ throw new CodeError('dek missing', codes.ERR_INVALID_PARAMETERS);
408
408
  }
409
409
  const dek = cached.dek;
410
410
  const pem = await privateKey.export(dek);
@@ -429,7 +429,7 @@ export class DefaultKeyChain {
429
429
  async getPrivateKey(name) {
430
430
  if (!validateKeyName(name)) {
431
431
  await randomDelay();
432
- throw errCode(new Error(`Invalid key name '${name}'`), codes.ERR_INVALID_KEY_NAME);
432
+ throw new CodeError(`Invalid key name '${name}'`, codes.ERR_INVALID_KEY_NAME);
433
433
  }
434
434
  try {
435
435
  const dsname = DsName(name);
@@ -439,7 +439,7 @@ export class DefaultKeyChain {
439
439
  catch (err) {
440
440
  await randomDelay();
441
441
  log.error(err);
442
- throw errCode(new Error(`Key '${name}' does not exist.`), codes.ERR_KEY_NOT_FOUND);
442
+ throw new CodeError(`Key '${name}' does not exist.`, codes.ERR_KEY_NOT_FOUND);
443
443
  }
444
444
  }
445
445
  /**
@@ -448,20 +448,20 @@ export class DefaultKeyChain {
448
448
  async rotateKeychainPass(oldPass, newPass) {
449
449
  if (typeof oldPass !== 'string') {
450
450
  await randomDelay();
451
- throw errCode(new Error(`Invalid old pass type '${typeof oldPass}'`), codes.ERR_INVALID_OLD_PASS_TYPE);
451
+ throw new CodeError(`Invalid old pass type '${typeof oldPass}'`, codes.ERR_INVALID_OLD_PASS_TYPE);
452
452
  }
453
453
  if (typeof newPass !== 'string') {
454
454
  await randomDelay();
455
- throw errCode(new Error(`Invalid new pass type '${typeof newPass}'`), codes.ERR_INVALID_NEW_PASS_TYPE);
455
+ throw new CodeError(`Invalid new pass type '${typeof newPass}'`, codes.ERR_INVALID_NEW_PASS_TYPE);
456
456
  }
457
457
  if (newPass.length < 20) {
458
458
  await randomDelay();
459
- throw errCode(new Error(`Invalid pass length ${newPass.length}`), codes.ERR_INVALID_PASS_LENGTH);
459
+ throw new CodeError(`Invalid pass length ${newPass.length}`, codes.ERR_INVALID_PASS_LENGTH);
460
460
  }
461
461
  log('recreating keychain');
462
462
  const cached = privates.get(this);
463
463
  if (cached == null) {
464
- throw errCode(new Error('dek missing'), codes.ERR_INVALID_PARAMETERS);
464
+ throw new CodeError('dek missing', codes.ERR_INVALID_PARAMETERS);
465
465
  }
466
466
  const oldDek = cached.dek;
467
467
  this.init.pass = newPass;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@libp2p/keychain",
3
- "version": "1.0.0",
3
+ "version": "1.0.1",
4
4
  "description": "Key management and cryptographically protected messages",
5
5
  "license": "Apache-2.0 OR MIT",
6
6
  "homepage": "https://github.com/libp2p/js-libp2p-keychain#readme",
@@ -147,9 +147,9 @@
147
147
  "@libp2p/crypto": "^1.0.11",
148
148
  "@libp2p/interface-keychain": "^2.0.3",
149
149
  "@libp2p/interface-peer-id": "^2.0.1",
150
+ "@libp2p/interfaces": "^3.3.1",
150
151
  "@libp2p/logger": "^2.0.5",
151
152
  "@libp2p/peer-id": "^2.0.1",
152
- "err-code": "^3.0.1",
153
153
  "interface-datastore": "^7.0.3",
154
154
  "merge-options": "^3.0.4",
155
155
  "sanitize-filename": "^1.6.3",
package/src/index.ts CHANGED
@@ -4,7 +4,7 @@ import { logger } from '@libp2p/logger'
4
4
  import sanitize from 'sanitize-filename'
5
5
  import mergeOptions from 'merge-options'
6
6
  import { Key } from 'interface-datastore/key'
7
- import errCode from 'err-code'
7
+ import { CodeError } from '@libp2p/interfaces/errors'
8
8
  import { codes } from './errors.js'
9
9
  import { toString as uint8ArrayToString } from 'uint8arrays/to-string'
10
10
  import { fromString as uint8ArrayFromString } from 'uint8arrays/from-string'
@@ -169,26 +169,26 @@ export class DefaultKeyChain implements KeyChain {
169
169
  async createKey (name: string, type: KeyType, size = 2048): Promise<KeyInfo> {
170
170
  if (!validateKeyName(name) || name === 'self') {
171
171
  await randomDelay()
172
- throw errCode(new Error('Invalid key name'), codes.ERR_INVALID_KEY_NAME)
172
+ throw new CodeError('Invalid key name', codes.ERR_INVALID_KEY_NAME)
173
173
  }
174
174
 
175
175
  if (typeof type !== 'string') {
176
176
  await randomDelay()
177
- throw errCode(new Error('Invalid key type'), codes.ERR_INVALID_KEY_TYPE)
177
+ throw new CodeError('Invalid key type', codes.ERR_INVALID_KEY_TYPE)
178
178
  }
179
179
 
180
180
  const dsname = DsName(name)
181
181
  const exists = await this.components.datastore.has(dsname)
182
182
  if (exists) {
183
183
  await randomDelay()
184
- throw errCode(new Error('Key name already exists'), codes.ERR_KEY_ALREADY_EXISTS)
184
+ throw new CodeError('Key name already exists', codes.ERR_KEY_ALREADY_EXISTS)
185
185
  }
186
186
 
187
187
  switch (type.toLowerCase()) {
188
188
  case 'rsa':
189
189
  if (!Number.isSafeInteger(size) || size < 2048) {
190
190
  await randomDelay()
191
- throw errCode(new Error('Invalid RSA key size'), codes.ERR_INVALID_KEY_SIZE)
191
+ throw new CodeError('Invalid RSA key size', codes.ERR_INVALID_KEY_SIZE)
192
192
  }
193
193
  break
194
194
  default:
@@ -202,7 +202,7 @@ export class DefaultKeyChain implements KeyChain {
202
202
  const cached = privates.get(this)
203
203
 
204
204
  if (cached == null) {
205
- throw errCode(new Error('dek missing'), codes.ERR_INVALID_PARAMETERS)
205
+ throw new CodeError('dek missing', codes.ERR_INVALID_PARAMETERS)
206
206
  }
207
207
 
208
208
  const dek = cached.dek
@@ -251,7 +251,7 @@ export class DefaultKeyChain implements KeyChain {
251
251
  const key = keys.find((k) => k.id === id)
252
252
 
253
253
  if (key == null) {
254
- throw errCode(new Error(`Key with id '${id}' does not exist.`), codes.ERR_KEY_NOT_FOUND)
254
+ throw new CodeError(`Key with id '${id}' does not exist.`, codes.ERR_KEY_NOT_FOUND)
255
255
  }
256
256
 
257
257
  return key
@@ -270,7 +270,7 @@ export class DefaultKeyChain implements KeyChain {
270
270
  async findKeyByName (name: string): Promise<KeyInfo> {
271
271
  if (!validateKeyName(name)) {
272
272
  await randomDelay()
273
- throw errCode(new Error(`Invalid key name '${name}'`), codes.ERR_INVALID_KEY_NAME)
273
+ throw new CodeError(`Invalid key name '${name}'`, codes.ERR_INVALID_KEY_NAME)
274
274
  }
275
275
 
276
276
  const dsname = DsInfoName(name)
@@ -280,7 +280,7 @@ export class DefaultKeyChain implements KeyChain {
280
280
  } catch (err: any) {
281
281
  await randomDelay()
282
282
  log.error(err)
283
- throw errCode(new Error(`Key '${name}' does not exist.`), codes.ERR_KEY_NOT_FOUND)
283
+ throw new CodeError(`Key '${name}' does not exist.`, codes.ERR_KEY_NOT_FOUND)
284
284
  }
285
285
  }
286
286
 
@@ -293,7 +293,7 @@ export class DefaultKeyChain implements KeyChain {
293
293
  async removeKey (name: string): Promise<KeyInfo> {
294
294
  if (!validateKeyName(name) || name === 'self') {
295
295
  await randomDelay()
296
- throw errCode(new Error(`Invalid key name '${name}'`), codes.ERR_INVALID_KEY_NAME)
296
+ throw new CodeError(`Invalid key name '${name}'`, codes.ERR_INVALID_KEY_NAME)
297
297
  }
298
298
  const dsname = DsName(name)
299
299
  const keyInfo = await this.findKeyByName(name)
@@ -314,11 +314,11 @@ export class DefaultKeyChain implements KeyChain {
314
314
  async renameKey (oldName: string, newName: string): Promise<KeyInfo> {
315
315
  if (!validateKeyName(oldName) || oldName === 'self') {
316
316
  await randomDelay()
317
- throw errCode(new Error(`Invalid old key name '${oldName}'`), codes.ERR_OLD_KEY_NAME_INVALID)
317
+ throw new CodeError(`Invalid old key name '${oldName}'`, codes.ERR_OLD_KEY_NAME_INVALID)
318
318
  }
319
319
  if (!validateKeyName(newName) || newName === 'self') {
320
320
  await randomDelay()
321
- throw errCode(new Error(`Invalid new key name '${newName}'`), codes.ERR_NEW_KEY_NAME_INVALID)
321
+ throw new CodeError(`Invalid new key name '${newName}'`, codes.ERR_NEW_KEY_NAME_INVALID)
322
322
  }
323
323
  const oldDsname = DsName(oldName)
324
324
  const newDsname = DsName(newName)
@@ -328,7 +328,7 @@ export class DefaultKeyChain implements KeyChain {
328
328
  const exists = await this.components.datastore.has(newDsname)
329
329
  if (exists) {
330
330
  await randomDelay()
331
- throw errCode(new Error(`Key '${newName}' already exists`), codes.ERR_KEY_ALREADY_EXISTS)
331
+ throw new CodeError(`Key '${newName}' already exists`, codes.ERR_KEY_ALREADY_EXISTS)
332
332
  }
333
333
 
334
334
  try {
@@ -356,11 +356,11 @@ export class DefaultKeyChain implements KeyChain {
356
356
  async exportKey (name: string, password: string): Promise<string> {
357
357
  if (!validateKeyName(name)) {
358
358
  await randomDelay()
359
- throw errCode(new Error(`Invalid key name '${name}'`), codes.ERR_INVALID_KEY_NAME)
359
+ throw new CodeError(`Invalid key name '${name}'`, codes.ERR_INVALID_KEY_NAME)
360
360
  }
361
361
  if (password == null) {
362
362
  await randomDelay()
363
- throw errCode(new Error('Password is required'), codes.ERR_PASSWORD_REQUIRED)
363
+ throw new CodeError('Password is required', codes.ERR_PASSWORD_REQUIRED)
364
364
  }
365
365
 
366
366
  const dsname = DsName(name)
@@ -370,7 +370,7 @@ export class DefaultKeyChain implements KeyChain {
370
370
  const cached = privates.get(this)
371
371
 
372
372
  if (cached == null) {
373
- throw errCode(new Error('dek missing'), codes.ERR_INVALID_PARAMETERS)
373
+ throw new CodeError('dek missing', codes.ERR_INVALID_PARAMETERS)
374
374
  }
375
375
 
376
376
  const dek = cached.dek
@@ -404,17 +404,17 @@ export class DefaultKeyChain implements KeyChain {
404
404
  async importKey (name: string, pem: string, password: string): Promise<KeyInfo> {
405
405
  if (!validateKeyName(name) || name === 'self') {
406
406
  await randomDelay()
407
- throw errCode(new Error(`Invalid key name '${name}'`), codes.ERR_INVALID_KEY_NAME)
407
+ throw new CodeError(`Invalid key name '${name}'`, codes.ERR_INVALID_KEY_NAME)
408
408
  }
409
409
  if (pem == null) {
410
410
  await randomDelay()
411
- throw errCode(new Error('PEM encoded key is required'), codes.ERR_PEM_REQUIRED)
411
+ throw new CodeError('PEM encoded key is required', codes.ERR_PEM_REQUIRED)
412
412
  }
413
413
  const dsname = DsName(name)
414
414
  const exists = await this.components.datastore.has(dsname)
415
415
  if (exists) {
416
416
  await randomDelay()
417
- throw errCode(new Error(`Key '${name}' already exists`), codes.ERR_KEY_ALREADY_EXISTS)
417
+ throw new CodeError(`Key '${name}' already exists`, codes.ERR_KEY_ALREADY_EXISTS)
418
418
  }
419
419
 
420
420
  let privateKey
@@ -422,7 +422,7 @@ export class DefaultKeyChain implements KeyChain {
422
422
  privateKey = await importKey(pem, password)
423
423
  } catch (err: any) {
424
424
  await randomDelay()
425
- throw errCode(new Error('Cannot read the key, most likely the password is wrong'), codes.ERR_CANNOT_READ_KEY)
425
+ throw new CodeError('Cannot read the key, most likely the password is wrong', codes.ERR_CANNOT_READ_KEY)
426
426
  }
427
427
 
428
428
  let kid
@@ -431,7 +431,7 @@ export class DefaultKeyChain implements KeyChain {
431
431
  const cached = privates.get(this)
432
432
 
433
433
  if (cached == null) {
434
- throw errCode(new Error('dek missing'), codes.ERR_INVALID_PARAMETERS)
434
+ throw new CodeError('dek missing', codes.ERR_INVALID_PARAMETERS)
435
435
  }
436
436
 
437
437
  const dek = cached.dek
@@ -459,13 +459,13 @@ export class DefaultKeyChain implements KeyChain {
459
459
  async importPeer (name: string, peer: PeerId): Promise<KeyInfo> {
460
460
  try {
461
461
  if (!validateKeyName(name)) {
462
- throw errCode(new Error(`Invalid key name '${name}'`), codes.ERR_INVALID_KEY_NAME)
462
+ throw new CodeError(`Invalid key name '${name}'`, codes.ERR_INVALID_KEY_NAME)
463
463
  }
464
464
  if (peer == null) {
465
- throw errCode(new Error('PeerId is required'), codes.ERR_MISSING_PRIVATE_KEY)
465
+ throw new CodeError('PeerId is required', codes.ERR_MISSING_PRIVATE_KEY)
466
466
  }
467
467
  if (peer.privateKey == null) {
468
- throw errCode(new Error('PeerId.privKey is required'), codes.ERR_MISSING_PRIVATE_KEY)
468
+ throw new CodeError('PeerId.privKey is required', codes.ERR_MISSING_PRIVATE_KEY)
469
469
  }
470
470
 
471
471
  const privateKey = await unmarshalPrivateKey(peer.privateKey)
@@ -474,13 +474,13 @@ export class DefaultKeyChain implements KeyChain {
474
474
  const exists = await this.components.datastore.has(dsname)
475
475
  if (exists) {
476
476
  await randomDelay()
477
- throw errCode(new Error(`Key '${name}' already exists`), codes.ERR_KEY_ALREADY_EXISTS)
477
+ throw new CodeError(`Key '${name}' already exists`, codes.ERR_KEY_ALREADY_EXISTS)
478
478
  }
479
479
 
480
480
  const cached = privates.get(this)
481
481
 
482
482
  if (cached == null) {
483
- throw errCode(new Error('dek missing'), codes.ERR_INVALID_PARAMETERS)
483
+ throw new CodeError('dek missing', codes.ERR_INVALID_PARAMETERS)
484
484
  }
485
485
 
486
486
  const dek = cached.dek
@@ -506,7 +506,7 @@ export class DefaultKeyChain implements KeyChain {
506
506
  async getPrivateKey (name: string): Promise<string> {
507
507
  if (!validateKeyName(name)) {
508
508
  await randomDelay()
509
- throw errCode(new Error(`Invalid key name '${name}'`), codes.ERR_INVALID_KEY_NAME)
509
+ throw new CodeError(`Invalid key name '${name}'`, codes.ERR_INVALID_KEY_NAME)
510
510
  }
511
511
 
512
512
  try {
@@ -516,7 +516,7 @@ export class DefaultKeyChain implements KeyChain {
516
516
  } catch (err: any) {
517
517
  await randomDelay()
518
518
  log.error(err)
519
- throw errCode(new Error(`Key '${name}' does not exist.`), codes.ERR_KEY_NOT_FOUND)
519
+ throw new CodeError(`Key '${name}' does not exist.`, codes.ERR_KEY_NOT_FOUND)
520
520
  }
521
521
  }
522
522
 
@@ -526,21 +526,21 @@ export class DefaultKeyChain implements KeyChain {
526
526
  async rotateKeychainPass (oldPass: string, newPass: string): Promise<void> {
527
527
  if (typeof oldPass !== 'string') {
528
528
  await randomDelay()
529
- throw errCode(new Error(`Invalid old pass type '${typeof oldPass}'`), codes.ERR_INVALID_OLD_PASS_TYPE)
529
+ throw new CodeError(`Invalid old pass type '${typeof oldPass}'`, codes.ERR_INVALID_OLD_PASS_TYPE)
530
530
  }
531
531
  if (typeof newPass !== 'string') {
532
532
  await randomDelay()
533
- throw errCode(new Error(`Invalid new pass type '${typeof newPass}'`), codes.ERR_INVALID_NEW_PASS_TYPE)
533
+ throw new CodeError(`Invalid new pass type '${typeof newPass}'`, codes.ERR_INVALID_NEW_PASS_TYPE)
534
534
  }
535
535
  if (newPass.length < 20) {
536
536
  await randomDelay()
537
- throw errCode(new Error(`Invalid pass length ${newPass.length}`), codes.ERR_INVALID_PASS_LENGTH)
537
+ throw new CodeError(`Invalid pass length ${newPass.length}`, codes.ERR_INVALID_PASS_LENGTH)
538
538
  }
539
539
  log('recreating keychain')
540
540
  const cached = privates.get(this)
541
541
 
542
542
  if (cached == null) {
543
- throw errCode(new Error('dek missing'), codes.ERR_INVALID_PARAMETERS)
543
+ throw new CodeError('dek missing', codes.ERR_INVALID_PARAMETERS)
544
544
  }
545
545
 
546
546
  const oldDek = cached.dek