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 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92
|
WebCrypto { }
DEFINITIONS EXPLICIT TAGS ::=
BEGIN
-- http://www.ietf.org/rfc/rfc5280.txt Appendix A.1
SubjectPublicKeyInfo ::= SEQUENCE {
algorithm AlgorithmIdentifier,
subjectPublicKey BIT STRING
}
AlgorithmIdentifier ::= SEQUENCE {
algorithm OBJECT IDENTIFIER,
parameters ANY DEFINED BY algorithm OPTIONAL
}
-- http://www.ietf.org/rfc/rfc5208.txt Appendix A
PrivateKeyInfo ::= SEQUENCE {
version Version,
privateKeyAlgorithm PrivateKeyAlgorithmIdentifier,
privateKey PrivateKey,
attributes [0] IMPLICIT Attributes OPTIONAL
}
Version ::= INTEGER
PrivateKeyAlgorithmIdentifier ::= AlgorithmIdentifier
PrivateKey ::= OCTET STRING
CurvePrivateKey ::= OCTET STRING
Attributes ::= SET OF Attribute
Attribute ::= SEQUENCE {
type OBJECT IDENTIFIER,
values AttributeSetValue
}
AttributeSetValue ::= SET OF ANY
-- http://www.ietf.org/rfc/rfc5480.txt Appendix A
ECParameters ::= CHOICE {
namedCurve OBJECT IDENTIFIER -- MUST be supported.
-- implicitCurve NULL - MUST NOT be used.
-- specifiedCurve SpecifiedECDomain - MUST NOT be used.
}
-- http://www.ietf.org/rfc/rfc5915.txt Appendix A
ECPrivateKey ::= SEQUENCE {
version INTEGER,
privateKey OCTET STRING,
parameters [0] ECParameters OPTIONAL,
publicKey [1] BIT STRING OPTIONAL
}
-- http://www.ietf.org/rfc/rfc3447.txt Appendix A.1.1
RSAPublicKey ::= SEQUENCE {
modulus INTEGER, -- n
publicExponent INTEGER -- e
}
-- http://www.ietf.org/rfc/rfc3447.txt Appendix A.1.2
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
}
OtherPrimeInfos ::= SEQUENCE SIZE(1..MAX) OF OtherPrimeInfo
OtherPrimeInfo ::= SEQUENCE {
prime INTEGER, -- ri
exponent INTEGER, -- di
coefficient INTEGER -- ti
}
END
|