@solana/keychain-vault 0.6.1 → 1.1.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.
@@ -2,7 +2,16 @@ import { beforeEach, describe, expect, it, vi } from 'vitest';
2
2
  import { VaultSigner } from '../vault-signer.js';
3
3
  vi.mock('@solana/keychain-core', async (importOriginal) => {
4
4
  const mod = await importOriginal();
5
- return { ...mod, assertSignatureValid: vi.fn() };
5
+ return {
6
+ ...mod,
7
+ assertSignatureValid: vi.fn(),
8
+ sanitizeRemoteErrorResponse: mod.sanitizeRemoteErrorResponse ??
9
+ ((text) => `${text
10
+ .replace(/[\u0000-\u0008\u000B\u000C\u000E-\u001F\u007F]/g, ' ')
11
+ .replace(/\s+/g, ' ')
12
+ .trim()
13
+ .slice(0, 256)} [truncated]`),
14
+ };
6
15
  });
7
16
  // Mock fetch globally
8
17
  global.fetch = vi.fn();
@@ -62,6 +71,37 @@ describe('VaultSigner', () => {
62
71
  });
63
72
  }).toThrow('Invalid Solana public key format');
64
73
  });
74
+ it('should throw error for invalid vaultAddr URL', () => {
75
+ expect(() => {
76
+ new VaultSigner({
77
+ ...mockConfig,
78
+ vaultAddr: 'not-a-url',
79
+ });
80
+ }).toThrow('vaultAddr is not a valid URL');
81
+ });
82
+ it('should throw error for non-HTTPS vaultAddr', () => {
83
+ expect(() => {
84
+ new VaultSigner({
85
+ ...mockConfig,
86
+ vaultAddr: 'http://vault.example.com',
87
+ });
88
+ }).toThrow('vaultAddr must use HTTPS');
89
+ });
90
+ it('should allow localhost http vaultAddr in test environment', () => {
91
+ const previousNodeEnv = process.env.NODE_ENV;
92
+ try {
93
+ process.env.NODE_ENV = 'test';
94
+ expect(() => {
95
+ new VaultSigner({
96
+ ...mockConfig,
97
+ vaultAddr: 'http://127.0.0.1:8200',
98
+ });
99
+ }).not.toThrow();
100
+ }
101
+ finally {
102
+ process.env.NODE_ENV = previousNodeEnv;
103
+ }
104
+ });
65
105
  it('should remove trailing slash from vaultAddr', () => {
66
106
  const signer = new VaultSigner({
67
107
  ...mockConfig,
@@ -233,6 +273,34 @@ describe('VaultSigner', () => {
233
273
  const [result] = await signer.signMessages([message]);
234
274
  expect(result).toHaveProperty(mockConfig.publicKey);
235
275
  });
276
+ it('should handle signature with higher vault version prefixes', async () => {
277
+ const mockResponses = [
278
+ { data: { signature: `vault:v2:${'a'.repeat(86)}` } },
279
+ { data: { signature: `vault:v3:${'a'.repeat(86)}` } },
280
+ ];
281
+ vi.mocked(fetch)
282
+ .mockResolvedValueOnce(new Response(JSON.stringify(mockResponses[0]), {
283
+ status: 200,
284
+ }))
285
+ .mockResolvedValueOnce(new Response(JSON.stringify(mockResponses[1]), {
286
+ status: 200,
287
+ }));
288
+ const signer = new VaultSigner(mockConfig);
289
+ const messages = [
290
+ {
291
+ content: new Uint8Array([1, 2, 3, 4]),
292
+ signatures: {},
293
+ },
294
+ {
295
+ content: new Uint8Array([5, 6, 7, 8]),
296
+ signatures: {},
297
+ },
298
+ ];
299
+ const results = await signer.signMessages(messages);
300
+ expect(results).toHaveLength(2);
301
+ expect(results[0]).toHaveProperty(mockConfig.publicKey);
302
+ expect(results[1]).toHaveProperty(mockConfig.publicKey);
303
+ });
236
304
  it('should apply request delay for multiple messages', async () => {
237
305
  const mockSignature = 'vault:v1:' + 'a'.repeat(86);
238
306
  const mockResponse = {
@@ -1 +1 @@
1
- {"version":3,"file":"vault-signer.test.js","sourceRoot":"","sources":["../../src/__tests__/vault-signer.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vault-signer.test.js","sourceRoot":"","sources":["../../src/__tests__/vault-signer.test.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,11 @@ import { Address } from '@solana/addresses';
2
2
  import { SolanaSigner } from '@solana/keychain-core';
3
3
  import { SignableMessage, SignatureDictionary } from '@solana/signers';
4
4
  import { Transaction, TransactionWithinSizeLimit, TransactionWithLifetime } from '@solana/transactions';
5
+ /**
6
+ * Create a Vault-backed signer.
7
+ *
8
+ * @throws {SignerError} `SIGNER_CONFIG_ERROR` when required config is missing or invalid.
9
+ */
5
10
  export declare function createVaultSigner<TAddress extends string = string>(config: VaultSignerConfig): SolanaSigner<TAddress>;
6
11
  /**
7
12
  * Configuration for creating a VaultSigner
@@ -46,7 +51,7 @@ export declare class VaultSigner<TAddress extends string = string> implements So
46
51
  private delay;
47
52
  /**
48
53
  * Extract the base64 signature from Vault's response format
49
- * Vault returns signatures in format: "vault:v1:base64_signature"
54
+ * Vault returns signatures in format: "vault:vN:base64_signature"
50
55
  */
51
56
  private extractSignatureFromVaultFormat;
52
57
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"vault-signer.d.ts","sourceRoot":"","sources":["../src/vault-signer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAmB,MAAM,mBAAmB,CAAC;AAE7D,OAAO,EAIH,YAAY,EAEf,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,WAAW,EAAE,0BAA0B,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAUxG,wBAAgB,iBAAiB,CAAC,QAAQ,SAAS,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE,iBAAiB,GAAG,YAAY,CAAC,QAAQ,CAAC,CAErH;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAC9B,uCAAuC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,gEAAgE;IAChE,SAAS,EAAE,MAAM,CAAC;IAClB,iGAAiG;IACjG,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,6DAA6D;IAC7D,SAAS,EAAE,MAAM,CAAC;IAClB,iCAAiC;IACjC,UAAU,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;GAOG;AACH,qBAAa,WAAW,CAAC,QAAQ,SAAS,MAAM,GAAG,MAAM,CAAE,YAAW,YAAY,CAAC,QAAQ,CAAC;IACxF,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IACpC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IAExC,qDAAqD;IACrD,MAAM,CAAC,MAAM,CAAC,QAAQ,SAAS,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE,iBAAiB,GAAG,WAAW,CAAC,QAAQ,CAAC;IAIjG,8GAA8G;gBAClG,MAAM,EAAE,iBAAiB;IA8BrC;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAa9B;;OAEG;YACW,KAAK;IAMnB;;;OAGG;IACH,OAAO,CAAC,+BAA+B;IAiBvC;;OAEG;YACW,aAAa;IA6D3B;;OAEG;YACW,gBAAgB;IAQ9B;;OAEG;IACG,YAAY,CAAC,QAAQ,EAAE,SAAS,eAAe,EAAE,GAAG,OAAO,CAAC,SAAS,mBAAmB,EAAE,CAAC;IAkBjG;;OAEG;IACG,gBAAgB,CAClB,YAAY,EAAE,SAAS,CAAC,WAAW,GAAG,0BAA0B,GAAG,uBAAuB,CAAC,EAAE,GAC9F,OAAO,CAAC,SAAS,mBAAmB,EAAE,CAAC;IAmB1C;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;CAqBxC"}
1
+ {"version":3,"file":"vault-signer.d.ts","sourceRoot":"","sources":["../src/vault-signer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAmB,MAAM,mBAAmB,CAAC;AAE7D,OAAO,EAKH,YAAY,EAEf,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,WAAW,EAAE,0BAA0B,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAUxG;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,SAAS,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE,iBAAiB,GAAG,YAAY,CAAC,QAAQ,CAAC,CAErH;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAC9B,uCAAuC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,gEAAgE;IAChE,SAAS,EAAE,MAAM,CAAC;IAClB,iGAAiG;IACjG,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,6DAA6D;IAC7D,SAAS,EAAE,MAAM,CAAC;IAClB,iCAAiC;IACjC,UAAU,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;GAOG;AACH,qBAAa,WAAW,CAAC,QAAQ,SAAS,MAAM,GAAG,MAAM,CAAE,YAAW,YAAY,CAAC,QAAQ,CAAC;IACxF,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IACpC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IAExC,qDAAqD;IACrD,MAAM,CAAC,MAAM,CAAC,QAAQ,SAAS,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE,iBAAiB,GAAG,WAAW,CAAC,QAAQ,CAAC;IAIjG,8GAA8G;gBAClG,MAAM,EAAE,iBAAiB;IAiCrC;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAa9B;;OAEG;YACW,KAAK;IAMnB;;;OAGG;IACH,OAAO,CAAC,+BAA+B;IAevC;;OAEG;YACW,aAAa;IA6D3B;;OAEG;YACW,gBAAgB;IAQ9B;;OAEG;IACG,YAAY,CAAC,QAAQ,EAAE,SAAS,eAAe,EAAE,GAAG,OAAO,CAAC,SAAS,mBAAmB,EAAE,CAAC;IAkBjG;;OAEG;IACG,gBAAgB,CAClB,YAAY,EAAE,SAAS,CAAC,WAAW,GAAG,0BAA0B,GAAG,uBAAuB,CAAC,EAAE,GAC9F,OAAO,CAAC,SAAS,mBAAmB,EAAE,CAAC;IAmB1C;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;CAqBxC"}
@@ -1,6 +1,11 @@
1
1
  import { assertIsAddress } from '@solana/addresses';
2
2
  import { getBase64Decoder, getBase64Encoder } from '@solana/codecs-strings';
3
- import { assertSignatureValid, createSignatureDictionary, SignerErrorCode, throwSignerError, } from '@solana/keychain-core';
3
+ import { assertSignatureValid, createSignatureDictionary, sanitizeRemoteErrorResponse, SignerErrorCode, throwSignerError, } from '@solana/keychain-core';
4
+ /**
5
+ * Create a Vault-backed signer.
6
+ *
7
+ * @throws {SignerError} `SIGNER_CONFIG_ERROR` when required config is missing or invalid.
8
+ */
4
9
  export function createVaultSigner(config) {
5
10
  return VaultSigner.create(config);
6
11
  }
@@ -39,7 +44,9 @@ export class VaultSigner {
39
44
  message: 'Invalid Solana public key format',
40
45
  });
41
46
  }
42
- this.vaultAddr = config.vaultAddr.replace(/\/$/, ''); // Remove trailing slash
47
+ const vaultAddr = config.vaultAddr.replace(/\/$/, ''); // Remove trailing slash
48
+ validateHttpsVaultAddr(vaultAddr);
49
+ this.vaultAddr = vaultAddr;
43
50
  this.vaultToken = config.vaultToken;
44
51
  this.keyName = config.keyName;
45
52
  this.requestDelayMs = config.requestDelayMs || 0;
@@ -68,13 +75,11 @@ export class VaultSigner {
68
75
  }
69
76
  /**
70
77
  * Extract the base64 signature from Vault's response format
71
- * Vault returns signatures in format: "vault:v1:base64_signature"
78
+ * Vault returns signatures in format: "vault:vN:base64_signature"
72
79
  */
73
80
  extractSignatureFromVaultFormat(vaultSignature) {
74
- // Remove the version prefix if present, otherwise use the signature as-is
75
- const base64Signature = vaultSignature.startsWith('vault:v1:')
76
- ? vaultSignature.slice('vault:v1:'.length)
77
- : vaultSignature;
81
+ // Remove any Vault version prefix (vault:v1:, vault:v2:, ...)
82
+ const base64Signature = vaultSignature.replace(/^vault:v\d+:/, '');
78
83
  if (!base64Signature) {
79
84
  throwSignerError(SignerErrorCode.PARSING_ERROR, {
80
85
  message: `Empty signature in Vault response`,
@@ -115,7 +120,7 @@ export class VaultSigner {
115
120
  try {
116
121
  const errorData = (await response.json());
117
122
  if (errorData.errors && errorData.errors.length > 0) {
118
- errorMessage = `Vault API error: ${errorData.errors.join(', ')}`;
123
+ errorMessage = `Vault API error: ${sanitizeRemoteErrorResponse(errorData.errors.join(', '))}`;
119
124
  }
120
125
  }
121
126
  catch {
@@ -213,4 +218,22 @@ export class VaultSigner {
213
218
  }
214
219
  }
215
220
  }
221
+ function validateHttpsVaultAddr(vaultAddr) {
222
+ let parsedUrl;
223
+ try {
224
+ parsedUrl = new URL(vaultAddr);
225
+ }
226
+ catch {
227
+ throwSignerError(SignerErrorCode.CONFIG_ERROR, {
228
+ message: 'vaultAddr is not a valid URL',
229
+ });
230
+ }
231
+ const isLocalhost = parsedUrl.hostname === 'localhost' || parsedUrl.hostname === '127.0.0.1' || parsedUrl.hostname === '::1';
232
+ const allowHttpInTests = process.env.NODE_ENV === 'test' && isLocalhost;
233
+ if (parsedUrl.protocol !== 'https:' && !allowHttpInTests) {
234
+ throwSignerError(SignerErrorCode.CONFIG_ERROR, {
235
+ message: 'vaultAddr must use HTTPS',
236
+ });
237
+ }
238
+ }
216
239
  //# sourceMappingURL=vault-signer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"vault-signer.js","sourceRoot":"","sources":["../src/vault-signer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC5E,OAAO,EACH,oBAAoB,EACpB,yBAAyB,EACzB,eAAe,EAEf,gBAAgB,GACnB,MAAM,uBAAuB,CAAC;AAa/B,MAAM,UAAU,iBAAiB,CAAmC,MAAyB;IACzF,OAAO,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AACtC,CAAC;AAkBD;;;;;;;GAOG;AACH,MAAM,OAAO,WAAW;IAOpB,qDAAqD;IACrD,MAAM,CAAC,MAAM,CAAmC,MAAyB;QACrE,OAAO,IAAI,WAAW,CAAW,MAAM,CAAC,CAAC;IAC7C,CAAC;IAED,8GAA8G;IAC9G,YAAY,MAAyB;QACjC,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YAC7D,gBAAgB,CAAC,eAAe,CAAC,YAAY,EAAE;gBAC3C,OAAO,EAAE,2EAA2E;aACvF,CAAC,CAAC;QACP,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YACpB,gBAAgB,CAAC,eAAe,CAAC,YAAY,EAAE;gBAC3C,OAAO,EAAE,kCAAkC;aAC9C,CAAC,CAAC;QACP,CAAC;QAED,IAAI,CAAC;YACD,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAClC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,SAA8B,CAAC;QACzD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,gBAAgB,CAAC,eAAe,CAAC,YAAY,EAAE;gBAC3C,KAAK,EAAE,KAAK;gBACZ,OAAO,EAAE,kCAAkC;aAC9C,CAAC,CAAC;QACP,CAAC;QAED,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,wBAAwB;QAC9E,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QACpC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,IAAI,CAAC,CAAC;QACjD,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACrD,CAAC;IAED;;OAEG;IACK,sBAAsB,CAAC,cAAsB;QACjD,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;YACrB,gBAAgB,CAAC,eAAe,CAAC,YAAY,EAAE;gBAC3C,OAAO,EAAE,qCAAqC;aACjD,CAAC,CAAC;QACP,CAAC;QACD,IAAI,cAAc,GAAG,IAAI,EAAE,CAAC;YACxB,OAAO,CAAC,IAAI,CACR,yHAAyH,CAC5H,CAAC;QACN,CAAC;IACL,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,KAAK,CAAC,KAAa;QAC7B,IAAI,IAAI,CAAC,cAAc,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;QACnF,CAAC;IACL,CAAC;IAED;;;OAGG;IACK,+BAA+B,CAAC,cAAsB;QAC1D,0EAA0E;QAC1E,MAAM,eAAe,GAAG,cAAc,CAAC,UAAU,CAAC,WAAW,CAAC;YAC1D,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC;YAC1C,CAAC,CAAC,cAAc,CAAC;QAErB,IAAI,CAAC,eAAe,EAAE,CAAC;YACnB,gBAAgB,CAAC,eAAe,CAAC,aAAa,EAAE;gBAC5C,OAAO,EAAE,mCAAmC;aAC/C,CAAC,CAAC;QACP,CAAC;QAED,sDAAsD;QACtD,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAC;QACnC,OAAO,OAAO,CAAC,MAAM,CAAC,eAAe,CAAmB,CAAC;IAC7D,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,aAAa,CAAC,UAAkB;QAC1C,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,SAAS,oBAAoB,IAAI,CAAC,OAAO,EAAE,CAAC;QAEhE,MAAM,OAAO,GAAqB;YAC9B,KAAK,EAAE,UAAgC;SAC1C,CAAC;QAEF,IAAI,QAAkB,CAAC;QACvB,IAAI,CAAC;YACD,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBACxB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBAC7B,OAAO,EAAE;oBACL,cAAc,EAAE,kBAAkB;oBAClC,eAAe,EAAE,IAAI,CAAC,UAAU;iBACnC;gBACD,MAAM,EAAE,MAAM;aACjB,CAAC,CAAC;QACP,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,gBAAgB,CAAC,eAAe,CAAC,UAAU,EAAE;gBAChD,KAAK,EAAE,KAAK;gBACZ,OAAO,EAAE,8BAA8B;gBACvC,GAAG;aACN,CAAC,CAAC;QACP,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACf,IAAI,YAAY,GAAG,oBAAoB,QAAQ,CAAC,MAAM,EAAE,CAAC;YACzD,IAAI,CAAC;gBACD,MAAM,SAAS,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAuB,CAAC;gBAChE,IAAI,SAAS,CAAC,MAAM,IAAI,SAAS,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAClD,YAAY,GAAG,oBAAoB,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrE,CAAC;YACL,CAAC;YAAC,MAAM,CAAC;gBACL,gDAAgD;YACpD,CAAC;YAED,OAAO,gBAAgB,CAAC,eAAe,CAAC,gBAAgB,EAAE;gBACtD,OAAO,EAAE,YAAY;gBACrB,MAAM,EAAE,QAAQ,CAAC,MAAM;aAC1B,CAAC,CAAC;QACP,CAAC;QAED,IAAI,YAA+B,CAAC;QACpC,IAAI,CAAC;YACD,YAAY,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAsB,CAAC;QAChE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,gBAAgB,CAAC,eAAe,CAAC,aAAa,EAAE;gBACnD,KAAK,EAAE,KAAK;gBACZ,OAAO,EAAE,wCAAwC;aACpD,CAAC,CAAC;QACP,CAAC;QAED,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC;YAChC,OAAO,gBAAgB,CAAC,eAAe,CAAC,gBAAgB,EAAE;gBACtD,OAAO,EAAE,qCAAqC;aACjD,CAAC,CAAC;QACP,CAAC;QAED,OAAO,IAAI,CAAC,+BAA+B,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC7E,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,gBAAgB,CAAC,YAA+B;QAC1D,kDAAkD;QAClD,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAC;QACnC,MAAM,KAAK,GAAG,YAAY,YAAY,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;QAC3G,MAAM,oBAAoB,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACnD,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC;IAC1D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,QAAoC;QACnD,OAAO,MAAM,OAAO,CAAC,GAAG,CACpB,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;YAClC,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACxB,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACpE,MAAM,oBAAoB,CAAC;gBACvB,IAAI,EAAE,OAAO,CAAC,OAAO;gBACrB,SAAS,EAAE,cAAc;gBACzB,aAAa,EAAE,IAAI,CAAC,OAAO;aAC9B,CAAC,CAAC;YACH,OAAO,yBAAyB,CAAC;gBAC7B,SAAS,EAAE,cAAc;gBACzB,aAAa,EAAE,IAAI,CAAC,OAAO;aAC9B,CAAC,CAAC;QACP,CAAC,CAAC,CACL,CAAC;IACN,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB,CAClB,YAA6F;QAE7F,OAAO,MAAM,OAAO,CAAC,GAAG,CACpB,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE;YAC1C,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACxB,qCAAqC;YACrC,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;YAC7E,MAAM,oBAAoB,CAAC;gBACvB,IAAI,EAAE,WAAW,CAAC,YAAY;gBAC9B,SAAS,EAAE,cAAc;gBACzB,aAAa,EAAE,IAAI,CAAC,OAAO;aAC9B,CAAC,CAAC;YACH,OAAO,yBAAyB,CAAC;gBAC7B,SAAS,EAAE,cAAc;gBACzB,aAAa,EAAE,IAAI,CAAC,OAAO;aAC9B,CAAC,CAAC;QACP,CAAC,CAAC,CACL,CAAC;IACN,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW;QACb,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,SAAS,oBAAoB,IAAI,CAAC,OAAO,EAAE,CAAC;QAEhE,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAC9B,OAAO,EAAE;oBACL,eAAe,EAAE,IAAI,CAAC,UAAU;iBACnC;gBACD,MAAM,EAAE,KAAK;aAChB,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACf,OAAO,KAAK,CAAC;YACjB,CAAC;YAED,MAAM,OAAO,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAyB,CAAC;YAChE,OAAO,OAAO,CAAC,IAAI,EAAE,gBAAgB,KAAK,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,IAAI,KAAK,SAAS,CAAC;QACvF,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;CACJ"}
1
+ {"version":3,"file":"vault-signer.js","sourceRoot":"","sources":["../src/vault-signer.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@solana/keychain-vault",
3
3
  "author": "Solana Foundation",
4
- "version": "0.6.1",
4
+ "version": "1.1.0",
5
5
  "description": "HashiCorp Vault signer for Solana transactions",
6
6
  "license": "MIT",
7
7
  "repository": "https://github.com/solana-foundation/solana-keychain",
@@ -27,7 +27,7 @@
27
27
  "src"
28
28
  ],
29
29
  "dependencies": {
30
- "@solana/keychain-core": "0.6.1"
30
+ "@solana/keychain-core": "1.1.0"
31
31
  },
32
32
  "peerDependencies": {
33
33
  "@solana/addresses": ">=6.0.1",
@@ -49,7 +49,7 @@
49
49
  "@solana/signers": "^6.0.1",
50
50
  "@solana/transactions": "^6.0.1",
51
51
  "dotenv": "^17.2.3",
52
- "@solana/keychain-test-utils": "0.6.1"
52
+ "@solana/keychain-test-utils": "1.1.0"
53
53
  },
54
54
  "scripts": {
55
55
  "build": "tsc --build",
@@ -4,7 +4,18 @@ import { VaultSigner } from '../vault-signer.js';
4
4
 
5
5
  vi.mock('@solana/keychain-core', async importOriginal => {
6
6
  const mod = await importOriginal<typeof import('@solana/keychain-core')>();
7
- return { ...mod, assertSignatureValid: vi.fn() };
7
+ return {
8
+ ...mod,
9
+ assertSignatureValid: vi.fn(),
10
+ sanitizeRemoteErrorResponse:
11
+ mod.sanitizeRemoteErrorResponse ??
12
+ ((text: string) =>
13
+ `${text
14
+ .replace(/[\u0000-\u0008\u000B\u000C\u000E-\u001F\u007F]/g, ' ')
15
+ .replace(/\s+/g, ' ')
16
+ .trim()
17
+ .slice(0, 256)} [truncated]`),
18
+ };
8
19
  });
9
20
 
10
21
  // Mock fetch globally
@@ -77,6 +88,40 @@ describe('VaultSigner', () => {
77
88
  }).toThrow('Invalid Solana public key format');
78
89
  });
79
90
 
91
+ it('should throw error for invalid vaultAddr URL', () => {
92
+ expect(() => {
93
+ new VaultSigner({
94
+ ...mockConfig,
95
+ vaultAddr: 'not-a-url',
96
+ });
97
+ }).toThrow('vaultAddr is not a valid URL');
98
+ });
99
+
100
+ it('should throw error for non-HTTPS vaultAddr', () => {
101
+ expect(() => {
102
+ new VaultSigner({
103
+ ...mockConfig,
104
+ vaultAddr: 'http://vault.example.com',
105
+ });
106
+ }).toThrow('vaultAddr must use HTTPS');
107
+ });
108
+
109
+ it('should allow localhost http vaultAddr in test environment', () => {
110
+ const previousNodeEnv = process.env.NODE_ENV;
111
+ try {
112
+ process.env.NODE_ENV = 'test';
113
+
114
+ expect(() => {
115
+ new VaultSigner({
116
+ ...mockConfig,
117
+ vaultAddr: 'http://127.0.0.1:8200',
118
+ });
119
+ }).not.toThrow();
120
+ } finally {
121
+ process.env.NODE_ENV = previousNodeEnv;
122
+ }
123
+ });
124
+
80
125
  it('should remove trailing slash from vaultAddr', () => {
81
126
  const signer = new VaultSigner({
82
127
  ...mockConfig,
@@ -311,6 +356,42 @@ describe('VaultSigner', () => {
311
356
  expect(result).toHaveProperty(mockConfig.publicKey);
312
357
  });
313
358
 
359
+ it('should handle signature with higher vault version prefixes', async () => {
360
+ const mockResponses = [
361
+ { data: { signature: `vault:v2:${'a'.repeat(86)}` } },
362
+ { data: { signature: `vault:v3:${'a'.repeat(86)}` } },
363
+ ];
364
+
365
+ vi.mocked(fetch)
366
+ .mockResolvedValueOnce(
367
+ new Response(JSON.stringify(mockResponses[0]), {
368
+ status: 200,
369
+ }),
370
+ )
371
+ .mockResolvedValueOnce(
372
+ new Response(JSON.stringify(mockResponses[1]), {
373
+ status: 200,
374
+ }),
375
+ );
376
+
377
+ const signer = new VaultSigner(mockConfig);
378
+ const messages = [
379
+ {
380
+ content: new Uint8Array([1, 2, 3, 4]),
381
+ signatures: {},
382
+ },
383
+ {
384
+ content: new Uint8Array([5, 6, 7, 8]),
385
+ signatures: {},
386
+ },
387
+ ];
388
+
389
+ const results = await signer.signMessages(messages);
390
+ expect(results).toHaveLength(2);
391
+ expect(results[0]).toHaveProperty(mockConfig.publicKey);
392
+ expect(results[1]).toHaveProperty(mockConfig.publicKey);
393
+ });
394
+
314
395
  it('should apply request delay for multiple messages', async () => {
315
396
  const mockSignature = 'vault:v1:' + 'a'.repeat(86);
316
397
  const mockResponse = {
@@ -3,6 +3,7 @@ import { getBase64Decoder, getBase64Encoder } from '@solana/codecs-strings';
3
3
  import {
4
4
  assertSignatureValid,
5
5
  createSignatureDictionary,
6
+ sanitizeRemoteErrorResponse,
6
7
  SignerErrorCode,
7
8
  SolanaSigner,
8
9
  throwSignerError,
@@ -19,6 +20,11 @@ import type {
19
20
  VaultSignResponse,
20
21
  } from './types.js';
21
22
 
23
+ /**
24
+ * Create a Vault-backed signer.
25
+ *
26
+ * @throws {SignerError} `SIGNER_CONFIG_ERROR` when required config is missing or invalid.
27
+ */
22
28
  export function createVaultSigner<TAddress extends string = string>(config: VaultSignerConfig): SolanaSigner<TAddress> {
23
29
  return VaultSigner.create(config);
24
30
  }
@@ -83,7 +89,10 @@ export class VaultSigner<TAddress extends string = string> implements SolanaSign
83
89
  });
84
90
  }
85
91
 
86
- this.vaultAddr = config.vaultAddr.replace(/\/$/, ''); // Remove trailing slash
92
+ const vaultAddr = config.vaultAddr.replace(/\/$/, ''); // Remove trailing slash
93
+ validateHttpsVaultAddr(vaultAddr);
94
+
95
+ this.vaultAddr = vaultAddr;
87
96
  this.vaultToken = config.vaultToken;
88
97
  this.keyName = config.keyName;
89
98
  this.requestDelayMs = config.requestDelayMs || 0;
@@ -117,13 +126,11 @@ export class VaultSigner<TAddress extends string = string> implements SolanaSign
117
126
 
118
127
  /**
119
128
  * Extract the base64 signature from Vault's response format
120
- * Vault returns signatures in format: "vault:v1:base64_signature"
129
+ * Vault returns signatures in format: "vault:vN:base64_signature"
121
130
  */
122
131
  private extractSignatureFromVaultFormat(vaultSignature: string): SignatureBytes {
123
- // Remove the version prefix if present, otherwise use the signature as-is
124
- const base64Signature = vaultSignature.startsWith('vault:v1:')
125
- ? vaultSignature.slice('vault:v1:'.length)
126
- : vaultSignature;
132
+ // Remove any Vault version prefix (vault:v1:, vault:v2:, ...)
133
+ const base64Signature = vaultSignature.replace(/^vault:v\d+:/, '');
127
134
 
128
135
  if (!base64Signature) {
129
136
  throwSignerError(SignerErrorCode.PARSING_ERROR, {
@@ -169,7 +176,7 @@ export class VaultSigner<TAddress extends string = string> implements SolanaSign
169
176
  try {
170
177
  const errorData = (await response.json()) as VaultErrorResponse;
171
178
  if (errorData.errors && errorData.errors.length > 0) {
172
- errorMessage = `Vault API error: ${errorData.errors.join(', ')}`;
179
+ errorMessage = `Vault API error: ${sanitizeRemoteErrorResponse(errorData.errors.join(', '))}`;
173
180
  }
174
181
  } catch {
175
182
  // Ignore JSON parsing errors for error response
@@ -281,3 +288,24 @@ export class VaultSigner<TAddress extends string = string> implements SolanaSign
281
288
  }
282
289
  }
283
290
  }
291
+
292
+ function validateHttpsVaultAddr(vaultAddr: string): void {
293
+ let parsedUrl: URL;
294
+ try {
295
+ parsedUrl = new URL(vaultAddr);
296
+ } catch {
297
+ throwSignerError(SignerErrorCode.CONFIG_ERROR, {
298
+ message: 'vaultAddr is not a valid URL',
299
+ });
300
+ }
301
+
302
+ const isLocalhost =
303
+ parsedUrl.hostname === 'localhost' || parsedUrl.hostname === '127.0.0.1' || parsedUrl.hostname === '::1';
304
+ const allowHttpInTests = process.env.NODE_ENV === 'test' && isLocalhost;
305
+
306
+ if (parsedUrl.protocol !== 'https:' && !allowHttpInTests) {
307
+ throwSignerError(SignerErrorCode.CONFIG_ERROR, {
308
+ message: 'vaultAddr must use HTTPS',
309
+ });
310
+ }
311
+ }