test: move rsa keypairs to fixtures/keys/
Also adds make'd signatures for use in tests of signing/verification. All of the moved keys can be regenerated at will without breaking tests now. PR-URL: https://github.com/nodejs/node/pull/27962 Reviewed-By: Sam Roberts <vieuxtech@gmail.com> Reviewed-By: Ujjwal Sharma <usharma1998@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
This commit is contained in:
parent
e15a09d9dc
commit
a596f8371e
BIN
test/fixtures/keys/I_AM_THE_WALRUS_sha256_signature_signedby_rsa_private_b.sha256
vendored
Normal file
BIN
test/fixtures/keys/I_AM_THE_WALRUS_sha256_signature_signedby_rsa_private_b.sha256
vendored
Normal file
Binary file not shown.
40
test/fixtures/keys/Makefile
vendored
40
test/fixtures/keys/Makefile
vendored
@ -31,6 +31,16 @@ all: \
|
|||||||
ec-cert.pem \
|
ec-cert.pem \
|
||||||
ec.pfx \
|
ec.pfx \
|
||||||
fake-cnnic-root-cert.pem \
|
fake-cnnic-root-cert.pem \
|
||||||
|
rsa_private.pem \
|
||||||
|
rsa_private_encrypted.pem \
|
||||||
|
rsa_private_pkcs8.pem \
|
||||||
|
rsa_private_pkcs8_bad.pem \
|
||||||
|
rsa_public.pem \
|
||||||
|
rsa_public_sha1_signature_signedby_rsa_private.sha1 \
|
||||||
|
rsa_public_sha1_signature_signedby_rsa_private_pkcs8.sha1 \
|
||||||
|
rsa_private_b.pem \
|
||||||
|
I_AM_THE_WALRUS_sha256_signature_signedby_rsa_private_b.sha256 \
|
||||||
|
rsa_public_b.pem \
|
||||||
rsa_private_1024.pem \
|
rsa_private_1024.pem \
|
||||||
rsa_private_2048.pem \
|
rsa_private_2048.pem \
|
||||||
rsa_private_4096.pem \
|
rsa_private_4096.pem \
|
||||||
@ -566,6 +576,36 @@ dsa_private_encrypted_1025.pem:
|
|||||||
dsa_public_1025.pem:
|
dsa_public_1025.pem:
|
||||||
openssl dsa -in dsa_private_1025.pem -pubout -out dsa_public_1025.pem
|
openssl dsa -in dsa_private_1025.pem -pubout -out dsa_public_1025.pem
|
||||||
|
|
||||||
|
rsa_private.pem:
|
||||||
|
openssl genrsa -out rsa_private.pem 2048
|
||||||
|
|
||||||
|
rsa_private_encrypted.pem: rsa_private.pem
|
||||||
|
openssl rsa -aes256 -in rsa_private.pem -passout 'pass:password' -out rsa_private_encrypted.pem
|
||||||
|
|
||||||
|
rsa_private_pkcs8.pem: rsa_private.pem
|
||||||
|
openssl pkcs8 -topk8 -inform PEM -outform PEM -in rsa_private.pem -out rsa_private_pkcs8.pem -nocrypt
|
||||||
|
|
||||||
|
rsa_private_pkcs8_bad.pem: rsa_private_pkcs8.pem
|
||||||
|
sed 's/PRIVATE/RSA PRIVATE/g' rsa_private_pkcs8.pem > rsa_private_pkcs8_bad.pem
|
||||||
|
|
||||||
|
rsa_public.pem: rsa_private.pem
|
||||||
|
openssl rsa -in rsa_private.pem -pubout -out rsa_public.pem
|
||||||
|
|
||||||
|
rsa_public_sha1_signature_signedby_rsa_private.sha1: rsa_public.pem rsa_private.pem
|
||||||
|
openssl dgst -sha1 -sign rsa_private.pem -out rsa_public_sha1_signature_signedby_rsa_private.sha1 rsa_public.pem
|
||||||
|
|
||||||
|
rsa_public_sha1_signature_signedby_rsa_private_pkcs8.sha1: rsa_public.pem rsa_private_pkcs8.pem
|
||||||
|
openssl dgst -sha1 -sign rsa_private_pkcs8.pem -out rsa_public_sha1_signature_signedby_rsa_private_pkcs8.sha1 rsa_public.pem
|
||||||
|
|
||||||
|
rsa_private_b.pem:
|
||||||
|
openssl genrsa -out rsa_private_b.pem 2048
|
||||||
|
|
||||||
|
I_AM_THE_WALRUS_sha256_signature_signedby_rsa_private_b.sha256: rsa_private_b.pem
|
||||||
|
echo -n "I AM THE WALRUS" | openssl dgst -sha256 -sign rsa_private_b.pem -out I_AM_THE_WALRUS_sha256_signature_signedby_rsa_private_b.sha256
|
||||||
|
|
||||||
|
rsa_public_b.pem: rsa_private_b.pem
|
||||||
|
openssl rsa -in rsa_private_b.pem -pubout -out rsa_public_b.pem
|
||||||
|
|
||||||
rsa_private_1024.pem:
|
rsa_private_1024.pem:
|
||||||
openssl genrsa -out rsa_private_1024.pem 1024
|
openssl genrsa -out rsa_private_1024.pem 1024
|
||||||
|
|
||||||
|
27
test/fixtures/keys/rsa_private.pem
vendored
Normal file
27
test/fixtures/keys/rsa_private.pem
vendored
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
-----BEGIN RSA PRIVATE KEY-----
|
||||||
|
MIIEpQIBAAKCAQEAt9xYiIonscC3vz/A2ceR7KhZZlDu/5bye53nCVTcKnWd2seY
|
||||||
|
6UAdKersX6njr83Dd5OVe1BW/wJvp5EjWTAGYbFswlNmeD44edEGM939B6Lq+/8i
|
||||||
|
BkrTi8mGN4YCytivE24YI0D4XZMPfkLSpab2y/Hy4DjQKBq1ThZ0UBnK+9IhX37J
|
||||||
|
u/ZoGYSlTIGIhzyaiYBh7wrZBoPczIEu6et/kN2VnnbRUtkYTF97ggcv5h+hDpUQ
|
||||||
|
jQW0ZgOMcTc8n+RkGpIt0/iM/bTjI3Tz/gsFdi6hHcpZgbopPL630296iByyigQC
|
||||||
|
PJVzdusFrQN5DeC+zT/nGypQkZanLb4ZspSx9QIDAQABAoIBAQCS2erYu8gyoGPi
|
||||||
|
3E/zYgQ6ishFAZWzDWSFubwD5wSm4SSAzvViL/RbO6kqS25xR569DmLRiHzD17VI
|
||||||
|
mJMsNECUnPrqR2TL256OJZaXrNHh3I1lUwVhEzjeKMsL4/ys+d70XPXoiocVblVs
|
||||||
|
moDXEIGEqa48ywPvVE3Fngeuxrsq3/GCVBNiwtt0YjAOZxmKEh31UZdHO+YI+wNF
|
||||||
|
/Z8KQCPscN5HGlR0SIQOlqMANz49aKStrevdvjS1UcpabzDEkuK84g3saJhcpAhb
|
||||||
|
pGFmAf5GTjkkhE0rE1qDF15dSqrKGfCFtOjUeK17SIEN7E322ChmTReZ1hYGfoSV
|
||||||
|
cdFntUINAoGBAPFKL5QeJ6wZu8R/ru11wTG6sQA0Jub2hGccPXpbnPrT+3CACOLI
|
||||||
|
JTCLy/xTKW3dqRHj/wZEe+jUw88w7jwGb1BkWr4BI8tDvY9jQLP1jyuLWRfrxXbp
|
||||||
|
4Z0oeBBwBeCI/ZG7FIvdDTqWxn1aj3Tmh6s4ByqEdtwrrrJPcBUNl01fAoGBAMMR
|
||||||
|
3RGE/ca6X6xz6kgUD6TtHVhiiRJK1jm/u+q0n7i/MBkeDgTZkHYS7lPc0yIdtqaI
|
||||||
|
Plz5yzwHnAvuMrv8LSdkjwioig2yQa3tAij8kXxqs7wN5418DMV2s1OJBrPthYPs
|
||||||
|
bv4im2iI8V63JQS4ZMYQbckq8ABYccTpOnxXDy0rAoGBAKkvzHa+QjERhjB9GyoT
|
||||||
|
1FhLQIsVBmYSWrp1+cGO9V6HPxoeHJzvm+wTSf/uS/FmaINL6+j4Ii4a6gWgmJts
|
||||||
|
I6cqBtqNsAx5vjQJczf8KdxthBYa0sXTrsfktXNJKUXMqIgDtp9vazQ2vozs8AQX
|
||||||
|
FPAAhD3SzgkJdCBBRSTt97ZfAoGAWAziKpxLKL7LnL4dzDcx8JIPIuwnTxh0plCD
|
||||||
|
dCffyLaT8WJ9lXbXHFTjOvt8WfPrlDP/Ylxmfkw5BbGZOP1VLGjZn2DkH9aMiwNm
|
||||||
|
bDXFPdG0G3hzQovx/9fajiRV4DWghLHeT9wzJfZabRRiI0VQR472300AVEeX4vgb
|
||||||
|
rDBn600CgYEAk7czBCT9rHn/PNwCa17hlTy88C4vXkwbz83Oa+aX5L4e5gw5lhcR
|
||||||
|
2ZuZHLb2r6oMt9rlD7EIDItSs+u21LOXWPTAlazdnpYUyw/CzogM/PN+qNwMRXn5
|
||||||
|
uXFFhmlP2mVg2EdELTahXch8kWqHaCSX53yvqCtRKu/j76V31TfQZGM=
|
||||||
|
-----END RSA PRIVATE KEY-----
|
27
test/fixtures/keys/rsa_private_b.pem
vendored
Normal file
27
test/fixtures/keys/rsa_private_b.pem
vendored
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
-----BEGIN RSA PRIVATE KEY-----
|
||||||
|
MIIEpAIBAAKCAQEAyb1grrN+29fxeeEbTaSEja6TKDTpT/WXnqrFCS+h7IYcnDoA
|
||||||
|
VwcsPU5FZeUPvLKMzi9NHSJ34LQCurqHgH8X+cw0YT3gdYS/7qoQiXs+zKv615Nc
|
||||||
|
ttD3xlQLceY+NwznoPXyyZwOeZqyU5Hiqbrqu6hdr6gQYogMNLn2NxBW2pGegd6+
|
||||||
|
ZGMCX3+/BtMP/6tXmttYjY+yhN2SrGz5cKhWpcHiC6X+B7uCKoKZy+t2jUxYVKUw
|
||||||
|
Wr1ZuM8kpSnuVCcv1OoMGEimEHA7v/eaF/y+z/VdQ4Y88GhTnVN4KbtgZ+o9Pohj
|
||||||
|
xLFU62VeTALixU5mPQKSgSICKfjev0FUUurF6wIDAQABAoIBAQCs11C/PM/iYNfl
|
||||||
|
mSSAWAStMrWni/Wc6QhXC2422ZV8hMZ8XwEtjtqrR6UTkLXz8HHMsR/7Zy2X2gJA
|
||||||
|
o1E2mS0ceoUiDxaA+RRL0W7Lq0j5qBsImZukkdLHG/iWRDJnjenhsParHsYUD6Lb
|
||||||
|
ELFGw/safjyOI4quMGtsvSqisKAJL5ZCPD5JHLhnNP8HXT6icSZrsqGhunb2tsa+
|
||||||
|
Ogcx1+bZzqdTsbvXdbw07Lnd/LRU0NDhjeEVl4J2yFNYY+OIj7/qrxSnZnGLLG0Y
|
||||||
|
DFxiD+HCMvTBSooqvWI6FAipfyCGjUznGsVaRv7TuzHPuKE4LtbIC/Ac3Q10rKWq
|
||||||
|
PmHALir5AoGBAOhGUCToWfYnj2zH0GIZQxnkrv9iRqmdGeCDX6ZM00Bs5tASnRo0
|
||||||
|
o90UtLbhWjHe1PKRKFyD4I7a8iIWxcWWun2XHgOtItctPN+lbjpTHTyE2yA1iZhe
|
||||||
|
dKCV3bAo4t+puKrPkZmaBqFD/fQx7DNxYdRERa1giiZGhlMUN3l7/S21AoGBAN5Y
|
||||||
|
nZ68NkTgklk4YBzsxwsMpQbgbihyG79gtDFxWonxZUQ29EsL01yd30pJNhg1LxDN
|
||||||
|
0fADfHVzkZ3qYz9knge9a75Yk8UBM3DM+xu+DRkjKhK5mPX5oLvj6061u3Scs6tj
|
||||||
|
orpU/mV1amz5gqrkefMaelsdHRuGGZQVx9KTV2kfAoGBAN7EAL1E8nK4Qj/r6xkK
|
||||||
|
bWZ6ArQABxFJELZYiPWvnLOfPka0c2PctIOmBiOXQa+urMDvIqyH9mhL6Al1mbwE
|
||||||
|
8VreAfU4qb+BLW649FyPteyC5r2fWxV9EZGp6fG3ZM9psShw5o1QQaeM1BTNhGFa
|
||||||
|
Dp9L0x+TBSvsW4t2SjYDCjA5AoGASzxxGWVWd7gFzWrmGuOD9pkwvkLzA3yZJwjx
|
||||||
|
8EkK+eJVAeAWic5WluBUzi43v7k/U9BRWYXUd2nDvEuziZ/iWXwfGSmf1umxHlo+
|
||||||
|
HgURKZBcjDmBKLpvSSS2WsvjwnHD2hq81ZAtBOfWO0myjWECYuByxqHzV3zo6tLz
|
||||||
|
6q0wxsECgYA26twPrAoRqvfvPnNj6o0LrsE39Tj6jHIVijT7Lbcf2xVnaDiQ18PQ
|
||||||
|
RC6Tgkz5KZf8GKfMRMA3WopGn9QE2luI4RLIbhLozEDrkk2L7wSYqI9DZ1Hd26wf
|
||||||
|
v3+3jdpsXkzHwWYz1a2+FhCF5mJJRQl6kd/B0wu00vdfwviK9OVO7w==
|
||||||
|
-----END RSA PRIVATE KEY-----
|
30
test/fixtures/keys/rsa_private_encrypted.pem
vendored
Normal file
30
test/fixtures/keys/rsa_private_encrypted.pem
vendored
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
-----BEGIN RSA PRIVATE KEY-----
|
||||||
|
Proc-Type: 4,ENCRYPTED
|
||||||
|
DEK-Info: AES-256-CBC,DB3D20E60E8FDC3356BD79712FF8EF7E
|
||||||
|
|
||||||
|
K+vu0U3IFTJBBi6zW5Zng80O1jXq/ZmlOFs/j/SQpPwfW1Do9i/Dwa7ntBlTwrCm
|
||||||
|
sd3IIPgu2ikfLwxvbxsZN540oCaCqaZ/bmmyzH3MyVDA9MllUu+X8+Q3ATzcYa9R
|
||||||
|
U5XfF5DAXsSRnstCbmKagWVQpO0oX8k3ratfny6Ixq86Y82tK8+o5YiBFq1kqa+9
|
||||||
|
4yat7IWQbqV5ifUtUPCHZwEqBt+WKazX05BqERjkckHdpfaDrBvSSPXTwoLm6uRR
|
||||||
|
ktkUVpO4tHMZ4VlcTfFtpz8gdYYod0nM6vz26hvbESHSwztSgMhmKdsE5eqmYfgu
|
||||||
|
F4WkEN4bqAiPjKK3jnUKPt/vg2oKYFQlVYFl9QnBjiRqcQTi3e9lwn1hI7uoMb6g
|
||||||
|
HuaCc57JJHPN/ZLP3ts4ZxFbwUjTGioh5Zh6WozG3L3+Ujwq/sDrAskRyzdcuP7I
|
||||||
|
Rs3oLbHY03OHyg8IbxR5Iu89l6FLqnR45yvbxXtZ7ImGOPM5Z9pB1CzDhGDx2F6g
|
||||||
|
J/Kf/7ZF2DmYUVbVKDfESEDhRfuMAVzhasDPTRqipSA5QvJVQY+J/6QDPrNNmHVB
|
||||||
|
4e4ouHIDWERUf0t1Be7THvP3X8OJozj2HApzqa5ZCaJDo8eaL8TCD5uH75ID5URJ
|
||||||
|
VscGHaUXT8/sxfHi1x8BibW5W5J/akFsnrnJU/1BZgGznIxjf5tKfHGppSIVdlKP
|
||||||
|
3ghYNmEIFPNJ6cxuUA0D2IOV4uO3FTCU6seIzvJhYkmXnticcZYGtmGxXKrodtzS
|
||||||
|
J1YuaNkkO/YRZah285lQ6QCIhCFo4Oa4ILjgoTQISuw7nQj5ESyncauzLUBXKX0c
|
||||||
|
XDUej64KNTvVF9UXdG48fYvNmSZWCnTye4UmPu17FmwpVra38U+EdoLyWyMIAI5t
|
||||||
|
rP6Hhgc9BxOo41Im9QpTcAPfKAknP8Rbm3ACJG5T9FKq/c29d1E//eFR6SL51e/a
|
||||||
|
yWdCgJN/FJOAX60+erPwoVoRFEttAeDPkklgFGdc8F4LIYAig9gEZ92ykFFz3fWz
|
||||||
|
jIcUVLrL+IokFbPVUBoMihqVyMQsWH+5Qq9wjxf6EDIf0BVtm9U4BJoOkPStFIfF
|
||||||
|
Kof7OVv7izyL8R/GIil9VQs9ftwkIUPeXx2Hw0bE3HJ3C8K4+mbLg3tKhGnBDU5Z
|
||||||
|
Xm5mLHoCRBa3ZRFWZtigX7POszdLAzftYo8o65Be4OtPS+tQAORk9gHsXATv7dDB
|
||||||
|
OGw61x5KA55LHVHhWaRvu3J8E7nhxw0q/HskyZhDC+Y+Xs6vmQSb4nO4ET4NYX1P
|
||||||
|
m3PMdgGoqRDJ2jZw4eoQdRKCM0EHSepSAYpO1tcAXhPZS4ITogoRgPpVgOebEQUL
|
||||||
|
nKNeNu/BxMSH/IH15jjDLF3TiEoguF9xdTaCxIBzE1SFpVO0u9m9vXpWdPThVgsb
|
||||||
|
VcEI487p7v9iImP3BYPT8ZYvytC26EH0hyOrwhahTvTb4vXghkLIyvPUg1lZHc6e
|
||||||
|
aPHb2AzYAHLnp/ehDQGKWrCOJ1JE2vBv8ZkLa+XZo7YASXBRZitPOMlvykEyzxmR
|
||||||
|
QAmNhKGvFmeM2mmHAp0aC03rgF3lxNsXQ1CyfEdq3UV9ReSnttq8gtrJfCwxV+wY
|
||||||
|
-----END RSA PRIVATE KEY-----
|
28
test/fixtures/keys/rsa_private_pkcs8.pem
vendored
Normal file
28
test/fixtures/keys/rsa_private_pkcs8.pem
vendored
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQC33FiIiiexwLe/
|
||||||
|
P8DZx5HsqFlmUO7/lvJ7necJVNwqdZ3ax5jpQB0p6uxfqeOvzcN3k5V7UFb/Am+n
|
||||||
|
kSNZMAZhsWzCU2Z4Pjh50QYz3f0Hour7/yIGStOLyYY3hgLK2K8TbhgjQPhdkw9+
|
||||||
|
QtKlpvbL8fLgONAoGrVOFnRQGcr70iFffsm79mgZhKVMgYiHPJqJgGHvCtkGg9zM
|
||||||
|
gS7p63+Q3ZWedtFS2RhMX3uCBy/mH6EOlRCNBbRmA4xxNzyf5GQaki3T+Iz9tOMj
|
||||||
|
dPP+CwV2LqEdylmBuik8vrfTb3qIHLKKBAI8lXN26wWtA3kN4L7NP+cbKlCRlqct
|
||||||
|
vhmylLH1AgMBAAECggEBAJLZ6ti7yDKgY+LcT/NiBDqKyEUBlbMNZIW5vAPnBKbh
|
||||||
|
JIDO9WIv9Fs7qSpLbnFHnr0OYtGIfMPXtUiYkyw0QJSc+upHZMvbno4llpes0eHc
|
||||||
|
jWVTBWETON4oywvj/Kz53vRc9eiKhxVuVWyagNcQgYSprjzLA+9UTcWeB67Guyrf
|
||||||
|
8YJUE2LC23RiMA5nGYoSHfVRl0c75gj7A0X9nwpAI+xw3kcaVHRIhA6WowA3Pj1o
|
||||||
|
pK2t692+NLVRylpvMMSS4rziDexomFykCFukYWYB/kZOOSSETSsTWoMXXl1KqsoZ
|
||||||
|
8IW06NR4rXtIgQ3sTfbYKGZNF5nWFgZ+hJVx0We1Qg0CgYEA8UovlB4nrBm7xH+u
|
||||||
|
7XXBMbqxADQm5vaEZxw9eluc+tP7cIAI4sglMIvL/FMpbd2pEeP/BkR76NTDzzDu
|
||||||
|
PAZvUGRavgEjy0O9j2NAs/WPK4tZF+vFdunhnSh4EHAF4Ij9kbsUi90NOpbGfVqP
|
||||||
|
dOaHqzgHKoR23Cuusk9wFQ2XTV8CgYEAwxHdEYT9xrpfrHPqSBQPpO0dWGKJEkrW
|
||||||
|
Ob+76rSfuL8wGR4OBNmQdhLuU9zTIh22pog+XPnLPAecC+4yu/wtJ2SPCKiKDbJB
|
||||||
|
re0CKPyRfGqzvA3njXwMxXazU4kGs+2Fg+xu/iKbaIjxXrclBLhkxhBtySrwAFhx
|
||||||
|
xOk6fFcPLSsCgYEAqS/Mdr5CMRGGMH0bKhPUWEtAixUGZhJaunX5wY71Xoc/Gh4c
|
||||||
|
nO+b7BNJ/+5L8WZog0vr6PgiLhrqBaCYm2wjpyoG2o2wDHm+NAlzN/wp3G2EFhrS
|
||||||
|
xdOux+S1c0kpRcyoiAO2n29rNDa+jOzwBBcU8ACEPdLOCQl0IEFFJO33tl8CgYBY
|
||||||
|
DOIqnEsovsucvh3MNzHwkg8i7CdPGHSmUIN0J9/ItpPxYn2VdtccVOM6+3xZ8+uU
|
||||||
|
M/9iXGZ+TDkFsZk4/VUsaNmfYOQf1oyLA2ZsNcU90bQbeHNCi/H/19qOJFXgNaCE
|
||||||
|
sd5P3DMl9lptFGIjRVBHjvbfTQBUR5fi+BusMGfrTQKBgQCTtzMEJP2sef883AJr
|
||||||
|
XuGVPLzwLi9eTBvPzc5r5pfkvh7mDDmWFxHZm5kctvavqgy32uUPsQgMi1Kz67bU
|
||||||
|
s5dY9MCVrN2elhTLD8LOiAz8836o3AxFefm5cUWGaU/aZWDYR0QtNqFdyHyRaodo
|
||||||
|
JJfnfK+oK1Eq7+PvpXfVN9BkYw==
|
||||||
|
-----END PRIVATE KEY-----
|
28
test/fixtures/keys/rsa_private_pkcs8_bad.pem
vendored
Normal file
28
test/fixtures/keys/rsa_private_pkcs8_bad.pem
vendored
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
-----BEGIN RSA PRIVATE KEY-----
|
||||||
|
MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQC33FiIiiexwLe/
|
||||||
|
P8DZx5HsqFlmUO7/lvJ7necJVNwqdZ3ax5jpQB0p6uxfqeOvzcN3k5V7UFb/Am+n
|
||||||
|
kSNZMAZhsWzCU2Z4Pjh50QYz3f0Hour7/yIGStOLyYY3hgLK2K8TbhgjQPhdkw9+
|
||||||
|
QtKlpvbL8fLgONAoGrVOFnRQGcr70iFffsm79mgZhKVMgYiHPJqJgGHvCtkGg9zM
|
||||||
|
gS7p63+Q3ZWedtFS2RhMX3uCBy/mH6EOlRCNBbRmA4xxNzyf5GQaki3T+Iz9tOMj
|
||||||
|
dPP+CwV2LqEdylmBuik8vrfTb3qIHLKKBAI8lXN26wWtA3kN4L7NP+cbKlCRlqct
|
||||||
|
vhmylLH1AgMBAAECggEBAJLZ6ti7yDKgY+LcT/NiBDqKyEUBlbMNZIW5vAPnBKbh
|
||||||
|
JIDO9WIv9Fs7qSpLbnFHnr0OYtGIfMPXtUiYkyw0QJSc+upHZMvbno4llpes0eHc
|
||||||
|
jWVTBWETON4oywvj/Kz53vRc9eiKhxVuVWyagNcQgYSprjzLA+9UTcWeB67Guyrf
|
||||||
|
8YJUE2LC23RiMA5nGYoSHfVRl0c75gj7A0X9nwpAI+xw3kcaVHRIhA6WowA3Pj1o
|
||||||
|
pK2t692+NLVRylpvMMSS4rziDexomFykCFukYWYB/kZOOSSETSsTWoMXXl1KqsoZ
|
||||||
|
8IW06NR4rXtIgQ3sTfbYKGZNF5nWFgZ+hJVx0We1Qg0CgYEA8UovlB4nrBm7xH+u
|
||||||
|
7XXBMbqxADQm5vaEZxw9eluc+tP7cIAI4sglMIvL/FMpbd2pEeP/BkR76NTDzzDu
|
||||||
|
PAZvUGRavgEjy0O9j2NAs/WPK4tZF+vFdunhnSh4EHAF4Ij9kbsUi90NOpbGfVqP
|
||||||
|
dOaHqzgHKoR23Cuusk9wFQ2XTV8CgYEAwxHdEYT9xrpfrHPqSBQPpO0dWGKJEkrW
|
||||||
|
Ob+76rSfuL8wGR4OBNmQdhLuU9zTIh22pog+XPnLPAecC+4yu/wtJ2SPCKiKDbJB
|
||||||
|
re0CKPyRfGqzvA3njXwMxXazU4kGs+2Fg+xu/iKbaIjxXrclBLhkxhBtySrwAFhx
|
||||||
|
xOk6fFcPLSsCgYEAqS/Mdr5CMRGGMH0bKhPUWEtAixUGZhJaunX5wY71Xoc/Gh4c
|
||||||
|
nO+b7BNJ/+5L8WZog0vr6PgiLhrqBaCYm2wjpyoG2o2wDHm+NAlzN/wp3G2EFhrS
|
||||||
|
xdOux+S1c0kpRcyoiAO2n29rNDa+jOzwBBcU8ACEPdLOCQl0IEFFJO33tl8CgYBY
|
||||||
|
DOIqnEsovsucvh3MNzHwkg8i7CdPGHSmUIN0J9/ItpPxYn2VdtccVOM6+3xZ8+uU
|
||||||
|
M/9iXGZ+TDkFsZk4/VUsaNmfYOQf1oyLA2ZsNcU90bQbeHNCi/H/19qOJFXgNaCE
|
||||||
|
sd5P3DMl9lptFGIjRVBHjvbfTQBUR5fi+BusMGfrTQKBgQCTtzMEJP2sef883AJr
|
||||||
|
XuGVPLzwLi9eTBvPzc5r5pfkvh7mDDmWFxHZm5kctvavqgy32uUPsQgMi1Kz67bU
|
||||||
|
s5dY9MCVrN2elhTLD8LOiAz8836o3AxFefm5cUWGaU/aZWDYR0QtNqFdyHyRaodo
|
||||||
|
JJfnfK+oK1Eq7+PvpXfVN9BkYw==
|
||||||
|
-----END RSA PRIVATE KEY-----
|
9
test/fixtures/keys/rsa_public.pem
vendored
Normal file
9
test/fixtures/keys/rsa_public.pem
vendored
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAt9xYiIonscC3vz/A2ceR
|
||||||
|
7KhZZlDu/5bye53nCVTcKnWd2seY6UAdKersX6njr83Dd5OVe1BW/wJvp5EjWTAG
|
||||||
|
YbFswlNmeD44edEGM939B6Lq+/8iBkrTi8mGN4YCytivE24YI0D4XZMPfkLSpab2
|
||||||
|
y/Hy4DjQKBq1ThZ0UBnK+9IhX37Ju/ZoGYSlTIGIhzyaiYBh7wrZBoPczIEu6et/
|
||||||
|
kN2VnnbRUtkYTF97ggcv5h+hDpUQjQW0ZgOMcTc8n+RkGpIt0/iM/bTjI3Tz/gsF
|
||||||
|
di6hHcpZgbopPL630296iByyigQCPJVzdusFrQN5DeC+zT/nGypQkZanLb4ZspSx
|
||||||
|
9QIDAQAB
|
||||||
|
-----END PUBLIC KEY-----
|
9
test/fixtures/keys/rsa_public_b.pem
vendored
Normal file
9
test/fixtures/keys/rsa_public_b.pem
vendored
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAyb1grrN+29fxeeEbTaSE
|
||||||
|
ja6TKDTpT/WXnqrFCS+h7IYcnDoAVwcsPU5FZeUPvLKMzi9NHSJ34LQCurqHgH8X
|
||||||
|
+cw0YT3gdYS/7qoQiXs+zKv615NcttD3xlQLceY+NwznoPXyyZwOeZqyU5Hiqbrq
|
||||||
|
u6hdr6gQYogMNLn2NxBW2pGegd6+ZGMCX3+/BtMP/6tXmttYjY+yhN2SrGz5cKhW
|
||||||
|
pcHiC6X+B7uCKoKZy+t2jUxYVKUwWr1ZuM8kpSnuVCcv1OoMGEimEHA7v/eaF/y+
|
||||||
|
z/VdQ4Y88GhTnVN4KbtgZ+o9PohjxLFU62VeTALixU5mPQKSgSICKfjev0FUUurF
|
||||||
|
6wIDAQAB
|
||||||
|
-----END PUBLIC KEY-----
|
2
test/fixtures/keys/rsa_public_sha1_signature_signedby_rsa_private.sha1
vendored
Normal file
2
test/fixtures/keys/rsa_public_sha1_signature_signedby_rsa_private.sha1
vendored
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
¦yfð <EFBFBD>F<>ÖÙ4}¬x=›e Z'`a%ºZ>Ytç¦mxd4Eíc(Ü9ɳȴۑkÍíL<C3AD>óíîÐ2í¦+ÇÜqôSiÛË2:’Ì[dfj/°´¢5Пñ9¾O<ãöé8À±'. O¤ŽeL—8íÉî“2ÿtàÓŸ/¦¥3æK’Œçä ,<2C>øÐŠÞl…úZÚ…ßt¬[Œ¿4œf¦™#µ* ñYí êË餡w/²«Ä2ß—fꢅ´X®ÏhÆa<TšÃùÛ¦›¢;Z¦¾á¶`F£#<wIñGi6¼fwÚE<Ô4eΘv“ðb€.
|
||||||
|
ã–ø
|
2
test/fixtures/keys/rsa_public_sha1_signature_signedby_rsa_private_pkcs8.sha1
vendored
Normal file
2
test/fixtures/keys/rsa_public_sha1_signature_signedby_rsa_private_pkcs8.sha1
vendored
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
¦yfð <EFBFBD>F<>ÖÙ4}¬x=›e Z'`a%ºZ>Ytç¦mxd4Eíc(Ü9ɳȴۑkÍíL<C3AD>óíîÐ2í¦+ÇÜqôSiÛË2:’Ì[dfj/°´¢5Пñ9¾O<ãöé8À±'. O¤ŽeL—8íÉî“2ÿtàÓŸ/¦¥3æK’Œçä ,<2C>øÐŠÞl…úZÚ…ßt¬[Œ¿4œf¦™#µ* ñYí êË餡w/²«Ä2ß—fꢅ´X®ÏhÆa<TšÃùÛ¦›¢;Z¦¾á¶`F£#<wIñGi6¼fwÚE<Ô4eΘv“ðb€.
|
||||||
|
ã–ø
|
10
test/fixtures/test_bad_rsa_privkey.pem
vendored
10
test/fixtures/test_bad_rsa_privkey.pem
vendored
@ -1,10 +0,0 @@
|
|||||||
-----BEGIN RSA PRIVATE KEY-----
|
|
||||||
MIIBUwIBADANBgkqhkiG9w0BAQEFAASCAT0wggE5AgEAAkEAz0ZHmXyxQSdWk6NF
|
|
||||||
GRotTax0O94iHv843su0mOynV9QLvlAwMrUk9k4+/SwyLu0eE3iYsYgXstXi3t2u
|
|
||||||
rDSIMwIDAQABAkAH4ag/Udp7m79TBdZOygwG9BPHYv7xJstGzYAkgHssf7Yd5ZuC
|
|
||||||
hpKtBvWdPXZaAFbwF8NSisMl98Q/9zgB/q5BAiEA5zXuwMnwt4hE2YqzBDRFB4g9
|
|
||||||
I+v+l1soy6x7Wdqo9esCIQDlf15qDb26uRDurBioE3IpZstWIIvLDdKqviZXKMs8
|
|
||||||
2QIgWeC5QvA9RtsOCJLGLCg1fUwUmFYwzZ1+Kk6OVMuPSqkCIDIWFSXyL8kzoKVm
|
|
||||||
O89axxyQCaqXWcsMDkEjVLzK82gpAiB7lzdDHr7MoMWwV2wC/heEFC2p0Rw4wg9j
|
|
||||||
1V8QbL0Q0A==
|
|
||||||
-----END RSA PRIVATE KEY-----
|
|
16
test/fixtures/test_rsa_pkcs8_privkey.pem
vendored
16
test/fixtures/test_rsa_pkcs8_privkey.pem
vendored
@ -1,16 +0,0 @@
|
|||||||
-----BEGIN PRIVATE KEY-----
|
|
||||||
MIICeAIBADANBgkqhkiG9w0BAQEFAASCAmIwggJeAgEAAoGBAMIUQ0bDffIaKHL3
|
|
||||||
akONlCGXQLfqs8mP4K99ILz6rbyHEDXrVAU1R3XfC4JNRyrRB3aqwF7/aEXJzYMI
|
|
||||||
kmDSHUvvz7pnhQxHsQ5yl91QT0d/eb+Gz4VRHjm4El4MrUdIUcPxscoPqS/wU8Z8
|
|
||||||
lOi1z7bGMnChiL7WGqnV8h6RrGzJAgMBAAECgYEAlHxmQJS/HmTO/6612XtPkyei
|
|
||||||
t1PVO+hdckZcrtln5S68w1QJ03ZA9ziwGIBBa8vDVxIq3kOwpnxQROlg/Lyk9iec
|
|
||||||
MTPZ0NiJp7D37ESm5vJ5bagfhnHvXCoG04qSrCtdr+nN2mK5xFGOTq8TphjsQEGz
|
|
||||||
+Du5qdWkaJs5UASyofUCQQDsOSNUfbxYNSB/Weq9+fYqPoJPuchwTeMYmxlnvOVm
|
|
||||||
YGYcUM40wtStdH9mbelHmbS0KYGprlEr3m7jXaO3V08jAkEA0lPe/ymeS2HjxtCj
|
|
||||||
98p6Xq4RjJuhG0Dn+4e4eRnoVAXs5SQaiByZImW451zm3qEjVWwufRBkSNBkwQ5a
|
|
||||||
v7ApIwJBAILiRckSwcC97vug/oe0b8iISfuSnJRdE28WwMTRzOkkkG8v9pEVQnG5
|
|
||||||
Er3WOGMLrywDs2wowaDk5dvkjkmPfrECQQCAhPtoU5gEXAaBABCRY0ou/JKApsBl
|
|
||||||
FN4sFpykcy5B2XUN92e28DKqkBnSVjREqZYbpoUpqpB85coLJahSJWSdAkBeuWDJ
|
|
||||||
IVyL/a54qUgTVCoiItJnxXw6WkUtGdvWnMjtTXJBedMAQVgznrTImXNSk5vVXhxJ
|
|
||||||
wZ3frm2JIy/Es69M
|
|
||||||
-----END PRIVATE KEY-----
|
|
15
test/fixtures/test_rsa_privkey.pem
vendored
15
test/fixtures/test_rsa_privkey.pem
vendored
@ -1,15 +0,0 @@
|
|||||||
-----BEGIN RSA PRIVATE KEY-----
|
|
||||||
MIICXgIBAAKBgQDCFENGw33yGihy92pDjZQhl0C36rPJj+CvfSC8+q28hxA161QF
|
|
||||||
NUd13wuCTUcq0Qd2qsBe/2hFyc2DCJJg0h1L78+6Z4UMR7EOcpfdUE9Hf3m/hs+F
|
|
||||||
UR45uBJeDK1HSFHD8bHKD6kv8FPGfJTotc+2xjJwoYi+1hqp1fIekaxsyQIDAQAB
|
|
||||||
AoGBAJR8ZkCUvx5kzv+utdl7T5MnordT1TvoXXJGXK7ZZ+UuvMNUCdN2QPc4sBiA
|
|
||||||
QWvLw1cSKt5DsKZ8UETpYPy8pPYnnDEz2dDYiaew9+xEpubyeW2oH4Zx71wqBtOK
|
|
||||||
kqwrXa/pzdpiucRRjk6vE6YY7EBBs/g7uanVpGibOVAEsqH1AkEA7DkjVH28WDUg
|
|
||||||
f1nqvfn2Kj6CT7nIcE3jGJsZZ7zlZmBmHFDONMLUrXR/Zm3pR5m0tCmBqa5RK95u
|
|
||||||
412jt1dPIwJBANJT3v8pnkth48bQo/fKel6uEYyboRtA5/uHuHkZ6FQF7OUkGogc
|
|
||||||
mSJluOdc5t6hI1VsLn0QZEjQZMEOWr+wKSMCQQCC4kXJEsHAve77oP6HtG/IiEn7
|
|
||||||
kpyUXRNvFsDE0czpJJBvL/aRFUJxuRK91jhjC68sA7NsKMGg5OXb5I5Jj36xAkEA
|
|
||||||
gIT7aFOYBFwGgQAQkWNKLvySgKbAZRTeLBacpHMuQdl1DfdntvAyqpAZ0lY0RKmW
|
|
||||||
G6aFKaqQfOXKCyWoUiVknQJAXrlgySFci/2ueKlIE1QqIiLSZ8V8OlpFLRnb1pzI
|
|
||||||
7U1yQXnTAEFYM560yJlzUpOb1V4cScGd365tiSMvxLOvTA==
|
|
||||||
-----END RSA PRIVATE KEY-----
|
|
15
test/fixtures/test_rsa_privkey_2.pem
vendored
15
test/fixtures/test_rsa_privkey_2.pem
vendored
@ -1,15 +0,0 @@
|
|||||||
-----BEGIN RSA PRIVATE KEY-----
|
|
||||||
MIICWQIBAAKBgQCsMgRdxxEeeXscPvqFzp/6/IIdoeKSlBn7361FWZwMQUG0qCbr
|
|
||||||
XYtdXPyqp2B4GThviIqiaJZITCTY87CiV7bFvH2lmUMJLsCc3BaQ4XFQbEU5D5jN
|
|
||||||
FfP7g78MEKbCb9rEfYMI2EGwbfKRUZUrYeBadzIMHEMEHDyiBXrCohTXMQIBIwKB
|
|
||||||
gHEoLsFITRQGr/yeah1qhmMa9ms+fvKb1o+S/NXNLAgNoDTjh0o2KGHspgm+cpgQ
|
|
||||||
kszzU8nPszbS86SC4cnEnKy/g3uw3Lf55a2P8vgh1P386/PzI+Im8s6E/EpDwn/P
|
|
||||||
R2E5gqTfePl8m7r9oeIARZXysmHHgBtEm5pTUav6QvOLAkEA2arx2R/3Yb6yZ5oO
|
|
||||||
3ldZEzCBNmB6mCoczrH6jjBosb4Gj7TK+asNlbinw1gj8sgdkzAw6jGnJ2IUfftm
|
|
||||||
QMykwQJBAMqFDclCf2b9cwi82+Xg+mjlT8BEf+l5xdRrweOyjB6DmUhgeqDISJUK
|
|
||||||
JgxGr4TxIQ6DGeEWxChGzzU6utlRnnECQDf4wdi/E7oMdwSylhvqkz9y32XBCZTX
|
|
||||||
oQHzQG20rTUE+l93oeht0EsSOcSEYQPqUL9yyr/g4dbtVbn+0SabBcsCQEs4u/pL
|
|
||||||
5i2RVpzYbu77yrk/OuEDf/eiQipT6O4sX+4Tn1VlqePynp3B8N/8/11DnpBclJVu
|
|
||||||
2yTnGcNQVAeTWBsCQFMekiY/KbwAgTopqpCUg5CLNph91FVW5PIntLmd5gSj8ZJS
|
|
||||||
uNuro8CURrOe8iiI3pG9m4KkbDdOBSOMADXJojE=
|
|
||||||
-----END RSA PRIVATE KEY-----
|
|
17
test/fixtures/test_rsa_privkey_encrypted.pem
vendored
17
test/fixtures/test_rsa_privkey_encrypted.pem
vendored
@ -1,17 +0,0 @@
|
|||||||
-----BEGIN ENCRYPTED PRIVATE KEY-----
|
|
||||||
MIICojAcBgoqhkiG9w0BDAEDMA4ECEMCOq/cAz8QAgIIAASCAoDT/S5XcBm7u/2i
|
|
||||||
Ar4vLx5L+heu9f4iRRStWO/yaOvxZRmrqNJXI15F74mtfrXga+LKyd8YAYD8XR4e
|
|
||||||
na6SbOZmBFHBZOWBDmDiupMoq+mOgTe84iOgo8LHYf040PzZnL/ouvepQy5LU1A5
|
|
||||||
bv9T1d1BVpQ2IfQ9QNu8rUZFxlD1VzFCB9mvwUgcAfaTSfxyamr7KPlKaIhwPK11
|
|
||||||
c1w0xoC+N1mp3KrfK/jwWk3JYFVq35W/7PUsC25qyLWUgJLs9h/eGSzo/5kZ4fLK
|
|
||||||
bzBox9DzhaoBiKnfPNVKlwP+jL19vVb+0USLh9vTQQ1o4oral1fA+04bJjeOkFTf
|
|
||||||
VkxVpa7GUZzgjOPIWEeqHDFZ7QZDYKb2e4kWpx9CPWnUlRLcNE88GPx00LnsCkQH
|
|
||||||
yHBAtA3VCRqE2Yn2ROJmfgjjKQorglxIS6dxc+J9gZb0/M4Ad4Hn7N/23UB3CjYD
|
|
||||||
qeILsbOOTudQgIOoXOVMgRbhRD3HsU27OSuhvSd+CjpRG9BFuUcBmjZ06TOAZt8q
|
|
||||||
IZlVwIEaJBeBAYtyfEsaEN76B0DhzvF5fGWSXtlhR3uvftsWQ0J192VvDDJ+DIvX
|
|
||||||
SON62RfCzKD7FidmUbMVTgCwK2WJ0XiEHSgl7pLeSbAiEd3GAKrdH99FOOqcmqjr
|
|
||||||
0dLnbCCs3GuXTfoCZGDoNfvoqJ0HdF6zmIOU0mmUn4ia6R/LbbOYDM6DS+rkQRTA
|
|
||||||
Dqh/ilbp2WU9+OChQIQUOQPLcA7prt/Tnkm3X5TFVVbx7WQRfJhu5l7qElrF8W81
|
|
||||||
iiBQrvtiJrBEDst1GmoKBMkOknj+QXK/NzhDFhcHWG5Kg0HQd3I6c1wdg64xBO3U
|
|
||||||
lyI/PHdl
|
|
||||||
-----END ENCRYPTED PRIVATE KEY-----
|
|
6
test/fixtures/test_rsa_pubkey.pem
vendored
6
test/fixtures/test_rsa_pubkey.pem
vendored
@ -1,6 +0,0 @@
|
|||||||
-----BEGIN PUBLIC KEY-----
|
|
||||||
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDCFENGw33yGihy92pDjZQhl0C3
|
|
||||||
6rPJj+CvfSC8+q28hxA161QFNUd13wuCTUcq0Qd2qsBe/2hFyc2DCJJg0h1L78+6
|
|
||||||
Z4UMR7EOcpfdUE9Hf3m/hs+FUR45uBJeDK1HSFHD8bHKD6kv8FPGfJTotc+2xjJw
|
|
||||||
oYi+1hqp1fIekaxsyQIDAQAB
|
|
||||||
-----END PUBLIC KEY-----
|
|
5
test/fixtures/test_rsa_pubkey_2.pem
vendored
5
test/fixtures/test_rsa_pubkey_2.pem
vendored
@ -1,5 +0,0 @@
|
|||||||
-----BEGIN RSA PUBLIC KEY-----
|
|
||||||
MIGHAoGBAKwyBF3HER55exw++oXOn/r8gh2h4pKUGfvfrUVZnAxBQbSoJutdi11c
|
|
||||||
/KqnYHgZOG+IiqJolkhMJNjzsKJXtsW8faWZQwkuwJzcFpDhcVBsRTkPmM0V8/uD
|
|
||||||
vwwQpsJv2sR9gwjYQbBt8pFRlSth4Fp3MgwcQwQcPKIFesKiFNcxAgEj
|
|
||||||
-----END RSA PUBLIC KEY-----
|
|
@ -44,8 +44,8 @@ require('internal/crypto/util').setDefaultEncoding('latin1');
|
|||||||
const certPem = fixtures.readSync('test_cert.pem', 'ascii');
|
const certPem = fixtures.readSync('test_cert.pem', 'ascii');
|
||||||
const certPfx = fixtures.readSync('test_cert.pfx');
|
const certPfx = fixtures.readSync('test_cert.pfx');
|
||||||
const keyPem = fixtures.readSync('test_key.pem', 'ascii');
|
const keyPem = fixtures.readSync('test_key.pem', 'ascii');
|
||||||
const rsaPubPem = fixtures.readSync('test_rsa_pubkey.pem', 'ascii');
|
const rsaPubPem = fixtures.readKey('rsa_public.pem', 'ascii');
|
||||||
const rsaKeyPem = fixtures.readSync('test_rsa_privkey.pem', 'ascii');
|
const rsaKeyPem = fixtures.readKey('rsa_private.pem', 'ascii');
|
||||||
|
|
||||||
// PFX tests
|
// PFX tests
|
||||||
tls.createSecureContext({ pfx: certPfx, passphrase: 'sample' });
|
tls.createSecureContext({ pfx: certPfx, passphrase: 'sample' });
|
||||||
@ -626,14 +626,11 @@ common.expectsError(
|
|||||||
|
|
||||||
rsaSign.update(rsaPubPem);
|
rsaSign.update(rsaPubPem);
|
||||||
const rsaSignature = rsaSign.sign(rsaKeyPem, 'hex');
|
const rsaSignature = rsaSign.sign(rsaKeyPem, 'hex');
|
||||||
assert.strictEqual(
|
const expectedSignature = fixtures.readKey(
|
||||||
rsaSignature,
|
'rsa_public_sha1_signature_signedby_rsa_private.sha1',
|
||||||
'5c50e3145c4e2497aadb0eabc83b342d0b0021ece0d4c4a064b7c' +
|
'hex'
|
||||||
'8f020d7e2688b122bfb54c724ac9ee169f83f66d2fe90abeb95e8' +
|
|
||||||
'e1290e7e177152a4de3d944cf7d4883114a20ed0f78e70e25ef0f' +
|
|
||||||
'60f06b858e6af42a2f276ede95bbc6bc9a9bbdda15bd663186a6f' +
|
|
||||||
'40819a7af19e577bb2efa5e579a1f5ce8a0d4ca8b8f6'
|
|
||||||
);
|
);
|
||||||
|
assert.strictEqual(rsaSignature, expectedSignature);
|
||||||
|
|
||||||
rsaVerify.update(rsaPubPem);
|
rsaVerify.update(rsaPubPem);
|
||||||
assert.strictEqual(rsaVerify.verify(rsaPubPem, rsaSignature, 'hex'), true);
|
assert.strictEqual(rsaVerify.verify(rsaPubPem, rsaSignature, 'hex'), true);
|
||||||
@ -643,17 +640,15 @@ common.expectsError(
|
|||||||
// Test RSA signing and verification
|
// Test RSA signing and verification
|
||||||
//
|
//
|
||||||
{
|
{
|
||||||
const privateKey = fixtures.readSync('test_rsa_privkey_2.pem');
|
const privateKey = fixtures.readKey('rsa_private_b.pem');
|
||||||
const publicKey = fixtures.readSync('test_rsa_pubkey_2.pem');
|
const publicKey = fixtures.readKey('rsa_public_b.pem');
|
||||||
|
|
||||||
const input = 'I AM THE WALRUS';
|
const input = 'I AM THE WALRUS';
|
||||||
|
|
||||||
const signature =
|
const signature = fixtures.readKey(
|
||||||
'79d59d34f56d0e94aa6a3e306882b52ed4191f07521f25f505a078dc2f89' +
|
'I_AM_THE_WALRUS_sha256_signature_signedby_rsa_private_b.sha256',
|
||||||
'396e0c8ac89e996fde5717f4cb89199d8fec249961fcb07b74cd3d2a4ffa' +
|
'hex'
|
||||||
'235417b69618e4bcd76b97e29975b7ce862299410e1b522a328e44ac9bb2' +
|
);
|
||||||
'8195e0268da7eda23d9825ac43c724e86ceeee0d0d4465678652ccaf6501' +
|
|
||||||
'0ddfb299bedeb1ad';
|
|
||||||
|
|
||||||
const sign = crypto.createSign('SHA256');
|
const sign = crypto.createSign('SHA256');
|
||||||
sign.update(input);
|
sign.update(input);
|
||||||
|
@ -21,8 +21,8 @@ const {
|
|||||||
|
|
||||||
const fixtures = require('../common/fixtures');
|
const fixtures = require('../common/fixtures');
|
||||||
|
|
||||||
const publicPem = fixtures.readSync('test_rsa_pubkey.pem', 'ascii');
|
const publicPem = fixtures.readKey('rsa_public.pem', 'ascii');
|
||||||
const privatePem = fixtures.readSync('test_rsa_privkey.pem', 'ascii');
|
const privatePem = fixtures.readKey('rsa_private.pem', 'ascii');
|
||||||
|
|
||||||
const publicDsa = fixtures.readKey('dsa_public_1025.pem', 'ascii');
|
const publicDsa = fixtures.readKey('dsa_public_1025.pem', 'ascii');
|
||||||
const privateDsa = fixtures.readKey('dsa_private_encrypted_1025.pem',
|
const privateDsa = fixtures.readKey('dsa_private_encrypted_1025.pem',
|
||||||
|
@ -13,15 +13,16 @@ const fixtures = require('../common/fixtures');
|
|||||||
// Test certificates
|
// Test certificates
|
||||||
const certPem = fixtures.readSync('test_cert.pem', 'ascii');
|
const certPem = fixtures.readSync('test_cert.pem', 'ascii');
|
||||||
const keyPem = fixtures.readSync('test_key.pem', 'ascii');
|
const keyPem = fixtures.readSync('test_key.pem', 'ascii');
|
||||||
const rsaPubPem = fixtures.readSync('test_rsa_pubkey.pem', 'ascii');
|
const rsaKeySize = 2048;
|
||||||
const rsaKeyPem = fixtures.readSync('test_rsa_privkey.pem', 'ascii');
|
const rsaPubPem = fixtures.readKey('rsa_public.pem', 'ascii');
|
||||||
const rsaKeyPemEncrypted = fixtures.readSync('test_rsa_privkey_encrypted.pem',
|
const rsaKeyPem = fixtures.readKey('rsa_private.pem', 'ascii');
|
||||||
'ascii');
|
const rsaKeyPemEncrypted = fixtures.readKey('rsa_private_encrypted.pem',
|
||||||
|
'ascii');
|
||||||
const dsaPubPem = fixtures.readSync('test_dsa_pubkey.pem', 'ascii');
|
const dsaPubPem = fixtures.readSync('test_dsa_pubkey.pem', 'ascii');
|
||||||
const dsaKeyPem = fixtures.readSync('test_dsa_privkey.pem', 'ascii');
|
const dsaKeyPem = fixtures.readSync('test_dsa_privkey.pem', 'ascii');
|
||||||
const dsaKeyPemEncrypted = fixtures.readSync('test_dsa_privkey_encrypted.pem',
|
const dsaKeyPemEncrypted = fixtures.readSync('test_dsa_privkey_encrypted.pem',
|
||||||
'ascii');
|
'ascii');
|
||||||
const rsaPkcs8KeyPem = fixtures.readSync('test_rsa_pkcs8_privkey.pem');
|
const rsaPkcs8KeyPem = fixtures.readKey('rsa_private_pkcs8.pem');
|
||||||
const dsaPkcs8KeyPem = fixtures.readSync('test_dsa_pkcs8_privkey.pem');
|
const dsaPkcs8KeyPem = fixtures.readSync('test_dsa_pkcs8_privkey.pem');
|
||||||
|
|
||||||
const decryptError = {
|
const decryptError = {
|
||||||
@ -96,7 +97,7 @@ const decryptError = {
|
|||||||
assert.strictEqual(decryptedBufferWithPassword.toString(), input);
|
assert.strictEqual(decryptedBufferWithPassword.toString(), input);
|
||||||
|
|
||||||
// Now with RSA_NO_PADDING. Plaintext needs to match key size.
|
// Now with RSA_NO_PADDING. Plaintext needs to match key size.
|
||||||
const plaintext = 'x'.repeat(128);
|
const plaintext = 'x'.repeat(rsaKeySize / 8);
|
||||||
encryptedBuffer = crypto.privateEncrypt({
|
encryptedBuffer = crypto.privateEncrypt({
|
||||||
padding: crypto.constants.RSA_NO_PADDING,
|
padding: crypto.constants.RSA_NO_PADDING,
|
||||||
key: rsaKeyPemEncrypted,
|
key: rsaKeyPemEncrypted,
|
||||||
@ -153,7 +154,7 @@ const decryptError = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function test_rsa(padding) {
|
function test_rsa(padding) {
|
||||||
const size = (padding === 'RSA_NO_PADDING') ? 1024 / 8 : 32;
|
const size = (padding === 'RSA_NO_PADDING') ? rsaKeySize / 8 : 32;
|
||||||
const input = Buffer.allocUnsafe(size);
|
const input = Buffer.allocUnsafe(size);
|
||||||
for (let i = 0; i < input.length; i++)
|
for (let i = 0; i < input.length; i++)
|
||||||
input[i] = (i * 7 + 11) & 0xff;
|
input[i] = (i * 7 + 11) & 0xff;
|
||||||
@ -189,12 +190,10 @@ let rsaVerify = crypto.createVerify('SHA1');
|
|||||||
assert.ok(rsaSign);
|
assert.ok(rsaSign);
|
||||||
assert.ok(rsaVerify);
|
assert.ok(rsaVerify);
|
||||||
|
|
||||||
const expectedSignature =
|
const expectedSignature = fixtures.readKey(
|
||||||
'5c50e3145c4e2497aadb0eabc83b342d0b0021ece0d4c4a064b7c' +
|
'rsa_public_sha1_signature_signedby_rsa_private_pkcs8.sha1',
|
||||||
'8f020d7e2688b122bfb54c724ac9ee169f83f66d2fe90abeb95e8' +
|
'hex'
|
||||||
'e1290e7e177152a4de3d944cf7d4883114a20ed0f78e70e25ef0f' +
|
);
|
||||||
'60f06b858e6af42a2f276ede95bbc6bc9a9bbdda15bd663186a6f' +
|
|
||||||
'40819a7af19e577bb2efa5e579a1f5ce8a0d4ca8b8f6';
|
|
||||||
|
|
||||||
rsaSign.update(rsaPubPem);
|
rsaSign.update(rsaPubPem);
|
||||||
let rsaSignature = rsaSign.sign(rsaKeyPem, 'hex');
|
let rsaSignature = rsaSign.sign(rsaKeyPem, 'hex');
|
||||||
@ -235,23 +234,21 @@ assert.throws(() => {
|
|||||||
// Test RSA signing and verification
|
// Test RSA signing and verification
|
||||||
//
|
//
|
||||||
{
|
{
|
||||||
const privateKey = fixtures.readSync('test_rsa_privkey_2.pem');
|
const privateKey = fixtures.readKey('rsa_private_b.pem');
|
||||||
const publicKey = fixtures.readSync('test_rsa_pubkey_2.pem');
|
const publicKey = fixtures.readKey('rsa_public_b.pem');
|
||||||
|
|
||||||
const input = 'I AM THE WALRUS';
|
const input = 'I AM THE WALRUS';
|
||||||
|
|
||||||
const signature =
|
const signature = fixtures.readKey(
|
||||||
'79d59d34f56d0e94aa6a3e306882b52ed4191f07521f25f505a078dc2f89' +
|
'I_AM_THE_WALRUS_sha256_signature_signedby_rsa_private_b.sha256',
|
||||||
'396e0c8ac89e996fde5717f4cb89199d8fec249961fcb07b74cd3d2a4ffa' +
|
'hex'
|
||||||
'235417b69618e4bcd76b97e29975b7ce862299410e1b522a328e44ac9bb2' +
|
);
|
||||||
'8195e0268da7eda23d9825ac43c724e86ceeee0d0d4465678652ccaf6501' +
|
|
||||||
'0ddfb299bedeb1ad';
|
|
||||||
|
|
||||||
const sign = crypto.createSign('SHA256');
|
const sign = crypto.createSign('SHA256');
|
||||||
sign.update(input);
|
sign.update(input);
|
||||||
|
|
||||||
const output = sign.sign(privateKey, 'hex');
|
const output = sign.sign(privateKey, 'hex');
|
||||||
assert.strictEqual(signature, output);
|
assert.strictEqual(output, signature);
|
||||||
|
|
||||||
const verify = crypto.createVerify('SHA256');
|
const verify = crypto.createVerify('SHA256');
|
||||||
verify.update(input);
|
verify.update(input);
|
||||||
@ -263,7 +260,7 @@ assert.throws(() => {
|
|||||||
sign2.update(input);
|
sign2.update(input);
|
||||||
|
|
||||||
const output2 = sign2.sign(privateKey, 'hex');
|
const output2 = sign2.sign(privateKey, 'hex');
|
||||||
assert.strictEqual(signature, output2);
|
assert.strictEqual(output2, signature);
|
||||||
|
|
||||||
const verify2 = crypto.createVerify('SHA256');
|
const verify2 = crypto.createVerify('SHA256');
|
||||||
verify2.update(input);
|
verify2.update(input);
|
||||||
|
@ -224,17 +224,12 @@ assert.throws(function() {
|
|||||||
});
|
});
|
||||||
|
|
||||||
assert.throws(function() {
|
assert.throws(function() {
|
||||||
// The correct header inside `test_bad_rsa_privkey.pem` should have been
|
// The correct header inside `rsa_private_pkcs8_bad.pem` should have been
|
||||||
// -----BEGIN PRIVATE KEY----- and -----END PRIVATE KEY-----
|
// -----BEGIN PRIVATE KEY----- and -----END PRIVATE KEY-----
|
||||||
// instead of
|
// instead of
|
||||||
// -----BEGIN RSA PRIVATE KEY----- and -----END RSA PRIVATE KEY-----
|
// -----BEGIN RSA PRIVATE KEY----- and -----END RSA PRIVATE KEY-----
|
||||||
// It is generated in this way:
|
const sha1_privateKey = fixtures.readKey('rsa_private_pkcs8_bad.pem',
|
||||||
// $ openssl genrsa -out mykey.pem 512;
|
'ascii');
|
||||||
// $ openssl pkcs8 -topk8 -inform PEM -outform PEM -in mykey.pem \
|
|
||||||
// -out private_key.pem -nocrypt;
|
|
||||||
// Then open private_key.pem and change its header and footer.
|
|
||||||
const sha1_privateKey = fixtures.readSync('test_bad_rsa_privkey.pem',
|
|
||||||
'ascii');
|
|
||||||
// This would inject errors onto OpenSSL's error stack
|
// This would inject errors onto OpenSSL's error stack
|
||||||
crypto.createSign('sha1').sign(sha1_privateKey);
|
crypto.createSign('sha1').sign(sha1_privateKey);
|
||||||
}, (err) => {
|
}, (err) => {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user