3 DEFINITIONS EXPLICIT TAGS ::=
7 -- This file contains parts of PKCS-1 structures and some stuff
8 -- required for DSA keys.
10 RSAPublicKey ::= SEQUENCE {
12 publicExponent INTEGER -- e
16 -- Representation of RSA private key with information for the
19 RSAPrivateKey ::= SEQUENCE {
21 modulus INTEGER, -- (Usually large) n
22 publicExponent INTEGER, -- (Usually small) e
23 privateExponent INTEGER, -- (Usually large) d
24 prime1 INTEGER, -- (Usually large) p
25 prime2 INTEGER, -- (Usually large) q
26 exponent1 INTEGER, -- (Usually large) d mod (p-1)
27 exponent2 INTEGER, -- (Usually large) d mod (q-1)
28 coefficient INTEGER, -- (Usually large) (inverse of q) mod p
29 otherPrimeInfos OtherPrimeInfos OPTIONAL
32 Version ::= INTEGER { two-prime(0), multi(1) }
33 -- (CONSTRAINED BY { version must be multi if otherPrimeInfos present }) --
35 OtherPrimeInfos ::= SEQUENCE SIZE(1..MAX) OF OtherPrimeInfo
37 OtherPrimeInfo ::= SEQUENCE {
39 exponent INTEGER, -- di
40 coefficient INTEGER -- ti
43 -- for signature calculation
46 AlgorithmIdentifier ::= SEQUENCE {
47 algorithm OBJECT IDENTIFIER,
48 parameters ANY DEFINED BY algorithm OPTIONAL
50 -- contains a value of the type
51 -- registered for use with the
52 -- algorithm object identifier value
54 DigestInfo ::= SEQUENCE {
55 digestAlgorithm DigestAlgorithmIdentifier,
59 DigestAlgorithmIdentifier ::= AlgorithmIdentifier
61 Digest ::= OCTET STRING
63 DSAPublicKey ::= INTEGER
65 DSAParameters ::= SEQUENCE {
71 DSASignatureValue ::= SEQUENCE {
76 DSAPrivateKey ::= SEQUENCE {
77 version INTEGER, -- should be zero
86 DHParameter ::= SEQUENCE {
89 privateValueLength INTEGER OPTIONAL