python.pyasn1 表示下面的结构

python.pyasn1 to express below strcture

我是Python和PYASN1的新手,下面的结构如何表达?有什么文件可以参考吗?我在internect上搜索,有一个关于PYASN1

的小文档
OtherInfo ::= SEQUENCE {
       keyInfo KeySpecificInfo,
       partyAInfo [0] OCTET STRING OPTIONAL,
       suppPubInfo [2] OCTET STRING
     }

KeySpecificInfo ::= SEQUENCE {
    algorithm OBJECT IDENTIFIER,
    counter OCTET STRING SIZE (4..4) }

应该是这样的,假设您的 ASN.1 模块默认声明显式标记。

此外,docs

class KeySpecificInfo(univ.Sequence):
    componentType = namedtype.NamedTypes(
        namedtype.NamedType('algorithm', ObjectIdentifier()),
        namedtype.NamedType(
            'counter', OctetString().subtype(subtypeSpec=ValueSizeConstraint(4, 4)))
    )

class OtherInfo(univ.Sequence):
    componentType = namedtype.NamedTypes(
        namedtype.NamedType('keyInfo', KeySpecificInfo()),
        namedtype.OptionalNamedType('partyAInfo', OctetString().subtype(
            explicitTag=tag.Tag(tag.tagClassContext, tag.tagFormatSimple, 0)),
        namedtype.NamedType('suppPubInfo', OctetString().subtype(
            explicitTag=tag.Tag(tag.tagClassContext, tag.tagFormatSimple, 2))
    )