]> Cypherpunks.ru repositories - pygost.git/commitdiff
Use already existing IssuerAndSerialNumber
authorSergey Matveev <stargrave@stargrave.org>
Tue, 4 Aug 2020 09:20:01 +0000 (12:20 +0300)
committerSergey Matveev <stargrave@stargrave.org>
Tue, 4 Aug 2020 09:20:01 +0000 (12:20 +0300)
pygost/asn1schemas/cms.py

index a39b10be978f2f2e1b8ad0d27a671ec6bf1a6c9a..d2d53275159062cb3b0513544dce29c77f036559 100644 (file)
@@ -59,10 +59,25 @@ class ContentType(ObjectIdentifier):
     pass
 
 
+class IssuerAndSerialNumber(Sequence):
+    schema = (
+        ("issuer", Name()),
+        ("serialNumber", CertificateSerialNumber()),
+    )
+
+
+class KeyIdentifier(OctetString):
+    pass
+
+
+class SubjectKeyIdentifier(KeyIdentifier):
+    pass
+
+
 class RecipientIdentifier(Choice):
     schema = (
-        ("issuerAndSerialNumber", Any()),
-        ("subjectKeyIdentifier", SubjectKeyIdentifier(impl=tag_ctxp(0))),
+        ("issuerAndSerialNumber", IssuerAndSerialNumber()),
+        ("subjectKeyIdentifier", SubjectKeyIdentifier(impl=tag_ctxp(0))),
     )
 
 
@@ -159,21 +174,6 @@ class OriginatorPublicKey(Sequence):
     )
 
 
-class IssuerAndSerialNumber(Sequence):
-    schema = (
-        ("issuer", Name()),
-        ("serialNumber", CertificateSerialNumber()),
-    )
-
-
-class KeyIdentifier(OctetString):
-    pass
-
-
-class SubjectKeyIdentifier(KeyIdentifier):
-    pass
-
-
 class OriginatorIdentifierOrKey(Choice):
     schema = (
         ("issuerAndSerialNumber", IssuerAndSerialNumber()),
@@ -188,7 +188,7 @@ class UserKeyingMaterial(OctetString):
 
 class KeyAgreeRecipientIdentifier(Choice):
     schema = (
-        ("issuerAndSerialNumber", Any()),
+        ("issuerAndSerialNumber", IssuerAndSerialNumber()),
         # ("rKeyId", RecipientKeyIdentifier(impl=tag_ctxc(0))),
     )
 
@@ -326,8 +326,8 @@ class EncapsulatedContentInfo(Sequence):
 
 class SignerIdentifier(Choice):
     schema = (
-        ("issuerAndSerialNumber", Any()),
-        ("subjectKeyIdentifier", SubjectKeyIdentifier(impl=tag_ctxp(0))),
+        ("issuerAndSerialNumber", IssuerAndSerialNumber()),
+        ("subjectKeyIdentifier", SubjectKeyIdentifier(impl=tag_ctxp(0))),
     )