7
7
8
8
const {
9
9
DSAKeyExportJob,
10
- KeyObjectHandle,
11
10
SignJob,
12
11
kCryptoJobAsync,
13
12
kSigEncDER,
14
- kKeyTypePrivate,
15
13
kSignJobModeSign,
16
14
kSignJobModeVerify,
17
15
} = internalBinding ( 'crypto' ) ;
@@ -29,8 +27,6 @@ const {
29
27
30
28
const {
31
29
InternalCryptoKey,
32
- PrivateKeyObject,
33
- PublicKeyObject,
34
30
createPrivateKey,
35
31
createPublicKey,
36
32
isKeyObject,
@@ -45,7 +41,6 @@ const {
45
41
hasAnyNotIn,
46
42
jobPromise,
47
43
normalizeHashName,
48
- validateKeyOps,
49
44
kKeyObject,
50
45
kHandle,
51
46
} = require ( 'internal/crypto/util' ) ;
@@ -178,52 +173,6 @@ async function dsaImportKey(
178
173
} ) ;
179
174
break ;
180
175
}
181
- case 'jwk' : {
182
- if ( keyData == null || typeof keyData !== 'object' )
183
- throw lazyDOMException ( 'Invalid JWK keyData' , 'DataError' ) ;
184
-
185
- verifyAcceptableDsaKeyUse (
186
- algorithm . name ,
187
- keyData . x !== undefined ? 'private' : 'public' ,
188
- usagesSet ) ;
189
-
190
- if ( keyData . kty !== 'DSA' )
191
- throw lazyDOMException ( 'Invalid key type' , 'DataError' ) ;
192
-
193
- if ( usagesSet . size > 0 &&
194
- keyData . use !== undefined &&
195
- keyData . use !== 'sig' ) {
196
- throw lazyDOMException ( 'Invalid use type' , 'DataError' ) ;
197
- }
198
-
199
- validateKeyOps ( keyData . key_ops , usagesSet ) ;
200
-
201
- if ( keyData . ext !== undefined &&
202
- keyData . ext === false &&
203
- extractable === true ) {
204
- throw lazyDOMException ( 'JWK is not extractable' , 'DataError' ) ;
205
- }
206
-
207
- if ( keyData . alg !== undefined ) {
208
- if ( typeof keyData . alg !== 'string' )
209
- throw lazyDOMException ( 'Invalid alg' , 'DataError' ) ;
210
- const hash =
211
- normalizeHashName ( keyData . alg , normalizeHashName . kContextWebCrypto ) ;
212
- if ( hash !== algorithm . hash . name )
213
- throw lazyDOMException ( 'Hash mismatch' , 'DataError' ) ;
214
- }
215
-
216
- const handle = new KeyObjectHandle ( ) ;
217
- const type = handle . initJwk ( keyData ) ;
218
- if ( type === undefined )
219
- throw lazyDOMException ( 'Invalid JWK keyData' , 'DataError' ) ;
220
-
221
- keyObject = type === kKeyTypePrivate ?
222
- new PrivateKeyObject ( handle ) :
223
- new PublicKeyObject ( handle ) ;
224
-
225
- break ;
226
- }
227
176
default :
228
177
throw lazyDOMException (
229
178
`Unable to import DSA key with format ${ format } ` ,
0 commit comments