Index: net/data/verify_signed_data_unittest/ecdsa-secp384r1-sha256.pem |
diff --git a/net/data/verify_signed_data_unittest/ecdsa-secp384r1-sha256.pem b/net/data/verify_signed_data_unittest/ecdsa-secp384r1-sha256.pem |
new file mode 100644 |
index 0000000000000000000000000000000000000000..94f48a9e2b37a97bc1ba084071c5c4ed144c0bad |
--- /dev/null |
+++ b/net/data/verify_signed_data_unittest/ecdsa-secp384r1-sha256.pem |
@@ -0,0 +1,63 @@ |
+This test data was produced by creating a self-signed EC cert using OpenSSL, |
+and then extracting the relevant fields. |
+ |
+It uses ECDSA with curve secp384r1 an SHA-256. |
+ |
+(1) Generate self-signed certificate |
+ |
+ openssl ecparam -out ec_key.pem -name secp384r1 -genkey |
+ openssl req -new -key ec_key.pem -x509 -nodes -days 365 -out cert.pem |
+ |
+(2) Extract public key |
+ |
+ openssl x509 -in cert.pem -pubkey -noout > pubkey.pem |
+ cat pubkey.pem |
+ |
+(3) Extract signed data (tbsCertificate) |
+ |
+ openssl asn1parse -in cert.pem -out tbs -noout -strparse 4 |
+ base64 tbs |
+ |
+(4) Extract signature algorithm |
+ |
+ # Find the offset of the signature algorithm near the end (496 in this case) |
+ openssl asn1parse -in cert.pem |
+ |
+ openssl asn1parse -in cert.pem -out alg -noout -strparse 496 |
+ base64 alg |
+ |
+(5) Extract the signature |
+ |
+ # Find the final offset of BIT STRING (508 in this case) |
+ openssl asn1parse -in cert.pem |
+ |
+ openssl asn1parse -in cert.pem -out sig -noout -strparse 508 |
+ base64 sig |
+ |
+ |
+-----BEGIN PUBLIC KEY----- |
+MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEXFhBi+WKXuxeK9yCbC9jqEchwjCNsQ4R |
+XAsJ07oHZ+Qqz55cNIY5BAhcQ0QYY5jv9BimGL9SuhUuOSuS3Pn9rrsIFGcFsihy |
+4kDr8rq5+7RbN8bV057gW5emYjLtvDsQ |
+-----END PUBLIC KEY----- |
+ |
+-----BEGIN ALGORITHM----- |
+MAoGCCqGSM49BAMC |
+-----END ALGORITHM----- |
+ |
+-----BEGIN DATA----- |
+MIIB6KADAgECAgkAtUVxft6/Vc0wCgYIKoZIzj0EAwIwbzELMAkGA1UEBhMCQVUxEzARBgNVBAgM |
+ClNvbWUtU3RhdGUxITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDEMMAoGA1UEAwwD |
+YWhhMRowGAYJKoZIhvcNAQkBFgtzdXBAZm9vLmNvbTAeFw0xNTA3MDIwMDM4MTRaFw0xNjA3MDEw |
+MDM4MTRaMG8xCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQKDBhJbnRl |
+cm5ldCBXaWRnaXRzIFB0eSBMdGQxDDAKBgNVBAMMA2FoYTEaMBgGCSqGSIb3DQEJARYLc3VwQGZv |
+by5jb20wdjAQBgcqhkjOPQIBBgUrgQQAIgNiAARcWEGL5Ype7F4r3IJsL2OoRyHCMI2xDhFcCwnT |
+ugdn5CrPnlw0hjkECFxDRBhjmO/0GKYYv1K6FS45K5Lc+f2uuwgUZwWyKHLiQOvyurn7tFs3xtXT |
+nuBbl6ZiMu28OxCjUDBOMB0GA1UdDgQWBBR6nDgtPalG2JvSlWzdGRCi/Cu7NjAfBgNVHSMEGDAW |
+gBR6nDgtPalG2JvSlWzdGRCi/Cu7NjAMBgNVHRMEBTADAQH/ |
+-----END DATA----- |
+ |
+-----BEGIN SIGNATURE----- |
+MGYCMQCDwMSZVJZ8qThiNTV7VX57m8fdNnNS6cXIjRYoh4SozlYWmWGh87nhmJJCeD16jVMCMQDk |
+roAY8oNi8RxLUor+LozhhVgu24tu6lcp4MP8H3Zy8bBea5HerAd1AqJp3Ox7KDU= |
+-----END SIGNATURE----- |