@@ -302,11 +302,11 @@ const privateDsa = fixtures.readKey('dsa_private_encrypted_1025.pem',
302302 } , hasOpenSSL3 ? {
303303 message : 'error:1E08010C:DECODER routines::unsupported' ,
304304 } : {
305- message : 'error:0909006C:PEM routines:get_name:no start line' ,
305+ message : / n o . s t a r t . l i n e / i ,
306306 code : 'ERR_OSSL_PEM_NO_START_LINE' ,
307- reason : 'no start line' ,
307+ reason : / n o . s t a r t . l i n e / i ,
308308 library : 'PEM routines' ,
309- function : ' get_name' ,
309+ function : / g e t _ n a m e | O P E N S S L _ i n t e r n a l / ,
310310 } ) ;
311311
312312 // This should not abort either: https://github.com/nodejs/node/issues/29904
@@ -329,53 +329,65 @@ const privateDsa = fixtures.readKey('dsa_private_encrypted_1025.pem',
329329 message : / e r r o r : 1 E 0 8 0 1 0 C : D E C O D E R r o u t i n e s : : u n s u p p o r t e d / ,
330330 library : 'DECODER routines'
331331 } : {
332- message : / a s n 1 e n c o d i n g / ,
333- library : ' asn1 encoding routines'
332+ message : / a s n 1 e n c o d i n g | p u b l i c k e y r o u t i n e s / ,
333+ library : / a s n 1 e n c o d i n g r o u t i n e s | p u b l i c k e y r o u t i n e s /
334334 } ) ;
335335}
336336
337- [
338- { private : fixtures . readKey ( 'ed25519_private.pem' , 'ascii' ) ,
337+ const infos = [
338+ {
339+ private : fixtures . readKey ( 'ed25519_private.pem' , 'ascii' ) ,
339340 public : fixtures . readKey ( 'ed25519_public.pem' , 'ascii' ) ,
340341 keyType : 'ed25519' ,
341342 jwk : {
342343 crv : 'Ed25519' ,
343344 x : 'K1wIouqnuiA04b3WrMa-xKIKIpfHetNZRv3h9fBf768' ,
344345 d : 'wVK6M3SMhQh3NK-7GRrSV-BVWQx1FO5pW8hhQeu_NdA' ,
345346 kty : 'OKP'
346- } } ,
347- { private : fixtures . readKey ( 'ed448_private.pem' , 'ascii' ) ,
348- public : fixtures . readKey ( 'ed448_public.pem' , 'ascii' ) ,
349- keyType : 'ed448' ,
350- jwk : {
351- crv : 'Ed448' ,
352- x : 'oX_ee5-jlcU53-BbGRsGIzly0V-SZtJ_oGXY0udf84q2hTW2RdstLktvwpkVJOoNb7o' +
353- 'Dgc2V5ZUA' ,
354- d : '060Ke71sN0GpIc01nnGgMDkp0sFNQ09woVo4AM1ffax1-mjnakK0-p-S7-Xf859QewX' +
355- 'jcR9mxppY' ,
356- kty : 'OKP'
357- } } ,
358- { private : fixtures . readKey ( 'x25519_private.pem' , 'ascii' ) ,
347+ }
348+ } ,
349+ {
350+ private : fixtures . readKey ( 'x25519_private.pem' , 'ascii' ) ,
359351 public : fixtures . readKey ( 'x25519_public.pem' , 'ascii' ) ,
360352 keyType : 'x25519' ,
361353 jwk : {
362354 crv : 'X25519' ,
363355 x : 'aSb8Q-RndwfNnPeOYGYPDUN3uhAPnMLzXyfi-mqfhig' ,
364356 d : 'mL_IWm55RrALUGRfJYzw40gEYWMvtRkesP9mj8o8Omc' ,
365357 kty : 'OKP'
366- } } ,
367- { private : fixtures . readKey ( 'x448_private.pem' , 'ascii' ) ,
358+ }
359+ } ,
360+ ]
361+
362+ if ( ! process . features . openssl_is_boringssl ) {
363+ infos . push ( {
364+ private : fixtures . readKey ( 'ed448_private.pem' , 'ascii' ) ,
365+ public : fixtures . readKey ( 'ed448_public.pem' , 'ascii' ) ,
366+ keyType : 'ed448' ,
367+ jwk : {
368+ crv : 'Ed448' ,
369+ x : 'oX_ee5-jlcU53-BbGRsGIzly0V-SZtJ_oGXY0udf84q2hTW2RdstLktvwpkVJOoNb7o' +
370+ 'Dgc2V5ZUA' ,
371+ d : '060Ke71sN0GpIc01nnGgMDkp0sFNQ09woVo4AM1ffax1-mjnakK0-p-S7-Xf859QewX' +
372+ 'jcR9mxppY' ,
373+ kty : 'OKP'
374+ }
375+ } , {
376+ private : fixtures . readKey ( 'x448_private.pem' , 'ascii' ) ,
368377 public : fixtures . readKey ( 'x448_public.pem' , 'ascii' ) ,
369378 keyType : 'x448' ,
370379 jwk : {
371380 crv : 'X448' ,
372381 x : 'ioHSHVpTs6hMvghosEJDIR7ceFiE3-Xccxati64oOVJ7NWjfozE7ae31PXIUFq6cVYg' +
373- 'vSKsDFPA' ,
382+ 'vSKsDFPA' ,
374383 d : 'tMNtrO_q8dlY6Y4NDeSTxNQ5CACkHiPvmukidPnNIuX_EkcryLEXt_7i6j6YZMKsrWy' +
375- 'S0jlSYJk' ,
384+ 'S0jlSYJk' ,
376385 kty : 'OKP'
377- } } ,
378- ] . forEach ( ( info ) => {
386+ }
387+ } ) ;
388+ }
389+
390+ infos . forEach ( ( info ) => {
379391 const keyType = info . keyType ;
380392
381393 {
@@ -417,8 +429,9 @@ const privateDsa = fixtures.readKey('dsa_private_encrypted_1025.pem',
417429 }
418430} ) ;
419431
420- [
421- { private : fixtures . readKey ( 'ec_p256_private.pem' , 'ascii' ) ,
432+ const ecInfos = [
433+ {
434+ private : fixtures . readKey ( 'ec_p256_private.pem' , 'ascii' ) ,
422435 public : fixtures . readKey ( 'ec_p256_public.pem' , 'ascii' ) ,
423436 keyType : 'ec' ,
424437 namedCurve : 'prime256v1' ,
@@ -428,19 +441,10 @@ const privateDsa = fixtures.readKey('dsa_private_encrypted_1025.pem',
428441 kty : 'EC' ,
429442 x : 'X0mMYR_uleZSIPjNztIkAS3_ud5LhNpbiIFp6fNf2Gs' ,
430443 y : 'UbJuPy2Xi0lW7UYTBxPK3yGgDu9EAKYIecjkHX5s2lI'
431- } } ,
432- { private : fixtures . readKey ( 'ec_secp256k1_private.pem' , 'ascii' ) ,
433- public : fixtures . readKey ( 'ec_secp256k1_public.pem' , 'ascii' ) ,
434- keyType : 'ec' ,
435- namedCurve : 'secp256k1' ,
436- jwk : {
437- crv : 'secp256k1' ,
438- d : 'c34ocwTwpFa9NZZh3l88qXyrkoYSxvC0FEsU5v1v4IM' ,
439- kty : 'EC' ,
440- x : 'cOzhFSpWxhalCbWNdP2H_yUkdC81C9T2deDpfxK7owA' ,
441- y : '-A3DAZTk9IPppN-f03JydgHaFvL1fAHaoXf4SX4NXyo'
442- } } ,
443- { private : fixtures . readKey ( 'ec_p384_private.pem' , 'ascii' ) ,
444+ }
445+ } ,
446+ {
447+ private : fixtures . readKey ( 'ec_p384_private.pem' , 'ascii' ) ,
444448 public : fixtures . readKey ( 'ec_p384_public.pem' , 'ascii' ) ,
445449 keyType : 'ec' ,
446450 namedCurve : 'secp384r1' ,
@@ -450,8 +454,10 @@ const privateDsa = fixtures.readKey('dsa_private_encrypted_1025.pem',
450454 kty : 'EC' ,
451455 x : 'hON3nzGJgv-08fdHpQxgRJFZzlK-GZDGa5f3KnvM31cvvjJmsj4UeOgIdy3rDAjV' ,
452456 y : 'fidHhtecNCGCfLqmrLjDena1NSzWzWH1u_oUdMKGo5XSabxzD7-8JZxjpc8sR9cl'
453- } } ,
454- { private : fixtures . readKey ( 'ec_p521_private.pem' , 'ascii' ) ,
457+ }
458+ } ,
459+ {
460+ private : fixtures . readKey ( 'ec_p521_private.pem' , 'ascii' ) ,
455461 public : fixtures . readKey ( 'ec_p521_public.pem' , 'ascii' ) ,
456462 keyType : 'ec' ,
457463 namedCurve : 'secp521r1' ,
@@ -464,8 +470,27 @@ const privateDsa = fixtures.readKey('dsa_private_encrypted_1025.pem',
464470 'CbhMeHRavUS6P10rsTtBn' ,
465471 y : 'Ad3flexBeAfXceNzRBH128kFbOWD6W41NjwKRqqIF26vmgW_8COldGKZjFkOSEASxPB' +
466472 'cvA2iFJRUyQ3whC00j0Np'
467- } } ,
468- ] . forEach ( ( info ) => {
473+ }
474+ } ,
475+ ]
476+
477+ if ( ! process . features . openssl_is_boringssl ) {
478+ ecInfos . push ( {
479+ private : fixtures . readKey ( 'ec_secp256k1_private.pem' , 'ascii' ) ,
480+ public : fixtures . readKey ( 'ec_secp256k1_public.pem' , 'ascii' ) ,
481+ keyType : 'ec' ,
482+ namedCurve : 'secp256k1' ,
483+ jwk : {
484+ crv : 'secp256k1' ,
485+ d : 'c34ocwTwpFa9NZZh3l88qXyrkoYSxvC0FEsU5v1v4IM' ,
486+ kty : 'EC' ,
487+ x : 'cOzhFSpWxhalCbWNdP2H_yUkdC81C9T2deDpfxK7owA' ,
488+ y : '-A3DAZTk9IPppN-f03JydgHaFvL1fAHaoXf4SX4NXyo'
489+ }
490+ } ) ;
491+ }
492+
493+ ecInfos . forEach ( ( info ) => {
469494 const { keyType, namedCurve } = info ;
470495
471496 {
@@ -540,7 +565,7 @@ const privateDsa = fixtures.readKey('dsa_private_encrypted_1025.pem',
540565 format : 'pem' ,
541566 passphrase : Buffer . alloc ( 1024 , 'a' )
542567 } ) , {
543- message : / b a d d e c r y p t /
568+ message : / b a d . d e c r y p t / i
544569 } ) ;
545570
546571 const publicKey = createPublicKey ( publicDsa ) ;
@@ -566,7 +591,7 @@ const privateDsa = fixtures.readKey('dsa_private_encrypted_1025.pem',
566591
567592{
568593 // Test RSA-PSS.
569- {
594+ if ( ! process . features . openssl_is_boringssl ) {
570595 // This key pair does not restrict the message digest algorithm or salt
571596 // length.
572597 const publicPem = fixtures . readKey ( 'rsa_pss_public_2048.pem' ) ;
@@ -625,6 +650,8 @@ const privateDsa = fixtures.readKey('dsa_private_encrypted_1025.pem',
625650 } , {
626651 code : 'ERR_CRYPTO_INCOMPATIBLE_KEY_OPTIONS'
627652 } ) ;
653+ } else {
654+ common . skip ( 'Skipping unsupported RSA-PSS key test' ) ;
628655 }
629656
630657 {
0 commit comments