Skip to content

Commit ef01170

Browse files
Replace test cert in ECDSA verify test
The new one uses a well-known named curve, which is (for obvious hygiene reasons) much more widely supported than encoding the curve parameters directly in the public key.
1 parent a7e0505 commit ef01170

1 file changed

Lines changed: 17 additions & 20 deletions

File tree

tests/test_x509.py

Lines changed: 17 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -125,27 +125,24 @@ def test_verify_certificate_dsa(self):
125125

126126
self.assertTrue(key.verify(value, signature, mechanism=Mechanism.DSA_SHA1))
127127

128-
@requires(Mechanism.ECDSA_SHA1)
128+
@requires(Mechanism.ECDSA_SHA256)
129129
def test_verify_certificate_ecdsa(self):
130130
# Warning: proof of concept code only!
131131
CERT = base64.b64decode("""
132-
MIIDGjCCAsKgAwIBAgIJAL+PbwiJUZB1MAkGByqGSM49BAEwRTELMAkGA1UEBhMC
133-
QVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNVBAoTGEludGVybmV0IFdpZGdp
134-
dHMgUHR5IEx0ZDAeFw0xNzA3MDMxMTUxMTBaFw0xOTA3MDMxMTUxMTBaMEUxCzAJ
135-
BgNVBAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5l
136-
dCBXaWRnaXRzIFB0eSBMdGQwggFLMIIBAwYHKoZIzj0CATCB9wIBATAsBgcqhkjO
137-
PQEBAiEA/////wAAAAEAAAAAAAAAAAAAAAD///////////////8wWwQg/////wAA
138-
AAEAAAAAAAAAAAAAAAD///////////////wEIFrGNdiqOpPns+u9VXaYhrxlHQaw
139-
zFOw9jvOPD4n0mBLAxUAxJ02CIbnBJNqZnjhE50mt4GffpAEQQRrF9Hy4SxCR/i8
140-
5uVjpEDydwN9gS3rM6D0oTlF2JjClk/jQuL+Gn+bjufrSnwPnhYrzjNXazFezsu2
141-
QGg3v1H1AiEA/////wAAAAD//////////7zm+q2nF56E87nKwvxjJVECAQEDQgAE
142-
royPJHkCQMq55egxmQxkFWqiz+yJx0MZP98is99SrkiK5UadFim3r3ZSt5kfh/cc
143-
Ccmy94BZCmihhGJ0F4eB2qOBpzCBpDAdBgNVHQ4EFgQURNXKlYGsAMItf4Ad8fkg
144-
Rg9ATqEwdQYDVR0jBG4wbIAURNXKlYGsAMItf4Ad8fkgRg9ATqGhSaRHMEUxCzAJ
145-
BgNVBAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5l
146-
dCBXaWRnaXRzIFB0eSBMdGSCCQC/j28IiVGQdTAMBgNVHRMEBTADAQH/MAkGByqG
147-
SM49BAEDRwAwRAIgAdJp/S9vSjS6EvRy/9zl5k2DBKGI52A3Ygsp1a96UicCIDul
148-
m/eL2OcGdNbzqzsC11alhemJX7Qt9GOcVqQwROIm
132+
MIICgzCCAgmgAwIBAgICEAAwCgYIKoZIzj0EAwIwUTELMAkGA1UEBhMCQkUxFDAS
133+
BgNVBAoMC0V4YW1wbGUgSW5jMRowGAYDVQQLDBFUZXN0aW5nIEF1dGhvcml0eTEQ
134+
MA4GA1UEAwwHUm9vdCBDQTAgFw0wMDAxMDEwMDAwMDBaGA8yNTAwMDEwMTAwMDAw
135+
MFowUTELMAkGA1UEBhMCQkUxFDASBgNVBAoMC0V4YW1wbGUgSW5jMRowGAYDVQQL
136+
DBFUZXN0aW5nIEF1dGhvcml0eTEQMA4GA1UEAwwHUm9vdCBDQTB2MBAGByqGSM49
137+
AgEGBSuBBAAiA2IABIxRV+HCT5hbggdOa0CxbOyLRgCRQIFHnsjwk7UZCBeb+SHb
138+
r4zHM447nASOEwJKvc37UttkdC4lpdOjw9OkwltCSMCS2s22v18//MqjRoQ8wAiX
139+
hk1mR499ltu1jKicDKOBsTCBrjAdBgNVHQ4EFgQUJNkIpnJ27yAJidmTShDvCLfz
140+
PJYwHwYDVR0jBBgwFoAUJNkIpnJ27yAJidmTShDvCLfzPJYwDwYDVR0TAQH/BAUw
141+
AwEB/zAOBgNVHQ8BAf8EBAMCAYYwSwYDVR0fBEQwQjBAoD6gPIY6aHR0cDovL3B5
142+
aGFua28udGVzdHMvdGVzdGluZy1jYS1lY2RzYS9jcmxzL3Jvb3QvbGF0ZXN0LmNy
143+
bDAKBggqhkjOPQQDAgNoADBlAjApktbaE81Qil3bbI5UFWqpH4JsW1pgucZTlQN+
144+
VmXMRT/0SVHTMM64IK1B8CzVhI8CMQCFbdX+K7KZYNDYuA7gTQHdp7l12PXMoBGE
145+
dcda0K/1qwvA2w6mNU1qi/b0Is7oA0I=
149146
""")
150147

151148
x509 = Certificate.load(CERT)
@@ -155,11 +152,11 @@ def test_verify_certificate_ecdsa(self):
155152
value = x509["tbs_certificate"].dump()
156153

157154
assert x509.signature_algo == "ecdsa"
158-
assert x509.hash_algo == "sha1"
155+
assert x509.hash_algo == "sha256"
159156

160157
signature = decode_ecdsa_signature(x509.signature)
161158

162-
self.assertTrue(key.verify(value, signature, mechanism=Mechanism.ECDSA_SHA1))
159+
self.assertTrue(key.verify(value, signature, mechanism=Mechanism.ECDSA_SHA256))
163160

164161
@requires(Mechanism.RSA_PKCS_KEY_PAIR_GEN, Mechanism.SHA256_RSA_PKCS)
165162
def test_self_sign_certificate(self):

0 commit comments

Comments
 (0)