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 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212
|
-- Module GulsSecurityTransformations (X.830:04/1995)
GulsSecurityTransformations {joint-iso-itu-t genericULS(20) modules(1)
gulsSecurityTransformations(3)} DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
-- EXPORTS All
IMPORTS
securityTransformations, notation
FROM ObjectIdentifiers {joint-iso-itu-t genericULS(20) modules(1)
objectIdentifiers(0)}
SECURITY-TRANSFORMATION, SecurityIdentity
FROM Notation notation
AlgorithmIdentifier
FROM AuthenticationFramework {joint-iso-itu-t ds(5) module(1)
authenticationFramework(7) 3};
-- ***************************************
-- Notation for specifying key information
-- ***************************************
KEY-INFORMATION ::=
CLASS
-- This information object class definition is for use when
-- specifying key information relating to particular classes
-- of protection mechanisms (e.g. symmetric, asymmetric).
-- It may be useful in defining various security transformations.
{
&kiClass CHOICE {local INTEGER,
-- local objects can only be defined within this
-- ASN.1 module.
global OBJECT IDENTIFIER
-- global objects are defined elsewhere
} UNIQUE,
&KiType
}WITH SYNTAX {KEY-INFO-CLASS &kiClass
KEY-INFO-TYPE &KiType
}
symmetricKeyInformation KEY-INFORMATION ::= {
KEY-INFO-CLASS local:0
KEY-INFO-TYPE
SEQUENCE {entityId SecurityIdentity,
keyIdentifier INTEGER}
}
asymmetricKeyInformation KEY-INFORMATION ::= {
KEY-INFO-CLASS local:1
KEY-INFO-TYPE
SEQUENCE {issuerCAName SecurityIdentity OPTIONAL,
certSerialNumber INTEGER OPTIONAL,
signerName SecurityIdentity OPTIONAL,
keyIdentifier BIT STRING OPTIONAL}
}
-- *******************************************
-- Directory ENCRYPTED Security Transformation
-- *******************************************
dirEncryptedTransformation SECURITY-TRANSFORMATION ::= {
IDENTIFIER {securityTransformations dir-encrypted(1)}
-- This transformation transforms a string of octets to a
-- new bit string using an encipherment process.
INITIAL-ENCODING-RULES {joint-iso-itu-t asn1(1) ber(1)}
XFORMED-DATA-TYPE BIT STRING
}
-- ****************************************
-- Directory SIGNED Security Transformation
-- ****************************************
dirSignedTransformation SECURITY-TRANSFORMATION ::= {
IDENTIFIER {securityTransformations dir-signed(2)}
INITIAL-ENCODING-RULES
{joint-iso-itu-t asn1(1) ber-derived(2) distinguished-encoding(1)}
XFORMED-DATA-TYPE
SEQUENCE {toBeSigned
ABSTRACT-SYNTAX.&Type
(CONSTRAINED BY {
-- this type is constrained to being the to-be-signed type -- }),
algorithmId AlgorithmIdentifier,
-- of the algorithms used to compute the signature
encipheredHash BIT STRING}
}
-- *******************************************
-- Directory SIGNATURE Security Transformation
-- *******************************************
dirSignatureTransformation SECURITY-TRANSFORMATION ::= {
IDENTIFIER {securityTransformations dir-signature(3)}
INITIAL-ENCODING-RULES
{joint-iso-itu-t asn1(1) ber-derived(2) distinguished-encoding(1)}
XFORMED-DATA-TYPE
SEQUENCE {algorithmId AlgorithmIdentifier,
-- of the algorithms used to compute the signature
encipheredHash BIT STRING}
}
-- ***********************************
-- GULS SIGNED Security Transformation
-- ***********************************
gulsSignedTransformation{KEY-INFORMATION:SupportedKIClasses}
SECURITY-TRANSFORMATION ::= {
IDENTIFIER {securityTransformations guls-signed(4)}
INITIAL-ENCODING-RULES
{joint-iso-itu-t asn1(1) ber-derived(2) canonical-encoding(0)}
-- This default for initial encoding rules may be overridden
-- using a static protected parameter (initEncRules).
XFORMED-DATA-TYPE
SEQUENCE {intermediateValue
EMBEDDED PDV
(WITH COMPONENTS {
identification (WITH COMPONENTS {
transfer-syntax (CONSTRAINED BY {
-- The transfer syntax to be used is that
-- indicated by the initEncRules value within
-- the intermediate value -- })PRESENT
}),
data-value (CONTAINING IntermediateType{{SupportedKIClasses}})
-- The data value encoded is a value of type
-- IntermediateType
}),
appendix
BIT STRING
(CONSTRAINED BY {
-- the appendix value must be generated following
-- the procedure specified in D.4 of DIS 11586-1 -- })
}
}
IntermediateType{KEY-INFORMATION:SupportedKIClasses} ::= SEQUENCE {
unprotectedItem ABSTRACT-SYNTAX.&Type-- this type is constrained to being
-- the type of the unprotected item, or
-- BIT STRING if the unprotected item is
-- not derived from an ASN.1 abstract
-- syntax --,
initEncRules
OBJECT IDENTIFIER
DEFAULT {joint-iso-itu-t asn1(1) ber-derived(2) canonical-encoding(0)},
signOrSealAlgorithm AlgorithmIdentifier OPTIONAL,
-- Identifies the signing or
-- sealing algorithm, and can convey
-- algorithm parameters
hashAlgorithm AlgorithmIdentifier OPTIONAL,
-- Identifies a hash function,
-- for use if a hash function is required
-- and the signOrSealAlgorithm identifier
-- does not imply a particular hash
-- function. Can also convey algorithm
-- parameters.
keyInformation
SEQUENCE {kiClass KEY-INFORMATION.&kiClass({SupportedKIClasses}),
keyInfo KEY-INFORMATION.&KiType({SupportedKIClasses}{@.kiClass})
} OPTIONAL
-- Key information may assume various
-- formats, governed by supported members
-- of the KEY-INFORMATION information
-- object class (defined at start of the
-- definitive ASN.1 module)
}
-- **************************************
-- GULS SIGNATURE Security Transformation
-- **************************************
gulsSignatureTransformation{KEY-INFORMATION:SupportedKIClasses}
SECURITY-TRANSFORMATION ::= {
IDENTIFIER {securityTransformations guls-signature(5)}
INITIAL-ENCODING-RULES
{joint-iso-itu-t asn1(1) ber-derived(2) canonical-encoding(0)}
-- This default for initial encoding rules may be overridden
-- using a static protected parameter (initEncRules).
XFORMED-DATA-TYPE
SEQUENCE {initEncRules
OBJECT IDENTIFIER
DEFAULT
{joint-iso-itu-t asn1(1) ber-derived(2)
canonical-encoding(0)},
signOrSealAlgorithm AlgorithmIdentifier OPTIONAL,
-- Identifies the signing or
-- sealing algorithm, and can convey
-- algorithm parameters
hashAlgorithm AlgorithmIdentifier OPTIONAL,
-- Identifies a hash function,
-- for use if a hash function is required
-- and the signOrSealAlgorithm identifier
-- does not imply a particular hash
-- function. Can also convey algorithm parameters.
keyInformation
SEQUENCE {kiClass
KEY-INFORMATION.&kiClass({SupportedKIClasses}),
keyInfo
KEY-INFORMATION.&KiType
({SupportedKIClasses}{@.kiClass})} OPTIONAL,
-- Key information may assume various
-- formats, governed by supported members
-- of the KEY-INFORMATION information
-- object class (defined at start of the
-- definitive ASN.1 module)
appendix
BIT STRING
(CONSTRAINED BY {
-- the appendix value must be generated following
-- the procedure specified in D.5 of DIS 11586-1 -- })
}
}
END
-- Generated by Asnp, the ASN.1 pretty-printer of France Telecom R&D
-- content of stack:
--
|