如何使用 ASN.1 定义的 x509 algorithmIdentifier
How to use ASN.1 defined the x509 algorithmIdentifier
操作定义
自动标签 ::=
开始
Certificate ::=SEQUENCE{
subjectUniqueID BIT STRING,
operatorID BIT STRING,
operatetype ENUMERATED{issue,cancel},
time GeneralizedTime,
hashofcertificate INTEGER,
highofblock INTEGER,
sigatureAlgotithm AlgorithmIdentifier,
signatureValue BIT STRING
}
AlgorithmIdentifier ::= SEQUENCE {
algorithm OBJECT IDENTIFIER,
parameters ANY DEFINED BY algorithm OPTIONAL
}
结束
但 eclipse 编译 error.The 原因是 "Syntax error on token "DEFINED",} 预期"。我不知道 error.Can 你告诉我如何处理这个错误或如何用另一种方式对证书进行编码?
这只是一个猜测,但你可以试试
AlgorithmIdentifier ::= SEQUENCE {
algorithm OBJECT IDENTIFIER,
parameters ANY OPTIONAL
}
您可以找到在 BouncyCastle here
中实现的 AlgorithmIdentifier
示例
您似乎正在尝试使用 X.509 的过时版本。 ANY DEFINED BY 来自 1988 年的 ASN.1,它在 1994 年左右被撤回。如果您使用 X.509 的更新版本,它定义的 AlgorithmIdentifier 更像以下内容,那么您会遇到很多麻烦:
AlgorithmIdentifier ::= SEQUENCE {
algorithm ALGORITHM.&id ({SupportedAlgorithms}),
parameters ALGORITHM.&Type ({SupportedAlgorithms}{@algorithm}) OPTIONAL}
操作定义 自动标签 ::= 开始
Certificate ::=SEQUENCE{
subjectUniqueID BIT STRING,
operatorID BIT STRING,
operatetype ENUMERATED{issue,cancel},
time GeneralizedTime,
hashofcertificate INTEGER,
highofblock INTEGER,
sigatureAlgotithm AlgorithmIdentifier,
signatureValue BIT STRING
}
AlgorithmIdentifier ::= SEQUENCE {
algorithm OBJECT IDENTIFIER,
parameters ANY DEFINED BY algorithm OPTIONAL
}
结束
但 eclipse 编译 error.The 原因是 "Syntax error on token "DEFINED",} 预期"。我不知道 error.Can 你告诉我如何处理这个错误或如何用另一种方式对证书进行编码?
这只是一个猜测,但你可以试试
AlgorithmIdentifier ::= SEQUENCE {
algorithm OBJECT IDENTIFIER,
parameters ANY OPTIONAL
}
您可以找到在 BouncyCastle here
中实现的AlgorithmIdentifier
示例
您似乎正在尝试使用 X.509 的过时版本。 ANY DEFINED BY 来自 1988 年的 ASN.1,它在 1994 年左右被撤回。如果您使用 X.509 的更新版本,它定义的 AlgorithmIdentifier 更像以下内容,那么您会遇到很多麻烦:
AlgorithmIdentifier ::= SEQUENCE {
algorithm ALGORITHM.&id ({SupportedAlgorithms}),
parameters ALGORITHM.&Type ({SupportedAlgorithms}{@algorithm}) OPTIONAL}