Skip to content

Commit 36eb362

Browse files
feat(mbe): use local encipherment only
feat(mbe): use local encipherment only
2 parents 2a0d9a8 + 7e49853 commit 36eb362

File tree

12 files changed

+20
-52
lines changed

12 files changed

+20
-52
lines changed

src/__tests__/api/advancedWalletManager/recoveryMpcV2.test.ts

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -86,12 +86,12 @@ describe('recoveryMpcV2', async () => {
8686
// nocks for KMS responses
8787
const userKmsNock = nock(kmsUrl)
8888
.get(`/key/${input.pub}`)
89-
.query({ source: 'user', useLocalEncipherment: false })
89+
.query({ source: 'user' })
9090
.reply(200, mockKmsUserResponse)
9191
.persist();
9292
const backupKmsNock = nock(kmsUrl)
9393
.get(`/key/${input.pub}`)
94-
.query({ source: 'backup', useLocalEncipherment: false })
94+
.query({ source: 'backup' })
9595
.reply(200, mockKmsBackupResponse)
9696
.persist();
9797

@@ -139,13 +139,10 @@ describe('recoveryMpcV2', async () => {
139139
};
140140

141141
// nocks for KMS responses
142+
nock(kmsUrl).get(`/key/${input.pub}`).query({ source: 'user' }).reply(200, mockKmsUserResponse);
142143
nock(kmsUrl)
143144
.get(`/key/${input.pub}`)
144-
.query({ source: 'user', useLocalEncipherment: false })
145-
.reply(200, mockKmsUserResponse);
146-
nock(kmsUrl)
147-
.get(`/key/${input.pub}`)
148-
.query({ source: 'backup', useLocalEncipherment: false })
145+
.query({ source: 'backup' })
149146
.reply(200, mockKmsBackupResponse);
150147

151148
const signatureResponse = await agent

src/__tests__/api/advancedWalletManager/recoveryMusigEth.test.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -78,12 +78,12 @@ describe('recoveryMultisigTransaction', () => {
7878

7979
const kmsNockUser = nock(kmsUrl)
8080
.get(`/key/${userPub}`)
81-
.query({ source: 'user', useLocalEncipherment: false })
81+
.query({ source: 'user' })
8282
.reply(200, mockKmsUserResponse);
8383

8484
const kmsNockBackup = nock(kmsUrl)
8585
.get(`/key/${backupPub}`)
86-
.query({ source: 'backup', useLocalEncipherment: false })
86+
.query({ source: 'backup' })
8787
.reply(200, mockKmsBackupResponse);
8888

8989
const response = await agent
@@ -129,12 +129,12 @@ describe('recoveryMultisigTransaction', () => {
129129

130130
const kmsNockUser = nock(kmsUrl)
131131
.get(`/key/${userPub}`)
132-
.query({ source: 'user', useLocalEncipherment: false })
132+
.query({ source: 'user' })
133133
.reply(200, mockKmsUserResponse);
134134

135135
const kmsNockBackup = nock(kmsUrl)
136136
.get(`/key/${backupPub}`)
137-
.query({ source: 'backup', useLocalEncipherment: false })
137+
.query({ source: 'backup' })
138138
.reply(200, mockKmsBackupResponse);
139139

140140
const response = await agent

src/__tests__/api/advancedWalletManager/signMpcRecoveryTransaction.test.ts

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,6 @@ describe('EdDSA Recovery Signing', () => {
100100
pub: commonKeychain,
101101
source: 'user',
102102
cfg: config,
103-
options: { useLocalEncipherment: false },
104103
})
105104
.resolves(JSON.stringify(userPrvShare));
106105

@@ -109,7 +108,6 @@ describe('EdDSA Recovery Signing', () => {
109108
pub: commonKeychain,
110109
source: 'backup',
111110
cfg: config,
112-
options: { useLocalEncipherment: false },
113111
})
114112
.resolves(JSON.stringify(backupPrvShare));
115113

@@ -136,7 +134,6 @@ describe('EdDSA Recovery Signing', () => {
136134
pub: commonKeychain,
137135
source: 'user',
138136
cfg: config,
139-
options: { useLocalEncipherment: false },
140137
})
141138
.should.be.true();
142139

@@ -145,7 +142,6 @@ describe('EdDSA Recovery Signing', () => {
145142
pub: commonKeychain,
146143
source: 'backup',
147144
cfg: config,
148-
options: { useLocalEncipherment: false },
149145
})
150146
.should.be.true();
151147
});
@@ -157,7 +153,6 @@ describe('EdDSA Recovery Signing', () => {
157153
pub: commonKeychain,
158154
source: 'user',
159155
cfg: config,
160-
options: { useLocalEncipherment: false },
161156
})
162157
.resolves(undefined);
163158

@@ -185,7 +180,6 @@ describe('EdDSA Recovery Signing', () => {
185180
pub: commonKeychain,
186181
source: 'user',
187182
cfg: config,
188-
options: { useLocalEncipherment: false },
189183
})
190184
.resolves(JSON.stringify(userPrvShare));
191185

@@ -194,7 +188,6 @@ describe('EdDSA Recovery Signing', () => {
194188
pub: commonKeychain,
195189
source: 'backup',
196190
cfg: config,
197-
options: { useLocalEncipherment: false },
198191
})
199192
.resolves(undefined);
200193

src/__tests__/api/advancedWalletManager/signMpcTransaction.test.ts

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ describe('signMpcTransaction', () => {
132132
// Mock KMS responses
133133
const kmsNock = nock(kmsUrl)
134134
.get(`/key/${input.pub}`)
135-
.query({ source: 'user', useLocalEncipherment: false })
135+
.query({ source: 'user' })
136136
.reply(200, mockKmsResponse);
137137

138138
const dataKeyNock = nock(kmsUrl).post('/generateDataKey').reply(200, mockDataKeyResponse);
@@ -170,7 +170,7 @@ describe('signMpcTransaction', () => {
170170
// Mock KMS responses for R share
171171
const rKmsNock = nock(kmsUrl)
172172
.get(`/key/${rInput.pub}`)
173-
.query({ source: 'user', useLocalEncipherment: false })
173+
.query({ source: 'user' })
174174
.reply(200, mockKmsResponse);
175175

176176
const decryptDataKeyNock = nock(kmsUrl)
@@ -232,7 +232,7 @@ describe('signMpcTransaction', () => {
232232
// Mock KMS response for G share
233233
const gKmsNock = nock(kmsUrl)
234234
.get(`/key/${gInput.pub}`)
235-
.query({ source: 'user', useLocalEncipherment: false })
235+
.query({ source: 'user' })
236236
.reply(200, mockKmsResponse);
237237

238238
const gResponse = await agent
@@ -260,7 +260,7 @@ describe('signMpcTransaction', () => {
260260

261261
const kmsNock = nock(kmsUrl)
262262
.get(`/key/${input.pub}`)
263-
.query({ source: 'user', useLocalEncipherment: false })
263+
.query({ source: 'user' })
264264
.reply(404, { error: 'Key not found' });
265265

266266
const response = await agent
@@ -372,7 +372,7 @@ describe('signMpcTransaction', () => {
372372
// Mock KMS responses for Round 1
373373
const kmsNock = nock(kmsUrl)
374374
.get(`/key/${round1Input.pub}`)
375-
.query({ source: 'user', useLocalEncipherment: true })
375+
.query({ source: 'user' })
376376
.reply(200, mockKmsResponse);
377377

378378
const dataKeyNock = nock(kmsUrl).post('/generateDataKey').reply(200, mockDataKeyResponse);
@@ -434,7 +434,7 @@ describe('signMpcTransaction', () => {
434434
// Mock KMS responses for Round 2
435435
const r2KmsNock = nock(kmsUrl)
436436
.get(`/key/${round2Input.pub}`)
437-
.query({ source: 'user', useLocalEncipherment: true })
437+
.query({ source: 'user' })
438438
.reply(200, mockKmsResponse);
439439

440440
const decryptDataKeyNock = nock(kmsUrl)
@@ -482,7 +482,7 @@ describe('signMpcTransaction', () => {
482482
// Mock KMS responses for Round 3
483483
const r3KmsNock = nock(kmsUrl)
484484
.get(`/key/${round3Input.pub}`)
485-
.query({ source: 'user', useLocalEncipherment: true })
485+
.query({ source: 'user' })
486486
.reply(200, mockKmsResponse);
487487

488488
const r3DecryptDataKeyNock = nock(kmsUrl)
@@ -564,7 +564,7 @@ describe('signMpcTransaction', () => {
564564

565565
const kmsNock = nock(kmsUrl)
566566
.get(`/key/${input.pub}`)
567-
.query({ source: 'user', useLocalEncipherment: true })
567+
.query({ source: 'user' })
568568
.reply(200, mockKmsResponse);
569569

570570
const response = await agent
@@ -599,7 +599,7 @@ describe('signMpcTransaction', () => {
599599

600600
const kmsNock = nock(kmsUrl)
601601
.get(`/key/${input.pub}`)
602-
.query({ source: 'user', useLocalEncipherment: true })
602+
.query({ source: 'user' })
603603
.reply(200, mockKmsResponse);
604604

605605
const response = await agent

src/__tests__/api/advancedWalletManager/signMultisigTransaction.test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ describe('signMultisigTransaction', () => {
104104

105105
const kmsNock = nock(kmsUrl)
106106
.get(`/key/${input.pub}`)
107-
.query({ source: 'user', useLocalEncipherment: false })
107+
.query({ source: 'user' })
108108
.reply(200, mockKmsResponse);
109109

110110
const response = await agent

src/api/advancedWalletManager/handlers/ecdsaMPCv2Finalize.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -65,9 +65,6 @@ export async function ecdsaMPCv2Finalize(
6565
pub: commonKeychain,
6666
prv: privateMaterial.toString('base64'),
6767
type: 'tss',
68-
options: {
69-
useLocalEncipherment: true,
70-
},
7168
});
7269

7370
return {

src/api/advancedWalletManager/handlers/signEddsaRecoveryTransaction.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -111,14 +111,12 @@ export async function signEddsaRecoveryTransaction({
111111
pub: request.commonKeychain.toString(),
112112
source: 'user',
113113
cfg,
114-
options: { useLocalEncipherment: false },
115114
});
116115

117116
const backupPrv = await retrieveKmsPrvKey({
118117
pub: request.commonKeychain.toString(),
119118
source: 'backup',
120119
cfg,
121-
options: { useLocalEncipherment: false },
122120
});
123121

124122
if (!userPrv || !backupPrv) {

src/api/advancedWalletManager/handlers/signMpcTransaction.ts

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -91,15 +91,9 @@ export async function signMpcTransaction(req: AwmApiSpecRouteRequest<'v1.mpc.sig
9191

9292
const bitgo = req.bitgo;
9393
const coinInstance = await coinFactory.getCoin(coin, bitgo);
94-
const options =
95-
coinInstance.getMPCAlgorithm() === 'ecdsa'
96-
? {
97-
useLocalEncipherment: true,
98-
}
99-
: undefined;
10094

10195
// Get private key from KMS
102-
const prv = await retrieveKmsPrvKey({ pub, source, cfg: req.config, options });
96+
const prv = await retrieveKmsPrvKey({ pub, source, cfg: req.config });
10397

10498
if (!prv) {
10599
const errorMsg = `Error while MPC signing, missing prv key for pub=${pub}, source=${source}`;

src/api/advancedWalletManager/utils.ts

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,20 +8,16 @@ export async function retrieveKmsPrvKey({
88
pub,
99
source,
1010
cfg,
11-
options,
1211
}: {
1312
pub: string;
1413
source: string;
1514
cfg: AdvancedWalletManagerConfig;
16-
options?: {
17-
useLocalEncipherment?: boolean;
18-
};
1915
}): Promise<string> {
2016
const kms = new KmsClient(cfg);
2117
// Retrieve the private key from KMS
2218
let prv: string;
2319
try {
24-
const res = await kms.getKey({ pub, source, options });
20+
const res = await kms.getKey({ pub, source });
2521
prv = res.prv;
2622
return prv;
2723
} catch (error: any) {

src/kms/kmsClient.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,6 @@ export class KmsClient {
108108
try {
109109
let req = superagent.get(`${this.url}/key/${params.pub}`).query({
110110
source: params.source,
111-
useLocalEncipherment: params.options?.useLocalEncipherment ?? false,
112111
});
113112
if (this.agent) req = req.agent(this.agent);
114113
kmsResponse = await req;

0 commit comments

Comments
 (0)