diff options
-rw-r--r-- | docs/x509.rst | 8 | ||||
-rw-r--r-- | src/cryptography/x509.py | 6 | ||||
-rw-r--r-- | tests/test_x509_ext.py | 26 |
3 files changed, 19 insertions, 21 deletions
diff --git a/docs/x509.rst b/docs/x509.rst index 8a855617..d09651fb 100644 --- a/docs/x509.rst +++ b/docs/x509.rst @@ -275,7 +275,7 @@ X.509 Certificate Object >>> for ext in cert.extensions: ... print(ext) - <Extension(oid=<ObjectIdentifier(oid=2.5.29.14, name=subjectKeyIdentifier)>, critical=False, value=<SubjectKeyIdentifier(value=580184241bbc2b52944a3da510721451f5af3ac9)>)> + <Extension(oid=<ObjectIdentifier(oid=2.5.29.14, name=subjectKeyIdentifier)>, critical=False, value=<SubjectKeyIdentifier(digest='X\x01\x84$\x1b\xbc+R\x94J=\xa5\x10r\x14Q\xf5\xaf:\xc9')>)> <Extension(oid=<ObjectIdentifier(oid=2.5.29.19, name=basicConstraints)>, critical=True, value=<BasicConstraints(ca=True, path_length=None)>)> X.509 CSR (Certificate Signing Request) Object @@ -590,12 +590,6 @@ X.509 Extensions The binary value of the identifier. - .. attribute:: hexdigest - - :type: :term:`text` - - The hexadecimal value of the identifier. - Object Identifiers ~~~~~~~~~~~~~~~~~~ diff --git a/src/cryptography/x509.py b/src/cryptography/x509.py index df37934a..d635d4af 100644 --- a/src/cryptography/x509.py +++ b/src/cryptography/x509.py @@ -353,12 +353,8 @@ class SubjectKeyIdentifier(object): digest = utils.read_only_property("_digest") - @property - def hexdigest(self): - return binascii.hexlify(self.digest).decode("ascii") - def __repr__(self): - return "<SubjectKeyIdentifier(value={0})>".format(self.hexdigest) + return "<SubjectKeyIdentifier(digest={0!r})>".format(self.digest) def __eq__(self, other): if not isinstance(other, SubjectKeyIdentifier): diff --git a/tests/test_x509_ext.py b/tests/test_x509_ext.py index 5728a896..194b18c8 100644 --- a/tests/test_x509_ext.py +++ b/tests/test_x509_ext.py @@ -9,6 +9,8 @@ import os import pytest +import six + from cryptography import x509 from cryptography.hazmat.backends.interfaces import RSABackend, X509Backend @@ -135,22 +137,29 @@ class TestKeyUsage(object): class TestSubjectKeyIdentifier(object): def test_properties(self): - hexdigest = "092384932230498bc980aa8098456f6ff7ff3ac9" - value = binascii.unhexlify(hexdigest.encode('ascii')) + value = binascii.unhexlify(b"092384932230498bc980aa8098456f6ff7ff3ac9") ski = x509.SubjectKeyIdentifier(value) assert ski.digest == value - assert ski.hexdigest == hexdigest def test_repr(self): ski = x509.SubjectKeyIdentifier( binascii.unhexlify(b"092384932230498bc980aa8098456f6ff7ff3ac9") ) ext = x509.Extension(x509.OID_SUBJECT_KEY_IDENTIFIER, False, ski) - assert repr(ext) == ( - "<Extension(oid=<ObjectIdentifier(oid=2.5.29.14, name=subjectKey" - "Identifier)>, critical=False, value=<SubjectKeyIdentifier(" - "value=092384932230498bc980aa8098456f6ff7ff3ac9)>)>" - ) + if six.PY3: + assert repr(ext) == ( + "<Extension(oid=<ObjectIdentifier(oid=2.5.29.14, name=subjectK" + "eyIdentifier)>, critical=False, value=<SubjectKeyIdentifier(d" + "igest=b\'\\t#\\x84\\x93\"0I\\x8b\\xc9\\x80\\xaa\\x80\\x98Eoo" + "\\xf7\\xff:\\xc9\')>)>" + ) + else: + assert repr(ext) == ( + "<Extension(oid=<ObjectIdentifier(oid=2.5.29.14, name=subjectK" + "eyIdentifier)>, critical=False, value=<SubjectKeyIdentifier(d" + "igest=\'\\t#\\x84\\x93\"0I\\x8b\\xc9\\x80\\xaa\\x80\\x98Eoo" + "\\xf7\\xff:\\xc9\')>)>" + ) def test_eq(self): ski = x509.SubjectKeyIdentifier( @@ -402,7 +411,6 @@ class TestSubjectKeyIdentifierExtension(object): ski = ext.value assert ext is not None assert ext.critical is False - assert ski.hexdigest == "580184241bbc2b52944a3da510721451f5af3ac9" assert ski.digest == binascii.unhexlify( b"580184241bbc2b52944a3da510721451f5af3ac9" ) |