diff options
author | Russ Housley <housley@vigilsec.com> | 2019-07-20 06:58:55 -0400 |
---|---|---|
committer | Ilya Etingof <etingof@gmail.com> | 2019-07-20 12:58:55 +0200 |
commit | 23608be1bc0ce8a4ac5fbaba92af905c88ea4ab6 (patch) | |
tree | 67be142d26a66e2a874502f60c3e97d0059bd769 /tests/test_rfc5958.py | |
parent | 06f5be85d5229cffeb24f9ae622df665d7ae506b (diff) | |
download | pyasn1-modules-23608be1bc0ce8a4ac5fbaba92af905c88ea4ab6.tar.gz |
Added maps for use with openType (#53)
Diffstat (limited to 'tests/test_rfc5958.py')
-rw-r--r-- | tests/test_rfc5958.py | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/tests/test_rfc5958.py b/tests/test_rfc5958.py index 1abc40e..88fb4f1 100644 --- a/tests/test_rfc5958.py +++ b/tests/test_rfc5958.py @@ -11,7 +11,10 @@ import sys from pyasn1.codec.der import decoder as der_decoder from pyasn1.codec.der import encoder as der_encoder +from pyasn1.type import univ + from pyasn1_modules import pem +from pyasn1_modules import rfc5652 from pyasn1_modules import rfc5958 from pyasn1_modules import rfc8410 @@ -44,6 +47,33 @@ Z9w7lshQhqowtrbLDFw4rXAxZuE= assert der_encoder.encode(asn1Object) == substrate +class PrivateKeyOpenTypesTestCase(unittest.TestCase): + asymmetric_key_pkg_pem_text = """\ +MIGEBgpghkgBZQIBAk4FoHYwdDByAgEBMAUGAytlcAQiBCDU7nLb+RNYStW22PH3 +afitOv58KMvx1Pvgl6iPRHVYQqAfMB0GCiqGSIb3DQEJCRQxDwwNQ3VyZGxlIENo +YWlyc4EhABm/RAlphM3+hUG6wWfcO5bIUIaqMLa2ywxcOK1wMWbh +""" + + def setUp(self): + self.asn1Spec = rfc5652.ContentInfo() + + def testOpenTypes(self): + substrate = pem.readBase64fromText(self.asymmetric_key_pkg_pem_text) + rfc5652.cmsContentTypesMap.update(rfc5958.cmsContentTypesMapUpdate) + asn1Object, rest = der_decoder.decode(substrate, + asn1Spec=self.asn1Spec, + decodeOpenTypes=True) + assert not rest + assert asn1Object.prettyPrint() + assert der_encoder.encode(asn1Object) == substrate + + assert rfc5958.id_ct_KP_aKeyPackage in rfc5652.cmsContentTypesMap.keys() + oneKey = asn1Object['content'][0] + assert oneKey['privateKeyAlgorithm']['algorithm'] == rfc8410.id_Ed25519 + pkcs_9_at_friendlyName = univ.ObjectIdentifier('1.2.840.113549.1.9.9.20') + assert oneKey['attributes'][0]['type'] == pkcs_9_at_friendlyName + + suite = unittest.TestLoader().loadTestsFromModule(sys.modules[__name__]) if __name__ == '__main__': |