Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions examples/data/x509/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
This directory contains x509 certificates and associated private keys used in
examples.

How were these test certs/keys generated ?
------------------------------------------
Run `./create.sh`
35 changes: 35 additions & 0 deletions examples/data/x509/ca_cert.pem
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
-----BEGIN CERTIFICATE-----
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
QBn8XBLE
-----END CERTIFICATE-----
52 changes: 52 additions & 0 deletions examples/data/x509/ca_key.pem
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
-----BEGIN PRIVATE KEY-----
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
rjzlPgeLBZae1+7UCXeioQniof5q
-----END PRIVATE KEY-----
35 changes: 35 additions & 0 deletions examples/data/x509/client_ca_cert.pem
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
-----BEGIN CERTIFICATE-----
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
x+6k0BbS
-----END CERTIFICATE-----
52 changes: 52 additions & 0 deletions examples/data/x509/client_ca_key.pem
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
-----BEGIN PRIVATE KEY-----
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
qexnJsLQLNgIy+am0ldF2ZffQgZI7w==
-----END PRIVATE KEY-----
32 changes: 32 additions & 0 deletions examples/data/x509/client_cert.pem
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
-----BEGIN CERTIFICATE-----
MIIFkjCCA3qgAwIBAgICA+gwDQYJKoZIhvcNAQELBQAwUDELMAkGA1UEBhMCVVMx
CzAJBgNVBAgMAkNBMQwwCgYDVQQHDANTVkwxDTALBgNVBAoMBGdSUEMxFzAVBgNV
BAMMDnRlc3QtY2xpZW50X2NhMB4XDTI1MDkxNzE3MDkwNVoXDTM1MDkxNTE3MDkw
NVowTjELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAkNBMQwwCgYDVQQHDANTVkwxDTAL
BgNVBAoMBGdSUEMxFTATBgNVBAMMDHRlc3QtY2xpZW50MTCCAiIwDQYJKoZIhvcN
AQEBBQADggIPADCCAgoCggIBAPikucha+hzH8Ggx6PVIzHnG0Oo6aOyDzvZr6jy4
jofYEsyo7iyXgYovATtSsJ6WfL18LEotk+8F/uHjKbmaEFPlBtx3k5I5MMGeWuR5
b1rFqcVV4PjYJ7Nrw4XFTUgDEYjnq/mG54q1yc07/WoOQF0GBnffdBfJNk/89XdN
JRTKs383eVjrReR3vOFzL8wEw3G4fG8TDLf69wCCotGgZmcBqcsQGrVi5NWiYgyN
Gy5oHy28s4Og9gaMFZPIlOnPAVR3Z4CAIvwK9KwhYG/CXpB15SkQ4htZ2dUaumFy
tK9KPUGLp/4rQNy+5GNPzvY4dL0Yh4txcMH+DJFQamJU0RpNGe0JEIkgQy4nBuKh
19jP3+lV/6relvJxqgcp69oHlYaeSfoyMMzaPvfWIA/KPyQO/HUTwytVM1hmVVZD
YB3knM37dy6Q2m5htA8+QJ8eOnq/7QZy3Z7SekCZblATv+SghjDxT6idWsfpLMxS
qO2E3UxxVYtbSjdAYsbXV+MxaUkUckSOiq5zYXvUjcopQ+Bfpn0bA6aUSonqtJl1
jbBf19thQD2kJFrYUBgyYjLNnA4obSfqJRIOhlMHWUoQg55S4mvqg2G+ic5I2NWa
g+w57DmHj5ywV4wSk7d81CLYHkTkI0hSGRXtlShEZqcHrmAYC5ZMZLBcANkHkk/3
bQ+9AgMBAAGjeDB2MAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFOXgJmPdd9x77it2
HeHf3ikgOGYWMA4GA1UdDwEB/wQEAwIF4DAWBgNVHSUBAf8EDDAKBggrBgEFBQcD
AjAfBgNVHSMEGDAWgBQ6JhLgDsFLcVRm388mhm+vMyuNLDANBgkqhkiG9w0BAQsF
AAOCAgEATg8Mr8F5zRShU0NamUuclvW8cmXxTv7hhPGgknKd1Jn3ZkYEyJZDFoFW
fJlcYwVYNdWxle+NwTQEGpjYhW9cH95qlRyTL/KzFdOZAY8AbjDN2osHGdRpWHKZ
KbjJgI8F+0rFxoTYlUPM/WSChHbiwKAQJmKKMYrUZ9DqRqK775z2Aanej5OC54hP
0c/O+3enwsx2evzbD2SJqQg1eWfPmhkLciVOD1+nfxeB3v/U7+lRcGaIjOrXX3Hw
IQ0sJkcdMOIcMCrTpDhF6QzGZXlCMBzy8+/Tn6uZTuxzCINvHd+CHKRE6OWxXTw7
pN2V4i01xO6lC9VvYKjbwKANtUYbgpNs8UHvbSMXetdls5GgREFUuXLCTyBoramd
+isRO1To4PH0S5WKN16+w6OVUbD9OMtrHT2bGPpBRSnNR+mAT3I0ziFEFoo9jwoe
CyAhIQn0HeCrDC5kNpon7O1ju1ew/b2/7xGZ5mD4J0mlU2mh/KCUqqqQPed1TLi9
j0pj2mYlTYVM/UFaPBolZK4Qg7JgJWvMfuMJvCEFpr90trWlxl23eGAUlq2HtwMA
7m7euYRUNp0YTzhJU9grxq2bxjyQIaV02xKDPpEJED1byiXOdHc1L+WKPCbS6534
QmnOTy5duo6peNcIZDA8uhl4MkFpCsl9fUiWLPMLBfkf4GVC5xE=
-----END CERTIFICATE-----
52 changes: 52 additions & 0 deletions examples/data/x509/client_key.pem
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
-----BEGIN PRIVATE KEY-----
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
DC5I2TQD/DsjdPJFAk94MNL1SxrgOu4=
-----END PRIVATE KEY-----
69 changes: 69 additions & 0 deletions examples/data/x509/create.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
#!/bin/bash

# Create the server CA certs.
openssl req -x509 \
-newkey rsa:4096 \
-nodes \
-days 3650 \
-keyout ca_key.pem \
-out ca_cert.pem \
-subj /C=US/ST=CA/L=SVL/O=gRPC/CN=test-server_ca/ \
-config ./openssl.cnf \
-extensions test_ca \
-sha256

# Create the client CA certs.
openssl req -x509 \
-newkey rsa:4096 \
-nodes \
-days 3650 \
-keyout client_ca_key.pem \
-out client_ca_cert.pem \
-subj /C=US/ST=CA/L=SVL/O=gRPC/CN=test-client_ca/ \
-config ./openssl.cnf \
-extensions test_ca \
-sha256

# Generate a server cert.
openssl genrsa -out server_key.pem 4096
openssl req -new \
-key server_key.pem \
-days 3650 \
-out server_csr.pem \
-subj /C=US/ST=CA/L=SVL/O=gRPC/CN=test-server1/ \
-config ./openssl.cnf \
-reqexts test_server
openssl x509 -req \
-in server_csr.pem \
-CAkey ca_key.pem \
-CA ca_cert.pem \
-days 3650 \
-set_serial 1000 \
-out server_cert.pem \
-extfile ./openssl.cnf \
-extensions test_server \
-sha256
openssl verify -verbose -CAfile ca_cert.pem server_cert.pem

# Generate a client cert.
openssl genrsa -out client_key.pem 4096
openssl req -new \
-key client_key.pem \
-days 3650 \
-out client_csr.pem \
-subj /C=US/ST=CA/L=SVL/O=gRPC/CN=test-client1/ \
-config ./openssl.cnf \
-reqexts test_client
openssl x509 -req \
-in client_csr.pem \
-CAkey client_ca_key.pem \
-CA client_ca_cert.pem \
-days 3650 \
-set_serial 1000 \
-out client_cert.pem \
-extfile ./openssl.cnf \
-extensions test_client \
-sha256
openssl verify -verbose -CAfile client_ca_cert.pem client_cert.pem

rm *_csr.pem
28 changes: 28 additions & 0 deletions examples/data/x509/openssl.cnf
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
[req]
distinguished_name = req_distinguished_name
attributes = req_attributes

[req_distinguished_name]

[req_attributes]

[test_ca]
basicConstraints = critical,CA:TRUE
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid:always,issuer:always
keyUsage = critical,keyCertSign

[test_server]
basicConstraints = critical,CA:FALSE
subjectKeyIdentifier = hash
keyUsage = critical,digitalSignature,keyEncipherment,keyAgreement
subjectAltName = @server_alt_names

[server_alt_names]
DNS.1 = *.test.example.com

[test_client]
basicConstraints = critical,CA:FALSE
subjectKeyIdentifier = hash
keyUsage = critical,nonRepudiation,digitalSignature,keyEncipherment
extendedKeyUsage = critical,clientAuth
Loading
Loading