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.pfx \
|
||||
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_2048.pem \
|
||||
rsa_private_4096.pem \
|
||||
@ -566,6 +576,36 @@ dsa_private_encrypted_1025.pem:
|
||||
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:
|
||||
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 certPfx = fixtures.readSync('test_cert.pfx');
|
||||
const keyPem = fixtures.readSync('test_key.pem', 'ascii');
|
||||
const rsaPubPem = fixtures.readSync('test_rsa_pubkey.pem', 'ascii');
|
||||
const rsaKeyPem = fixtures.readSync('test_rsa_privkey.pem', 'ascii');
|
||||
const rsaPubPem = fixtures.readKey('rsa_public.pem', 'ascii');
|
||||
const rsaKeyPem = fixtures.readKey('rsa_private.pem', 'ascii');
|
||||
|
||||
// PFX tests
|
||||
tls.createSecureContext({ pfx: certPfx, passphrase: 'sample' });
|
||||
@ -626,14 +626,11 @@ common.expectsError(
|
||||
|
||||
rsaSign.update(rsaPubPem);
|
||||
const rsaSignature = rsaSign.sign(rsaKeyPem, 'hex');
|
||||
assert.strictEqual(
|
||||
rsaSignature,
|
||||
'5c50e3145c4e2497aadb0eabc83b342d0b0021ece0d4c4a064b7c' +
|
||||
'8f020d7e2688b122bfb54c724ac9ee169f83f66d2fe90abeb95e8' +
|
||||
'e1290e7e177152a4de3d944cf7d4883114a20ed0f78e70e25ef0f' +
|
||||
'60f06b858e6af42a2f276ede95bbc6bc9a9bbdda15bd663186a6f' +
|
||||
'40819a7af19e577bb2efa5e579a1f5ce8a0d4ca8b8f6'
|
||||
const expectedSignature = fixtures.readKey(
|
||||
'rsa_public_sha1_signature_signedby_rsa_private.sha1',
|
||||
'hex'
|
||||
);
|
||||
assert.strictEqual(rsaSignature, expectedSignature);
|
||||
|
||||
rsaVerify.update(rsaPubPem);
|
||||
assert.strictEqual(rsaVerify.verify(rsaPubPem, rsaSignature, 'hex'), true);
|
||||
@ -643,17 +640,15 @@ common.expectsError(
|
||||
// Test RSA signing and verification
|
||||
//
|
||||
{
|
||||
const privateKey = fixtures.readSync('test_rsa_privkey_2.pem');
|
||||
const publicKey = fixtures.readSync('test_rsa_pubkey_2.pem');
|
||||
const privateKey = fixtures.readKey('rsa_private_b.pem');
|
||||
const publicKey = fixtures.readKey('rsa_public_b.pem');
|
||||
|
||||
const input = 'I AM THE WALRUS';
|
||||
|
||||
const signature =
|
||||
'79d59d34f56d0e94aa6a3e306882b52ed4191f07521f25f505a078dc2f89' +
|
||||
'396e0c8ac89e996fde5717f4cb89199d8fec249961fcb07b74cd3d2a4ffa' +
|
||||
'235417b69618e4bcd76b97e29975b7ce862299410e1b522a328e44ac9bb2' +
|
||||
'8195e0268da7eda23d9825ac43c724e86ceeee0d0d4465678652ccaf6501' +
|
||||
'0ddfb299bedeb1ad';
|
||||
const signature = fixtures.readKey(
|
||||
'I_AM_THE_WALRUS_sha256_signature_signedby_rsa_private_b.sha256',
|
||||
'hex'
|
||||
);
|
||||
|
||||
const sign = crypto.createSign('SHA256');
|
||||
sign.update(input);
|
||||
|
@ -21,8 +21,8 @@ const {
|
||||
|
||||
const fixtures = require('../common/fixtures');
|
||||
|
||||
const publicPem = fixtures.readSync('test_rsa_pubkey.pem', 'ascii');
|
||||
const privatePem = fixtures.readSync('test_rsa_privkey.pem', 'ascii');
|
||||
const publicPem = fixtures.readKey('rsa_public.pem', 'ascii');
|
||||
const privatePem = fixtures.readKey('rsa_private.pem', 'ascii');
|
||||
|
||||
const publicDsa = fixtures.readKey('dsa_public_1025.pem', 'ascii');
|
||||
const privateDsa = fixtures.readKey('dsa_private_encrypted_1025.pem',
|
||||
|
@ -13,15 +13,16 @@ const fixtures = require('../common/fixtures');
|
||||
// Test certificates
|
||||
const certPem = fixtures.readSync('test_cert.pem', 'ascii');
|
||||
const keyPem = fixtures.readSync('test_key.pem', 'ascii');
|
||||
const rsaPubPem = fixtures.readSync('test_rsa_pubkey.pem', 'ascii');
|
||||
const rsaKeyPem = fixtures.readSync('test_rsa_privkey.pem', 'ascii');
|
||||
const rsaKeyPemEncrypted = fixtures.readSync('test_rsa_privkey_encrypted.pem',
|
||||
'ascii');
|
||||
const rsaKeySize = 2048;
|
||||
const rsaPubPem = fixtures.readKey('rsa_public.pem', 'ascii');
|
||||
const rsaKeyPem = fixtures.readKey('rsa_private.pem', 'ascii');
|
||||
const rsaKeyPemEncrypted = fixtures.readKey('rsa_private_encrypted.pem',
|
||||
'ascii');
|
||||
const dsaPubPem = fixtures.readSync('test_dsa_pubkey.pem', 'ascii');
|
||||
const dsaKeyPem = fixtures.readSync('test_dsa_privkey.pem', 'ascii');
|
||||
const dsaKeyPemEncrypted = fixtures.readSync('test_dsa_privkey_encrypted.pem',
|
||||
'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 decryptError = {
|
||||
@ -96,7 +97,7 @@ const decryptError = {
|
||||
assert.strictEqual(decryptedBufferWithPassword.toString(), input);
|
||||
|
||||
// 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({
|
||||
padding: crypto.constants.RSA_NO_PADDING,
|
||||
key: rsaKeyPemEncrypted,
|
||||
@ -153,7 +154,7 @@ const decryptError = {
|
||||
}
|
||||
|
||||
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);
|
||||
for (let i = 0; i < input.length; i++)
|
||||
input[i] = (i * 7 + 11) & 0xff;
|
||||
@ -189,12 +190,10 @@ let rsaVerify = crypto.createVerify('SHA1');
|
||||
assert.ok(rsaSign);
|
||||
assert.ok(rsaVerify);
|
||||
|
||||
const expectedSignature =
|
||||
'5c50e3145c4e2497aadb0eabc83b342d0b0021ece0d4c4a064b7c' +
|
||||
'8f020d7e2688b122bfb54c724ac9ee169f83f66d2fe90abeb95e8' +
|
||||
'e1290e7e177152a4de3d944cf7d4883114a20ed0f78e70e25ef0f' +
|
||||
'60f06b858e6af42a2f276ede95bbc6bc9a9bbdda15bd663186a6f' +
|
||||
'40819a7af19e577bb2efa5e579a1f5ce8a0d4ca8b8f6';
|
||||
const expectedSignature = fixtures.readKey(
|
||||
'rsa_public_sha1_signature_signedby_rsa_private_pkcs8.sha1',
|
||||
'hex'
|
||||
);
|
||||
|
||||
rsaSign.update(rsaPubPem);
|
||||
let rsaSignature = rsaSign.sign(rsaKeyPem, 'hex');
|
||||
@ -235,23 +234,21 @@ assert.throws(() => {
|
||||
// Test RSA signing and verification
|
||||
//
|
||||
{
|
||||
const privateKey = fixtures.readSync('test_rsa_privkey_2.pem');
|
||||
const publicKey = fixtures.readSync('test_rsa_pubkey_2.pem');
|
||||
const privateKey = fixtures.readKey('rsa_private_b.pem');
|
||||
const publicKey = fixtures.readKey('rsa_public_b.pem');
|
||||
|
||||
const input = 'I AM THE WALRUS';
|
||||
|
||||
const signature =
|
||||
'79d59d34f56d0e94aa6a3e306882b52ed4191f07521f25f505a078dc2f89' +
|
||||
'396e0c8ac89e996fde5717f4cb89199d8fec249961fcb07b74cd3d2a4ffa' +
|
||||
'235417b69618e4bcd76b97e29975b7ce862299410e1b522a328e44ac9bb2' +
|
||||
'8195e0268da7eda23d9825ac43c724e86ceeee0d0d4465678652ccaf6501' +
|
||||
'0ddfb299bedeb1ad';
|
||||
const signature = fixtures.readKey(
|
||||
'I_AM_THE_WALRUS_sha256_signature_signedby_rsa_private_b.sha256',
|
||||
'hex'
|
||||
);
|
||||
|
||||
const sign = crypto.createSign('SHA256');
|
||||
sign.update(input);
|
||||
|
||||
const output = sign.sign(privateKey, 'hex');
|
||||
assert.strictEqual(signature, output);
|
||||
assert.strictEqual(output, signature);
|
||||
|
||||
const verify = crypto.createVerify('SHA256');
|
||||
verify.update(input);
|
||||
@ -263,7 +260,7 @@ assert.throws(() => {
|
||||
sign2.update(input);
|
||||
|
||||
const output2 = sign2.sign(privateKey, 'hex');
|
||||
assert.strictEqual(signature, output2);
|
||||
assert.strictEqual(output2, signature);
|
||||
|
||||
const verify2 = crypto.createVerify('SHA256');
|
||||
verify2.update(input);
|
||||
|
@ -224,17 +224,12 @@ 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-----
|
||||
// instead of
|
||||
// -----BEGIN RSA PRIVATE KEY----- and -----END RSA PRIVATE KEY-----
|
||||
// It is generated in this way:
|
||||
// $ openssl genrsa -out mykey.pem 512;
|
||||
// $ 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');
|
||||
const sha1_privateKey = fixtures.readKey('rsa_private_pkcs8_bad.pem',
|
||||
'ascii');
|
||||
// This would inject errors onto OpenSSL's error stack
|
||||
crypto.createSign('sha1').sign(sha1_privateKey);
|
||||
}, (err) => {
|
||||
|
Loading…
x
Reference in New Issue
Block a user