ASN 1:签名前后?

时间:2015-07-07 16:27:02

标签: asn.1

假设标准中的特定消息存在特定的ASN 1表示。但问题是我们必须首先签署此邮件,然后根据ASN 1进行编码,否则我们必须首先转换为ASN 1和然后签名吗?

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

这取决于您的应用程序,但通常的做法是在ASN中格式化消息,然后对生成的ASN结构进行签名。它看起来如下:

SignedMessage           ::= SEQUENCE {
   tbsData              ToBeSignedData,
   signatureAlgorithm   AlgorithmIdentifier {SIGNATURE-ALGORITHM,
                            {sa-dsaWithSHA1 | sa-rsaWithSHA1 |
                                 sa-rsaWithMD5 | sa-rsaWithMD2, ...}},
   signature            BIT STRING,
   certs            [0] EXPLICIT SEQUENCE OF Certificate OPTIONAL }
}

这意味着签名是在tbsData结构上计算的。