ASN.1对准确性的定义是:
Accuracy ::= SEQUENCE {
seconds INTEGER OPTIONAL,
millis [0] INTEGER (1..999) OPTIONAL,
micros [1] INTEGER (1..999) OPTIONAL }我不清楚的是如何处理millis和micros。在SEC_ASN1Template结构的同一“种类”字段中同时包含SEC_ASN1_INTEGER通用标记以及0和1标记是行不通的,因为它们都会进入该字段的相同部分(最低字节)。
发布于 2015-02-20 00:36:45
请注意,
millis [0] INTEGER (1..999) OPTIONAL不是真正的整型,而是整型。
也许下面的等效类型定义可能会对您有所帮助:
Accuracy ::= SEQUENCE {
seconds AccuracySeconds OPTIONAL,
millis [0] AccuracyMilliseconds OPTIONAL,
micros [1] AccuracyMicroseconds OPTIONAL }
AccuracySeconds ::= INTEGER
AccuracyMilliseconds ::= INTEGER(1..999)
AccuracyMicroseconds ::= INTEGER(1..999)如果您的类型定义使用隐式标记或显式标记,也需要考虑...编码会有所不同:
(隐式)
30 06
01 01 02
80 01 02vs (显式)
30 08
01 01 02
A0 03
02 01 02https://stackoverflow.com/questions/28581130
复制相似问题