1 -- PKCS #5 v2.0 ASN.1 Module
2 -- Revised March 25, 1999
4 -- This module has been checked for conformance with the
5 -- ASN.1 standard by the OSS ASN.1 Tools
7 PKCS5v2-0 {iso(1) member-body(2) us(840) rsadsi(113549)
8 pkcs(1) pkcs-5(5) modules(16) pkcs5v2-0(1)}
12 -- Basic object identifiers
14 rsadsi OBJECT IDENTIFIER ::=
15 {iso(1) member-body(2) us(840) 113549}
16 pkcs OBJECT IDENTIFIER ::= {rsadsi 1}
17 pkcs-5 OBJECT IDENTIFIER ::= {pkcs 5}
19 -- Basic types and classes
21 AlgorithmIdentifier { ALGORITHM-IDENTIFIER:InfoObjectSet } ::=
23 algorithm ALGORITHM-IDENTIFIER.&id({InfoObjectSet}),
24 parameters ALGORITHM-IDENTIFIER.&Type({InfoObjectSet}
25 {@algorithm}) OPTIONAL }
27 ALGORITHM-IDENTIFIER ::= TYPE-IDENTIFIER
31 PBKDF2Algorithms ALGORITHM-IDENTIFIER ::=
32 { {PBKDF2-params IDENTIFIED BY id-PBKDF2}, ...}
34 id-PBKDF2 OBJECT IDENTIFIER ::= {pkcs-5 12}
36 algid-hmacWithSHA1 AlgorithmIdentifier {{PBKDF2-PRFs}} ::=
37 {algorithm id-hmacWithSHA1, parameters NULL : NULL}
39 PBKDF2-params ::= SEQUENCE {
41 specified OCTET STRING,
42 otherSource AlgorithmIdentifier {{PBKDF2-SaltSources}}
44 iterationCount INTEGER (1..MAX),
45 keyLength INTEGER (1..MAX) OPTIONAL,
46 prf AlgorithmIdentifier {{PBKDF2-PRFs}} DEFAULT
49 PBKDF2-SaltSources ALGORITHM-IDENTIFIER ::= { ... }
51 PBKDF2-PRFs ALGORITHM-IDENTIFIER ::=
52 { {NULL IDENTIFIED BY id-hmacWithSHA1}, ... }
56 PBES1Algorithms ALGORITHM-IDENTIFIER ::=
57 { {PBEParameter IDENTIFIED BY pbeWithMD2AndDES-CBC} |
58 {PBEParameter IDENTIFIED BY pbeWithMD2AndRC2-CBC} |
59 {PBEParameter IDENTIFIED BY pbeWithMD5AndDES-CBC} |
60 {PBEParameter IDENTIFIED BY pbeWithMD5AndRC2-CBC} |
61 {PBEParameter IDENTIFIED BY pbeWithSHA1AndDES-CBC} |
62 {PBEParameter IDENTIFIED BY pbeWithSHA1AndRC2-CBC}, ...}
64 pbeWithMD2AndDES-CBC OBJECT IDENTIFIER ::= {pkcs-5 1}
65 pbeWithMD2AndRC2-CBC OBJECT IDENTIFIER ::= {pkcs-5 4}
66 pbeWithMD5AndDES-CBC OBJECT IDENTIFIER ::= {pkcs-5 3}
67 pbeWithMD5AndRC2-CBC OBJECT IDENTIFIER ::= {pkcs-5 6}
68 pbeWithSHA1AndDES-CBC OBJECT IDENTIFIER ::= {pkcs-5 10}
69 pbeWithSHA1AndRC2-CBC OBJECT IDENTIFIER ::= {pkcs-5 11}
71 PBEParameter ::= SEQUENCE {
72 salt OCTET STRING (SIZE(8)),
73 iterationCount INTEGER }
77 PBES2Algorithms ALGORITHM-IDENTIFIER ::=
78 { {PBES2-params IDENTIFIED BY id-PBES2}, ...}
80 id-PBES2 OBJECT IDENTIFIER ::= {pkcs-5 13}
82 PBES2-params ::= SEQUENCE {
83 keyDerivationFunc AlgorithmIdentifier {{PBES2-KDFs}},
84 encryptionScheme AlgorithmIdentifier {{PBES2-Encs}} }
86 PBES2-KDFs ALGORITHM-IDENTIFIER ::=
87 { {PBKDF2-params IDENTIFIED BY id-PBKDF2}, ... }
89 PBES2-Encs ALGORITHM-IDENTIFIER ::= { ... }
93 PBMAC1Algorithms ALGORITHM-IDENTIFIER ::=
94 { {PBMAC1-params IDENTIFIED BY id-PBMAC1}, ...}
96 id-PBMAC1 OBJECT IDENTIFIER ::= {pkcs-5 14}
98 PBMAC1-params ::= SEQUENCE {
99 keyDerivationFunc AlgorithmIdentifier {{PBMAC1-KDFs}},
100 messageAuthScheme AlgorithmIdentifier {{PBMAC1-MACs}} }
102 PBMAC1-KDFs ALGORITHM-IDENTIFIER ::=
103 { {PBKDF2-params IDENTIFIED BY id-PBKDF2}, ... }
105 PBMAC1-MACs ALGORITHM-IDENTIFIER ::= { ... }
107 -- Supporting techniques
109 digestAlgorithm OBJECT IDENTIFIER ::= {rsadsi 2}
110 encryptionAlgorithm OBJECT IDENTIFIER ::= {rsadsi 3}
112 SupportingAlgorithms ALGORITHM-IDENTIFIER ::=
113 { {NULL IDENTIFIED BY id-hmacWithSHA1} |
114 {OCTET STRING (SIZE(8)) IDENTIFIED BY desCBC} |
115 {OCTET STRING (SIZE(8)) IDENTIFIED BY des-EDE3-CBC} |
116 {RC2-CBC-Parameter IDENTIFIED BY rc2CBC} |
117 {RC5-CBC-Parameters IDENTIFIED BY rc5-CBC-PAD}, ... }
119 id-hmacWithSHA1 OBJECT IDENTIFIER ::= {digestAlgorithm 7}
121 desCBC OBJECT IDENTIFIER ::=
122 {iso(1) identified-organization(3) oiw(14) secsig(3)
123 algorithms(2) 7} -- from OIW
125 des-EDE3-CBC OBJECT IDENTIFIER ::= {encryptionAlgorithm 7}
127 rc2CBC OBJECT IDENTIFIER ::= {encryptionAlgorithm 2}
129 RC2-CBC-Parameter ::= SEQUENCE {
130 rc2ParameterVersion INTEGER OPTIONAL,
131 iv OCTET STRING (SIZE(8)) }
133 rc5-CBC-PAD OBJECT IDENTIFIER ::= {encryptionAlgorithm 9}
135 RC5-CBC-Parameters ::= SEQUENCE {
136 version INTEGER {v1-0(16)} (v1-0),
137 rounds INTEGER (8..127),
138 blockSizeInBits INTEGER (64 | 128),
139 iv OCTET STRING OPTIONAL }