rfc8649.py 982 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. #
  2. # This file is part of pyasn1-modules software.
  3. #
  4. # Created by Russ Housley with assistance from asn1ate v.0.6.0.
  5. #
  6. # Copyright (c) 2019, Vigil Security, LLC
  7. # License: http://snmplabs.com/pyasn1/license.html
  8. #
  9. # X.509 Certificate Extension for Hash Of Root Key
  10. #
  11. # ASN.1 source from:
  12. # https://www.rfc-editor.org/rfc/rfc8649.txt
  13. #
  14. from pyasn1.type import namedtype
  15. from pyasn1.type import univ
  16. from pyasn1_modules import rfc5280
  17. id_ce_hashOfRootKey = univ.ObjectIdentifier('1.3.6.1.4.1.51483.2.1')
  18. class HashedRootKey(univ.Sequence):
  19. pass
  20. HashedRootKey.componentType = namedtype.NamedTypes(
  21. namedtype.NamedType('hashAlg', rfc5280.AlgorithmIdentifier()),
  22. namedtype.NamedType('hashValue', univ.OctetString())
  23. )
  24. # Map of Certificate Extension OIDs to Extensions added to the
  25. # ones that are in rfc5280.py
  26. _certificateExtensionsMapUpdate = {
  27. id_ce_hashOfRootKey: HashedRootKey(),
  28. }
  29. rfc5280.certificateExtensionsMap.update(_certificateExtensionsMapUpdate)