aboutsummaryrefslogtreecommitdiffstats
path: root/lib/ssl/pkix/PKCS-1.asn1
blob: 547cc2e072f8a42fe993945573561d1798678f77 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
PKCS-1 {
    iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) pkcs-1(1)
    modules(0) pkcs-1(1)
}


DEFINITIONS IMPLICIT TAGS ::= BEGIN

-- EXPORTS ALL --

IMPORTS
  AlgorithmIdentifier
    FROM PKIX1Explicit88 {iso(1) identified-organization(3)
                          dod(6) internet(1) security(5) mechanisms(5)
                          pkix(7) id-mod(0) id-pkix1-explicit-88(1)} ;

pkcs-1    OBJECT IDENTIFIER ::= {
    iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) 1 }

RSAPrivateKey ::= SEQUENCE {
    version           Version,
    modulus           INTEGER,  -- n
    publicExponent    INTEGER,  -- e
    privateExponent   INTEGER,  -- d
    prime1            INTEGER,  -- p
    prime2            INTEGER,  -- q
    exponent1         INTEGER,  -- d mod (p-1)
    exponent2         INTEGER,  -- d mod (q-1)
    coefficient       INTEGER,  -- (inverse of q) mod p
    otherPrimeInfos   OtherPrimeInfos OPTIONAL
}

Version ::= INTEGER { two-prime(0), multi(1) }
     (CONSTRAINED BY {
         -- version must be multi if otherPrimeInfos present --
     })

OtherPrimeInfos ::= SEQUENCE SIZE(1..MAX) OF OtherPrimeInfo

OtherPrimeInfo ::= SEQUENCE {
    prime             INTEGER,  -- ri
    exponent          INTEGER,  -- di
    coefficient       INTEGER   -- ti
}

DigestInfo ::= SEQUENCE {
	digestAlgorithm DigestAlgorithmIdentifier,
	digest OCTET STRING
}

DigestAlgorithmIdentifier ::= AlgorithmIdentifier

END  -- PKCS1Definitions