summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIvan Kanakarakis <ivan.kanak@gmail.com>2021-10-19 12:30:44 +0300
committerGitHub <noreply@github.com>2021-10-19 12:30:44 +0300
commit9ea6b286ecbc2c15b7f414eb13bb1054a5910a5e (patch)
tree7ab6350acf35d092719f062e120bd856698a1347
parentcfcaf9c14e7da065144abc89cef36ee24435d18e (diff)
parent7925130f2d64963b42cc9790d1741d4eacf4f06c (diff)
downloadpysaml2-9ea6b286ecbc2c15b7f414eb13bb1054a5910a5e.tar.gz
Merge pull request #829 from SanctusMessor/update_pki
Update example keys and certs to 4096 as 2048 bit key pairs have are not supported anymore
-rwxr-xr-xexample/create_key.sh2
-rw-r--r--example/idp2/pki/mycert.pem46
-rw-r--r--example/idp2/pki/mykey.pem67
-rw-r--r--example/idp2_repoze/pki/mycert.pem46
-rw-r--r--example/idp2_repoze/pki/mykey.pem67
-rw-r--r--example/sp-repoze/pki/mycert.pem46
-rw-r--r--example/sp-repoze/pki/mykey.pem67
-rw-r--r--example/sp-wsgi/pki/mycert.pem46
-rw-r--r--example/sp-wsgi/pki/mykey.pem67
9 files changed, 329 insertions, 125 deletions
diff --git a/example/create_key.sh b/example/create_key.sh
index 2e7a185a..99ee07c8 100755
--- a/example/create_key.sh
+++ b/example/create_key.sh
@@ -7,7 +7,7 @@ by openssl, edit your openssl.cnf, such as /etc/ssl/openssl.cnf
EOF
-openssl genrsa -out server.key 2048
+openssl genrsa -out server.key 4096
chmod 600 server.key
openssl req -new -key server.key -out server.csr
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
diff --git a/example/idp2/pki/mycert.pem b/example/idp2/pki/mycert.pem
index d4a0873c..2fb748e4 100644
--- a/example/idp2/pki/mycert.pem
+++ b/example/idp2/pki/mycert.pem
@@ -1,18 +1,32 @@
-----BEGIN CERTIFICATE-----
-MIIC8jCCAlugAwIBAgIJAJHg2V5J31I8MA0GCSqGSIb3DQEBBQUAMFoxCzAJBgNV
-BAYTAlNFMQ0wCwYDVQQHEwRVbWVhMRgwFgYDVQQKEw9VbWVhIFVuaXZlcnNpdHkx
-EDAOBgNVBAsTB0lUIFVuaXQxEDAOBgNVBAMTB1Rlc3QgU1AwHhcNMDkxMDI2MTMz
-MTE1WhcNMTAxMDI2MTMzMTE1WjBaMQswCQYDVQQGEwJTRTENMAsGA1UEBxMEVW1l
-YTEYMBYGA1UEChMPVW1lYSBVbml2ZXJzaXR5MRAwDgYDVQQLEwdJVCBVbml0MRAw
-DgYDVQQDEwdUZXN0IFNQMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDkJWP7
-bwOxtH+E15VTaulNzVQ/0cSbM5G7abqeqSNSs0l0veHr6/ROgW96ZeQ57fzVy2MC
-FiQRw2fzBs0n7leEmDJyVVtBTavYlhAVXDNa3stgvh43qCfLx+clUlOvtnsoMiiR
-mo7qf0BoPKTj7c0uLKpDpEbAHQT4OF1HRYVxMwIDAQABo4G/MIG8MB0GA1UdDgQW
-BBQ7RgbMJFDGRBu9o3tDQDuSoBy7JjCBjAYDVR0jBIGEMIGBgBQ7RgbMJFDGRBu9
-o3tDQDuSoBy7JqFepFwwWjELMAkGA1UEBhMCU0UxDTALBgNVBAcTBFVtZWExGDAW
-BgNVBAoTD1VtZWEgVW5pdmVyc2l0eTEQMA4GA1UECxMHSVQgVW5pdDEQMA4GA1UE
-AxMHVGVzdCBTUIIJAJHg2V5J31I8MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEF
-BQADgYEAMuRwwXRnsiyWzmRikpwinnhTmbooKm5TINPE7A7gSQ710RxioQePPhZO
-zkM27NnHTrCe2rBVg0EGz7QTd1JIwLPvgoj4VTi/fSha/tXrYUaqc9AqU1kWI4WN
-+vffBGQ09mo+6CffuFTZYeOhzP/2stAPwCTU4kxEoiy0KpZMANI=
+MIIFjTCCA3WgAwIBAgIUPqN85BV5eJsrEW8IN2rVIcHGliUwDQYJKoZIhvcNAQEL
+BQAwVTELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAldBMRAwDgYDVQQHDAdTZWF0dGxl
+MRowGAYDVQQKDBFweXNhbWwyIERlbW8gQ2VydDELMAkGA1UECwwCSVQwIBcNMjEx
+MDA3MDgwNzE1WhgPMjEyMTEwMzEwODA3MTVaMFUxCzAJBgNVBAYTAlVTMQswCQYD
+VQQIDAJXQTEQMA4GA1UEBwwHU2VhdHRsZTEaMBgGA1UECgwRcHlzYW1sMiBEZW1v
+IENlcnQxCzAJBgNVBAsMAklUMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC
+AgEAuWw/2OYDIO3pAZyQFQadOWnOh/ilqWXd66M3gD3tft+zydi2IRTUphhlrVmL
+/7UrWjHYfrBbF6UrliwvXfjgdECRAA6ziMlzbc+RYHqw1XhR/Y1DxH1V3OZmidaH
+B3oisfXe68v28kTHnq0iGQjivkRaMWZXrMSQfakm5ZQz6HC92DgxsOXcSTMlCETN
+lziEik2C/4mhA96p+upQPoAC3e9Dn7lNUS2oJT/cZBggJOtLScV6Cyzv+k+u2MCu
+ddzenrFONHBe7MNUYEg7Ho9Utas3y6prH36ZwsArtUPpNwBZrNlVenFeF6rUN80x
+hKNwvptlXQqAC+2NIhunYgNRoUHmy5opGBJpjqy0k16k+aac2t9Y/Lc+Q52PSh5Z
+e3C9Ip5CxoxA6hMk7IZT1kpsUl6uc8FBX9SLNRovIOC4r1anaxIareQjRab2iw+a
+RhTmKlGSXzlaSMS2FZMpT0q73d/rFo1/RKeE2dzG9fXe27jXJTv50J4Y46RF/6/C
+0BWxTAzdBPQj1I5KWVVX9XuZklSbhKv/sGNXxPe5p5hR9rwt2oCrAhHzFZzddrzI
+BVRi6UtgnPMg8klnUcHsDt7elCuAF2ouB4Z8YplxhhYJga3NfLmHXYw1R7PBF2Ud
+4FSgkjCO/ME/+FgyUKAaG6qKBMe3FJzuXch314qR1+1xT+ECAwEAAaNTMFEwHQYD
+VR0OBBYEFIwaXBfOL6adUTxpgv/NJGZ3gLrIMB8GA1UdIwQYMBaAFIwaXBfOL6ad
+UTxpgv/NJGZ3gLrIMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggIB
+AI4SQxTjjNvV7E903U/l1pd7PoyvM9LxcYkmnjTGMHBoK1/HbpU27s9ZHjodfT7k
+k1uMCh6tx7kuaSboWX9BX8Sdgtfj8Y9hs7Bb4MhTH3qJ3LFGK2d0LgK+lTFNRtmy
+JfExfmDcXi/YO+0IVd3mK49BfGdpN8lT7KjtcbUk4gObGLuN/XGCTjFPmyIRJfgZ
+K6kLWskthddoa4beqzpVQnbn5TBtShzlzmrjmU5YieP54IoQXDzE5mWn4PFuMsZ9
+wCLcSwRYiP3fUMGCChs64QADuIjZYB8xl3CHKxZMu9Ki+dHQ2W1X1UyozzF5i19S
+rhVdYXlumVOS6jnAjZ/UNIS1mYCZk5AT8jtsCBkgmNmhZab3BNbLklLz2AYi9fpI
+CYkHei2fYlAHKXPFZFKIHmG3mqpgu9nClyelrjRsxvrvkJ4Di/aPZ3qA+I006uYw
+Ti+NsL6eXBhIPUuA/NHax53kzJSW/AcjRhSKriKdSqD+lLOoQ+z9ZnZXeBKCWzGU
+9bcMUk1x2pJJJBI7AJC/ObAbJDCtQreZZE+u+CABhkwbLPkWx8ZgS9a0/gBVmIJ3
+4qsVmrv0sHnk1JQoFkMNT2oQmCuoA17HtfqxGyEPCxEJu/kqgK3fviKgd1MEP4Y7
+3F6yVtiEWnspy4cQqr6pHBBggDbjve6DPNsIM1jHGUsR
-----END CERTIFICATE-----
diff --git a/example/idp2/pki/mykey.pem b/example/idp2/pki/mykey.pem
index d9ec5f8c..0faf44f5 100644
--- a/example/idp2/pki/mykey.pem
+++ b/example/idp2/pki/mykey.pem
@@ -1,15 +1,52 @@
------BEGIN RSA PRIVATE KEY-----
-MIICXAIBAAKBgQDkJWP7bwOxtH+E15VTaulNzVQ/0cSbM5G7abqeqSNSs0l0veHr
-6/ROgW96ZeQ57fzVy2MCFiQRw2fzBs0n7leEmDJyVVtBTavYlhAVXDNa3stgvh43
-qCfLx+clUlOvtnsoMiiRmo7qf0BoPKTj7c0uLKpDpEbAHQT4OF1HRYVxMwIDAQAB
-AoGAbx9rKH91DCw/ZEPhHsVXJ6cYHxGcMoAWvnMMC9WUN+bNo4gNL205DLfsxXA1
-jqXFXZj3+38vSFumGPA6IvXrN+Wyp3+Lz3QGc4K5OdHeBtYlxa6EsrxPgvuxYDUB
-vx3xdWPMjy06G/ML+pR9XHnRaPNubXQX3UxGBuLjwNXVmyECQQD2/D84tYoCGWoq
-5FhUBxFUy2nnOLKYC/GGxBTX62iLfMQ3fbQcdg2pJsB5rrniyZf7UL+9FOsAO9k1
-8DO7G12DAkEA7Hkdg1KEw4ZfjnnjEa+KqpyLTLRQ91uTVW6kzR+4zY719iUJ/PXE
-PxJqm1ot7mJd1LW+bWtjLpxs7jYH19V+kQJBAIEpn2JnxdmdMuFlcy/WVmDy09pg
-0z0imdexeXkFmjHAONkQOv3bWv+HzYaVMo8AgCOksfEPHGqN4eUMTfFeuUMCQF+5
-E1JSd/2yCkJhYqKJHae8oMLXByNqRXTCyiFioutK4JPYIHfugJdLfC4QziD+Xp85
-RrGCU+7NUWcIJhqfiJECQAIgUAzfzhdj5AyICaFPaOQ+N8FVMLcTyqeTXP0sIlFk
-JStVibemTRCbxdXXM7OVipz1oW3PBVEO3t/VyjiaGGg=
------END RSA PRIVATE KEY-----
+-----BEGIN PRIVATE KEY-----
+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
+dVge8zq6Dg7ifqPyWVAprD6YX485gQ4O
+-----END PRIVATE KEY-----
diff --git a/example/idp2_repoze/pki/mycert.pem b/example/idp2_repoze/pki/mycert.pem
index d4a0873c..2fb748e4 100644
--- a/example/idp2_repoze/pki/mycert.pem
+++ b/example/idp2_repoze/pki/mycert.pem
@@ -1,18 +1,32 @@
-----BEGIN CERTIFICATE-----
-MIIC8jCCAlugAwIBAgIJAJHg2V5J31I8MA0GCSqGSIb3DQEBBQUAMFoxCzAJBgNV
-BAYTAlNFMQ0wCwYDVQQHEwRVbWVhMRgwFgYDVQQKEw9VbWVhIFVuaXZlcnNpdHkx
-EDAOBgNVBAsTB0lUIFVuaXQxEDAOBgNVBAMTB1Rlc3QgU1AwHhcNMDkxMDI2MTMz
-MTE1WhcNMTAxMDI2MTMzMTE1WjBaMQswCQYDVQQGEwJTRTENMAsGA1UEBxMEVW1l
-YTEYMBYGA1UEChMPVW1lYSBVbml2ZXJzaXR5MRAwDgYDVQQLEwdJVCBVbml0MRAw
-DgYDVQQDEwdUZXN0IFNQMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDkJWP7
-bwOxtH+E15VTaulNzVQ/0cSbM5G7abqeqSNSs0l0veHr6/ROgW96ZeQ57fzVy2MC
-FiQRw2fzBs0n7leEmDJyVVtBTavYlhAVXDNa3stgvh43qCfLx+clUlOvtnsoMiiR
-mo7qf0BoPKTj7c0uLKpDpEbAHQT4OF1HRYVxMwIDAQABo4G/MIG8MB0GA1UdDgQW
-BBQ7RgbMJFDGRBu9o3tDQDuSoBy7JjCBjAYDVR0jBIGEMIGBgBQ7RgbMJFDGRBu9
-o3tDQDuSoBy7JqFepFwwWjELMAkGA1UEBhMCU0UxDTALBgNVBAcTBFVtZWExGDAW
-BgNVBAoTD1VtZWEgVW5pdmVyc2l0eTEQMA4GA1UECxMHSVQgVW5pdDEQMA4GA1UE
-AxMHVGVzdCBTUIIJAJHg2V5J31I8MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEF
-BQADgYEAMuRwwXRnsiyWzmRikpwinnhTmbooKm5TINPE7A7gSQ710RxioQePPhZO
-zkM27NnHTrCe2rBVg0EGz7QTd1JIwLPvgoj4VTi/fSha/tXrYUaqc9AqU1kWI4WN
-+vffBGQ09mo+6CffuFTZYeOhzP/2stAPwCTU4kxEoiy0KpZMANI=
+MIIFjTCCA3WgAwIBAgIUPqN85BV5eJsrEW8IN2rVIcHGliUwDQYJKoZIhvcNAQEL
+BQAwVTELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAldBMRAwDgYDVQQHDAdTZWF0dGxl
+MRowGAYDVQQKDBFweXNhbWwyIERlbW8gQ2VydDELMAkGA1UECwwCSVQwIBcNMjEx
+MDA3MDgwNzE1WhgPMjEyMTEwMzEwODA3MTVaMFUxCzAJBgNVBAYTAlVTMQswCQYD
+VQQIDAJXQTEQMA4GA1UEBwwHU2VhdHRsZTEaMBgGA1UECgwRcHlzYW1sMiBEZW1v
+IENlcnQxCzAJBgNVBAsMAklUMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC
+AgEAuWw/2OYDIO3pAZyQFQadOWnOh/ilqWXd66M3gD3tft+zydi2IRTUphhlrVmL
+/7UrWjHYfrBbF6UrliwvXfjgdECRAA6ziMlzbc+RYHqw1XhR/Y1DxH1V3OZmidaH
+B3oisfXe68v28kTHnq0iGQjivkRaMWZXrMSQfakm5ZQz6HC92DgxsOXcSTMlCETN
+lziEik2C/4mhA96p+upQPoAC3e9Dn7lNUS2oJT/cZBggJOtLScV6Cyzv+k+u2MCu
+ddzenrFONHBe7MNUYEg7Ho9Utas3y6prH36ZwsArtUPpNwBZrNlVenFeF6rUN80x
+hKNwvptlXQqAC+2NIhunYgNRoUHmy5opGBJpjqy0k16k+aac2t9Y/Lc+Q52PSh5Z
+e3C9Ip5CxoxA6hMk7IZT1kpsUl6uc8FBX9SLNRovIOC4r1anaxIareQjRab2iw+a
+RhTmKlGSXzlaSMS2FZMpT0q73d/rFo1/RKeE2dzG9fXe27jXJTv50J4Y46RF/6/C
+0BWxTAzdBPQj1I5KWVVX9XuZklSbhKv/sGNXxPe5p5hR9rwt2oCrAhHzFZzddrzI
+BVRi6UtgnPMg8klnUcHsDt7elCuAF2ouB4Z8YplxhhYJga3NfLmHXYw1R7PBF2Ud
+4FSgkjCO/ME/+FgyUKAaG6qKBMe3FJzuXch314qR1+1xT+ECAwEAAaNTMFEwHQYD
+VR0OBBYEFIwaXBfOL6adUTxpgv/NJGZ3gLrIMB8GA1UdIwQYMBaAFIwaXBfOL6ad
+UTxpgv/NJGZ3gLrIMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggIB
+AI4SQxTjjNvV7E903U/l1pd7PoyvM9LxcYkmnjTGMHBoK1/HbpU27s9ZHjodfT7k
+k1uMCh6tx7kuaSboWX9BX8Sdgtfj8Y9hs7Bb4MhTH3qJ3LFGK2d0LgK+lTFNRtmy
+JfExfmDcXi/YO+0IVd3mK49BfGdpN8lT7KjtcbUk4gObGLuN/XGCTjFPmyIRJfgZ
+K6kLWskthddoa4beqzpVQnbn5TBtShzlzmrjmU5YieP54IoQXDzE5mWn4PFuMsZ9
+wCLcSwRYiP3fUMGCChs64QADuIjZYB8xl3CHKxZMu9Ki+dHQ2W1X1UyozzF5i19S
+rhVdYXlumVOS6jnAjZ/UNIS1mYCZk5AT8jtsCBkgmNmhZab3BNbLklLz2AYi9fpI
+CYkHei2fYlAHKXPFZFKIHmG3mqpgu9nClyelrjRsxvrvkJ4Di/aPZ3qA+I006uYw
+Ti+NsL6eXBhIPUuA/NHax53kzJSW/AcjRhSKriKdSqD+lLOoQ+z9ZnZXeBKCWzGU
+9bcMUk1x2pJJJBI7AJC/ObAbJDCtQreZZE+u+CABhkwbLPkWx8ZgS9a0/gBVmIJ3
+4qsVmrv0sHnk1JQoFkMNT2oQmCuoA17HtfqxGyEPCxEJu/kqgK3fviKgd1MEP4Y7
+3F6yVtiEWnspy4cQqr6pHBBggDbjve6DPNsIM1jHGUsR
-----END CERTIFICATE-----
diff --git a/example/idp2_repoze/pki/mykey.pem b/example/idp2_repoze/pki/mykey.pem
index d9ec5f8c..0faf44f5 100644
--- a/example/idp2_repoze/pki/mykey.pem
+++ b/example/idp2_repoze/pki/mykey.pem
@@ -1,15 +1,52 @@
------BEGIN RSA PRIVATE KEY-----
-MIICXAIBAAKBgQDkJWP7bwOxtH+E15VTaulNzVQ/0cSbM5G7abqeqSNSs0l0veHr
-6/ROgW96ZeQ57fzVy2MCFiQRw2fzBs0n7leEmDJyVVtBTavYlhAVXDNa3stgvh43
-qCfLx+clUlOvtnsoMiiRmo7qf0BoPKTj7c0uLKpDpEbAHQT4OF1HRYVxMwIDAQAB
-AoGAbx9rKH91DCw/ZEPhHsVXJ6cYHxGcMoAWvnMMC9WUN+bNo4gNL205DLfsxXA1
-jqXFXZj3+38vSFumGPA6IvXrN+Wyp3+Lz3QGc4K5OdHeBtYlxa6EsrxPgvuxYDUB
-vx3xdWPMjy06G/ML+pR9XHnRaPNubXQX3UxGBuLjwNXVmyECQQD2/D84tYoCGWoq
-5FhUBxFUy2nnOLKYC/GGxBTX62iLfMQ3fbQcdg2pJsB5rrniyZf7UL+9FOsAO9k1
-8DO7G12DAkEA7Hkdg1KEw4ZfjnnjEa+KqpyLTLRQ91uTVW6kzR+4zY719iUJ/PXE
-PxJqm1ot7mJd1LW+bWtjLpxs7jYH19V+kQJBAIEpn2JnxdmdMuFlcy/WVmDy09pg
-0z0imdexeXkFmjHAONkQOv3bWv+HzYaVMo8AgCOksfEPHGqN4eUMTfFeuUMCQF+5
-E1JSd/2yCkJhYqKJHae8oMLXByNqRXTCyiFioutK4JPYIHfugJdLfC4QziD+Xp85
-RrGCU+7NUWcIJhqfiJECQAIgUAzfzhdj5AyICaFPaOQ+N8FVMLcTyqeTXP0sIlFk
-JStVibemTRCbxdXXM7OVipz1oW3PBVEO3t/VyjiaGGg=
------END RSA PRIVATE KEY-----
+-----BEGIN PRIVATE KEY-----
+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
+dVge8zq6Dg7ifqPyWVAprD6YX485gQ4O
+-----END PRIVATE KEY-----
diff --git a/example/sp-repoze/pki/mycert.pem b/example/sp-repoze/pki/mycert.pem
index d4a0873c..2fb748e4 100644
--- a/example/sp-repoze/pki/mycert.pem
+++ b/example/sp-repoze/pki/mycert.pem
@@ -1,18 +1,32 @@
-----BEGIN CERTIFICATE-----
-MIIC8jCCAlugAwIBAgIJAJHg2V5J31I8MA0GCSqGSIb3DQEBBQUAMFoxCzAJBgNV
-BAYTAlNFMQ0wCwYDVQQHEwRVbWVhMRgwFgYDVQQKEw9VbWVhIFVuaXZlcnNpdHkx
-EDAOBgNVBAsTB0lUIFVuaXQxEDAOBgNVBAMTB1Rlc3QgU1AwHhcNMDkxMDI2MTMz
-MTE1WhcNMTAxMDI2MTMzMTE1WjBaMQswCQYDVQQGEwJTRTENMAsGA1UEBxMEVW1l
-YTEYMBYGA1UEChMPVW1lYSBVbml2ZXJzaXR5MRAwDgYDVQQLEwdJVCBVbml0MRAw
-DgYDVQQDEwdUZXN0IFNQMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDkJWP7
-bwOxtH+E15VTaulNzVQ/0cSbM5G7abqeqSNSs0l0veHr6/ROgW96ZeQ57fzVy2MC
-FiQRw2fzBs0n7leEmDJyVVtBTavYlhAVXDNa3stgvh43qCfLx+clUlOvtnsoMiiR
-mo7qf0BoPKTj7c0uLKpDpEbAHQT4OF1HRYVxMwIDAQABo4G/MIG8MB0GA1UdDgQW
-BBQ7RgbMJFDGRBu9o3tDQDuSoBy7JjCBjAYDVR0jBIGEMIGBgBQ7RgbMJFDGRBu9
-o3tDQDuSoBy7JqFepFwwWjELMAkGA1UEBhMCU0UxDTALBgNVBAcTBFVtZWExGDAW
-BgNVBAoTD1VtZWEgVW5pdmVyc2l0eTEQMA4GA1UECxMHSVQgVW5pdDEQMA4GA1UE
-AxMHVGVzdCBTUIIJAJHg2V5J31I8MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEF
-BQADgYEAMuRwwXRnsiyWzmRikpwinnhTmbooKm5TINPE7A7gSQ710RxioQePPhZO
-zkM27NnHTrCe2rBVg0EGz7QTd1JIwLPvgoj4VTi/fSha/tXrYUaqc9AqU1kWI4WN
-+vffBGQ09mo+6CffuFTZYeOhzP/2stAPwCTU4kxEoiy0KpZMANI=
+MIIFjTCCA3WgAwIBAgIUPqN85BV5eJsrEW8IN2rVIcHGliUwDQYJKoZIhvcNAQEL
+BQAwVTELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAldBMRAwDgYDVQQHDAdTZWF0dGxl
+MRowGAYDVQQKDBFweXNhbWwyIERlbW8gQ2VydDELMAkGA1UECwwCSVQwIBcNMjEx
+MDA3MDgwNzE1WhgPMjEyMTEwMzEwODA3MTVaMFUxCzAJBgNVBAYTAlVTMQswCQYD
+VQQIDAJXQTEQMA4GA1UEBwwHU2VhdHRsZTEaMBgGA1UECgwRcHlzYW1sMiBEZW1v
+IENlcnQxCzAJBgNVBAsMAklUMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC
+AgEAuWw/2OYDIO3pAZyQFQadOWnOh/ilqWXd66M3gD3tft+zydi2IRTUphhlrVmL
+/7UrWjHYfrBbF6UrliwvXfjgdECRAA6ziMlzbc+RYHqw1XhR/Y1DxH1V3OZmidaH
+B3oisfXe68v28kTHnq0iGQjivkRaMWZXrMSQfakm5ZQz6HC92DgxsOXcSTMlCETN
+lziEik2C/4mhA96p+upQPoAC3e9Dn7lNUS2oJT/cZBggJOtLScV6Cyzv+k+u2MCu
+ddzenrFONHBe7MNUYEg7Ho9Utas3y6prH36ZwsArtUPpNwBZrNlVenFeF6rUN80x
+hKNwvptlXQqAC+2NIhunYgNRoUHmy5opGBJpjqy0k16k+aac2t9Y/Lc+Q52PSh5Z
+e3C9Ip5CxoxA6hMk7IZT1kpsUl6uc8FBX9SLNRovIOC4r1anaxIareQjRab2iw+a
+RhTmKlGSXzlaSMS2FZMpT0q73d/rFo1/RKeE2dzG9fXe27jXJTv50J4Y46RF/6/C
+0BWxTAzdBPQj1I5KWVVX9XuZklSbhKv/sGNXxPe5p5hR9rwt2oCrAhHzFZzddrzI
+BVRi6UtgnPMg8klnUcHsDt7elCuAF2ouB4Z8YplxhhYJga3NfLmHXYw1R7PBF2Ud
+4FSgkjCO/ME/+FgyUKAaG6qKBMe3FJzuXch314qR1+1xT+ECAwEAAaNTMFEwHQYD
+VR0OBBYEFIwaXBfOL6adUTxpgv/NJGZ3gLrIMB8GA1UdIwQYMBaAFIwaXBfOL6ad
+UTxpgv/NJGZ3gLrIMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggIB
+AI4SQxTjjNvV7E903U/l1pd7PoyvM9LxcYkmnjTGMHBoK1/HbpU27s9ZHjodfT7k
+k1uMCh6tx7kuaSboWX9BX8Sdgtfj8Y9hs7Bb4MhTH3qJ3LFGK2d0LgK+lTFNRtmy
+JfExfmDcXi/YO+0IVd3mK49BfGdpN8lT7KjtcbUk4gObGLuN/XGCTjFPmyIRJfgZ
+K6kLWskthddoa4beqzpVQnbn5TBtShzlzmrjmU5YieP54IoQXDzE5mWn4PFuMsZ9
+wCLcSwRYiP3fUMGCChs64QADuIjZYB8xl3CHKxZMu9Ki+dHQ2W1X1UyozzF5i19S
+rhVdYXlumVOS6jnAjZ/UNIS1mYCZk5AT8jtsCBkgmNmhZab3BNbLklLz2AYi9fpI
+CYkHei2fYlAHKXPFZFKIHmG3mqpgu9nClyelrjRsxvrvkJ4Di/aPZ3qA+I006uYw
+Ti+NsL6eXBhIPUuA/NHax53kzJSW/AcjRhSKriKdSqD+lLOoQ+z9ZnZXeBKCWzGU
+9bcMUk1x2pJJJBI7AJC/ObAbJDCtQreZZE+u+CABhkwbLPkWx8ZgS9a0/gBVmIJ3
+4qsVmrv0sHnk1JQoFkMNT2oQmCuoA17HtfqxGyEPCxEJu/kqgK3fviKgd1MEP4Y7
+3F6yVtiEWnspy4cQqr6pHBBggDbjve6DPNsIM1jHGUsR
-----END CERTIFICATE-----
diff --git a/example/sp-repoze/pki/mykey.pem b/example/sp-repoze/pki/mykey.pem
index d9ec5f8c..0faf44f5 100644
--- a/example/sp-repoze/pki/mykey.pem
+++ b/example/sp-repoze/pki/mykey.pem
@@ -1,15 +1,52 @@
------BEGIN RSA PRIVATE KEY-----
-MIICXAIBAAKBgQDkJWP7bwOxtH+E15VTaulNzVQ/0cSbM5G7abqeqSNSs0l0veHr
-6/ROgW96ZeQ57fzVy2MCFiQRw2fzBs0n7leEmDJyVVtBTavYlhAVXDNa3stgvh43
-qCfLx+clUlOvtnsoMiiRmo7qf0BoPKTj7c0uLKpDpEbAHQT4OF1HRYVxMwIDAQAB
-AoGAbx9rKH91DCw/ZEPhHsVXJ6cYHxGcMoAWvnMMC9WUN+bNo4gNL205DLfsxXA1
-jqXFXZj3+38vSFumGPA6IvXrN+Wyp3+Lz3QGc4K5OdHeBtYlxa6EsrxPgvuxYDUB
-vx3xdWPMjy06G/ML+pR9XHnRaPNubXQX3UxGBuLjwNXVmyECQQD2/D84tYoCGWoq
-5FhUBxFUy2nnOLKYC/GGxBTX62iLfMQ3fbQcdg2pJsB5rrniyZf7UL+9FOsAO9k1
-8DO7G12DAkEA7Hkdg1KEw4ZfjnnjEa+KqpyLTLRQ91uTVW6kzR+4zY719iUJ/PXE
-PxJqm1ot7mJd1LW+bWtjLpxs7jYH19V+kQJBAIEpn2JnxdmdMuFlcy/WVmDy09pg
-0z0imdexeXkFmjHAONkQOv3bWv+HzYaVMo8AgCOksfEPHGqN4eUMTfFeuUMCQF+5
-E1JSd/2yCkJhYqKJHae8oMLXByNqRXTCyiFioutK4JPYIHfugJdLfC4QziD+Xp85
-RrGCU+7NUWcIJhqfiJECQAIgUAzfzhdj5AyICaFPaOQ+N8FVMLcTyqeTXP0sIlFk
-JStVibemTRCbxdXXM7OVipz1oW3PBVEO3t/VyjiaGGg=
------END RSA PRIVATE KEY-----
+-----BEGIN PRIVATE KEY-----
+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
+dVge8zq6Dg7ifqPyWVAprD6YX485gQ4O
+-----END PRIVATE KEY-----
diff --git a/example/sp-wsgi/pki/mycert.pem b/example/sp-wsgi/pki/mycert.pem
index d4a0873c..2fb748e4 100644
--- a/example/sp-wsgi/pki/mycert.pem
+++ b/example/sp-wsgi/pki/mycert.pem
@@ -1,18 +1,32 @@
-----BEGIN CERTIFICATE-----
-MIIC8jCCAlugAwIBAgIJAJHg2V5J31I8MA0GCSqGSIb3DQEBBQUAMFoxCzAJBgNV
-BAYTAlNFMQ0wCwYDVQQHEwRVbWVhMRgwFgYDVQQKEw9VbWVhIFVuaXZlcnNpdHkx
-EDAOBgNVBAsTB0lUIFVuaXQxEDAOBgNVBAMTB1Rlc3QgU1AwHhcNMDkxMDI2MTMz
-MTE1WhcNMTAxMDI2MTMzMTE1WjBaMQswCQYDVQQGEwJTRTENMAsGA1UEBxMEVW1l
-YTEYMBYGA1UEChMPVW1lYSBVbml2ZXJzaXR5MRAwDgYDVQQLEwdJVCBVbml0MRAw
-DgYDVQQDEwdUZXN0IFNQMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDkJWP7
-bwOxtH+E15VTaulNzVQ/0cSbM5G7abqeqSNSs0l0veHr6/ROgW96ZeQ57fzVy2MC
-FiQRw2fzBs0n7leEmDJyVVtBTavYlhAVXDNa3stgvh43qCfLx+clUlOvtnsoMiiR
-mo7qf0BoPKTj7c0uLKpDpEbAHQT4OF1HRYVxMwIDAQABo4G/MIG8MB0GA1UdDgQW
-BBQ7RgbMJFDGRBu9o3tDQDuSoBy7JjCBjAYDVR0jBIGEMIGBgBQ7RgbMJFDGRBu9
-o3tDQDuSoBy7JqFepFwwWjELMAkGA1UEBhMCU0UxDTALBgNVBAcTBFVtZWExGDAW
-BgNVBAoTD1VtZWEgVW5pdmVyc2l0eTEQMA4GA1UECxMHSVQgVW5pdDEQMA4GA1UE
-AxMHVGVzdCBTUIIJAJHg2V5J31I8MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEF
-BQADgYEAMuRwwXRnsiyWzmRikpwinnhTmbooKm5TINPE7A7gSQ710RxioQePPhZO
-zkM27NnHTrCe2rBVg0EGz7QTd1JIwLPvgoj4VTi/fSha/tXrYUaqc9AqU1kWI4WN
-+vffBGQ09mo+6CffuFTZYeOhzP/2stAPwCTU4kxEoiy0KpZMANI=
+MIIFjTCCA3WgAwIBAgIUPqN85BV5eJsrEW8IN2rVIcHGliUwDQYJKoZIhvcNAQEL
+BQAwVTELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAldBMRAwDgYDVQQHDAdTZWF0dGxl
+MRowGAYDVQQKDBFweXNhbWwyIERlbW8gQ2VydDELMAkGA1UECwwCSVQwIBcNMjEx
+MDA3MDgwNzE1WhgPMjEyMTEwMzEwODA3MTVaMFUxCzAJBgNVBAYTAlVTMQswCQYD
+VQQIDAJXQTEQMA4GA1UEBwwHU2VhdHRsZTEaMBgGA1UECgwRcHlzYW1sMiBEZW1v
+IENlcnQxCzAJBgNVBAsMAklUMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC
+AgEAuWw/2OYDIO3pAZyQFQadOWnOh/ilqWXd66M3gD3tft+zydi2IRTUphhlrVmL
+/7UrWjHYfrBbF6UrliwvXfjgdECRAA6ziMlzbc+RYHqw1XhR/Y1DxH1V3OZmidaH
+B3oisfXe68v28kTHnq0iGQjivkRaMWZXrMSQfakm5ZQz6HC92DgxsOXcSTMlCETN
+lziEik2C/4mhA96p+upQPoAC3e9Dn7lNUS2oJT/cZBggJOtLScV6Cyzv+k+u2MCu
+ddzenrFONHBe7MNUYEg7Ho9Utas3y6prH36ZwsArtUPpNwBZrNlVenFeF6rUN80x
+hKNwvptlXQqAC+2NIhunYgNRoUHmy5opGBJpjqy0k16k+aac2t9Y/Lc+Q52PSh5Z
+e3C9Ip5CxoxA6hMk7IZT1kpsUl6uc8FBX9SLNRovIOC4r1anaxIareQjRab2iw+a
+RhTmKlGSXzlaSMS2FZMpT0q73d/rFo1/RKeE2dzG9fXe27jXJTv50J4Y46RF/6/C
+0BWxTAzdBPQj1I5KWVVX9XuZklSbhKv/sGNXxPe5p5hR9rwt2oCrAhHzFZzddrzI
+BVRi6UtgnPMg8klnUcHsDt7elCuAF2ouB4Z8YplxhhYJga3NfLmHXYw1R7PBF2Ud
+4FSgkjCO/ME/+FgyUKAaG6qKBMe3FJzuXch314qR1+1xT+ECAwEAAaNTMFEwHQYD
+VR0OBBYEFIwaXBfOL6adUTxpgv/NJGZ3gLrIMB8GA1UdIwQYMBaAFIwaXBfOL6ad
+UTxpgv/NJGZ3gLrIMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggIB
+AI4SQxTjjNvV7E903U/l1pd7PoyvM9LxcYkmnjTGMHBoK1/HbpU27s9ZHjodfT7k
+k1uMCh6tx7kuaSboWX9BX8Sdgtfj8Y9hs7Bb4MhTH3qJ3LFGK2d0LgK+lTFNRtmy
+JfExfmDcXi/YO+0IVd3mK49BfGdpN8lT7KjtcbUk4gObGLuN/XGCTjFPmyIRJfgZ
+K6kLWskthddoa4beqzpVQnbn5TBtShzlzmrjmU5YieP54IoQXDzE5mWn4PFuMsZ9
+wCLcSwRYiP3fUMGCChs64QADuIjZYB8xl3CHKxZMu9Ki+dHQ2W1X1UyozzF5i19S
+rhVdYXlumVOS6jnAjZ/UNIS1mYCZk5AT8jtsCBkgmNmhZab3BNbLklLz2AYi9fpI
+CYkHei2fYlAHKXPFZFKIHmG3mqpgu9nClyelrjRsxvrvkJ4Di/aPZ3qA+I006uYw
+Ti+NsL6eXBhIPUuA/NHax53kzJSW/AcjRhSKriKdSqD+lLOoQ+z9ZnZXeBKCWzGU
+9bcMUk1x2pJJJBI7AJC/ObAbJDCtQreZZE+u+CABhkwbLPkWx8ZgS9a0/gBVmIJ3
+4qsVmrv0sHnk1JQoFkMNT2oQmCuoA17HtfqxGyEPCxEJu/kqgK3fviKgd1MEP4Y7
+3F6yVtiEWnspy4cQqr6pHBBggDbjve6DPNsIM1jHGUsR
-----END CERTIFICATE-----
diff --git a/example/sp-wsgi/pki/mykey.pem b/example/sp-wsgi/pki/mykey.pem
index d9ec5f8c..0faf44f5 100644
--- a/example/sp-wsgi/pki/mykey.pem
+++ b/example/sp-wsgi/pki/mykey.pem
@@ -1,15 +1,52 @@
------BEGIN RSA PRIVATE KEY-----
-MIICXAIBAAKBgQDkJWP7bwOxtH+E15VTaulNzVQ/0cSbM5G7abqeqSNSs0l0veHr
-6/ROgW96ZeQ57fzVy2MCFiQRw2fzBs0n7leEmDJyVVtBTavYlhAVXDNa3stgvh43
-qCfLx+clUlOvtnsoMiiRmo7qf0BoPKTj7c0uLKpDpEbAHQT4OF1HRYVxMwIDAQAB
-AoGAbx9rKH91DCw/ZEPhHsVXJ6cYHxGcMoAWvnMMC9WUN+bNo4gNL205DLfsxXA1
-jqXFXZj3+38vSFumGPA6IvXrN+Wyp3+Lz3QGc4K5OdHeBtYlxa6EsrxPgvuxYDUB
-vx3xdWPMjy06G/ML+pR9XHnRaPNubXQX3UxGBuLjwNXVmyECQQD2/D84tYoCGWoq
-5FhUBxFUy2nnOLKYC/GGxBTX62iLfMQ3fbQcdg2pJsB5rrniyZf7UL+9FOsAO9k1
-8DO7G12DAkEA7Hkdg1KEw4ZfjnnjEa+KqpyLTLRQ91uTVW6kzR+4zY719iUJ/PXE
-PxJqm1ot7mJd1LW+bWtjLpxs7jYH19V+kQJBAIEpn2JnxdmdMuFlcy/WVmDy09pg
-0z0imdexeXkFmjHAONkQOv3bWv+HzYaVMo8AgCOksfEPHGqN4eUMTfFeuUMCQF+5
-E1JSd/2yCkJhYqKJHae8oMLXByNqRXTCyiFioutK4JPYIHfugJdLfC4QziD+Xp85
-RrGCU+7NUWcIJhqfiJECQAIgUAzfzhdj5AyICaFPaOQ+N8FVMLcTyqeTXP0sIlFk
-JStVibemTRCbxdXXM7OVipz1oW3PBVEO3t/VyjiaGGg=
------END RSA PRIVATE KEY-----
+-----BEGIN PRIVATE KEY-----
+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
+dVge8zq6Dg7ifqPyWVAprD6YX485gQ4O
+-----END PRIVATE KEY-----