blob: 6c9e2451334119aab47082350944d7f57f7e1fec [file] [log] [blame]
Gilles Peskinefd14bca2017-05-11 17:57:22 +02001## This file contains a record of how some of the test data was
2## generated. The final build products are committed to the repository
3## as well to make sure that the test data is identical. You do not
4## need to use this makefile unless you're extending mbed TLS's tests.
Gilles Peskinef040a172017-05-05 18:56:12 +02005
Gilles Peskinefd14bca2017-05-11 17:57:22 +02006## Many data files were generated prior to the existence of this
7## makefile, so the method of their generation was not recorded.
Gilles Peskinef040a172017-05-05 18:56:12 +02008
Gilles Peskinefd14bca2017-05-11 17:57:22 +02009## Note that in addition to depending on the version of the data
10## generation tool, many of the build outputs are randomized, so
11## running this makefile twice would not produce the same results.
12
13## Tools
14OPENSSL ?= openssl
Manuel Pégourié-Gonnard29d60fb2017-06-05 10:20:32 +020015FAKETIME ?= faketime
Hanno Becker418a6222017-09-14 07:51:28 +010016MBEDTLS_CERT_WRITE ?= $(PWD)/../../programs/x509/cert_write
Hanno Becker50cb93a2018-10-08 17:15:28 +010017MBEDTLS_CERT_REQ ?= $(PWD)/../../programs/x509/cert_req
18
Gilles Peskinefd14bca2017-05-11 17:57:22 +020019## Build the generated test data. Note that since the final outputs
20## are committed to the repository, this target should do nothing on a
21## fresh checkout. Furthermore, since the generation is randomized,
22## re-running the same targets may result in differing files. The goal
23## of this makefile is primarily to serve as a record of how the
24## targets were generated in the first place.
Gilles Peskinef040a172017-05-05 18:56:12 +020025default: all_final
26
27all_intermediate := # temporary files
28all_final := # files used by tests
29
Gilles Peskinefd14bca2017-05-11 17:57:22 +020030
31
32################################################################
33#### Generate certificates from existing keys
34################################################################
35
Hanno Becker418a6222017-09-14 07:51:28 +010036test_ca_crt = test-ca.crt
Gilles Peskinefd14bca2017-05-11 17:57:22 +020037test_ca_key_file_rsa = test-ca.key
38test_ca_pwd_rsa = PolarSSLTest
39test_ca_config_file = test-ca.opensslconf
40
Hanno Beckerb8377752018-10-31 15:29:19 +000041test-ca.req.sha256: $(test_ca_key_file_rsa)
42 $(MBEDTLS_CERT_REQ) output_file=$@ filename=$(test_ca_key_file_rsa) password=$(test_ca_pwd_rsa) subject_name="C=NL,O=PolarSSL,CN=PolarSSL Test CA" md=SHA256
43all_intermediate += test-ca.req.sha256
44
45test-ca.crt: $(test_ca_key_file_rsa) test-ca.req.sha256
Ron Eldor36503922019-02-12 15:03:42 +020046 $(MBEDTLS_CERT_WRITE) is_ca=1 serial=3 request_file=test-ca.req.sha256 selfsign=1 issuer_name="C=NL,O=PolarSSL,CN=PolarSSL Test CA" issuer_key=$(test_ca_key_file_rsa) issuer_pwd=$(test_ca_pwd_rsa) not_before=20190210144400 not_after=20290210144400 md=SHA1 version=3 output_file=$@
Hanno Beckerb8377752018-10-31 15:29:19 +000047all_final += test-ca.crt
48
Hanno Becker5895a2d2019-03-12 16:49:26 +000049test-ca.crt.der: test-ca.crt
50 $(OPENSSL) x509 -inform PEM -in $< -outform DER -out $@
51all_final += test-ca.crt.der
52
53test-ca.key.der: $(test_ca_key_file_rsa)
54 $(OPENSSL) pkey -in $< -out $@ -inform PEM -outform DER -passin "pass:$(test_ca_pwd_rsa)"
55all_final += test-ca.key.der
56
Hanno Beckerb8377752018-10-31 15:29:19 +000057test-ca-sha1.crt: $(test_ca_key_file_rsa) test-ca.req.sha256
Ron Eldor36503922019-02-12 15:03:42 +020058 $(MBEDTLS_CERT_WRITE) is_ca=1 serial=3 request_file=test-ca.req.sha256 selfsign=1 issuer_name="C=NL,O=PolarSSL,CN=PolarSSL Test CA" issuer_key=$(test_ca_key_file_rsa) issuer_pwd=$(test_ca_pwd_rsa) not_before=20190210144400 not_after=20290210144400 md=SHA1 version=3 output_file=$@
Gilles Peskinef040a172017-05-05 18:56:12 +020059all_final += test-ca-sha1.crt
Hanno Beckerb8377752018-10-31 15:29:19 +000060
Hanno Becker5895a2d2019-03-12 16:49:26 +000061test-ca-sha1.crt.der: test-ca-sha1.crt
62 $(OPENSSL) x509 -in $< -out $@ -inform PEM -outform DER
63all_final += test-ca-sha1.crt.der
64
Hanno Beckerb8377752018-10-31 15:29:19 +000065test-ca-sha256.crt: $(test_ca_key_file_rsa) test-ca.req.sha256
Ron Eldor36503922019-02-12 15:03:42 +020066 $(MBEDTLS_CERT_WRITE) is_ca=1 serial=3 request_file=test-ca.req.sha256 selfsign=1 issuer_name="C=NL,O=PolarSSL,CN=PolarSSL Test CA" issuer_key=$(test_ca_key_file_rsa) issuer_pwd=$(test_ca_pwd_rsa) not_before=20190210144400 not_after=20290210144400 md=SHA256 version=3 output_file=$@
Gilles Peskinef040a172017-05-05 18:56:12 +020067all_final += test-ca-sha256.crt
68
Hanno Becker5895a2d2019-03-12 16:49:26 +000069test-ca-sha256.crt.der: test-ca-sha256.crt
70 $(OPENSSL) x509 -in $< -out $@ -inform PEM -outform DER
71all_final += test-ca-sha256.crt.der
72
Ron Eldor36503922019-02-12 15:03:42 +020073test-ca_utf8.crt: $(test_ca_key_file_rsa)
74 $(OPENSSL) req -x509 -new -nodes -key $(test_ca_key_file_rsa) -passin "pass:$(test_ca_pwd_rsa)" -set_serial 3 -config $(test_ca_config_file) -sha1 -days 3653 -utf8 -subj "/C=NL/O=PolarSSL/CN=PolarSSL Test CA" -out $@
75all_final += test-ca_utf8.crt
76
77test-ca_printable.crt: $(test_ca_key_file_rsa)
78 $(OPENSSL) req -x509 -new -nodes -key $(test_ca_key_file_rsa) -passin "pass:$(test_ca_pwd_rsa)" -set_serial 3 -config $(test_ca_config_file) -sha1 -days 3653 -subj "/C=NL/O=PolarSSL/CN=PolarSSL Test CA" -out $@
79all_final += test-ca_printable.crt
80
81test-ca_uppercase.crt: $(test_ca_key_file_rsa)
82 $(OPENSSL) req -x509 -new -nodes -key $(test_ca_key_file_rsa) -passin "pass:$(test_ca_pwd_rsa)" -set_serial 3 -config $(test_ca_config_file) -sha1 -days 3653 -subj "/C=NL/O=PolarSSL/CN=PolarSSL Test CA" -out $@
83all_final += test-ca_uppercase.crt
84
Manuel Pégourié-Gonnard2d825d42017-07-03 18:06:38 +020085test_ca_key_file_rsa_alt = test-ca-alt.key
86
87$(test_ca_key_file_rsa_alt):
88 $(OPENSSL) genrsa -out $@ 2048
89test-ca-alt.csr: $(test_ca_key_file_rsa_alt) $(test_ca_config_file)
90 $(OPENSSL) req -new -config $(test_ca_config_file) -key $(test_ca_key_file_rsa_alt) -subj "/C=NL/O=PolarSSL/CN=PolarSSL Test CA" -out $@
91all_intermediate += test-ca-alt.csr
92test-ca-alt.crt: $(test_ca_key_file_rsa_alt) $(test_ca_config_file) test-ca-alt.csr
93 $(OPENSSL) req -x509 -config $(test_ca_config_file) -key $(test_ca_key_file_rsa_alt) -set_serial 0 -days 3653 -sha256 -in test-ca-alt.csr -out $@
94all_final += test-ca-alt.crt
95test-ca-alt-good.crt: test-ca-alt.crt test-ca-sha256.crt
96 cat test-ca-alt.crt test-ca-sha256.crt > $@
97all_final += test-ca-alt-good.crt
98test-ca-good-alt.crt: test-ca-alt.crt test-ca-sha256.crt
99 cat test-ca-sha256.crt test-ca-alt.crt > $@
100all_final += test-ca-good-alt.crt
101
Manuel Pégourié-Gonnardbc313012017-06-27 12:51:52 +0200102test_ca_crt_file_ec = test-ca2.crt
103test_ca_key_file_ec = test-ca2.key
104
Hanno Becker5895a2d2019-03-12 16:49:26 +0000105test-ca2.crt.der: $(test_ca_crt_file_ec)
106 $(OPENSSL) x509 -in $(test_ca_crt_file_ec) -out $@ -inform PEM -outform DER
107all_final += test-ca2.crt.der
108
109 test-ca2.key.der: $(test_ca_key_file_ec)
110 $(OPENSSL) pkey -in $(test_ca_key_file_ec) -out $@ -inform PEM -outform DER
111all_final += test-ca2.key.der
112
Hanno Beckerb9630812018-10-31 16:28:05 +0000113test_ca_crt_cat12 = test-ca_cat12.crt
114$(test_ca_crt_cat12): $(test_ca_crt) $(test_ca_crt_file_ec)
115 cat $(test_ca_crt) $(test_ca_crt_file_ec) > $@
116all_final += $(test_ca_crt_cat12)
117
118test_ca_crt_cat21 = test-ca_cat21.crt
119$(test_ca_crt_cat21): $(test_ca_crt) $(test_ca_crt_file_ec)
120 cat $(test_ca_crt_file_ec) $(test_ca_crt) > $@
121all_final += $(test_ca_crt_cat21)
122
Manuel Pégourié-Gonnardbc313012017-06-27 12:51:52 +0200123test-int-ca.csr: test-int-ca.key $(test_ca_config_file)
124 $(OPENSSL) req -new -config $(test_ca_config_file) -key test-int-ca.key -subj "/C=NL/O=PolarSSL/CN=PolarSSL Test Intermediate CA" -out $@
125all_intermediate += test-int-ca.csr
Manuel Pégourié-Gonnard7ff243a2017-08-08 18:54:13 +0200126test-int-ca-exp.crt: $(test_ca_crt_file_ec) $(test_ca_key_file_ec) $(test_ca_config_file) test-int-ca.csr
Manuel Pégourié-Gonnardbc313012017-06-27 12:51:52 +0200127 $(FAKETIME) -f -3653d $(OPENSSL) x509 -req -extfile $(test_ca_config_file) -extensions v3_ca -CA $(test_ca_crt_file_ec) -CAkey $(test_ca_key_file_ec) -set_serial 14 -days 3653 -sha256 -in test-int-ca.csr -out $@
128all_final += test-int-ca-exp.crt
129
Ron Eldor36503922019-02-12 15:03:42 +0200130enco-cert-utf8str.pem: rsa_pkcs1_1024_clear.pem
131 $(MBEDTLS_CERT_WRITE) subject_key=rsa_pkcs1_1024_clear.pem subject_name="CN=dw.yonan.net" issuer_crt=enco-ca-prstr.pem issuer_key=rsa_pkcs1_1024_clear.pem not_before=20190210144406 not_after=20290210144406 md=SHA1 version=3 output_file=$@
132
Manuel Pégourié-Gonnardfd3e4fb2018-03-13 11:53:30 +0100133crl-idp.pem: $(test_ca_crt) $(test_ca_key_file_rsa) $(test_ca_config_file)
134 $(OPENSSL) ca -gencrl -batch -cert $(test_ca_crt) -keyfile $(test_ca_key_file_rsa) -key $(test_ca_pwd_rsa) -config $(test_ca_config_file) -name test_ca -md sha256 -crldays 3653 -crlexts crl_ext_idp -out $@
Manuel Pégourié-Gonnarda63305d2018-03-14 12:23:56 +0100135all_final += crl-idp.pem
136crl-idpnc.pem: $(test_ca_crt) $(test_ca_key_file_rsa) $(test_ca_config_file)
137 $(OPENSSL) ca -gencrl -batch -cert $(test_ca_crt) -keyfile $(test_ca_key_file_rsa) -key $(test_ca_pwd_rsa) -config $(test_ca_config_file) -name test_ca -md sha256 -crldays 3653 -crlexts crl_ext_idp_nc -out $@
138all_final += crl-idpnc.pem
Manuel Pégourié-Gonnardfd3e4fb2018-03-13 11:53:30 +0100139
Gilles Peskinefd14bca2017-05-11 17:57:22 +0200140cli_crt_key_file_rsa = cli-rsa.key
141cli_crt_extensions_file = cli.opensslconf
142
Gilles Peskinef040a172017-05-05 18:56:12 +0200143cli-rsa.csr: $(cli_crt_key_file_rsa)
Hanno Becker386f99c2018-11-01 17:20:22 +0000144 $(MBEDTLS_CERT_REQ) output_file=$@ filename=$< subject_name="C=NL,O=PolarSSL,CN=PolarSSL Client 2" md=SHA1
Gilles Peskinef040a172017-05-05 18:56:12 +0200145all_intermediate += cli-rsa.csr
Hanno Becker386f99c2018-11-01 17:20:22 +0000146
147cli-rsa-sha1.crt: cli-rsa.csr
Ron Eldor36503922019-02-12 15:03:42 +0200148 $(MBEDTLS_CERT_WRITE) request_file=$< serial=4 issuer_crt=$(test_ca_crt) issuer_key=$(test_ca_key_file_rsa) issuer_pwd=$(test_ca_pwd_rsa) not_before=20190210144406 not_after=20290210144406 md=SHA1 version=3 output_file=$@
Hanno Becker386f99c2018-11-01 17:20:22 +0000149
150cli-rsa-sha256.crt: cli-rsa.csr
Ron Eldor36503922019-02-12 15:03:42 +0200151 $(MBEDTLS_CERT_WRITE) request_file=$< serial=4 issuer_crt=$(test_ca_crt) issuer_key=$(test_ca_key_file_rsa) issuer_pwd=$(test_ca_pwd_rsa) not_before=20190210144406 not_after=20290210144406 md=SHA256 version=3 output_file=$@
Gilles Peskinef040a172017-05-05 18:56:12 +0200152all_final += cli-rsa-sha256.crt
153
Hanno Becker5895a2d2019-03-12 16:49:26 +0000154cli-rsa-sha256.crt.der: cli-rsa-sha256.crt
155 $(OPENSSL) x509 -in $< -out $@ -inform PEM -outform DER
156all_final += cli-rsa-sha256.crt.der
157
Paul Elliott027b6012020-11-24 17:30:18 +0000158cli-rsa-sha256-badalg.crt.der: cli-rsa-sha256.crt.der
159 hexdump -ve '1/1 "%.2X"' $< | sed "s/06092A864886F70D01010B0500/06092A864886F70D01010B0900/2" | xxd -r -p > $@
160all_final += cli-rsa-sha256-badalg.crt.der
161
162cli-rsa.key.der: $(cli_crt_key_file_rsa)
Hanno Becker5895a2d2019-03-12 16:49:26 +0000163 $(OPENSSL) pkey -in $< -out $@ -inform PEM -outform DER
164all_final += cli-rsa.key.der
165
Manuel Pégourié-Gonnard29d60fb2017-06-05 10:20:32 +0200166test_ca_int_rsa1 = test-int-ca.crt
167
168server7.csr: server7.key
169 $(OPENSSL) req -new -key server7.key -subj "/C=NL/O=PolarSSL/CN=localhost" -out $@
170all_intermediate += server7.csr
171server7-expired.crt: server7.csr $(test_ca_int_rsa1)
172 $(FAKETIME) -f -3653d $(OPENSSL) x509 -req -extfile $(cli_crt_extensions_file) -extensions cli-rsa -CA $(test_ca_int_rsa1) -CAkey test-int-ca.key -set_serial 16 -days 3653 -sha256 -in server7.csr | cat - $(test_ca_int_rsa1) > $@
173all_final += server7-expired.crt
174server7-future.crt: server7.csr $(test_ca_int_rsa1)
175 $(FAKETIME) -f +3653d $(OPENSSL) x509 -req -extfile $(cli_crt_extensions_file) -extensions cli-rsa -CA $(test_ca_int_rsa1) -CAkey test-int-ca.key -set_serial 16 -days 3653 -sha256 -in server7.csr | cat - $(test_ca_int_rsa1) > $@
176all_final += server7-future.crt
Manuel Pégourié-Gonnard4dfc04a2017-06-05 11:12:13 +0200177server7-badsign.crt: server7.crt $(test_ca_int_rsa1)
Manuel Pégourié-Gonnardd19a41d2017-07-14 11:05:59 +0200178 { head -n-2 $<; tail -n-2 $< | sed -e '1s/0\(=*\)$$/_\1/' -e '1s/[^_=]\(=*\)$$/0\1/' -e '1s/_/1/'; cat $(test_ca_int_rsa1); } > $@
Manuel Pégourié-Gonnard4dfc04a2017-06-05 11:12:13 +0200179all_final += server7-badsign.crt
Manuel Pégourié-Gonnardbc313012017-06-27 12:51:52 +0200180server7_int-ca-exp.crt: server7.crt test-int-ca-exp.crt
181 cat server7.crt test-int-ca-exp.crt > $@
182all_final += server7_int-ca-exp.crt
183
Hanno Becker5895a2d2019-03-12 16:49:26 +0000184cli2.crt.der: cli2.crt
185 $(OPENSSL) x509 -in $< -out $@ -inform PEM -outform DER
186all_final += cli2.crt.der
187
188 cli2.key.der: cli2.key
189 $(OPENSSL) pkey -in $< -out $@ -inform PEM -outform DER
190all_final += cli2.key.der
191
192 server5.crt.der: server5.crt
193 $(OPENSSL) x509 -in $< -out $@ -inform PEM -outform DER
194all_final += server5.crt.der
195
196 server5.key.der: server5.key
197 $(OPENSSL) pkey -in $< -out $@ -inform PEM -outform DER
198all_final += server5.key.der
199
Manuel Pégourié-Gonnardbc313012017-06-27 12:51:52 +0200200server5-ss-expired.crt: server5.key
201 $(FAKETIME) -f -3653d $(OPENSSL) req -x509 -new -subj "/C=UK/O=mbed TLS/OU=testsuite/CN=localhost" -days 3653 -sha256 -key $< -out $@
202all_final += server5-ss-expired.crt
203
Manuel Pégourié-Gonnardc10afdb2017-06-29 09:48:08 +0200204# try to forge a copy of test-int-ca3 with different key
205server5-ss-forgeca.crt: server5.key
206 $(FAKETIME) '2015-09-01 14:08:43' $(OPENSSL) req -x509 -new -subj "/C=UK/O=mbed TLS/CN=mbed TLS Test intermediate CA 3" -set_serial 77 -config $(test_ca_config_file) -extensions noext_ca -days 3650 -sha256 -key $< -out $@
207all_final += server5-ss-forgeca.crt
208
Manuel Pégourié-Gonnard58c8da22020-07-23 12:39:53 +0200209server5-tricky-ip-san.crt: server5.key
210 $(OPENSSL) req -x509 -new -subj "/C=UK/O=Mbed TLS/CN=Mbed TLS Tricky IP SAN" -set_serial 77 -config $(test_ca_config_file) -extensions tricky_ip_san -days 3650 -sha256 -key server5.key -out $@
211all_final += server5-tricky-ip-san.crt
212
Manuel Pégourié-Gonnardd19a41d2017-07-14 11:05:59 +0200213server10-badsign.crt: server10.crt
214 { head -n-2 $<; tail -n-2 $< | sed -e '1s/0\(=*\)$$/_\1/' -e '1s/[^_=]\(=*\)$$/0\1/' -e '1s/_/1/'; } > $@
215all_final += server10-badsign.crt
216server10-bs_int3.pem: server10-badsign.crt test-int-ca3.crt
217 cat server10-badsign.crt test-int-ca3.crt > $@
218all_final += server10-bs_int3.pem
219test-int-ca3-badsign.crt: test-int-ca3.crt
220 { head -n-2 $<; tail -n-2 $< | sed -e '1s/0\(=*\)$$/_\1/' -e '1s/[^_=]\(=*\)$$/0\1/' -e '1s/_/1/'; } > $@
221all_final += test-int-ca3-badsign.crt
222server10_int3-bs.pem: server10.crt test-int-ca3-badsign.crt
223 cat server10.crt test-int-ca3-badsign.crt > $@
Jaeden Ameroe59c4192019-02-27 11:16:41 +0000224all_final += server10_int3-bs.pem
Manuel Pégourié-Gonnardc10afdb2017-06-29 09:48:08 +0200225
Ron Eldorb0065182017-10-16 12:40:27 +0300226rsa_pkcs1_2048_public.pem: server8.key
Ron Eldor3f2da842017-10-17 15:50:30 +0300227 $(OPENSSL) rsa -in $< -outform PEM -RSAPublicKey_out -out $@
228all_final += rsa_pkcs1_2048_public.pem
Gilles Peskineea8d6972017-11-28 17:30:52 +0100229
Ron Eldorb0065182017-10-16 12:40:27 +0300230rsa_pkcs1_2048_public.der: rsa_pkcs1_2048_public.pem
Ron Eldor3f2da842017-10-17 15:50:30 +0300231 $(OPENSSL) rsa -RSAPublicKey_in -in $< -outform DER -RSAPublicKey_out -out $@
232all_final += rsa_pkcs1_2048_public.der
233
234rsa_pkcs8_2048_public.pem: server8.key
235 $(OPENSSL) rsa -in $< -outform PEM -pubout -out $@
236all_final += rsa_pkcs8_2048_public.pem
237
238rsa_pkcs8_2048_public.der: rsa_pkcs8_2048_public.pem
239 $(OPENSSL) rsa -pubin -in $< -outform DER -pubout -out $@
Ron Eldorb0065182017-10-16 12:40:27 +0300240all_final += rsa_pkcs8_2048_public.der
Gilles Peskineea8d6972017-11-28 17:30:52 +0100241
Hanno Beckerd16f6122017-09-05 09:23:50 +0100242################################################################
243#### Generate various RSA keys
244################################################################
Gilles Peskinebc70a182017-05-09 15:59:24 +0200245
Hanno Beckerd16f6122017-09-05 09:23:50 +0100246### Password used for PKCS1-encoded encrypted RSA keys
247keys_rsa_basic_pwd = testkey
248
249### Password used for PKCS8-encoded encrypted RSA keys
250keys_rsa_pkcs8_pwd = PolarSSLTest
251
252### Basic 1024-, 2048- and 4096-bit unencrypted RSA keys from which
253### all other encrypted RSA keys are derived.
Hanno Becker08a36dd2017-09-29 20:05:23 +0100254rsa_pkcs1_1024_clear.pem:
Hanno Beckerd16f6122017-09-05 09:23:50 +0100255 $(OPENSSL) genrsa -out $@ 1024
Hanno Becker08a36dd2017-09-29 20:05:23 +0100256all_final += rsa_pkcs1_1024_clear.pem
257rsa_pkcs1_2048_clear.pem:
Hanno Beckerd16f6122017-09-05 09:23:50 +0100258 $(OPENSSL) genrsa -out $@ 2048
Hanno Becker08a36dd2017-09-29 20:05:23 +0100259all_final += rsa_pkcs1_2048_clear.pem
260rsa_pkcs1_4096_clear.pem:
Hanno Beckerd16f6122017-09-05 09:23:50 +0100261 $(OPENSSL) genrsa -out $@ 4096
Hanno Becker08a36dd2017-09-29 20:05:23 +0100262all_final += rsa_pkcs1_4096_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100263
264###
265### PKCS1-encoded, encrypted RSA keys
266###
267
268### 1024-bit
Hanno Becker08a36dd2017-09-29 20:05:23 +0100269rsa_pkcs1_1024_des.pem: rsa_pkcs1_1024_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100270 $(OPENSSL) rsa -des -in $< -out $@ -passout "pass:$(keys_rsa_basic_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100271all_final += rsa_pkcs1_1024_des.pem
272rsa_pkcs1_1024_3des.pem: rsa_pkcs1_1024_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100273 $(OPENSSL) rsa -des3 -in $< -out $@ -passout "pass:$(keys_rsa_basic_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100274all_final += rsa_pkcs1_1024_3des.pem
275rsa_pkcs1_1024_aes128.pem: rsa_pkcs1_1024_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100276 $(OPENSSL) rsa -aes128 -in $< -out $@ -passout "pass:$(keys_rsa_basic_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100277all_final += rsa_pkcs1_1024_aes128.pem
278rsa_pkcs1_1024_aes192.pem: rsa_pkcs1_1024_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100279 $(OPENSSL) rsa -aes192 -in $< -out $@ -passout "pass:$(keys_rsa_basic_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100280all_final += rsa_pkcs1_1024_aes192.pem
281rsa_pkcs1_1024_aes256.pem: rsa_pkcs1_1024_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100282 $(OPENSSL) rsa -aes256 -in $< -out $@ -passout "pass:$(keys_rsa_basic_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100283all_final += rsa_pkcs1_1024_aes256.pem
284keys_rsa_enc_basic_1024: rsa_pkcs1_1024_des.pem rsa_pkcs1_1024_3des.pem rsa_pkcs1_1024_aes128.pem rsa_pkcs1_1024_aes192.pem rsa_pkcs1_1024_aes256.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100285
286# 2048-bit
Hanno Becker08a36dd2017-09-29 20:05:23 +0100287rsa_pkcs1_2048_des.pem: rsa_pkcs1_2048_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100288 $(OPENSSL) rsa -des -in $< -out $@ -passout "pass:$(keys_rsa_basic_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100289all_final += rsa_pkcs1_2048_des.pem
290rsa_pkcs1_2048_3des.pem: rsa_pkcs1_2048_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100291 $(OPENSSL) rsa -des3 -in $< -out $@ -passout "pass:$(keys_rsa_basic_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100292all_final += rsa_pkcs1_2048_3des.pem
293rsa_pkcs1_2048_aes128.pem: rsa_pkcs1_2048_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100294 $(OPENSSL) rsa -aes128 -in $< -out $@ -passout "pass:$(keys_rsa_basic_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100295all_final += rsa_pkcs1_2048_aes128.pem
296rsa_pkcs1_2048_aes192.pem: rsa_pkcs1_2048_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100297 $(OPENSSL) rsa -aes192 -in $< -out $@ -passout "pass:$(keys_rsa_basic_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100298all_final += rsa_pkcs1_2048_aes192.pem
299rsa_pkcs1_2048_aes256.pem: rsa_pkcs1_2048_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100300 $(OPENSSL) rsa -aes256 -in $< -out $@ -passout "pass:$(keys_rsa_basic_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100301all_final += rsa_pkcs1_2048_aes256.pem
302keys_rsa_enc_basic_2048: rsa_pkcs1_2048_des.pem rsa_pkcs1_2048_3des.pem rsa_pkcs1_2048_aes128.pem rsa_pkcs1_2048_aes192.pem rsa_pkcs1_2048_aes256.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100303
304# 4096-bit
Hanno Becker08a36dd2017-09-29 20:05:23 +0100305rsa_pkcs1_4096_des.pem: rsa_pkcs1_4096_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100306 $(OPENSSL) rsa -des -in $< -out $@ -passout "pass:$(keys_rsa_basic_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100307all_final += rsa_pkcs1_4096_des.pem
308rsa_pkcs1_4096_3des.pem: rsa_pkcs1_4096_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100309 $(OPENSSL) rsa -des3 -in $< -out $@ -passout "pass:$(keys_rsa_basic_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100310all_final += rsa_pkcs1_4096_3des.pem
311rsa_pkcs1_4096_aes128.pem: rsa_pkcs1_4096_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100312 $(OPENSSL) rsa -aes128 -in $< -out $@ -passout "pass:$(keys_rsa_basic_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100313all_final += rsa_pkcs1_4096_aes128.pem
314rsa_pkcs1_4096_aes192.pem: rsa_pkcs1_4096_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100315 $(OPENSSL) rsa -aes192 -in $< -out $@ -passout "pass:$(keys_rsa_basic_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100316all_final += rsa_pkcs1_4096_aes192.pem
317rsa_pkcs1_4096_aes256.pem: rsa_pkcs1_4096_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100318 $(OPENSSL) rsa -aes256 -in $< -out $@ -passout "pass:$(keys_rsa_basic_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100319all_final += rsa_pkcs1_4096_aes256.pem
320keys_rsa_enc_basic_4096: rsa_pkcs1_4096_des.pem rsa_pkcs1_4096_3des.pem rsa_pkcs1_4096_aes128.pem rsa_pkcs1_4096_aes192.pem rsa_pkcs1_4096_aes256.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100321
322###
323### PKCS8-v1 encoded, encrypted RSA keys
324###
325
326### 1024-bit
Hanno Becker08a36dd2017-09-29 20:05:23 +0100327rsa_pkcs8_pbe_sha1_1024_3des.der: rsa_pkcs1_1024_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100328 $(OPENSSL) pkcs8 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)" -topk8 -v1 PBE-SHA1-3DES
Hanno Becker08a36dd2017-09-29 20:05:23 +0100329all_final += rsa_pkcs8_pbe_sha1_1024_3des.der
330rsa_pkcs8_pbe_sha1_1024_3des.pem: rsa_pkcs1_1024_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100331 $(OPENSSL) pkcs8 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)" -topk8 -v1 PBE-SHA1-3DES
Hanno Becker08a36dd2017-09-29 20:05:23 +0100332all_final += rsa_pkcs8_pbe_sha1_1024_3des.pem
333keys_rsa_enc_pkcs8_v1_1024_3des: rsa_pkcs8_pbe_sha1_1024_3des.pem rsa_pkcs8_pbe_sha1_1024_3des.der
Hanno Beckerd16f6122017-09-05 09:23:50 +0100334
Hanno Becker08a36dd2017-09-29 20:05:23 +0100335rsa_pkcs8_pbe_sha1_1024_2des.der: rsa_pkcs1_1024_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100336 $(OPENSSL) pkcs8 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)" -topk8 -v1 PBE-SHA1-2DES
Hanno Becker08a36dd2017-09-29 20:05:23 +0100337all_final += rsa_pkcs8_pbe_sha1_1024_2des.der
338rsa_pkcs8_pbe_sha1_1024_2des.pem: rsa_pkcs1_1024_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100339 $(OPENSSL) pkcs8 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)" -topk8 -v1 PBE-SHA1-2DES
Hanno Becker08a36dd2017-09-29 20:05:23 +0100340all_final += rsa_pkcs8_pbe_sha1_1024_2des.pem
341keys_rsa_enc_pkcs8_v1_1024_2des: rsa_pkcs8_pbe_sha1_1024_2des.pem rsa_pkcs8_pbe_sha1_1024_2des.der
Hanno Beckerd16f6122017-09-05 09:23:50 +0100342
Hanno Becker08a36dd2017-09-29 20:05:23 +0100343rsa_pkcs8_pbe_sha1_1024_rc4_128.der: rsa_pkcs1_1024_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100344 $(OPENSSL) pkcs8 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)" -topk8 -v1 PBE-SHA1-RC4-128
Hanno Becker08a36dd2017-09-29 20:05:23 +0100345all_final += rsa_pkcs8_pbe_sha1_1024_rc4_128.der
346rsa_pkcs8_pbe_sha1_1024_rc4_128.pem: rsa_pkcs1_1024_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100347 $(OPENSSL) pkcs8 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)" -topk8 -v1 PBE-SHA1-RC4-128
Hanno Becker08a36dd2017-09-29 20:05:23 +0100348all_final += rsa_pkcs8_pbe_sha1_1024_rc4_128.pem
349keys_rsa_enc_pkcs8_v1_1024_rc4_128: rsa_pkcs8_pbe_sha1_1024_rc4_128.pem rsa_pkcs8_pbe_sha1_1024_rc4_128.der
Hanno Beckerd16f6122017-09-05 09:23:50 +0100350
351keys_rsa_enc_pkcs8_v1_1024: keys_rsa_enc_pkcs8_v1_1024_3des keys_rsa_enc_pkcs8_v1_1024_2des keys_rsa_enc_pkcs8_v1_1024_rc4_128
352
353### 2048-bit
Hanno Becker08a36dd2017-09-29 20:05:23 +0100354rsa_pkcs8_pbe_sha1_2048_3des.der: rsa_pkcs1_2048_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100355 $(OPENSSL) pkcs8 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)" -topk8 -v1 PBE-SHA1-3DES
Hanno Becker08a36dd2017-09-29 20:05:23 +0100356all_final += rsa_pkcs8_pbe_sha1_2048_3des.der
357rsa_pkcs8_pbe_sha1_2048_3des.pem: rsa_pkcs1_2048_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100358 $(OPENSSL) pkcs8 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)" -topk8 -v1 PBE-SHA1-3DES
Hanno Becker08a36dd2017-09-29 20:05:23 +0100359all_final += rsa_pkcs8_pbe_sha1_2048_3des.pem
360keys_rsa_enc_pkcs8_v1_2048_3des: rsa_pkcs8_pbe_sha1_2048_3des.pem rsa_pkcs8_pbe_sha1_2048_3des.der
Hanno Beckerd16f6122017-09-05 09:23:50 +0100361
Hanno Becker08a36dd2017-09-29 20:05:23 +0100362rsa_pkcs8_pbe_sha1_2048_2des.der: rsa_pkcs1_2048_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100363 $(OPENSSL) pkcs8 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)" -topk8 -v1 PBE-SHA1-2DES
Hanno Becker08a36dd2017-09-29 20:05:23 +0100364all_final += rsa_pkcs8_pbe_sha1_2048_2des.der
365rsa_pkcs8_pbe_sha1_2048_2des.pem: rsa_pkcs1_2048_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100366 $(OPENSSL) pkcs8 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)" -topk8 -v1 PBE-SHA1-2DES
Hanno Becker08a36dd2017-09-29 20:05:23 +0100367all_final += rsa_pkcs8_pbe_sha1_2048_2des.pem
368keys_rsa_enc_pkcs8_v1_2048_2des: rsa_pkcs8_pbe_sha1_2048_2des.pem rsa_pkcs8_pbe_sha1_2048_2des.der
Hanno Beckerd16f6122017-09-05 09:23:50 +0100369
Hanno Becker08a36dd2017-09-29 20:05:23 +0100370rsa_pkcs8_pbe_sha1_2048_rc4_128.der: rsa_pkcs1_2048_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100371 $(OPENSSL) pkcs8 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)" -topk8 -v1 PBE-SHA1-RC4-128
Hanno Becker08a36dd2017-09-29 20:05:23 +0100372all_final += rsa_pkcs8_pbe_sha1_2048_rc4_128.der
373rsa_pkcs8_pbe_sha1_2048_rc4_128.pem: rsa_pkcs1_2048_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100374 $(OPENSSL) pkcs8 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)" -topk8 -v1 PBE-SHA1-RC4-128
Hanno Becker08a36dd2017-09-29 20:05:23 +0100375all_final += rsa_pkcs8_pbe_sha1_2048_rc4_128.pem
376keys_rsa_enc_pkcs8_v1_2048_rc4_128: rsa_pkcs8_pbe_sha1_2048_rc4_128.pem rsa_pkcs8_pbe_sha1_2048_rc4_128.der
Hanno Beckerd16f6122017-09-05 09:23:50 +0100377
378keys_rsa_enc_pkcs8_v1_2048: keys_rsa_enc_pkcs8_v1_2048_3des keys_rsa_enc_pkcs8_v1_2048_2des keys_rsa_enc_pkcs8_v1_2048_rc4_128
379
380### 4096-bit
Hanno Becker08a36dd2017-09-29 20:05:23 +0100381rsa_pkcs8_pbe_sha1_4096_3des.der: rsa_pkcs1_4096_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100382 $(OPENSSL) pkcs8 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)" -topk8 -v1 PBE-SHA1-3DES
Hanno Becker08a36dd2017-09-29 20:05:23 +0100383all_final += rsa_pkcs8_pbe_sha1_4096_3des.der
384rsa_pkcs8_pbe_sha1_4096_3des.pem: rsa_pkcs1_4096_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100385 $(OPENSSL) pkcs8 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)" -topk8 -v1 PBE-SHA1-3DES
Hanno Becker08a36dd2017-09-29 20:05:23 +0100386all_final += rsa_pkcs8_pbe_sha1_4096_3des.pem
387keys_rsa_enc_pkcs8_v1_4096_3des: rsa_pkcs8_pbe_sha1_4096_3des.pem rsa_pkcs8_pbe_sha1_4096_3des.der
Hanno Beckerd16f6122017-09-05 09:23:50 +0100388
Hanno Becker08a36dd2017-09-29 20:05:23 +0100389rsa_pkcs8_pbe_sha1_4096_2des.der: rsa_pkcs1_4096_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100390 $(OPENSSL) pkcs8 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)" -topk8 -v1 PBE-SHA1-2DES
Hanno Becker08a36dd2017-09-29 20:05:23 +0100391all_final += rsa_pkcs8_pbe_sha1_4096_2des.der
392rsa_pkcs8_pbe_sha1_4096_2des.pem: rsa_pkcs1_4096_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100393 $(OPENSSL) pkcs8 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)" -topk8 -v1 PBE-SHA1-2DES
Hanno Becker08a36dd2017-09-29 20:05:23 +0100394all_final += rsa_pkcs8_pbe_sha1_4096_2des.pem
395keys_rsa_enc_pkcs8_v1_4096_2des: rsa_pkcs8_pbe_sha1_4096_2des.pem rsa_pkcs8_pbe_sha1_4096_2des.der
Hanno Beckerd16f6122017-09-05 09:23:50 +0100396
Hanno Becker08a36dd2017-09-29 20:05:23 +0100397rsa_pkcs8_pbe_sha1_4096_rc4_128.der: rsa_pkcs1_4096_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100398 $(OPENSSL) pkcs8 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)" -topk8 -v1 PBE-SHA1-RC4-128
Hanno Becker08a36dd2017-09-29 20:05:23 +0100399all_final += rsa_pkcs8_pbe_sha1_4096_rc4_128.der
400rsa_pkcs8_pbe_sha1_4096_rc4_128.pem: rsa_pkcs1_4096_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100401 $(OPENSSL) pkcs8 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)" -topk8 -v1 PBE-SHA1-RC4-128
Hanno Becker08a36dd2017-09-29 20:05:23 +0100402all_final += rsa_pkcs8_pbe_sha1_4096_rc4_128.pem
403keys_rsa_enc_pkcs8_v1_4096_rc4_128: rsa_pkcs8_pbe_sha1_4096_rc4_128.pem rsa_pkcs8_pbe_sha1_4096_rc4_128.der
Hanno Beckerd16f6122017-09-05 09:23:50 +0100404
405keys_rsa_enc_pkcs8_v1_4096: keys_rsa_enc_pkcs8_v1_4096_3des keys_rsa_enc_pkcs8_v1_4096_2des keys_rsa_enc_pkcs8_v1_4096_rc4_128
406
407###
Antonio Quartullif476b9d2018-02-01 13:54:13 +0800408### PKCS8-v2 encoded, encrypted RSA keys, no PRF specified (default for OpenSSL1.0: hmacWithSHA1)
Hanno Beckerd16f6122017-09-05 09:23:50 +0100409###
410
411### 1024-bit
Hanno Becker08a36dd2017-09-29 20:05:23 +0100412rsa_pkcs8_pbes2_pbkdf2_1024_3des.der: rsa_pkcs1_1024_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100413 $(OPENSSL) pkcs8 -topk8 -v2 des3 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100414all_final += rsa_pkcs8_pbes2_pbkdf2_1024_3des.der
415rsa_pkcs8_pbes2_pbkdf2_1024_3des.pem: rsa_pkcs1_1024_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100416 $(OPENSSL) pkcs8 -topk8 -v2 des3 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100417all_final += rsa_pkcs8_pbes2_pbkdf2_1024_3des.pem
418keys_rsa_enc_pkcs8_v2_1024_3des: rsa_pkcs8_pbes2_pbkdf2_1024_3des.der rsa_pkcs8_pbes2_pbkdf2_1024_3des.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100419
Hanno Becker08a36dd2017-09-29 20:05:23 +0100420rsa_pkcs8_pbes2_pbkdf2_1024_des.der: rsa_pkcs1_1024_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100421 $(OPENSSL) pkcs8 -topk8 -v2 des -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100422all_final += rsa_pkcs8_pbes2_pbkdf2_1024_des.der
423rsa_pkcs8_pbes2_pbkdf2_1024_des.pem: rsa_pkcs1_1024_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100424 $(OPENSSL) pkcs8 -topk8 -v2 des -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100425all_final += rsa_pkcs8_pbes2_pbkdf2_1024_des.pem
426keys_rsa_enc_pkcs8_v2_1024_des: rsa_pkcs8_pbes2_pbkdf2_1024_des.der rsa_pkcs8_pbes2_pbkdf2_1024_des.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100427
428keys_rsa_enc_pkcs8_v2_1024: keys_rsa_enc_pkcs8_v2_1024_3des keys_rsa_enc_pkcs8_v2_1024_des
429
430### 2048-bit
Hanno Becker08a36dd2017-09-29 20:05:23 +0100431rsa_pkcs8_pbes2_pbkdf2_2048_3des.der: rsa_pkcs1_2048_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100432 $(OPENSSL) pkcs8 -topk8 -v2 des3 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100433all_final += rsa_pkcs8_pbes2_pbkdf2_2048_3des.der
434rsa_pkcs8_pbes2_pbkdf2_2048_3des.pem: rsa_pkcs1_2048_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100435 $(OPENSSL) pkcs8 -topk8 -v2 des3 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100436all_final += rsa_pkcs8_pbes2_pbkdf2_2048_3des.pem
437keys_rsa_enc_pkcs8_v2_2048_3des: rsa_pkcs8_pbes2_pbkdf2_2048_3des.der rsa_pkcs8_pbes2_pbkdf2_2048_3des.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100438
Hanno Becker08a36dd2017-09-29 20:05:23 +0100439rsa_pkcs8_pbes2_pbkdf2_2048_des.der: rsa_pkcs1_2048_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100440 $(OPENSSL) pkcs8 -topk8 -v2 des -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100441all_final += rsa_pkcs8_pbes2_pbkdf2_2048_des.der
442rsa_pkcs8_pbes2_pbkdf2_2048_des.pem: rsa_pkcs1_2048_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100443 $(OPENSSL) pkcs8 -topk8 -v2 des -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100444all_final += rsa_pkcs8_pbes2_pbkdf2_2048_des.pem
445keys_rsa_enc_pkcs8_v2_2048_des: rsa_pkcs8_pbes2_pbkdf2_2048_des.der rsa_pkcs8_pbes2_pbkdf2_2048_des.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100446
447keys_rsa_enc_pkcs8_v2_2048: keys_rsa_enc_pkcs8_v2_2048_3des keys_rsa_enc_pkcs8_v2_2048_des
448
449### 4096-bit
Hanno Becker08a36dd2017-09-29 20:05:23 +0100450rsa_pkcs8_pbes2_pbkdf2_4096_3des.der: rsa_pkcs1_4096_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100451 $(OPENSSL) pkcs8 -topk8 -v2 des3 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100452all_final += rsa_pkcs8_pbes2_pbkdf2_4096_3des.der
453rsa_pkcs8_pbes2_pbkdf2_4096_3des.pem: rsa_pkcs1_4096_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100454 $(OPENSSL) pkcs8 -topk8 -v2 des3 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100455all_final += rsa_pkcs8_pbes2_pbkdf2_4096_3des.pem
456keys_rsa_enc_pkcs8_v2_4096_3des: rsa_pkcs8_pbes2_pbkdf2_4096_3des.der rsa_pkcs8_pbes2_pbkdf2_4096_3des.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100457
Hanno Becker08a36dd2017-09-29 20:05:23 +0100458rsa_pkcs8_pbes2_pbkdf2_4096_des.der: rsa_pkcs1_4096_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100459 $(OPENSSL) pkcs8 -topk8 -v2 des -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100460all_final += rsa_pkcs8_pbes2_pbkdf2_4096_des.der
461rsa_pkcs8_pbes2_pbkdf2_4096_des.pem: rsa_pkcs1_4096_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100462 $(OPENSSL) pkcs8 -topk8 -v2 des -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
Hanno Becker08a36dd2017-09-29 20:05:23 +0100463all_final += rsa_pkcs8_pbes2_pbkdf2_4096_des.pem
464keys_rsa_enc_pkcs8_v2_4096_des: rsa_pkcs8_pbes2_pbkdf2_4096_des.der rsa_pkcs8_pbes2_pbkdf2_4096_des.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100465
466keys_rsa_enc_pkcs8_v2_4096: keys_rsa_enc_pkcs8_v2_4096_3des keys_rsa_enc_pkcs8_v2_4096_des
467
468###
Antonio Quartullif476b9d2018-02-01 13:54:13 +0800469### PKCS8-v2 encoded, encrypted RSA keys, PRF hmacWithSHA224
470###
471
472### 1024-bit
473rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha224.der: rsa_pkcs1_1024_clear.pem
474 $(OPENSSL) pkcs8 -topk8 -v2 des3 -v2prf hmacWithSHA224 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
475all_final += rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha224.der
476rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha224.pem: rsa_pkcs1_1024_clear.pem
477 $(OPENSSL) pkcs8 -topk8 -v2 des3 -v2prf hmacWithSHA224 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
478all_final += rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha224.pem
479keys_rsa_enc_pkcs8_v2_1024_3des_sha224: rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha224.der rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha224.pem
480
481rsa_pkcs8_pbes2_pbkdf2_1024_des_sha224.der: rsa_pkcs1_1024_clear.pem
482 $(OPENSSL) pkcs8 -topk8 -v2 des -v2prf hmacWithSHA224 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
483all_final += rsa_pkcs8_pbes2_pbkdf2_1024_des_sha224.der
484rsa_pkcs8_pbes2_pbkdf2_1024_des_sha224.pem: rsa_pkcs1_1024_clear.pem
485 $(OPENSSL) pkcs8 -topk8 -v2 des -v2prf hmacWithSHA224 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
486all_final += rsa_pkcs8_pbes2_pbkdf2_1024_des_sha224.pem
487keys_rsa_enc_pkcs8_v2_1024_des_sha224: rsa_pkcs8_pbes2_pbkdf2_1024_des_sha224.der rsa_pkcs8_pbes2_pbkdf2_1024_des_sha224.pem
488
489keys_rsa_enc_pkcs8_v2_1024_sha224: keys_rsa_enc_pkcs8_v2_1024_3des_sha224 keys_rsa_enc_pkcs8_v2_1024_des_sha224
490
491### 2048-bit
492rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha224.der: rsa_pkcs1_2048_clear.pem
493 $(OPENSSL) pkcs8 -topk8 -v2 des3 -v2prf hmacWithSHA224 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
494all_final += rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha224.der
495rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha224.pem: rsa_pkcs1_2048_clear.pem
496 $(OPENSSL) pkcs8 -topk8 -v2 des3 -v2prf hmacWithSHA224 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
497all_final += rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha224.pem
498keys_rsa_enc_pkcs8_v2_2048_3des_sha224: rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha224.der rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha224.pem
499
500rsa_pkcs8_pbes2_pbkdf2_2048_des_sha224.der: rsa_pkcs1_2048_clear.pem
501 $(OPENSSL) pkcs8 -topk8 -v2 des -v2prf hmacWithSHA224 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
502all_final += rsa_pkcs8_pbes2_pbkdf2_2048_des_sha224.der
503rsa_pkcs8_pbes2_pbkdf2_2048_des_sha224.pem: rsa_pkcs1_2048_clear.pem
504 $(OPENSSL) pkcs8 -topk8 -v2 des -v2prf hmacWithSHA224 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
505all_final += rsa_pkcs8_pbes2_pbkdf2_2048_des_sha224.pem
506keys_rsa_enc_pkcs8_v2_2048_des_sha224: rsa_pkcs8_pbes2_pbkdf2_2048_des_sha224.der rsa_pkcs8_pbes2_pbkdf2_2048_des_sha224.pem
507
508keys_rsa_enc_pkcs8_v2_2048_sha224: keys_rsa_enc_pkcs8_v2_2048_3des_sha224 keys_rsa_enc_pkcs8_v2_2048_des_sha224
509
510### 4096-bit
511rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha224.der: rsa_pkcs1_4096_clear.pem
512 $(OPENSSL) pkcs8 -topk8 -v2 des3 -v2prf hmacWithSHA224 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
513all_final += rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha224.der
514rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha224.pem: rsa_pkcs1_4096_clear.pem
515 $(OPENSSL) pkcs8 -topk8 -v2 des3 -v2prf hmacWithSHA224 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
516all_final += rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha224.pem
517keys_rsa_enc_pkcs8_v2_4096_3des_sha224: rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha224.der rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha224.pem
518
519rsa_pkcs8_pbes2_pbkdf2_4096_des_sha224.der: rsa_pkcs1_4096_clear.pem
520 $(OPENSSL) pkcs8 -topk8 -v2 des -v2prf hmacWithSHA224 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
521all_final += rsa_pkcs8_pbes2_pbkdf2_4096_des_sha224.der
522rsa_pkcs8_pbes2_pbkdf2_4096_des_sha224.pem: rsa_pkcs1_4096_clear.pem
523 $(OPENSSL) pkcs8 -topk8 -v2 des -v2prf hmacWithSHA224 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
524all_final += rsa_pkcs8_pbes2_pbkdf2_4096_des_sha224.pem
525keys_rsa_enc_pkcs8_v2_4096_des_sha224: rsa_pkcs8_pbes2_pbkdf2_4096_des_sha224.der rsa_pkcs8_pbes2_pbkdf2_4096_des_sha224.pem
526
527keys_rsa_enc_pkcs8_v2_4096_sha224: keys_rsa_enc_pkcs8_v2_4096_3des_sha224 keys_rsa_enc_pkcs8_v2_4096_des_sha224
528
529###
530### PKCS8-v2 encoded, encrypted RSA keys, PRF hmacWithSHA256
531###
532
533### 1024-bit
534rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha256.der: rsa_pkcs1_1024_clear.pem
535 $(OPENSSL) pkcs8 -topk8 -v2 des3 -v2prf hmacWithSHA256 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
536all_final += rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha256.der
537rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha256.pem: rsa_pkcs1_1024_clear.pem
538 $(OPENSSL) pkcs8 -topk8 -v2 des3 -v2prf hmacWithSHA256 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
539all_final += rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha256.pem
540keys_rsa_enc_pkcs8_v2_1024_3des_sha256: rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha256.der rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha256.pem
541
542rsa_pkcs8_pbes2_pbkdf2_1024_des_sha256.der: rsa_pkcs1_1024_clear.pem
543 $(OPENSSL) pkcs8 -topk8 -v2 des -v2prf hmacWithSHA256 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
544all_final += rsa_pkcs8_pbes2_pbkdf2_1024_des_sha256.der
545rsa_pkcs8_pbes2_pbkdf2_1024_des_sha256.pem: rsa_pkcs1_1024_clear.pem
546 $(OPENSSL) pkcs8 -topk8 -v2 des -v2prf hmacWithSHA256 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
547all_final += rsa_pkcs8_pbes2_pbkdf2_1024_des_sha256.pem
548keys_rsa_enc_pkcs8_v2_1024_des_sha256: rsa_pkcs8_pbes2_pbkdf2_1024_des_sha256.der rsa_pkcs8_pbes2_pbkdf2_1024_des_sha256.pem
549
550keys_rsa_enc_pkcs8_v2_1024_sha256: keys_rsa_enc_pkcs8_v2_1024_3des_sha256 keys_rsa_enc_pkcs8_v2_1024_des_sha256
551
552### 2048-bit
553rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha256.der: rsa_pkcs1_2048_clear.pem
554 $(OPENSSL) pkcs8 -topk8 -v2 des3 -v2prf hmacWithSHA256 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
555all_final += rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha256.der
556rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha256.pem: rsa_pkcs1_2048_clear.pem
557 $(OPENSSL) pkcs8 -topk8 -v2 des3 -v2prf hmacWithSHA256 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
558all_final += rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha256.pem
559keys_rsa_enc_pkcs8_v2_2048_3des_sha256: rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha256.der rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha256.pem
560
561rsa_pkcs8_pbes2_pbkdf2_2048_des_sha256.der: rsa_pkcs1_2048_clear.pem
562 $(OPENSSL) pkcs8 -topk8 -v2 des -v2prf hmacWithSHA256 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
563all_final += rsa_pkcs8_pbes2_pbkdf2_2048_des_sha256.der
564rsa_pkcs8_pbes2_pbkdf2_2048_des_sha256.pem: rsa_pkcs1_2048_clear.pem
565 $(OPENSSL) pkcs8 -topk8 -v2 des -v2prf hmacWithSHA256 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
566all_final += rsa_pkcs8_pbes2_pbkdf2_2048_des_sha256.pem
567keys_rsa_enc_pkcs8_v2_2048_des_sha256: rsa_pkcs8_pbes2_pbkdf2_2048_des_sha256.der rsa_pkcs8_pbes2_pbkdf2_2048_des_sha256.pem
568
569keys_rsa_enc_pkcs8_v2_2048_sha256: keys_rsa_enc_pkcs8_v2_2048_3des_sha256 keys_rsa_enc_pkcs8_v2_2048_des_sha256
570
571### 4096-bit
572rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha256.der: rsa_pkcs1_4096_clear.pem
573 $(OPENSSL) pkcs8 -topk8 -v2 des3 -v2prf hmacWithSHA256 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
574all_final += rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha256.der
575rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha256.pem: rsa_pkcs1_4096_clear.pem
576 $(OPENSSL) pkcs8 -topk8 -v2 des3 -v2prf hmacWithSHA256 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
577all_final += rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha256.pem
578keys_rsa_enc_pkcs8_v2_4096_3des_sha256: rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha256.der rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha256.pem
579
580rsa_pkcs8_pbes2_pbkdf2_4096_des_sha256.der: rsa_pkcs1_4096_clear.pem
581 $(OPENSSL) pkcs8 -topk8 -v2 des -v2prf hmacWithSHA256 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
582all_final += rsa_pkcs8_pbes2_pbkdf2_4096_des_sha256.der
583rsa_pkcs8_pbes2_pbkdf2_4096_des_sha256.pem: rsa_pkcs1_4096_clear.pem
584 $(OPENSSL) pkcs8 -topk8 -v2 des -v2prf hmacWithSHA256 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
585all_final += rsa_pkcs8_pbes2_pbkdf2_4096_des_sha256.pem
586keys_rsa_enc_pkcs8_v2_4096_des_sha256: rsa_pkcs8_pbes2_pbkdf2_4096_des_sha256.der rsa_pkcs8_pbes2_pbkdf2_4096_des_sha256.pem
587
588keys_rsa_enc_pkcs8_v2_4096_sha256: keys_rsa_enc_pkcs8_v2_4096_3des_sha256 keys_rsa_enc_pkcs8_v2_4096_des_sha256
589
590###
591### PKCS8-v2 encoded, encrypted RSA keys, PRF hmacWithSHA384
592###
593
594### 1024-bit
595rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha384.der: rsa_pkcs1_1024_clear.pem
596 $(OPENSSL) pkcs8 -topk8 -v2 des3 -v2prf hmacWithSHA384 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
597all_final += rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha384.der
598rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha384.pem: rsa_pkcs1_1024_clear.pem
599 $(OPENSSL) pkcs8 -topk8 -v2 des3 -v2prf hmacWithSHA384 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
600all_final += rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha384.pem
601keys_rsa_enc_pkcs8_v2_1024_3des_sha384: rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha384.der rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha384.pem
602
603rsa_pkcs8_pbes2_pbkdf2_1024_des_sha384.der: rsa_pkcs1_1024_clear.pem
604 $(OPENSSL) pkcs8 -topk8 -v2 des -v2prf hmacWithSHA384 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
605all_final += rsa_pkcs8_pbes2_pbkdf2_1024_des_sha384.der
606rsa_pkcs8_pbes2_pbkdf2_1024_des_sha384.pem: rsa_pkcs1_1024_clear.pem
607 $(OPENSSL) pkcs8 -topk8 -v2 des -v2prf hmacWithSHA384 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
608all_final += rsa_pkcs8_pbes2_pbkdf2_1024_des_sha384.pem
609keys_rsa_enc_pkcs8_v2_1024_des_sha384: rsa_pkcs8_pbes2_pbkdf2_1024_des_sha384.der rsa_pkcs8_pbes2_pbkdf2_1024_des_sha384.pem
610
611keys_rsa_enc_pkcs8_v2_1024_sha384: keys_rsa_enc_pkcs8_v2_1024_3des_sha384 keys_rsa_enc_pkcs8_v2_1024_des_sha384
612
613### 2048-bit
614rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha384.der: rsa_pkcs1_2048_clear.pem
615 $(OPENSSL) pkcs8 -topk8 -v2 des3 -v2prf hmacWithSHA384 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
616all_final += rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha384.der
617rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha384.pem: rsa_pkcs1_2048_clear.pem
618 $(OPENSSL) pkcs8 -topk8 -v2 des3 -v2prf hmacWithSHA384 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
619all_final += rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha384.pem
620keys_rsa_enc_pkcs8_v2_2048_3des_sha384: rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha384.der rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha384.pem
621
622rsa_pkcs8_pbes2_pbkdf2_2048_des_sha384.der: rsa_pkcs1_2048_clear.pem
623 $(OPENSSL) pkcs8 -topk8 -v2 des -v2prf hmacWithSHA384 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
624all_final += rsa_pkcs8_pbes2_pbkdf2_2048_des_sha384.der
625rsa_pkcs8_pbes2_pbkdf2_2048_des_sha384.pem: rsa_pkcs1_2048_clear.pem
626 $(OPENSSL) pkcs8 -topk8 -v2 des -v2prf hmacWithSHA384 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
627all_final += rsa_pkcs8_pbes2_pbkdf2_2048_des_sha384.pem
628keys_rsa_enc_pkcs8_v2_2048_des_sha384: rsa_pkcs8_pbes2_pbkdf2_2048_des_sha384.der rsa_pkcs8_pbes2_pbkdf2_2048_des_sha384.pem
629
630keys_rsa_enc_pkcs8_v2_2048_sha384: keys_rsa_enc_pkcs8_v2_2048_3des_sha384 keys_rsa_enc_pkcs8_v2_2048_des_sha384
631
632### 4096-bit
633rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha384.der: rsa_pkcs1_4096_clear.pem
634 $(OPENSSL) pkcs8 -topk8 -v2 des3 -v2prf hmacWithSHA384 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
635all_final += rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha384.der
636rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha384.pem: rsa_pkcs1_4096_clear.pem
637 $(OPENSSL) pkcs8 -topk8 -v2 des3 -v2prf hmacWithSHA384 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
638all_final += rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha384.pem
639keys_rsa_enc_pkcs8_v2_4096_3des_sha384: rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha384.der rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha384.pem
640
641rsa_pkcs8_pbes2_pbkdf2_4096_des_sha384.der: rsa_pkcs1_4096_clear.pem
642 $(OPENSSL) pkcs8 -topk8 -v2 des -v2prf hmacWithSHA384 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
643all_final += rsa_pkcs8_pbes2_pbkdf2_4096_des_sha384.der
644rsa_pkcs8_pbes2_pbkdf2_4096_des_sha384.pem: rsa_pkcs1_4096_clear.pem
645 $(OPENSSL) pkcs8 -topk8 -v2 des -v2prf hmacWithSHA384 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
646all_final += rsa_pkcs8_pbes2_pbkdf2_4096_des_sha384.pem
647keys_rsa_enc_pkcs8_v2_4096_des_sha384: rsa_pkcs8_pbes2_pbkdf2_4096_des_sha384.der rsa_pkcs8_pbes2_pbkdf2_4096_des_sha384.pem
648
649keys_rsa_enc_pkcs8_v2_4096_sha384: keys_rsa_enc_pkcs8_v2_4096_3des_sha384 keys_rsa_enc_pkcs8_v2_4096_des_sha384
650
651###
652### PKCS8-v2 encoded, encrypted RSA keys, PRF hmacWithSHA512
653###
654
655### 1024-bit
656rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha512.der: rsa_pkcs1_1024_clear.pem
657 $(OPENSSL) pkcs8 -topk8 -v2 des3 -v2prf hmacWithSHA512 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
658all_final += rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha512.der
659rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha512.pem: rsa_pkcs1_1024_clear.pem
660 $(OPENSSL) pkcs8 -topk8 -v2 des3 -v2prf hmacWithSHA512 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
661all_final += rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha512.pem
662keys_rsa_enc_pkcs8_v2_1024_3des_sha512: rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha512.der rsa_pkcs8_pbes2_pbkdf2_1024_3des_sha512.pem
663
664rsa_pkcs8_pbes2_pbkdf2_1024_des_sha512.der: rsa_pkcs1_1024_clear.pem
665 $(OPENSSL) pkcs8 -topk8 -v2 des -v2prf hmacWithSHA512 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
666all_final += rsa_pkcs8_pbes2_pbkdf2_1024_des_sha512.der
667rsa_pkcs8_pbes2_pbkdf2_1024_des_sha512.pem: rsa_pkcs1_1024_clear.pem
668 $(OPENSSL) pkcs8 -topk8 -v2 des -v2prf hmacWithSHA512 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
669all_final += rsa_pkcs8_pbes2_pbkdf2_1024_des_sha512.pem
670keys_rsa_enc_pkcs8_v2_1024_des_sha512: rsa_pkcs8_pbes2_pbkdf2_1024_des_sha512.der rsa_pkcs8_pbes2_pbkdf2_1024_des_sha512.pem
671
672keys_rsa_enc_pkcs8_v2_1024_sha512: keys_rsa_enc_pkcs8_v2_1024_3des_sha512 keys_rsa_enc_pkcs8_v2_1024_des_sha512
673
674### 2048-bit
675rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha512.der: rsa_pkcs1_2048_clear.pem
676 $(OPENSSL) pkcs8 -topk8 -v2 des3 -v2prf hmacWithSHA512 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
677all_final += rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha512.der
678rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha512.pem: rsa_pkcs1_2048_clear.pem
679 $(OPENSSL) pkcs8 -topk8 -v2 des3 -v2prf hmacWithSHA512 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
680all_final += rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha512.pem
681keys_rsa_enc_pkcs8_v2_2048_3des_sha512: rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha512.der rsa_pkcs8_pbes2_pbkdf2_2048_3des_sha512.pem
682
683rsa_pkcs8_pbes2_pbkdf2_2048_des_sha512.der: rsa_pkcs1_2048_clear.pem
684 $(OPENSSL) pkcs8 -topk8 -v2 des -v2prf hmacWithSHA512 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
685all_final += rsa_pkcs8_pbes2_pbkdf2_2048_des_sha512.der
686rsa_pkcs8_pbes2_pbkdf2_2048_des_sha512.pem: rsa_pkcs1_2048_clear.pem
687 $(OPENSSL) pkcs8 -topk8 -v2 des -v2prf hmacWithSHA512 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
688all_final += rsa_pkcs8_pbes2_pbkdf2_2048_des_sha512.pem
689keys_rsa_enc_pkcs8_v2_2048_des_sha512: rsa_pkcs8_pbes2_pbkdf2_2048_des_sha512.der rsa_pkcs8_pbes2_pbkdf2_2048_des_sha512.pem
690
691keys_rsa_enc_pkcs8_v2_2048_sha512: keys_rsa_enc_pkcs8_v2_2048_3des_sha512 keys_rsa_enc_pkcs8_v2_2048_des_sha512
692
693### 4096-bit
694rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha512.der: rsa_pkcs1_4096_clear.pem
695 $(OPENSSL) pkcs8 -topk8 -v2 des3 -v2prf hmacWithSHA512 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
696all_final += rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha512.der
697rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha512.pem: rsa_pkcs1_4096_clear.pem
698 $(OPENSSL) pkcs8 -topk8 -v2 des3 -v2prf hmacWithSHA512 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
699all_final += rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha512.pem
700keys_rsa_enc_pkcs8_v2_4096_3des_sha512: rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha512.der rsa_pkcs8_pbes2_pbkdf2_4096_3des_sha512.pem
701
702rsa_pkcs8_pbes2_pbkdf2_4096_des_sha512.der: rsa_pkcs1_4096_clear.pem
703 $(OPENSSL) pkcs8 -topk8 -v2 des -v2prf hmacWithSHA512 -inform PEM -in $< -outform DER -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
704all_final += rsa_pkcs8_pbes2_pbkdf2_4096_des_sha512.der
705rsa_pkcs8_pbes2_pbkdf2_4096_des_sha512.pem: rsa_pkcs1_4096_clear.pem
706 $(OPENSSL) pkcs8 -topk8 -v2 des -v2prf hmacWithSHA512 -inform PEM -in $< -outform PEM -out $@ -passout "pass:$(keys_rsa_pkcs8_pwd)"
707all_final += rsa_pkcs8_pbes2_pbkdf2_4096_des_sha512.pem
708keys_rsa_enc_pkcs8_v2_4096_des_sha512: rsa_pkcs8_pbes2_pbkdf2_4096_des_sha512.der rsa_pkcs8_pbes2_pbkdf2_4096_des_sha512.pem
709
710keys_rsa_enc_pkcs8_v2_4096_sha512: keys_rsa_enc_pkcs8_v2_4096_3des_sha512 keys_rsa_enc_pkcs8_v2_4096_des_sha512
711
712###
Hanno Beckerd16f6122017-09-05 09:23:50 +0100713### Rules to generate all RSA keys from a particular class
714###
715
716### Generate basic unencrypted RSA keys
Hanno Becker08a36dd2017-09-29 20:05:23 +0100717keys_rsa_unenc: rsa_pkcs1_1024_clear.pem rsa_pkcs1_2048_clear.pem rsa_pkcs1_4096_clear.pem
Hanno Beckerd16f6122017-09-05 09:23:50 +0100718
719### Generate PKCS1-encoded encrypted RSA keys
720keys_rsa_enc_basic: keys_rsa_enc_basic_1024 keys_rsa_enc_basic_2048 keys_rsa_enc_basic_4096
721
722### Generate PKCS8-v1 encrypted RSA keys
723keys_rsa_enc_pkcs8_v1: keys_rsa_enc_pkcs8_v1_1024 keys_rsa_enc_pkcs8_v1_2048 keys_rsa_enc_pkcs8_v1_4096
724
725### Generate PKCS8-v2 encrypted RSA keys
Antonio Quartullif476b9d2018-02-01 13:54:13 +0800726keys_rsa_enc_pkcs8_v2: keys_rsa_enc_pkcs8_v2_1024 keys_rsa_enc_pkcs8_v2_2048 keys_rsa_enc_pkcs8_v2_4096 keys_rsa_enc_pkcs8_v2_1024_sha224 keys_rsa_enc_pkcs8_v2_2048_sha224 keys_rsa_enc_pkcs8_v2_4096_sha224 keys_rsa_enc_pkcs8_v2_1024_sha256 keys_rsa_enc_pkcs8_v2_2048_sha256 keys_rsa_enc_pkcs8_v2_4096_sha256 keys_rsa_enc_pkcs8_v2_1024_sha384 keys_rsa_enc_pkcs8_v2_2048_sha384 keys_rsa_enc_pkcs8_v2_4096_sha384 keys_rsa_enc_pkcs8_v2_1024_sha512 keys_rsa_enc_pkcs8_v2_2048_sha512 keys_rsa_enc_pkcs8_v2_4096_sha512
Hanno Beckerd16f6122017-09-05 09:23:50 +0100727
728### Generate all RSA keys
729keys_rsa_all: keys_rsa_unenc keys_rsa_enc_basic keys_rsa_enc_pkcs8_v1 keys_rsa_enc_pkcs8_v2
730
Jethro Beekmand2df9362018-02-16 13:11:04 -0800731################################################################
732#### Generate various EC keys
733################################################################
Gilles Peskineea8d6972017-11-28 17:30:52 +0100734
Jethro Beekmand2df9362018-02-16 13:11:04 -0800735###
736### PKCS8 encoded
737###
738
739ec_prv.pk8.der:
740 $(OPENSSL) genpkey -algorithm EC -pkeyopt ec_paramgen_curve:prime192v1 -pkeyopt ec_param_enc:named_curve -out $@ -outform DER
741all_final += ec_prv.pk8.der
742
743# ### Instructions for creating `ec_prv.pk8nopub.der`,
744# ### `ec_prv.pk8nopubparam.der`, and `ec_prv.pk8param.der` by hand from
745# ### `ec_prv.pk8.der`.
746#
747# These instructions assume you are familiar with ASN.1 DER encoding and can
748# use a hex editor to manipulate DER.
749#
750# The relevant ASN.1 definitions for a PKCS#8 encoded Elliptic Curve key are:
751#
752# PrivateKeyInfo ::= SEQUENCE {
753# version Version,
754# privateKeyAlgorithm PrivateKeyAlgorithmIdentifier,
755# privateKey PrivateKey,
756# attributes [0] IMPLICIT Attributes OPTIONAL
757# }
758#
759# AlgorithmIdentifier ::= SEQUENCE {
760# algorithm OBJECT IDENTIFIER,
761# parameters ANY DEFINED BY algorithm OPTIONAL
762# }
763#
764# ECParameters ::= CHOICE {
765# namedCurve OBJECT IDENTIFIER
766# -- implicitCurve NULL
767# -- specifiedCurve SpecifiedECDomain
768# }
769#
770# ECPrivateKey ::= SEQUENCE {
771# version INTEGER { ecPrivkeyVer1(1) } (ecPrivkeyVer1),
772# privateKey OCTET STRING,
773# parameters [0] ECParameters {{ NamedCurve }} OPTIONAL,
774# publicKey [1] BIT STRING OPTIONAL
775# }
776#
777# `ec_prv.pk8.der` as generatde above by OpenSSL should have the following
778# fields:
779#
780# * privateKeyAlgorithm namedCurve
781# * privateKey.parameters NOT PRESENT
782# * privateKey.publicKey PRESENT
783# * attributes NOT PRESENT
784#
785# # ec_prv.pk8nopub.der
786#
787# Take `ec_prv.pk8.der` and remove `privateKey.publicKey`.
788#
789# # ec_prv.pk8nopubparam.der
790#
791# Take `ec_prv.pk8nopub.der` and add `privateKey.parameters`, the same value as
792# `privateKeyAlgorithm.namedCurve`. Don't forget to add the explicit tag.
793#
794# # ec_prv.pk8param.der
795#
796# Take `ec_prv.pk8.der` and add `privateKey.parameters`, the same value as
797# `privateKeyAlgorithm.namedCurve`. Don't forget to add the explicit tag.
798
799ec_prv.pk8.pem: ec_prv.pk8.der
800 $(OPENSSL) pkey -in $< -inform DER -out $@
801all_final += ec_prv.pk8.pem
802ec_prv.pk8nopub.pem: ec_prv.pk8nopub.der
803 $(OPENSSL) pkey -in $< -inform DER -out $@
804all_final += ec_prv.pk8nopub.pem
805ec_prv.pk8nopubparam.pem: ec_prv.pk8nopubparam.der
806 $(OPENSSL) pkey -in $< -inform DER -out $@
807all_final += ec_prv.pk8nopubparam.pem
808ec_prv.pk8param.pem: ec_prv.pk8param.der
809 $(OPENSSL) pkey -in $< -inform DER -out $@
810all_final += ec_prv.pk8param.pem
Gilles Peskineea8d6972017-11-28 17:30:52 +0100811
Andres Amaya Garcia2c0f6f02018-09-26 10:51:16 +0100812# The use of 'Server 1' in the DN is intentional here, as the DN is hardcoded in the x509_write test suite.'
Andres Amaya Garcia2c0f6f02018-09-26 10:51:16 +0100813
k-stachowiak11f38e22019-06-04 13:14:58 +0200814###
815### A generic SECP521R1 private key
816###
817
818secp521r1_prv.der:
819 $(OPENSSL) ecparam -genkey -name secp521r1 -noout -out secp521r1_prv.der
820all_final += secp521r1_prv.der
821
Andres Amaya Garcia2c0f6f02018-09-26 10:51:16 +0100822################################################################
823### Generate CSRs for X.509 write test suite
824################################################################
825
826server1.req.cert_type: server1.key
827 $(MBEDTLS_CERT_REQ) output_file=$@ filename=$< ns_cert_type=ssl_server subject_name="C=NL,O=PolarSSL,CN=PolarSSL Server 1" md=SHA1
828all_final += server1.req.cert_type
829
830server1.req.key_usage: server1.key
831 $(MBEDTLS_CERT_REQ) output_file=$@ filename=$< key_usage=digital_signature,non_repudiation,key_encipherment subject_name="C=NL,O=PolarSSL,CN=PolarSSL Server 1" md=SHA1
832all_final += server1.req.key_usage
833
834server1.req.ku-ct: server1.key
835 $(MBEDTLS_CERT_REQ) output_file=$@ filename=$< key_usage=digital_signature,non_repudiation,key_encipherment ns_cert_type=ssl_server subject_name="C=NL,O=PolarSSL,CN=PolarSSL Server 1" md=SHA1
836all_final += server1.req.ku-ct
837
838server1.req.key_usage_empty: server1.key
839 $(MBEDTLS_CERT_REQ) output_file=$@ filename=$< subject_name="C=NL,O=PolarSSL,CN=PolarSSL Server 1" md=SHA1 force_key_usage=1
840all_final += server1.req.key_usage_empty
841
842server1.req.cert_type_empty: server1.key
843 $(MBEDTLS_CERT_REQ) output_file=$@ filename=$< subject_name="C=NL,O=PolarSSL,CN=PolarSSL Server 1" md=SHA1 force_ns_cert_type=1
844all_final += server1.req.cert_type_empty
845
Gilles Peskineea8d6972017-11-28 17:30:52 +0100846################################################################
Hanno Becker50cb93a2018-10-08 17:15:28 +0100847### Generate CSRs for X.509 write test suite
848################################################################
849
850server1.req.sha1: server1.key
851 $(MBEDTLS_CERT_REQ) output_file=$@ filename=$< subject_name="C=NL,O=PolarSSL,CN=PolarSSL Server 1" md=SHA1
852all_final += server1.req.sha1
853
854server1.req.md4: server1.key
855 $(MBEDTLS_CERT_REQ) output_file=$@ filename=$< subject_name="C=NL,O=PolarSSL,CN=PolarSSL Server 1" md=MD4
856all_final += server1.req.md4
857
858server1.req.md5: server1.key
859 $(MBEDTLS_CERT_REQ) output_file=$@ filename=$< subject_name="C=NL,O=PolarSSL,CN=PolarSSL Server 1" md=MD5
860all_final += server1.req.md5
861
862server1.req.sha224: server1.key
863 $(MBEDTLS_CERT_REQ) output_file=$@ filename=$< subject_name="C=NL,O=PolarSSL,CN=PolarSSL Server 1" md=SHA224
864all_final += server1.req.sha224
865
866server1.req.sha256: server1.key
867 $(MBEDTLS_CERT_REQ) output_file=$@ filename=$< subject_name="C=NL,O=PolarSSL,CN=PolarSSL Server 1" md=SHA256
868all_final += server1.req.sha256
869
870server1.req.sha384: server1.key
871 $(MBEDTLS_CERT_REQ) output_file=$@ filename=$< subject_name="C=NL,O=PolarSSL,CN=PolarSSL Server 1" md=SHA384
872all_final += server1.req.sha384
873
874server1.req.sha512: server1.key
875 $(MBEDTLS_CERT_REQ) output_file=$@ filename=$< subject_name="C=NL,O=PolarSSL,CN=PolarSSL Server 1" md=SHA512
876all_final += server1.req.sha512
877
Hanno Beckerebc1f402018-10-31 16:35:59 +0000878# server2*
879
880server2.req.sha256: server2.key
881 $(MBEDTLS_CERT_REQ) output_file=$@ filename=$< subject_name="C=NL,O=PolarSSL,CN=localhost" md=SHA256
882all_intermediate += server2.req.sha256
883
Hanno Becker5895a2d2019-03-12 16:49:26 +0000884server2.crt.der: server2.crt
885 $(OPENSSL) x509 -inform PEM -in $< -outform DER -out $@
886all_final += server2.crt.der
887
888server2-sha256.crt.der: server2-sha256.crt
889 $(OPENSSL) x509 -inform PEM -in $< -outform DER -out $@
890all_final += server2-sha256.crt.der
891
892server2.key.der: server2.key
893 $(OPENSSL) pkey -in $< -out $@ -inform PEM -outform DER
894all_final += server2.key.der
895
Hanno Becker0dd11392018-11-02 08:56:15 +0000896# server5*
897
898# The use of 'Server 1' in the DN is intentional here, as the DN is hardcoded in the x509_write test suite.'
899server5.req.ku.sha1: server5.key
900 $(MBEDTLS_CERT_REQ) output_file=$@ filename=$< key_usage=digital_signature,non_repudiation subject_name="C=NL,O=PolarSSL,CN=PolarSSL Server 1" md=SHA1
901all_final += server5.req.ku.sha1
902
Hanno Becker50cb93a2018-10-08 17:15:28 +0100903################################################################
Hanno Becker418a6222017-09-14 07:51:28 +0100904### Generate certificates for CRT write check tests
Gilles Peskineea8d6972017-11-28 17:30:52 +0100905################################################################
906
Hanno Becker418a6222017-09-14 07:51:28 +0100907### The test files use the Mbed TLS generated certificates server1*.crt,
908### but for comparison with OpenSSL also rules for OpenSSL-generated
909### certificates server1*.crt.openssl are offered.
910###
911### Known differences:
912### * OpenSSL encodes trailing zero-bits in bit-strings occurring in X.509 extension
913### as unused bits, while Mbed TLS doesn't.
Gilles Peskinef040a172017-05-05 18:56:12 +0200914
Hanno Becker418a6222017-09-14 07:51:28 +0100915test_ca_server1_db = test-ca.server1.db
916test_ca_server1_serial = test-ca.server1.serial
917test_ca_server1_config_file = test-ca.server1.opensslconf
918
Hanno Becker50cb93a2018-10-08 17:15:28 +0100919# server1*
Hanno Becker418a6222017-09-14 07:51:28 +0100920
Hanno Becker50cb93a2018-10-08 17:15:28 +0100921server1.crt: server1.key server1.req.sha256 $(test_ca_crt) $(test_ca_key_file_rsa)
Ron Eldor36503922019-02-12 15:03:42 +0200922 $(MBEDTLS_CERT_WRITE) request_file=server1.req.sha256 issuer_crt=$(test_ca_crt) issuer_key=$(test_ca_key_file_rsa) issuer_pwd=$(test_ca_pwd_rsa) version=1 not_before=20190210144406 not_after=20290210144406 md=SHA1 version=3 output_file=$@
Hanno Becker50cb93a2018-10-08 17:15:28 +0100923server1.noauthid.crt: server1.key server1.req.sha256 $(test_ca_crt) $(test_ca_key_file_rsa)
Ron Eldor36503922019-02-12 15:03:42 +0200924 $(MBEDTLS_CERT_WRITE) request_file=server1.req.sha256 issuer_crt=$(test_ca_crt) issuer_key=$(test_ca_key_file_rsa) issuer_pwd=$(test_ca_pwd_rsa) not_before=20190210144406 not_after=20290210144406 md=SHA1 authority_identifier=0 version=3 output_file=$@
925
Hanno Beckerf8b0b152019-03-14 13:33:20 +0000926server1.crt.der: server1.crt
Hanno Becker418a6222017-09-14 07:51:28 +0100927 $(OPENSSL) x509 -inform PEM -in $< -outform DER -out $@
Hanno Beckerf8b0b152019-03-14 13:33:20 +0000928all_final += server1.crt server1.noauthid.crt server1.crt.der
Hanno Becker418a6222017-09-14 07:51:28 +0100929
Hanno Becker50cb93a2018-10-08 17:15:28 +0100930server1.key_usage.crt: server1.key server1.req.sha256 $(test_ca_crt) $(test_ca_key_file_rsa)
Ron Eldor36503922019-02-12 15:03:42 +0200931 $(MBEDTLS_CERT_WRITE) request_file=server1.req.sha256 issuer_crt=$(test_ca_crt) issuer_key=$(test_ca_key_file_rsa) issuer_pwd=$(test_ca_pwd_rsa) version=1 not_before=20190210144406 not_after=20290210144406 md=SHA1 key_usage=digital_signature,non_repudiation,key_encipherment version=3 output_file=$@
Hanno Becker50cb93a2018-10-08 17:15:28 +0100932server1.key_usage_noauthid.crt: server1.key server1.req.sha256 $(test_ca_crt) $(test_ca_key_file_rsa)
Ron Eldor36503922019-02-12 15:03:42 +0200933 $(MBEDTLS_CERT_WRITE) request_file=server1.req.sha256 issuer_crt=$(test_ca_crt) issuer_key=$(test_ca_key_file_rsa) issuer_pwd=$(test_ca_pwd_rsa) version=1 not_before=20190210144406 not_after=20290210144406 md=SHA1 key_usage=digital_signature,non_repudiation,key_encipherment authority_identifier=0 version=3 output_file=$@
Hanno Becker418a6222017-09-14 07:51:28 +0100934server1.key_usage.der: server1.key_usage.crt
935 $(OPENSSL) x509 -inform PEM -in $< -outform DER -out $@
936all_final += server1.key_usage.crt server1.key_usage_noauthid.crt server1.key_usage.der
937
Hanno Becker50cb93a2018-10-08 17:15:28 +0100938server1.cert_type.crt: server1.key server1.req.sha256 $(test_ca_crt) $(test_ca_key_file_rsa)
Ron Eldor36503922019-02-12 15:03:42 +0200939 $(MBEDTLS_CERT_WRITE) request_file=server1.req.sha256 issuer_crt=$(test_ca_crt) issuer_key=$(test_ca_key_file_rsa) issuer_pwd=$(test_ca_pwd_rsa) version=1 not_before=20190210144406 not_after=20290210144406 md=SHA1 ns_cert_type=ssl_server version=3 output_file=$@
Hanno Becker50cb93a2018-10-08 17:15:28 +0100940server1.cert_type_noauthid.crt: server1.key server1.req.sha256 $(test_ca_crt) $(test_ca_key_file_rsa)
Ron Eldor36503922019-02-12 15:03:42 +0200941 $(MBEDTLS_CERT_WRITE) request_file=server1.req.sha256 issuer_crt=$(test_ca_crt) issuer_key=$(test_ca_key_file_rsa) issuer_pwd=$(test_ca_pwd_rsa) version=1 not_before=20190210144406 not_after=20290210144406 md=SHA1 ns_cert_type=ssl_server authority_identifier=0 version=3 output_file=$@
Hanno Becker418a6222017-09-14 07:51:28 +0100942server1.cert_type.der: server1.cert_type.crt
943 $(OPENSSL) x509 -inform PEM -in $< -outform DER -out $@
944all_final += server1.cert_type.crt server1.cert_type_noauthid.crt server1.cert_type.der
945
Hanno Becker50cb93a2018-10-08 17:15:28 +0100946server1.v1.crt: server1.key server1.req.sha256 $(test_ca_crt) $(test_ca_key_file_rsa)
Ron Eldor36503922019-02-12 15:03:42 +0200947 $(MBEDTLS_CERT_WRITE) request_file=server1.req.sha256 issuer_crt=$(test_ca_crt) issuer_key=$(test_ca_key_file_rsa) issuer_pwd=$(test_ca_pwd_rsa) version=1 not_before=20190210144406 not_after=20290210144406 md=SHA1 version=1 output_file=$@
Hanno Becker418a6222017-09-14 07:51:28 +0100948server1.v1.der: server1.v1.crt
949 $(OPENSSL) x509 -inform PEM -in $< -outform DER -out $@
950all_final += server1.v1.crt server1.v1.der
951
Ron Eldor36503922019-02-12 15:03:42 +0200952server1_ca.crt: server1.crt $(test_ca_crt)
953 cat server1.crt $(test_ca_crt) > $@
954all_final += server1_ca.crt
955
956cert_sha1.crt: server1.key
957 $(MBEDTLS_CERT_WRITE) subject_key=server1.key subject_name="C=NL, O=PolarSSL, CN=PolarSSL Cert SHA1" serial=7 issuer_crt=$(test_ca_crt) issuer_key=$(test_ca_key_file_rsa) issuer_pwd=$(test_ca_pwd_rsa) not_before=20190210144406 not_after=20290210144406 md=SHA1 version=3 output_file=$@
958all_final += cert_sha1.crt
959
960cert_sha224.crt: server1.key
961 $(MBEDTLS_CERT_WRITE) subject_key=server1.key subject_name="C=NL, O=PolarSSL, CN=PolarSSL Cert SHA224" serial=8 issuer_crt=$(test_ca_crt) issuer_key=$(test_ca_key_file_rsa) issuer_pwd=$(test_ca_pwd_rsa) not_before=20190210144406 not_after=20290210144406 md=SHA224 version=3 output_file=$@
962all_final += cert_sha224.crt
963
964cert_sha256.crt: server1.key
965 $(MBEDTLS_CERT_WRITE) subject_key=server1.key subject_name="C=NL, O=PolarSSL, CN=PolarSSL Cert SHA256" serial=9 issuer_crt=$(test_ca_crt) issuer_key=$(test_ca_key_file_rsa) issuer_pwd=$(test_ca_pwd_rsa) not_before=20190210144406 not_after=20290210144406 md=SHA256 version=3 output_file=$@
966all_final += cert_sha256.crt
967
968cert_sha384.crt: server1.key
969 $(MBEDTLS_CERT_WRITE) subject_key=server1.key subject_name="C=NL, O=PolarSSL, CN=PolarSSL Cert SHA384" serial=10 issuer_crt=$(test_ca_crt) issuer_key=$(test_ca_key_file_rsa) issuer_pwd=$(test_ca_pwd_rsa) not_before=20190210144406 not_after=20290210144406 md=SHA384 version=3 output_file=$@
970all_final += cert_sha384.crt
971
972cert_sha512.crt: server1.key
973 $(MBEDTLS_CERT_WRITE) subject_key=server1.key subject_name="C=NL, O=PolarSSL, CN=PolarSSL Cert SHA512" serial=11 issuer_crt=$(test_ca_crt) issuer_key=$(test_ca_key_file_rsa) issuer_pwd=$(test_ca_pwd_rsa) not_before=20190210144406 not_after=20290210144406 md=SHA512 version=3 output_file=$@
974all_final += cert_sha512.crt
975
976cert_example_wildcard.crt: server1.key
977 $(MBEDTLS_CERT_WRITE) subject_key=server1.key subject_name="C=NL, O=PolarSSL, CN=*.example.com" serial=12 issuer_crt=$(test_ca_crt) issuer_key=$(test_ca_key_file_rsa) issuer_pwd=$(test_ca_pwd_rsa) not_before=20190210144406 not_after=20290210144406 md=SHA1 version=3 output_file=$@
978all_final += cert_example_wildcard.crt
979
Hanno Becker418a6222017-09-14 07:51:28 +0100980# OpenSSL-generated certificates for comparison
Hanno Becker81535d02017-09-13 15:39:59 +0100981# Also provide certificates in DER format to allow
Hanno Becker418a6222017-09-14 07:51:28 +0100982# direct binary comparison using e.g. dumpasn1
Hanno Becker50cb93a2018-10-08 17:15:28 +0100983server1.crt.openssl server1.key_usage.crt.openssl server1.cert_type.crt.openssl: server1.key server1.req.sha256 $(test_ca_crt) $(test_ca_key_file_rsa) $(test_ca_server1_config_file)
Hanno Becker418a6222017-09-14 07:51:28 +0100984 echo "01" > $(test_ca_server1_serial)
985 rm -f $(test_ca_server1_db)
986 touch $(test_ca_server1_db)
Hanno Becker50cb93a2018-10-08 17:15:28 +0100987 $(OPENSSL) ca -batch -passin "pass:$(test_ca_pwd_rsa)" -config $(test_ca_server1_config_file) -in server1.req.sha256 -extensions v3_ext -extfile $@.v3_ext -out $@
Hanno Becker418a6222017-09-14 07:51:28 +0100988server1.der.openssl: server1.crt.openssl
989 $(OPENSSL) x509 -inform PEM -in $< -outform DER -out $@
990server1.key_usage.der.openssl: server1.key_usage.crt.openssl
991 $(OPENSSL) x509 -inform PEM -in $< -outform DER -out $@
992server1.cert_type.der.openssl: server1.cert_type.crt.openssl
993 $(OPENSSL) x509 -inform PEM -in $< -outform DER -out $@
994
Hanno Becker50cb93a2018-10-08 17:15:28 +0100995server1.v1.crt.openssl: server1.key server1.req.sha256 $(test_ca_crt) $(test_ca_key_file_rsa) $(test_ca_server1_config_file)
Hanno Becker418a6222017-09-14 07:51:28 +0100996 echo "01" > $(test_ca_server1_serial)
997 rm -f $(test_ca_server1_db)
998 touch $(test_ca_server1_db)
Hanno Becker50cb93a2018-10-08 17:15:28 +0100999 $(OPENSSL) ca -batch -passin "pass:$(test_ca_pwd_rsa)" -config $(test_ca_server1_config_file) -in server1.req.sha256 -out $@
Hanno Becker418a6222017-09-14 07:51:28 +01001000server1.v1.der.openssl: server1.v1.crt.openssl
1001 $(OPENSSL) x509 -inform PEM -in $< -outform DER -out $@
1002
Ron Eldor9647bc52019-02-06 18:48:37 +02001003# To revoke certificate in the openssl database:
1004#
1005# $(OPENSSL) ca -gencrl -batch -cert $(test_ca_crt) -keyfile $(test_ca_key_file_rsa) -key $(test_ca_pwd_rsa) -config $(test_ca_server1_config_file) -md sha256 -crldays 365 -revoke server1.crt
1006
1007crl.pem: $(test_ca_crt) $(test_ca_key_file_rsa) $(test_ca_config_file)
1008 $(OPENSSL) ca -gencrl -batch -cert $(test_ca_crt) -keyfile $(test_ca_key_file_rsa) -key $(test_ca_pwd_rsa) -config $(test_ca_server1_config_file) -md sha1 -crldays 3653 -out $@
1009
1010server1_all: crl.pem server1.crt server1.noauthid.crt server1.crt.openssl server1.v1.crt server1.v1.crt.openssl server1.key_usage.crt server1.key_usage_noauthid.crt server1.key_usage.crt.openssl server1.cert_type.crt server1.cert_type_noauthid.crt server1.cert_type.crt.openssl server1.der server1.der.openssl server1.v1.der server1.v1.der.openssl server1.key_usage.der server1.key_usage.der.openssl server1.cert_type.der server1.cert_type.der.openssl
Gilles Peskinef040a172017-05-05 18:56:12 +02001011
Hanno Beckerebc1f402018-10-31 16:35:59 +00001012# server2*
1013
1014server2.crt: server2.req.sha256
Ron Eldor36503922019-02-12 15:03:42 +02001015 $(MBEDTLS_CERT_WRITE) request_file=server2.req.sha256 serial=2 issuer_crt=$(test_ca_crt) issuer_key=$(test_ca_key_file_rsa) issuer_pwd=$(test_ca_pwd_rsa) not_before=20190210144406 not_after=20290210144406 md=SHA1 version=3 output_file=$@
Hanno Beckerebc1f402018-10-31 16:35:59 +00001016all_final += server2.crt
1017
1018server2-sha256.crt: server2.req.sha256
Ron Eldor36503922019-02-12 15:03:42 +02001019 $(MBEDTLS_CERT_WRITE) request_file=server2.req.sha256 serial=2 issuer_crt=$(test_ca_crt) issuer_key=$(test_ca_key_file_rsa) issuer_pwd=$(test_ca_pwd_rsa) not_before=20190210144406 not_after=20290210144406 md=SHA256 version=3 output_file=$@
Hanno Beckerebc1f402018-10-31 16:35:59 +00001020all_final += server2-sha256.crt
1021
Hanno Becker928f6172019-06-03 14:14:04 +01001022# MD2, MD4, MD5 test certificates
Gilles Peskinef040a172017-05-05 18:56:12 +02001023
Hanno Becker928f6172019-06-03 14:14:04 +01001024cert_md_test_key = $(cli_crt_key_file_rsa)
1025
1026cert_md2.csr: $(cert_md_test_key)
1027 $(MBEDTLS_CERT_REQ) output_file=$@ filename=$< subject_name="C=NL,O=PolarSSL,CN=PolarSSL Cert MD2" md=MD2
1028all_intermediate += cert_md2.csr
1029
1030cert_md2.crt: cert_md2.csr
Hanno Becker8d59f252019-06-03 14:14:38 +01001031 $(MBEDTLS_CERT_WRITE) request_file=$< serial=9 issuer_crt=$(test_ca_crt) issuer_key=$(test_ca_key_file_rsa) issuer_pwd=$(test_ca_pwd_rsa) not_before=20000101121212 not_after=20300101121212 md=MD2 version=3 output_file=$@
Hanno Becker928f6172019-06-03 14:14:04 +01001032all_final += cert_md2.crt
1033
1034cert_md4.csr: $(cert_md_test_key)
1035 $(MBEDTLS_CERT_REQ) output_file=$@ filename=$< subject_name="C=NL,O=PolarSSL,CN=PolarSSL Cert MD4" md=MD4
1036all_intermediate += cert_md4.csr
1037
1038cert_md4.crt: cert_md4.csr
Hanno Becker8d59f252019-06-03 14:14:38 +01001039 $(MBEDTLS_CERT_WRITE) request_file=$< serial=5 issuer_crt=$(test_ca_crt) issuer_key=$(test_ca_key_file_rsa) issuer_pwd=$(test_ca_pwd_rsa) not_before=20000101121212 not_after=20300101121212 md=MD4 version=3 output_file=$@
Hanno Becker928f6172019-06-03 14:14:04 +01001040all_final += cert_md4.crt
1041
1042cert_md5.csr: $(cert_md_test_key)
1043 $(MBEDTLS_CERT_REQ) output_file=$@ filename=$< subject_name="C=NL,O=PolarSSL,CN=PolarSSL Cert MD5" md=MD5
1044all_intermediate += cert_md5.csr
1045
1046cert_md5.crt: cert_md5.csr
Ron Eldor36503922019-02-12 15:03:42 +02001047 $(MBEDTLS_CERT_WRITE) request_file=$< serial=6 issuer_crt=$(test_ca_crt) issuer_key=$(test_ca_key_file_rsa) issuer_pwd=$(test_ca_pwd_rsa) not_before=20190210144406 not_after=20290210144406 md=MD5 version=3 output_file=$@
Hanno Becker928f6172019-06-03 14:14:04 +01001048all_final += cert_md5.crt
Gilles Peskinef040a172017-05-05 18:56:12 +02001049
1050################################################################
1051#### Meta targets
1052################################################################
1053
1054all_final: $(all_final)
1055all: $(all_intermediate) $(all_final)
1056
Gilles Peskinefd14bca2017-05-11 17:57:22 +02001057.PHONY: default all_final all
Gilles Peskineea8d6972017-11-28 17:30:52 +01001058.PHONY: keys_rsa_all
1059.PHONY: keys_rsa_unenc keys_rsa_enc_basic
1060.PHONY: keys_rsa_enc_pkcs8_v1 keys_rsa_enc_pkcs8_v2
1061.PHONY: keys_rsa_enc_basic_1024 keys_rsa_enc_basic_2048 keys_rsa_enc_basic_4096
1062.PHONY: keys_rsa_enc_pkcs8_v1_1024 keys_rsa_enc_pkcs8_v2_1024
1063.PHONY: keys_rsa_enc_pkcs8_v1_2048 keys_rsa_enc_pkcs8_v2_2048
1064.PHONY: keys_rsa_enc_pkcs8_v1_4096 keys_rsa_enc_pkcs8_v2_4096
1065.PHONY: server1_all
Gilles Peskinefd14bca2017-05-11 17:57:22 +02001066
Gilles Peskinef040a172017-05-05 18:56:12 +02001067# These files should not be committed to the repository.
1068list_intermediate:
1069 @printf '%s\n' $(all_intermediate) | sort
1070# These files should be committed to the repository so that the test data is
1071# available upon checkout without running a randomized process depending on
1072# third-party tools.
1073list_final:
1074 @printf '%s\n' $(all_final) | sort
Gilles Peskinefd14bca2017-05-11 17:57:22 +02001075.PHONY: list_intermediate list_final
Gilles Peskinef040a172017-05-05 18:56:12 +02001076
Gilles Peskinefd14bca2017-05-11 17:57:22 +02001077## Remove intermediate files
Gilles Peskinef040a172017-05-05 18:56:12 +02001078clean:
1079 rm -f $(all_intermediate)
Gilles Peskinefd14bca2017-05-11 17:57:22 +02001080## Remove all build products, even the ones that are committed
Gilles Peskinef040a172017-05-05 18:56:12 +02001081neat: clean
1082 rm -f $(all_final)
Gilles Peskinefd14bca2017-05-11 17:57:22 +02001083.PHONY: clean neat