Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
p6kmip.h
Go to the documentation of this file.
1 
18 #ifndef P6KMIP_H__
19 #define P6KMIP_H__ 1
20 
21 #include "p6types.h"
22 #include "p6kmipprofiles.h"
23 
24 #ifdef __cplusplus
25 namespace P6R {
26 extern "C" {
27 #endif
28 
29 // Values shared between encoder and decoders
30 //
31 // Section 9.1.1.2 Item Type
32 // TTLV - Item Type Codes
33 //
34 static const P6UINT8 KMIP_TYPE_STRUCTURE = 0x01;
35 static const P6UINT8 KMIP_TYPE_INTEGER = 0x02;
36 static const P6UINT8 KMIP_TYPE_LONGINTEGER = 0x03;
37 static const P6UINT8 KMIP_TYPE_BIGINTEGER = 0x04;
38 static const P6UINT8 KMIP_TYPE_ENUMERATION = 0x05;
39 static const P6UINT8 KMIP_TYPE_BOOLEAN = 0x06;
40 static const P6UINT8 KMIP_TYPE_TEXTSTRING = 0x07;
41 static const P6UINT8 KMIP_TYPE_BYTESTRING = 0x08;
42 static const P6UINT8 KMIP_TYPE_DATETIME = 0x09;
43 static const P6UINT8 KMIP_TYPE_INTERVAL = 0x0A;
44 
45 // Section 9.1.3.1 Tags
46 //
47 static const P6UINT32 KMIP_TAG_ACTIVATIONDATE = 0x00420001;
48 static const P6UINT32 KMIP_TAG_APPDATA = 0x00420002; // Application Data
49 static const P6UINT32 KMIP_TAG_APPNAMESPACE = 0x00420003; // Application Namespace
50 static const P6UINT32 KMIP_TAG_APPSPECIFICINFO = 0x00420004; // Application Specific Information
51 static const P6UINT32 KMIP_TAG_ARCHIVEDATE = 0x00420005;
52 static const P6UINT32 KMIP_TAG_ASYNCHCORRVALUE = 0x00420006; // Asynchronous Correlation Value
53 static const P6UINT32 KMIP_TAG_ASYNCHINDICATOR = 0x00420007;
54 static const P6UINT32 KMIP_TAG_ATTRIBUTE = 0x00420008;
55 static const P6UINT32 KMIP_TAG_ATTRIBUTEINDEX = 0x00420009;
56 static const P6UINT32 KMIP_TAG_ATTRIBUTENAME = 0x0042000A;
57 static const P6UINT32 KMIP_TAG_ATTRIBUTEVALUE = 0x0042000B;
58 static const P6UINT32 KMIP_TAG_AUTHENTICATION = 0x0042000C;
59 static const P6UINT32 KMIP_TAG_BATCHCOUNT = 0x0042000D;
60 static const P6UINT32 KMIP_TAG_BATCHCONTINUATION = 0x0042000E; // Batch Error Continuation Option
61 static const P6UINT32 KMIP_TAG_BATCHITEM = 0x0042000F;
62 static const P6UINT32 KMIP_TAG_BATCHORDER = 0x00420010;
63 static const P6UINT32 KMIP_TAG_BLOCKCIPHERMODE = 0x00420011;
64 static const P6UINT32 KMIP_TAG_CANCELLATIONRESULT = 0x00420012;
65 static const P6UINT32 KMIP_TAG_CERTIFICATE = 0x00420013;
66 static const P6UINT32 KMIP_TAG_CERTIFICATEIDENTIFER = 0x00420014; // (deprecated as of version 1.1)
67 static const P6UINT32 KMIP_TAG_CERTIFICATEISSUER = 0x00420015; // (deprecated as of version 1.1)
68 static const P6UINT32 KMIP_TAG_CERTISSUERALTNAME = 0x00420016; // (deprecated as of version 1.1) Certificate Issuer Alternative Name
69 static const P6UINT32 KMIP_TAG_CERTISSUERDISTNAME = 0x00420017; // (deprecated as of version 1.1) Certificate Issuer Distinguished Name
70 static const P6UINT32 KMIP_TAG_CERTREQUEST = 0x00420018; // Certificate Request
71 static const P6UINT32 KMIP_TAG_CERTREQUESTTYPE = 0x00420019; // Certificate Request Type
72 static const P6UINT32 KMIP_TAG_CERTIFICATESUBJECT = 0x0042001A; // (deprecated as of version 1.1)
73 static const P6UINT32 KMIP_TAG_CERTSUBJECTALTNAME = 0x0042001B; // (deprecated as of version 1.1) Certificate Subject Alternative Name
74 static const P6UINT32 KMIP_TAG_CERTSUBJECTDISTNAME = 0x0042001C; // (deprecated as of version 1.1) Certificate Subject Distinguished Name
75 static const P6UINT32 KMIP_TAG_CERTIFICATETYPE = 0x0042001D;
76 static const P6UINT32 KMIP_TAG_CERTIFICATEVALUE = 0x0042001E;
77 static const P6UINT32 KMIP_TAG_COMMONTEMPLATEATTRIB = 0x0042001F;
78 static const P6UINT32 KMIP_TAG_COMPROMISEDATE = 0x00420020;
79 static const P6UINT32 KMIP_TAG_OCCURRENCEDATE = 0x00420021; // Compromise Occurrence Date
80 static const P6UINT32 KMIP_TAG_CONTACTINFO = 0x00420022;
81 static const P6UINT32 KMIP_TAG_CREDENTIAL = 0x00420023;
82 static const P6UINT32 KMIP_TAG_CREDENTIALTYPE = 0x00420024;
83 static const P6UINT32 KMIP_TAG_CREDENTIALVALUE = 0x00420025;
84 static const P6UINT32 KMIP_TAG_CRITICALITYINDICATOR = 0x00420026;
85 static const P6UINT32 KMIP_TAG_CRT = 0x00420027; // CRT Coefficient
86 static const P6UINT32 KMIP_TAG_CRYPTOALGORITHM = 0x00420028; // Cryptographic Algorithm
87 static const P6UINT32 KMIP_TAG_CRYPTODOMAINPARAMS = 0x00420029; // Cryptographic Domain Parameters
88 static const P6UINT32 KMIP_TAG_CRYPTOLENGTH = 0x0042002A; // Cryptographic Length
89 static const P6UINT32 KMIP_TAG_CRYPTOPARAMS = 0x0042002B; // Cryptographic Parameters
90 static const P6UINT32 KMIP_TAG_CRYPTOUSAGEMASK = 0x0042002C; // Cryptographic Usage Mask
91 static const P6UINT32 KMIP_TAG_CUSTOMATTRIBUTE = 0x0042002D;
92 static const P6UINT32 KMIP_TAG_D = 0x0042002E;
93 static const P6UINT32 KMIP_TAG_DEACTIVATIONDATE = 0x0042002F;
94 static const P6UINT32 KMIP_TAG_DERIVATIONDATA = 0x00420030;
95 static const P6UINT32 KMIP_TAG_DERIVATIONMETHOD = 0x00420031;
96 static const P6UINT32 KMIP_TAG_DERIVATIONPARAMS = 0x00420032;
97 static const P6UINT32 KMIP_TAG_DESTROYDATE = 0x00420033;
98 static const P6UINT32 KMIP_TAG_DIGEST = 0x00420034;
99 static const P6UINT32 KMIP_TAG_DIGESTVALUE = 0x00420035;
100 static const P6UINT32 KMIP_TAG_ENCRYPTKEYINFO = 0x00420036; // Encryption Key Information
101 static const P6UINT32 KMIP_TAG_G = 0x00420037;
102 static const P6UINT32 KMIP_TAG_HASHALGORITHM = 0x00420038;
103 static const P6UINT32 KMIP_TAG_INITIALDATE = 0x00420039;
104 static const P6UINT32 KMIP_TAG_INITIALIZATIONVECTOR = 0x0042003A;
105 static const P6UINT32 KMIP_TAG_ISSUER = 0x0042003B; // (deprecated as of version 1.1)
106 static const P6UINT32 KMIP_TAG_ITERATIONCOUNT = 0x0042003C;
107 static const P6UINT32 KMIP_TAG_IVCOUNTERNONCE = 0x0042003D; // IV/Counter/Nonce
108 static const P6UINT32 KMIP_TAG_J = 0x0042003E;
109 static const P6UINT32 KMIP_TAG_KEY = 0x0042003F;
110 static const P6UINT32 KMIP_TAG_KEYBLOCK = 0x00420040;
111 static const P6UINT32 KMIP_TAG_KEYCOMPRESSIONTYPE = 0x00420041;
112 static const P6UINT32 KMIP_TAG_KEYFORMATTYPE = 0x00420042;
113 static const P6UINT32 KMIP_TAG_KEYMATERIAL = 0x00420043;
114 static const P6UINT32 KMIP_TAG_KEYPARTID = 0x00420044; // Key Part Identifier
115 static const P6UINT32 KMIP_TAG_KEYVALUE = 0x00420045;
116 static const P6UINT32 KMIP_TAG_KEYWRAPPINGDATA = 0x00420046;
117 static const P6UINT32 KMIP_TAG_KEYWRAPPINGSPEC = 0x00420047; // Key Wrapping Specification
118 static const P6UINT32 KMIP_TAG_LASTCHANGEDATE = 0x00420048;
119 static const P6UINT32 KMIP_TAG_LEASETIME = 0x00420049;
120 static const P6UINT32 KMIP_TAG_LINK = 0x0042004A;
121 static const P6UINT32 KMIP_TAG_LINKTYPE = 0x0042004B;
122 static const P6UINT32 KMIP_TAG_LINKEDOBJECTID = 0x0042004C; // Linked Object Identifier
123 static const P6UINT32 KMIP_TAG_MACSIGNATURE = 0x0042004D; // MAC/Signature
124 static const P6UINT32 KMIP_TAG_MACKEYINFO = 0x0042004E; // MAC/Signature Key Information
125 static const P6UINT32 KMIP_TAG_MAXIMUMITEMS = 0x0042004F;
126 static const P6UINT32 KMIP_TAG_MAXRESPONSESIZE = 0x00420050;
127 static const P6UINT32 KMIP_TAG_MESSAGEEXTENSION = 0x00420051;
128 static const P6UINT32 KMIP_TAG_MODULUS = 0x00420052;
129 static const P6UINT32 KMIP_TAG_NAME = 0x00420053;
130 static const P6UINT32 KMIP_TAG_NAMETYPE = 0x00420054;
131 static const P6UINT32 KMIP_TAG_NAMEVALUE = 0x00420055;
132 static const P6UINT32 KMIP_TAG_OBJECTGROUP = 0x00420056;
133 static const P6UINT32 KMIP_TAG_OBJECTTYPE = 0x00420057;
134 static const P6UINT32 KMIP_TAG_OFFSET = 0x00420058;
135 static const P6UINT32 KMIP_TAG_OPAQUEDATATYPE = 0x00420059;
136 static const P6UINT32 KMIP_TAG_OPAQUEDATAVALUE = 0x0042005A;
137 static const P6UINT32 KMIP_TAG_OPAQUEOBJECT = 0x0042005B;
138 static const P6UINT32 KMIP_TAG_OPERATION = 0x0042005C;
139 static const P6UINT32 KMIP_TAG_OPPOLICYNAME = 0x0042005D; // Operation Policy Name
140 static const P6UINT32 KMIP_TAG_P = 0x0042005E;
141 static const P6UINT32 KMIP_TAG_PADDINGMETHOD = 0x0042005F;
142 static const P6UINT32 KMIP_TAG_PRIMEEXPP = 0x00420060; // Prime Exponent P
143 static const P6UINT32 KMIP_TAG_PRIMEEXPQ = 0x00420061; // Prime Exponent Q
144 static const P6UINT32 KMIP_TAG_PRIMEFIELDSIZE = 0x00420062;
145 static const P6UINT32 KMIP_TAG_PRIVATEEXPONENT = 0x00420063;
146 static const P6UINT32 KMIP_TAG_PRIVATEKEY = 0x00420064;
147 static const P6UINT32 KMIP_TAG_PRIVATEKEYATTRIB = 0x00420065; // Private Key Template Attributes
148 static const P6UINT32 KMIP_TAG_PRIVATEKEYUNIQUEID = 0x00420066; // Private Key Unique Identifer
149 static const P6UINT32 KMIP_TAG_PROCESSSTARTDATE = 0x00420067;
150 static const P6UINT32 KMIP_TAG_PROTECTSTOPDATE = 0x00420068;
151 static const P6UINT32 KMIP_TAG_PROTOCOLVERSION = 0x00420069;
152 static const P6UINT32 KMIP_TAG_PROTOCOLMAJOR = 0x0042006A;
153 static const P6UINT32 KMIP_TAG_PROTOCOLMINOR = 0x0042006B;
154 static const P6UINT32 KMIP_TAG_PUBLICEXPONENT = 0x0042006C;
155 static const P6UINT32 KMIP_TAG_PUBLICKEY = 0x0042006D;
156 static const P6UINT32 KMIP_TAG_PUBLICKEYATTRIB = 0x0042006E; // Public Key Template Attributes
157 static const P6UINT32 KMIP_TAG_PUBLICKEYUNIQUEID = 0x0042006F; // Public Key Unique Identifer
158 static const P6UINT32 KMIP_TAG_PUTFUNCTION = 0x00420070;
159 static const P6UINT32 KMIP_TAG_Q = 0x00420071;
160 static const P6UINT32 KMIP_TAG_QSTRING = 0x00420072;
161 static const P6UINT32 KMIP_TAG_QLENGTH = 0x00420073;
162 static const P6UINT32 KMIP_TAG_QUERYFUNCTION = 0x00420074;
163 static const P6UINT32 KMIP_TAG_RECOMMENDEDCURVE = 0x00420075;
164 static const P6UINT32 KMIP_TAG_REPLACEDUNIQUEID = 0x00420076; // Replaced Unique Identifer
165 static const P6UINT32 KMIP_TAG_REQUESTHEADER = 0x00420077;
166 static const P6UINT32 KMIP_TAG_REQUESTMESSAGE = 0x00420078;
167 static const P6UINT32 KMIP_TAG_REQUESTPAYLOAD = 0x00420079;
168 static const P6UINT32 KMIP_TAG_RESPONSEHEADER = 0x0042007A;
169 static const P6UINT32 KMIP_TAG_RESPONSEMESSAGE = 0x0042007B;
170 static const P6UINT32 KMIP_TAG_RESPONSEPAYLOAD = 0x0042007C;
171 static const P6UINT32 KMIP_TAG_RESULTMESSAGE = 0x0042007D;
172 static const P6UINT32 KMIP_TAG_RESULTREASON = 0x0042007E;
173 static const P6UINT32 KMIP_TAG_RESULTSTATUS = 0x0042007F;
174 static const P6UINT32 KMIP_TAG_REVOCATIONMESSAGE = 0x00420080;
175 static const P6UINT32 KMIP_TAG_REVOCATIONREASON = 0x00420081;
176 static const P6UINT32 KMIP_TAG_REVOCATIONCODE = 0x00420082;
177 static const P6UINT32 KMIP_TAG_KEYROLETYPE = 0x00420083;
178 static const P6UINT32 KMIP_TAG_SALT = 0x00420084;
179 static const P6UINT32 KMIP_TAG_SECRETDATA = 0x00420085;
180 static const P6UINT32 KMIP_TAG_SECRETDATATYPE = 0x00420086;
181 static const P6UINT32 KMIP_TAG_SERIALNUMBER = 0x00420087; // (deprecated as of version 1.1)
182 static const P6UINT32 KMIP_TAG_SERVERINFORMATION = 0x00420088;
183 static const P6UINT32 KMIP_TAG_SPLITKEY = 0x00420089;
184 static const P6UINT32 KMIP_TAG_SPLITKEYMETHOD = 0x0042008A;
185 static const P6UINT32 KMIP_TAG_SPLITKEYPARTS = 0x0042008B;
186 static const P6UINT32 KMIP_TAG_SPLITKEYTHRESHOLD = 0x0042008C;
187 static const P6UINT32 KMIP_TAG_STATE = 0x0042008D;
188 static const P6UINT32 KMIP_TAG_STORAGESTATUSMASK = 0x0042008E;
189 static const P6UINT32 KMIP_TAG_SYMMETRICKEY = 0x0042008F;
190 static const P6UINT32 KMIP_TAG_TEMPLATE = 0x00420090;
191 static const P6UINT32 KMIP_TAG_TEMPLATEATTRIBUTE = 0x00420091;
192 static const P6UINT32 KMIP_TAG_TIMESTAMP = 0x00420092;
193 static const P6UINT32 KMIP_TAG_UNIQUEBATCHITEMID = 0x00420093;
194 static const P6UINT32 KMIP_TAG_UNIQUEIDENTIFIER = 0x00420094;
195 static const P6UINT32 KMIP_TAG_USAGELIMITS = 0x00420095;
196 static const P6UINT32 KMIP_TAG_USAGELIMITSCOUNT = 0x00420096;
197 static const P6UINT32 KMIP_TAG_USAGELIMITSTOTAL = 0x00420097;
198 static const P6UINT32 KMIP_TAG_USAGELIMITSUNIT = 0x00420098;
199 static const P6UINT32 KMIP_TAG_USERNAME = 0x00420099;
200 static const P6UINT32 KMIP_TAG_VALIDITYDATE = 0x0042009A;
201 static const P6UINT32 KMIP_TAG_VALIDITYINDICATOR = 0x0042009B;
202 static const P6UINT32 KMIP_TAG_VENDOREXTENSION = 0x0042009C;
203 static const P6UINT32 KMIP_TAG_VENDORIDENTIFICATION = 0x0042009D;
204 static const P6UINT32 KMIP_TAG_WRAPPINGMETHOD = 0x0042009E;
205 static const P6UINT32 KMIP_TAG_X = 0x0042009F;
206 static const P6UINT32 KMIP_TAG_Y = 0x004200A0;
207 static const P6UINT32 KMIP_TAG_PASSWORD = 0x004200A1;
208 static const P6UINT32 KMIP_TAG_DEVICEIDENTIFIER = 0x004200A2;
209 static const P6UINT32 KMIP_TAG_ENCODINGOPTION = 0x004200A3;
210 static const P6UINT32 KMIP_TAG_EXTENSIONINFO = 0x004200A4;
211 static const P6UINT32 KMIP_TAG_EXTENSIONNAME = 0x004200A5;
212 static const P6UINT32 KMIP_TAG_EXTENSIONTAG = 0x004200A6;
213 static const P6UINT32 KMIP_TAG_EXTENSIONTYPE = 0x004200A7;
214 static const P6UINT32 KMIP_TAG_FRESH = 0x004200A8;
215 static const P6UINT32 KMIP_TAG_MACHINEIDENTIFIER = 0x004200A9;
216 static const P6UINT32 KMIP_TAG_MEDIAIDENTIFIER = 0x004200AA;
217 static const P6UINT32 KMIP_TAG_NETWORKIDENTIIFIER = 0x004200AB;
218 static const P6UINT32 KMIP_TAG_OBJECTGROUPMEMBER = 0x004200AC;
219 static const P6UINT32 KMIP_TAG_CERTLENGTH = 0x004200AD; // Certificate length
220 static const P6UINT32 KMIP_TAG_DIGITALSIGALG = 0x004200AE; // Digital Signature Algorithm
221 static const P6UINT32 KMIP_TAG_CERTSERIALNUMBER = 0x004200AF; // Certificate Serial Number
222 static const P6UINT32 KMIP_TAG_DEVICESERAILNUMBER = 0x004200B0;
223 static const P6UINT32 KMIP_TAG_ISSUERALTNAME = 0x004200B1; // Issuer Alternative Name
224 static const P6UINT32 KMIP_TAG_ISSUERDISTNAME = 0x004200B2; // Issuer Distinguished Name
225 static const P6UINT32 KMIP_TAG_SUBJECTALTNAME = 0x004200B3; // Subject Alternative Name
226 static const P6UINT32 KMIP_TAG_SUBJECTDISTNAME = 0x004200B4; // Subject Distinguished Name
227 static const P6UINT32 KMIP_TAG_X509CERTIDENTIFIER = 0x004200B5; // X.509 Certificate Identifier
228 static const P6UINT32 KMIP_TAG_X509CERTISSUER = 0x004200B6; // X.509 Certificate Issuer
229 static const P6UINT32 KMIP_TAG_X509CERTSUBJECT = 0x004200B7; // X.509 Certificate Subject
230 static const P6UINT32 KMIP_TAG_KEYVALUELOC = 0x004200B8; // Key Value Location
231 static const P6UINT32 KMIP_TAG_KEYVALUELOCVALUE = 0x004200B9;
232 static const P6UINT32 KMIP_TAG_KEYVALUELOCTYPE = 0x004200BA;
233 static const P6UINT32 KMIP_TAG_KEYVALUEPRESENT = 0x004200BB;
234 static const P6UINT32 KMIP_TAG_ORIGNALCREATIONDATE = 0x004200BC;
235 static const P6UINT32 KMIP_TAG_PGPKEY = 0x004200BD;
236 static const P6UINT32 KMIP_TAG_PGPKEYVERSION = 0x004200BE;
237 static const P6UINT32 KMIP_TAG_ALTNAME = 0x004200BF; // Alternative Name
238 static const P6UINT32 KMIP_TAG_ALTNAMEVALUE = 0x004200C0;
239 static const P6UINT32 KMIP_TAG_ALTNAMETYPE = 0x004200C1;
240 static const P6UINT32 KMIP_TAG_DATA = 0x004200C2;
241 static const P6UINT32 KMIP_TAG_SIGNATUREDATA = 0x004200C3;
242 static const P6UINT32 KMIP_TAG_DATALENGTH = 0x004200C4;
243 static const P6UINT32 KMIP_TAG_RANDOMIV = 0x004200C5;
244 static const P6UINT32 KMIP_TAG_MACDATA = 0x004200C6;
245 static const P6UINT32 KMIP_TAG_ATTESTATIONTYPE = 0x004200C7;
246 static const P6UINT32 KMIP_TAG_NONCE = 0x004200C8;
247 static const P6UINT32 KMIP_TAG_NONCEID = 0x004200C9;
248 static const P6UINT32 KMIP_TAG_NONCEVALUE = 0x004200CA;
249 static const P6UINT32 KMIP_TAG_ATTESTATIONMEASURE = 0x004200CB; // Attestation Mesaurement
250 static const P6UINT32 KMIP_TAG_ATTESTATIONASSERT = 0x004200CC; // Attestation Assertion
251 static const P6UINT32 KMIP_TAG_IVLENGTH = 0x004200CD;
252 static const P6UINT32 KMIP_TAG_TAGLENGTH = 0x004200CE;
253 static const P6UINT32 KMIP_TAG_FIXEDFIELDLENGTH = 0x004200CF;
254 static const P6UINT32 KMIP_TAG_COUNTERLENGTH = 0x004200D0;
255 static const P6UINT32 KMIP_TAG_INITIALCOUNTVALUE = 0x004200D1;
256 static const P6UINT32 KMIP_TAG_INVOCATIONFIELDLENGTH = 0x004200D2;
257 static const P6UINT32 KMIP_TAG_ATTESTATIONINDICATOR = 0x004200D3; // Attestation Capable Indicator
258 static const P6UINT32 KMIP_TAG_OFFSETITEMS = 0x004200D4; // the following added in KMIP 1.3
259 static const P6UINT32 KMIP_TAG_LOCATEDITEMS = 0x004200D5;
260 static const P6UINT32 KMIP_TAG_CORRELATIONVALUE = 0x004200D6; // for cryptographic streaming operations
261 static const P6UINT32 KMIP_TAG_INITINDICATOR = 0x004200D7;
262 static const P6UINT32 KMIP_TAG_FINALINDICATOR = 0x004200D8;
263 static const P6UINT32 KMIP_TAG_RNGPARAMS = 0x004200D9; // RNG Parameters
264 static const P6UINT32 KMIP_TAG_RNGALGORITHM = 0x004200DA;
265 static const P6UINT32 KMIP_TAG_DRBGALGORITHM = 0x004200DB;
266 static const P6UINT32 KMIP_TAG_FIPS186VARIATION = 0x004200DC;
267 static const P6UINT32 KMIP_TAG_PREDICTIONRESISTANCE = 0x004200DD;
268 static const P6UINT32 KMIP_TAG_RANDOMNUMGENERATOR = 0x004200DE; // Random Number Generator
269 static const P6UINT32 KMIP_TAG_VALIDATIONNINFO = 0x004200DF; // Validation Information
270 static const P6UINT32 KMIP_TAG_VALIDATIONAUTHTYPE = 0x004200E0; // Validation Authority Type
271 static const P6UINT32 KMIP_TAG_VALIDATIONAUTHCO = 0x004200E1; // Validation Authority Country
272 static const P6UINT32 KMIP_TAG_VALIDATIONAUTHURI = 0x004200E2; // Validation Authority URI
273 static const P6UINT32 KMIP_TAG_VALIDATIONVERMAJOR = 0x004200E3; // Validation Version Major
274 static const P6UINT32 KMIP_TAG_VALIDATIONVERMINOR = 0x004200E4; // Validation Version Minor
275 static const P6UINT32 KMIP_TAG_VALIDATIONTYPE = 0x004200E5;
276 static const P6UINT32 KMIP_TAG_VALIDATIONLEVEL = 0x004200E6;
277 static const P6UINT32 KMIP_TAG_VALIDATIONCERTID = 0x004200E7; // Validation Certificate Identifier
278 static const P6UINT32 KMIP_TAG_VALIDATIONCERTURI = 0x004200E8; // Validation Certificate URI
279 static const P6UINT32 KMIP_TAG_VALIDATIONVENDORURI = 0x004200E9;
280 static const P6UINT32 KMIP_TAG_VALIDATIONPROFILE = 0x004200EA;
281 static const P6UINT32 KMIP_TAG_PROFILEINFO = 0x004200EB;
282 static const P6UINT32 KMIP_TAG_PROFILENAME = 0x004200EC;
283 static const P6UINT32 KMIP_TAG_SERVERURI = 0x004200ED;
284 static const P6UINT32 KMIP_TAG_SERVERPORT = 0x004200EE;
285 static const P6UINT32 KMIP_TAG_STREAMING_CAP = 0x004200EF; // Streaming Capability
286 static const P6UINT32 KMIP_TAG_ASYNCHRONOUS_CAP = 0x004200F0; // Asynchronous Capability
287 static const P6UINT32 KMIP_TAG_ATTESTATION_CAP = 0x004200F1; // Attestation Capability
288 static const P6UINT32 KMIP_TAG_UNWRAPMODE = 0x004200F2;
289 static const P6UINT32 KMIP_TAG_DESTROYACTION = 0x004200F3;
290 static const P6UINT32 KMIP_TAG_SHREADDINGALG = 0x004200F4;
291 static const P6UINT32 KMIP_TAG_RNGMODE = 0x004200F5;
292 static const P6UINT32 KMIP_TAG_CLIENTREGMETHOD = 0x004200F6; // Client Registration Method
293 static const P6UINT32 KMIP_TAG_CAPABILITYINFO = 0x004200F7; // Capability Information
294 static const P6UINT32 KMIP_TAG_KEYWRAPTYPE = 0x004200F8; // the following added in KMIP 1.4
295 static const P6UINT32 KMIP_TAG_BATCHUNDOCAP = 0x004200F9; // Batch Undo Capability
296 static const P6UINT32 KMIP_TAG_BATCHCONTINUECAP = 0x004200FA; // Batch Continue Capability
297 static const P6UINT32 KMIP_TAG_P12FRIENDLYNAME = 0x004200FB; // PKCS#12 Friendly Name
298 static const P6UINT32 KMIP_TAG_DESCRIPTION = 0x004200FC;
299 static const P6UINT32 KMIP_TAG_COMMENTS = 0x004200FD;
300 static const P6UINT32 KMIP_TAG_AUTHENTICATED_ENC_DATA = 0x004200FE; // Authenticated Encryption Additional Data
301 static const P6UINT32 KMIP_TAG_AUTHENTICATED_ENC_TAG = 0x004200FF; // Authenticated Encryption TAG
302 static const P6UINT32 KMIP_TAG_SALTLENGTH = 0x00420100;
303 static const P6UINT32 KMIP_TAG_MASKGENERATOR = 0x00420101;
304 static const P6UINT32 KMIP_TAG_MASKGENERATOR_HASH_ALG = 0x00420102; // Mask Generator Hashing Algorithm
305 static const P6UINT32 KMIP_TAG_P_SOURCE = 0x00420103;
306 static const P6UINT32 KMIP_TAG_TRAILERFIELD = 0x00420104;
307 static const P6UINT32 KMIP_TAG_CLIENT_CORRELATION_VALUE = 0x00420105;
308 static const P6UINT32 KMIP_TAG_SERVER_CORRELATION_VALUE = 0x00420106;
309 static const P6UINT32 KMIP_TAG_DIGESTED_DATA = 0x00420107;
310 static const P6UINT32 KMIP_TAG_CERT_SUBJECT_CN = 0x00420108; // Certificate Subject CN
311 static const P6UINT32 KMIP_TAG_CERT_SUBJECT_O = 0x00420109; //
312 static const P6UINT32 KMIP_TAG_CERT_SUBJECT_OU = 0x0042010A; //
313 static const P6UINT32 KMIP_TAG_CERT_SUBJECT_EMAIL = 0x0042010B; //
314 static const P6UINT32 KMIP_TAG_CERT_SUBJECT_C = 0x0042010C; //
315 static const P6UINT32 KMIP_TAG_CERT_SUBJECT_ST = 0x0042010D; //
316 static const P6UINT32 KMIP_TAG_CERT_SUBJECT_L = 0x0042010E; //
317 static const P6UINT32 KMIP_TAG_CERT_SUBJECT_UID = 0x0042010F; //
318 static const P6UINT32 KMIP_TAG_CERT_SUBJECT_SERIALNUM = 0x00420110; // Certificate Subject Serial Number
319 static const P6UINT32 KMIP_TAG_CERT_SUBJECT_TITLE = 0x00420111; //
320 static const P6UINT32 KMIP_TAG_CERT_SUBJECT_DC = 0x00420112; //
321 static const P6UINT32 KMIP_TAG_CERT_SUBJECT_DCQUALIFIER = 0x00420113; //
322 static const P6UINT32 KMIP_TAG_CERT_ISSUER_CN = 0x00420114; // Certificate Issuer CN
323 static const P6UINT32 KMIP_TAG_CERT_ISSUER_O = 0x00420115; //
324 static const P6UINT32 KMIP_TAG_CERT_ISSUER_OU = 0x00420116; //
325 static const P6UINT32 KMIP_TAG_CERT_ISSUER_EMAIL = 0x00420117; //
326 static const P6UINT32 KMIP_TAG_CERT_ISSUER_C = 0x00420118; //
327 static const P6UINT32 KMIP_TAG_CERT_ISSUER_ST = 0x00420119; //
328 static const P6UINT32 KMIP_TAG_CERT_ISSUER_L = 0x0042011A; //
329 static const P6UINT32 KMIP_TAG_CERT_ISSUER_UID = 0x0042011B; //
330 static const P6UINT32 KMIP_TAG_CERT_ISSUER_SERIALNUM = 0x0042011C; // Certificate Issuer Serial Number
331 static const P6UINT32 KMIP_TAG_CERT_ISSUER_TITLE = 0x0042011D; //
332 static const P6UINT32 KMIP_TAG_CERT_ISSUER_DC = 0x0042011E; //
333 static const P6UINT32 KMIP_TAG_CERT_ISSUER_DCQUALIFIER = 0x0042011F; //
334 static const P6UINT32 KMIP_TAG_SENSITIVE = 0x00420120;
335 static const P6UINT32 KMIP_TAG_ALWAYS_SENSITIVE = 0x00420121;
336 static const P6UINT32 KMIP_TAG_EXTRACTABLE = 0x00420122;
337 static const P6UINT32 KMIP_TAG_NEVER_EXTRACTABLE = 0x00420123;
338 static const P6UINT32 KMIP_TAG_REPLACE_EXISTING = 0x00420124;
339 // KMIP_Extensions 0x8XXXXXXX
340 
341 
342 // -> Section 9.1.3.2.1 Credential Type Enumeration
343 static const P6UINT32 KMIP_CRED_NAMEPASS = 0x0001; // Username and Password
344 static const P6UINT32 KMIP_CRED_DEVICE = 0x0002;
345 static const P6UINT32 KMIP_CRED_ATTESTATION = 0x0003;
346 // KMIP_Extensions 0x8XXXXXXX
347 
348 // Section 9.1.3.2.2 Key Compression Type Enumeration
349 static const P6UINT32 KMIP_COMPRESS_ECPUBLICKEY = 0x0001; // EC Public Key Type Uncompressed
350 static const P6UINT32 KMIP_COMPRESS_ECPUBLICKEY_PRIME = 0x0002; // EC Public Key Type X9.62 Compressed Prime
351 static const P6UINT32 KMIP_COMPRESS_ECPUBLICKEY_CHAR2 = 0x0003; // EC Public Key Type X9.62 Compressed Char2
352 static const P6UINT32 KMIP_COMPRESS_ECPUBLICKEY_HYBRID = 0x0004; // EC Public Key Type X9.62 Hybrid
353 // KMIP_Extensions 0x8XXXXXXX
354 
355 // Section 9.1.3.2.3 Key Format Type Enumeration
356 static const P6UINT32 KMIP_KEYFORMAT_RAW = 0x0001;
357 static const P6UINT32 KMIP_KEYFORMAT_OPAQUE = 0x0002;
358 static const P6UINT32 KMIP_KEYFORMAT_PKCS1 = 0x0003;
359 static const P6UINT32 KMIP_KEYFORMAT_PKCS8 = 0x0004;
360 static const P6UINT32 KMIP_KEYFORMAT_X509 = 0x0005;
361 static const P6UINT32 KMIP_KEYFORMAT_ECPRIVKEY = 0x0006;
362 static const P6UINT32 KMIP_KEYFORMAT_TRANSYMKEY = 0x0007; // Transparent Symmetric key
363 static const P6UINT32 KMIP_KEYFORMAT_TRANDSAPRIVKEY = 0x0008; // Transparent DSA Private key
364 static const P6UINT32 KMIP_KEYFORMAT_TRANDSAPUBKEY = 0x0009; // Transparent DSA Public key
365 static const P6UINT32 KMIP_KEYFORMAT_TRANRSAPRIVKEY = 0x000A; // Transparent RSA Private key
366 static const P6UINT32 KMIP_KEYFORMAT_TRANRSAPUBKEY = 0x000B; // Transparent RSA Public key
367 static const P6UINT32 KMIP_KEYFORMAT_TRANDHPRIVKEY = 0x000C; // Transparent DH Private key
368 static const P6UINT32 KMIP_KEYFORMAT_TRANDHPUBKEY = 0x000D; // Transparent DH Public key
369 static const P6UINT32 KMIP_KEYFORMAT_TRANECDSAPRIVKEY = 0x000E; // (deprecated KMIP 1.3) Transparent ECDSA Private key,
370 static const P6UINT32 KMIP_KEYFORMAT_TRANECDSAPUBKEY = 0x000F; // (deprecated KMIP 1.3) Transparent ECDSA Publick key
371 static const P6UINT32 KMIP_KEYFORMAT_TRANECDHPRIVKEY = 0x0010; // (deprecated KMIP 1.3) Transparent ECDH Private key
372 static const P6UINT32 KMIP_KEYFORMAT_TRANECDHPUBKEY = 0x0011; // (deprecated KMIP 1.3) Transparent ECDH Public key
373 static const P6UINT32 KMIP_KEYFORMAT_TRANECMQVPRIVKEY = 0x0012; // (deprecated KMIP 1.3) Transparent ECMQV Private key
374 static const P6UINT32 KMIP_KEYFORMAT_TRANECMQVPUBKEY = 0x0013; // (deprecated KMIP 1.3) Transparent ECMQV Public key
375 static const P6UINT32 KMIP_KEYFORMAT_TRANECPRIVKEY = 0x0014; // Transparent EC Private key, added KMIP 1.3
376 static const P6UINT32 KMIP_KEYFORMAT_TRANECPUBKEY = 0x0015; // Transparent EC Public key, added KMIP 1.3
377 static const P6UINT32 KMIP_KEYFORMAT_PKCS12 = 0x0016; // added KMIP 1.4
378 // KMIP_Extensions 0x8XXXXXXX
379 
380 // Section 9.1.3.2.4 Wrapping Method Enumeration
381 static const P6UINT32 KMIP_WRAP_ENCRYPT = 0x0001;
382 static const P6UINT32 KMIP_WRAP_SIGN = 0x0002;
383 static const P6UINT32 KMIP_WRAP_ENCRYPTSIGN = 0x0003;
384 static const P6UINT32 KMIP_WRAP_SIGNENCRYPT = 0x0004;
385 static const P6UINT32 KMIP_WRAP_TR31 = 0x0005;
386 // KMIP_Extensions 0x8XXXXXXX
387 
388 // Section 9.1.3.2.5 Recommended Curve Enumeration
389 static const P6UINT32 KMIP_P192 = 0x0001;
390 static const P6UINT32 KMIP_K163 = 0x0002;
391 static const P6UINT32 KMIP_B163 = 0x0003;
392 static const P6UINT32 KMIP_P224 = 0x0004;
393 static const P6UINT32 KMIP_K233 = 0x0005;
394 static const P6UINT32 KMIP_B233 = 0x0006;
395 static const P6UINT32 KMIP_P256 = 0x0007;
396 static const P6UINT32 KMIP_K283 = 0x0008;
397 static const P6UINT32 KMIP_B283 = 0x0009;
398 static const P6UINT32 KMIP_P384 = 0x000A;
399 static const P6UINT32 KMIP_K409 = 0x000B;
400 static const P6UINT32 KMIP_B409 = 0x000C;
401 static const P6UINT32 KMIP_P521 = 0x000D;
402 static const P6UINT32 KMIP_K571 = 0x000E;
403 static const P6UINT32 KMIP_B571 = 0x000F;
404 static const P6UINT32 KMIP_SECP112R1 = 0x0010;
405 static const P6UINT32 KMIP_SECP112R2 = 0x0011;
406 static const P6UINT32 KMIP_SECP128R1 = 0x0012;
407 static const P6UINT32 KMIP_SECP128R2 = 0x0013;
408 static const P6UINT32 KMIP_SECP160K1 = 0x0014;
409 static const P6UINT32 KMIP_SECP160R1 = 0x0015;
410 static const P6UINT32 KMIP_SECP160R2 = 0x0016;
411 static const P6UINT32 KMIP_SECP192K1 = 0x0017;
412 static const P6UINT32 KMIP_SECP224K1 = 0x0018;
413 static const P6UINT32 KMIP_SECP256K1 = 0x0019;
414 static const P6UINT32 KMIP_SECT113R1 = 0x001A;
415 static const P6UINT32 KMIP_SECT113R2 = 0x001B;
416 static const P6UINT32 KMIP_SECT131R1 = 0x001C;
417 static const P6UINT32 KMIP_SECT131R2 = 0x001D;
418 static const P6UINT32 KMIP_SECT163R1 = 0x001E;
419 static const P6UINT32 KMIP_SECT193R1 = 0x001F;
420 static const P6UINT32 KMIP_SECT193R2 = 0x0020;
421 static const P6UINT32 KMIP_SECT239K1 = 0x0021;
422 static const P6UINT32 KMIP_ANSIX9P192V2 = 0x0022;
423 static const P6UINT32 KMIP_ANSIX9P192V3 = 0x0023;
424 static const P6UINT32 KMIP_ANSIX9P239V1 = 0x0024;
425 static const P6UINT32 KMIP_ANSIX9P239V2 = 0x0025;
426 static const P6UINT32 KMIP_ANSIX9P239V3 = 0x0026;
427 static const P6UINT32 KMIP_ANSIX9C2PNB163V1 = 0x0027;
428 static const P6UINT32 KMIP_ANSIX9C2PNB163V2 = 0x0028;
429 static const P6UINT32 KMIP_ANSIX9C2PNB163V3 = 0x0029;
430 static const P6UINT32 KMIP_ANSIX9C2PNB176V1 = 0x002A;
431 static const P6UINT32 KMIP_ANSIX9C2TNB191V1 = 0x002B;
432 static const P6UINT32 KMIP_ANSIX9C2TNB191V2 = 0x002C;
433 static const P6UINT32 KMIP_ANSIX9C2TNB191V3 = 0x002D;
434 static const P6UINT32 KMIP_ANSIX9C2PNB208W1 = 0x002E;
435 static const P6UINT32 KMIP_ANSIX9C2TNB239V1 = 0x002F;
436 static const P6UINT32 KMIP_ANSIX9C2TNB239V2 = 0x0030;
437 static const P6UINT32 KMIP_ANSIX9C2TNB239V3 = 0x0031;
438 static const P6UINT32 KMIP_ANSIX9C2PNB272W1 = 0x0032;
439 static const P6UINT32 KMIP_ANSIX9C2PNB304W1 = 0x0033;
440 static const P6UINT32 KMIP_ANSIX9C2TNB359V1 = 0x0034;
441 static const P6UINT32 KMIP_ANSIX9C2PNB368W1 = 0x0035;
442 static const P6UINT32 KMIP_ANSIX9C2TNB431R1 = 0x0036;
443 static const P6UINT32 KMIP_BRAINPOOL_P160R1 = 0x0037;
444 static const P6UINT32 KMIP_BRAINPOOL_P160T1 = 0x0038;
445 static const P6UINT32 KMIP_BRAINPOOL_P192R1 = 0x0039;
446 static const P6UINT32 KMIP_BRAINPOOL_P192T1 = 0x003A;
447 static const P6UINT32 KMIP_BRAINPOOL_P224R1 = 0x003B;
448 static const P6UINT32 KMIP_BRAINPOOL_P224T1 = 0x003C;
449 static const P6UINT32 KMIP_BRAINPOOL_P256R1 = 0x003D;
450 static const P6UINT32 KMIP_BRAINPOOL_P256T1 = 0x003E;
451 static const P6UINT32 KMIP_BRAINPOOL_P320R1 = 0x003F;
452 static const P6UINT32 KMIP_BRAINPOOL_P320T1 = 0x0040;
453 static const P6UINT32 KMIP_BRAINPOOL_P384R1 = 0x0041;
454 static const P6UINT32 KMIP_BRAINPOOL_P384T1 = 0x0042;
455 static const P6UINT32 KMIP_BRAINPOOL_P512R1 = 0x0043;
456 static const P6UINT32 KMIP_BRAINPOOL_P512T1 = 0x0044;
457 // KMIP_Extensions 0x8XXXXXXX
458 
459 // Section 9.1.3.2.6 Certificate Type Enumeration
460 static const P6UINT32 KMIP_CERT_X509 = 0x0001;
461 static const P6UINT32 KMIP_CERT_PGP = 0x0002;
462 // KMIP_Extensions 0x8XXXXXXX
463 
464 // Section 9.1.3.2.7 Digital Signature Algorithm Enumeration
465 static const P6UINT32 KMIP_SIG_MD2RSA = 0x0001; // MD2 with RSA Encryption (PKCS#1 v1.5)
466 static const P6UINT32 KMIP_SIG_MD5RSA = 0x0002; // MD5 with RSA Encryption (PKCS#1 v1.5)
467 static const P6UINT32 KMIP_SIG_SHA1RSA = 0x0003; // SHA-1 RSA Encryption (PKCS#1 v1.5)
468 static const P6UINT32 KMIP_SIG_SSH224RSA = 0x0004; // SHA-224 with RSA Encryption (PKCS#1 v1.5)
469 static const P6UINT32 KMIP_SIG_SHA256RSA = 0x0005; // SHA-256 with RSA Encryption (PKCS#1 v1.5)
470 static const P6UINT32 KMIP_SIG_SHA384RSA = 0x0006; // SHA-384 with RSA Encryption (PKCS#1 v1.5)
471 static const P6UINT32 KMIP_SIG_SHA512RSA = 0x0007; // SHA-512 with RSA Encryption (PKCS#1 v1.5)
472 static const P6UINT32 KMIP_SIG_RSASSA = 0x0008; // RSASSA-PS (PKCS#1 v2.1)
473 static const P6UINT32 KMIP_SIG_DSASHA1 = 0x0009; // DSA with SHA-1
474 static const P6UINT32 KMIP_SIG_DSASHA224 = 0x000A; // DSA with SHA224
475 static const P6UINT32 KMIP_SIG_DSASHA256 = 0x000B; // DSA with SHA256
476 static const P6UINT32 KMIP_SIG_ECDSASHA1 = 0x000C; // ECDSA with SHA-1
477 static const P6UINT32 KMIP_SIG_ECDSASHA224 = 0x000D; // ECDSA with SHA224
478 static const P6UINT32 KMIP_SIG_ECDSASHA256 = 0x000E; // ECDSA with SHA256
479 static const P6UINT32 KMIP_SIG_ECDSASHA384 = 0x000F; // ECDSA with SHA384
480 static const P6UINT32 KMIP_SIG_ECDSASHA512 = 0x0010; // ECDSA with SHA512
481 static const P6UINT32 KMIP_SIG_SHA3_256RSA = 0x0011; // SHA3-256 with RSA Encryption (added KMIP 1.4)
482 static const P6UINT32 KMIP_SIG_SHA3_384RSA = 0x0012; // SHA3-384 with RSA Encryption
483 static const P6UINT32 KMIP_SIG_SHA3_512RSA = 0x0013; // SHA3-512 with RSA Encryption
484 // KMIP_Extensions 0x8XXXXXXX
485 
486 // Section 9.1.3.2.8 Split Key Method Enumeration
487 static const P6UINT32 KMIP_SPLITKEY_XOR = 0x0001;
488 static const P6UINT32 KMIP_SPLITKEY_GF2_16 = 0x0002; // Polynomial Sharing GF (2 power 16)
489 static const P6UINT32 KMIP_SPLITKEY_PRIME = 0x0003; // Polynomial Sharing Prime Field
490 static const P6UINT32 KMIP_SPLITKEY_GF2_8 = 0x0004; // Polynomial Sharing GF (2 power 8)
491 // KMIP_Extensions 0x8XXXXXXX
492 
493 // 9.1.3.2.9 Secret Data Type Enumeration
494 static const P6UINT32 KMIP_SECRET_PASSWORD = 0x0001;
495 static const P6UINT32 KMIP_SECRET_SEED = 0x0002;
496 // KMIP_Extensions 0x8XXXXXXX
497 
498 // -> Section 9.1.3.2.10 Opaque Data Type Enumeration - only has extensions
499 
500 // -> Section 9.1.3.2.11 Name Type Enumeration
501 static const P6UINT32 KMIP_NAME_TEXTSTR = 0x0001;
502 static const P6UINT32 KMIP_NAME_URI = 0x0002;
503 // KMIP_Extensions 0x8XXXXXXX
504 
505 // Section 9.1.3.2.12 Object Type Enumeration
506 static const P6UINT32 KMIP_OBJECT_CERTIFICATE = 0x0001;
507 static const P6UINT32 KMIP_OBJECT_SYMMETRICKEY = 0x0002;
508 static const P6UINT32 KMIP_OBJECT_PUBLICKEY = 0x0003;
509 static const P6UINT32 KMIP_OBJECT_PRIVATEKEY = 0x0004;
510 static const P6UINT32 KMIP_OBJECT_SPLITKEY = 0x0005;
511 static const P6UINT32 KMIP_OBJECT_TEMPLATE = 0x0006;
512 static const P6UINT32 KMIP_OBJECT_SECRETDATA = 0x0007;
513 static const P6UINT32 KMIP_OBJECT_OPAQUE = 0x0008;
514 static const P6UINT32 KMIP_OBJECT_PGPKEY = 0x0009;
515 // KMIP_Extensions 0x8XXXXXXX
516 
517 // Section 9.1.3.2.13 Cryptographic Algorithm Enumeration
518 static const P6UINT32 KMIP_DES = 0x0001;
519 static const P6UINT32 KMIP_3DES = 0x0002;
520 static const P6UINT32 KMIP_AES = 0x0003;
521 static const P6UINT32 KMIP_RSA = 0x0004;
522 static const P6UINT32 KMIP_DSA = 0x0005;
523 static const P6UINT32 KMIP_ECDSA = 0x0006;
524 static const P6UINT32 KMIP_HMAC_SHA1 = 0x0007;
525 static const P6UINT32 KMIP_HMAC_SHA224 = 0x0008;
526 static const P6UINT32 KMIP_HMAC_SHA256 = 0x0009;
527 static const P6UINT32 KMIP_HMAC_SHA384 = 0x000A;
528 static const P6UINT32 KMIP_HMAC_SHA512 = 0x000B;
529 static const P6UINT32 KMIP_HMAC_MD5 = 0x000C;
530 static const P6UINT32 KMIP_DH = 0x000D;
531 static const P6UINT32 KMIP_ECDH = 0x000E;
532 static const P6UINT32 KMIP_ECMQV = 0x000F;
533 static const P6UINT32 KMIP_BLOWFISH = 0x0010;
534 static const P6UINT32 KMIP_CAMELLIA = 0x0011;
535 static const P6UINT32 KMIP_CAST5 = 0x0012;
536 static const P6UINT32 KMIP_IDEA = 0x0013;
537 static const P6UINT32 KMIP_MARS = 0x0014;
538 static const P6UINT32 KMIP_RC2 = 0x0015;
539 static const P6UINT32 KMIP_RC4 = 0x0016;
540 static const P6UINT32 KMIP_RC5 = 0x0017;
541 static const P6UINT32 KMIP_SKIPJACK = 0x0018;
542 static const P6UINT32 KMIP_TWOFISH = 0x0019;
543 static const P6UINT32 KMIP_EC = 0x001A;
544 static const P6UINT32 KMIP_ONETIMEPAD = 0x001B; // added KMIP 1.3
545 static const P6UINT32 KMIP_CHACHA20 = 0x001C; // added KMIP 1.4
546 static const P6UINT32 KMIP_POLY1305 = 0x001D;
547 static const P6UINT32 KMIP_CHACHA20POLY1305 = 0x001E;
548 static const P6UINT32 KMIP_SHA3_224 = 0x001F;
549 static const P6UINT32 KMIP_SHA3_256 = 0x0020;
550 static const P6UINT32 KMIP_SHA3_384 = 0x0021;
551 static const P6UINT32 KMIP_SHA3_512 = 0x0022;
552 static const P6UINT32 KMIP_HMAC_SHA3_224 = 0x0023;
553 static const P6UINT32 KMIP_HMAC_SHA3_256 = 0x0024;
554 static const P6UINT32 KMIP_HMAC_SHA3_384 = 0x0025;
555 static const P6UINT32 KMIP_HMAC_SHA3_512 = 0x0026;
556 static const P6UINT32 KMIP_SHAKE_128 = 0x0027;
557 static const P6UINT32 KMIP_SHAKE_256 = 0x0028;
558 // KMIP_Extensions 0x8XXXXXXX
559 
560 // Section 9.1.3.2.14 Block Cipher Mode Enumeration
561 static const P6UINT32 KMIP_CBC = 0x0001;
562 static const P6UINT32 KMIP_ECB = 0x0002;
563 static const P6UINT32 KMIP_PCBC = 0x0003;
564 static const P6UINT32 KMIP_CFB = 0x0004;
565 static const P6UINT32 KMIP_OFB = 0x0005;
566 static const P6UINT32 KMIP_CTR = 0x0006;
567 static const P6UINT32 KMIP_CMAC = 0x0007;
568 static const P6UINT32 KMIP_CCM = 0x0008;
569 static const P6UINT32 KMIP_GCM = 0x0009;
570 static const P6UINT32 KMIP_CBC_MAC = 0x000A;
571 static const P6UINT32 KMIP_XTS = 0x000B;
572 static const P6UINT32 KMIP_AESKEYWRAP = 0x000C; // AESKeyWrapPadding
573 static const P6UINT32 KMIP_NISTKEYWRAP = 0x000D; //
574 static const P6UINT32 KMIP_AESKW = 0x000E; // X9.102
575 static const P6UINT32 KMIP_TDKW = 0x000F; // X9.102
576 static const P6UINT32 KMIP_AKW1 = 0x0010; // X9.102
577 static const P6UINT32 KMIP_AKW2 = 0x0011; // X9.102
578 static const P6UINT32 KMIP_AEAD = 0x0012;
579 // KMIP_Extensions 0x8XXXXXXX
580 
581 // Section 9.1.3.2.15 Padding Method Enumeration
582 static const P6UINT32 KMIP_PAD_NONE = 0x0001;
583 static const P6UINT32 KMIP_PAD_OAEP = 0x0002;
584 static const P6UINT32 KMIP_PAD_PKCS5 = 0x0003;
585 static const P6UINT32 KMIP_PAD_SSL3 = 0x0004;
586 static const P6UINT32 KMIP_PAD_ZEROS = 0x0005;
587 static const P6UINT32 KMIP_PAD_ANSI = 0x0006; // X9.23
588 static const P6UINT32 KMIP_PAD_ISO = 0x0007; // 10126
589 static const P6UINT32 KMIP_PAD_PKCS1 = 0x0008; // v1.5
590 static const P6UINT32 KMIP_PAD_X9_31 = 0x0009;
591 static const P6UINT32 KMIP_PAD_PSS = 0x000A;
592 // KMIP_Extensions 0x8XXXXXXX
593 
594 // Section 9.1.3.2.16 Hashing Algorithm Enumeration
595 static const P6UINT32 KMIP_MD2 = 0x0001;
596 static const P6UINT32 KMIP_MD4 = 0x0002;
597 static const P6UINT32 KMIP_MD5 = 0x0003;
598 static const P6UINT32 KMIP_SHA1 = 0x0004;
599 static const P6UINT32 KMIP_SHA224 = 0x0005;
600 static const P6UINT32 KMIP_SHA256 = 0x0006;
601 static const P6UINT32 KMIP_SHA384 = 0x0007;
602 static const P6UINT32 KMIP_SHA512 = 0x0008;
603 static const P6UINT32 KMIP_RIPEMD160 = 0x0009;
604 static const P6UINT32 KMIP_TIGER = 0x000A;
605 static const P6UINT32 KMIP_WHIRLPOOL = 0x000B;
606 static const P6UINT32 KMIP_SHA512_224 = 0x000C;
607 static const P6UINT32 KMIP_SHA512_256 = 0x000D;
608 static const P6UINT32 KMIP_HASH_SHA3_224 = 0x000E;
609 static const P6UINT32 KMIP_HASH_SHA3_256 = 0x000F;
610 static const P6UINT32 KMIP_HASH_SHA3_384 = 0x0010;
611 static const P6UINT32 KMIP_HASH_SHA3_512 = 0x0011;
612 // KMIP_Extensions 0x8XXXXXXX
613 
614 // Section 9.1.3.2.17 Key Role Type Enumeration
615 static const P6UINT32 KMIP_BDK = 0x0001;
616 static const P6UINT32 KMIP_CVK = 0x0002;
617 static const P6UINT32 KMIP_DEK = 0x0003;
618 static const P6UINT32 KMIP_MKAC = 0x0004;
619 static const P6UINT32 KMIP_MKSMC = 0x0005;
620 static const P6UINT32 KMIP_MKSMI = 0x0006;
621 static const P6UINT32 KMIP_MKDAC = 0x0007;
622 static const P6UINT32 KMIP_MKDN = 0x0008;
623 static const P6UINT32 KMIP_MKCP = 0x0009;
624 static const P6UINT32 KMIP_MKOTH = 0x000A;
625 static const P6UINT32 KMIP_KEK = 0x000B; // Key encrypting key
626 static const P6UINT32 KMIP_MAC16609 = 0x000C;
627 static const P6UINT32 KMIP_MAC97971 = 0x000D;
628 static const P6UINT32 KMIP_MAC97972 = 0x000E;
629 static const P6UINT32 KMIP_MAC97973 = 0x000F;
630 static const P6UINT32 KMIP_MAC97974 = 0x0010;
631 static const P6UINT32 KMIP_MAC97975 = 0x0011;
632 static const P6UINT32 KMIP_ZPK = 0x0012;
633 static const P6UINT32 KMIP_PVKIBM = 0x0013;
634 static const P6UINT32 KMIP_PVKPVV = 0x0014;
635 static const P6UINT32 KMIP_PVKOTH = 0x0015;
636 static const P6UINT32 KMIP_DUKPT = 0x0016;
637 static const P6UINT32 KMIP_IV = 0x0017;
638 static const P6UINT32 KMIP_TRKBK = 0x0018;
639 // KMIP_Extensions 0x8XXXXXXX
640 
641 // Section 9.1.3.2.18 State Enumeration
642 static const P6UINT32 KMIP_STATE_PREACTIVE = 0x0001;
643 static const P6UINT32 KMIP_STATE_ACTIVE = 0x0002;
644 static const P6UINT32 KMIP_STATE_DEACTIVATED = 0x0003;
645 static const P6UINT32 KMIP_STATE_COMPROMISED = 0x0004;
646 static const P6UINT32 KMIP_STATE_DESTROYED = 0x0005;
647 static const P6UINT32 KMIP_STATE_DESTORYCOMP = 0x0006; // Destroyed Compromised
648 // KMIP_Extensions 0x8XXXXXXX
649 
650 // Section 9.1.3.2.19 Revocation Reason Code Enumeration
651 static const P6UINT32 KMIP_REVOC_UNSPECIFIED = 0x0001;
652 static const P6UINT32 KMIP_REVOC_KEYCOMPROMISE = 0x0002;
653 static const P6UINT32 KMIP_REVOC_CACCOMPROMISE = 0x0003;
654 static const P6UINT32 KMIP_REVOC_AFFILCHANGED = 0x0004; // Affiliation Changed
655 static const P6UINT32 KMIP_REVOC_SUPERSEDED = 0x0005;
656 static const P6UINT32 KMIP_REVOC_CESSATION = 0x0006; // Cessation of Operation
657 static const P6UINT32 KMIP_REVOC_PRIVWITHDRAWN = 0x0007; // Privilege Withdrawn
658 // KMIP_Extensions 0x8XXXXXXX
659 
660 // Section 9.1.3.2.20 Link Type Enumeration
661 static const P6UINT32 KMIP_LINK_CERTIFICATE = 0x0101; // does not start at 0x0001
662 static const P6UINT32 KMIP_LINK_PUBLICKEY = 0x0102;
663 static const P6UINT32 KMIP_LINK_PRIVATEKEY = 0x0103;
664 static const P6UINT32 KMIP_LINK_DERIVATION = 0x0104; // Derivation Base Object Link
665 static const P6UINT32 KMIP_LINK_DERIVEDKEY = 0x0105;
666 static const P6UINT32 KMIP_LINK_REPLACEMENT = 0x0106; // Replacement Object Link
667 static const P6UINT32 KMIP_LINK_REPLACED = 0x0107; // Replaced Object Link
668 static const P6UINT32 KMIP_LINK_PARENT = 0x0108;
669 static const P6UINT32 KMIP_LINK_CHILD = 0x0109;
670 static const P6UINT32 KMIP_LINK_PREVIOUS = 0x010A;
671 static const P6UINT32 KMIP_LINK_NEXT = 0x010B;
672 static const P6UINT32 KMIP_LINK_PKCS12CERT = 0x010C; // PKCS#12 Certificaate Link
673 static const P6UINT32 KMIP_LINK_PKCS12PASSWORD = 0x010D; // PKCS#12 Password Link
674 // KMIP_Extensions 0x8XXXXXXX
675 
676 // Section 9.1.3.2.21 Derivation Method Enumeration
677 static const P6UINT32 KMIP_DERIVE_PBKDF2 = 0x0001;
678 static const P6UINT32 KMIP_DERIVE_HASH = 0x0002;
679 static const P6UINT32 KMIP_DERIVE_HMAC = 0x0003;
680 static const P6UINT32 KMIP_DERIVE_ENCRYPT = 0x0004;
681 static const P6UINT32 KMIP_DERIVE_NIST800108C = 0x0005;
682 static const P6UINT32 KMIP_DERIVE_NIST800108F = 0x0006;
683 static const P6UINT32 KMIP_DERIVE_NIST800108DPI = 0x0007;
684 static const P6UINT32 KMIP_DERIVE_ASYMMETRICKEY = 0x0008;
685 // KMIP_Extensions 0x8XXXXXXX
686 
687 // Section 9.1.3.2.22 Certificate Request Type Enumeration
688 static const P6UINT32 KMIP_CERTREQUEST_CRMF = 0x0001;
689 static const P6UINT32 KMIP_CERTREQUEST_PKCS10 = 0x0002;
690 static const P6UINT32 KMIP_CERTREQUEST_PEM = 0x0003;
691 static const P6UINT32 KMIP_CERTREQUEST_PGP = 0x0004; // deprecated in KMIP 1.2
692 // KMIP_Extensions 0x8XXXXXXX
693 
694 // Section 9.1.3.2.23 Validity Indicator Enumeration
695 static const P6UINT32 KMIP_VALIDITY_VALID = 0x0001;
696 static const P6UINT32 KMIP_VALIDITY_INVALID = 0x0002;
697 static const P6UINT32 KMIP_VALIDITY_UNKNOWN = 0x0003;
698 // KMIP_Extensions 0x8XXXXXXX
699 
700 // Section 9.1.2.24 Query Function Enumeration
701 static const P6UINT32 KMIP_QUERY_OPERATIIONS = 0x0001;
702 static const P6UINT32 KMIP_QUERY_OBJECTS = 0x0002;
703 static const P6UINT32 KMIP_QUERY_SERVERINFORMATION = 0x0003;
704 static const P6UINT32 KMIP_QUERY_APPNAMESPACES = 0x0004; // Query Application Namespaces
705 static const P6UINT32 KMIP_QUERY_EXTENSIONLIST = 0x0005;
706 static const P6UINT32 KMIP_QUERY_EXTENSIONMAP = 0x0006;
707 static const P6UINT32 KMIP_QUERY_ATTENSTATIONTYPES = 0x0007;
708 static const P6UINT32 KMIP_QUERY_RNGS = 0x0008; // added in KMIP 1.3
709 static const P6UINT32 KMIP_QUERY_VALIDATIONS = 0x0009;
710 static const P6UINT32 KMIP_QUERY_PROFILES = 0x000A;
711 static const P6UINT32 KMIP_QUERY_CAPABILITIES = 0x000B;
712 static const P6UINT32 KMIP_QUERY_REGMETHODS = 0x000C; // Query Client Registration Methods
713 // KMIP_Extensions 0x8XXXXXXX
714 
715 // Section 9.1.3.2.25 Cancellation Result Enumeration
716 static const P6UINT32 KMIP_CANCEL_CANCELED = 0x0001;
717 static const P6UINT32 KMIP_CANCEL_UNABLETOCANCEL = 0x0002;
718 static const P6UINT32 KMIP_CANCEL_COMPLETED = 0x0003;
719 static const P6UINT32 KMIP_CANCEL_FAILED = 0x0004;
720 static const P6UINT32 KMIP_CANCEL_UNAVAILABLE = 0x0005;
721 // KMIP_Extensions 0x8XXXXXXX
722 
723 // Section 9.1.3.2.26 Put Function Enumeration
724 static const P6UINT32 KMIP_PUT_NEW = 0x0001;
725 static const P6UINT32 KMIP_PUT_REPLACE = 0x0002;
726 // KMIP_Extensions 0x8XXXXXXX
727 
728 // Section 9.1.3.2.27 Operation Enumeration
729 static const P6UINT8 KMIP_OP_CREATE = 0x0001;
730 static const P6UINT8 KMIP_OP_CREATEKEYPAIR = 0x0002;
731 static const P6UINT8 KMIP_OP_REGISTER = 0x0003;
732 static const P6UINT8 KMIP_OP_REKEY = 0x0004;
733 static const P6UINT8 KMIP_OP_DERIVEKEY = 0x0005;
734 static const P6UINT8 KMIP_OP_CERTIFY = 0x0006;
735 static const P6UINT8 KMIP_OP_RECERTIFY = 0x0007;
736 static const P6UINT8 KMIP_OP_LOCATE = 0x0008;
737 static const P6UINT8 KMIP_OP_CHECK = 0x0009;
738 static const P6UINT8 KMIP_OP_GET = 0x000A;
739 static const P6UINT8 KMIP_OP_GETATTRIBUTES = 0x000B;
740 static const P6UINT8 KMIP_OP_GETATTRIBUTELIST = 0x000C;
741 static const P6UINT8 KMIP_OP_ADDATTRIBUTE = 0x000D;
742 static const P6UINT8 KMIP_OP_MODIFYATTRIBUTE = 0x000E;
743 static const P6UINT8 KMIP_OP_DELETEATTRIBUTE = 0x000F;
744 static const P6UINT8 KMIP_OP_OBTAINLEASE = 0x0010;
745 static const P6UINT8 KMIP_OP_GETUSAGEALLOC = 0x0011; // Get Usage Allocation
746 static const P6UINT8 KMIP_OP_ACTIVATE = 0x0012;
747 static const P6UINT8 KMIP_OP_REVOKE = 0x0013;
748 static const P6UINT8 KMIP_OP_DESTROY = 0x0014;
749 static const P6UINT8 KMIP_OP_ARCHIVE = 0x0015;
750 static const P6UINT8 KMIP_OP_RECOVER = 0x0016;
751 static const P6UINT8 KMIP_OP_VALIDATE = 0x0017;
752 static const P6UINT8 KMIP_OP_QUERY = 0x0018;
753 static const P6UINT8 KMIP_OP_CANCEL = 0x0019;
754 static const P6UINT8 KMIP_OP_POLL = 0x001A;
755 static const P6UINT8 KMIP_OP_NOTIFY = 0x001B;
756 static const P6UINT8 KMIP_OP_PUT = 0x001C;
757 static const P6UINT8 KMIP_OP_REKEYKEYPAIR = 0x001D;
758 static const P6UINT8 KMIP_OP_DISCOVERVERSIONS = 0x001E;
759 static const P6UINT8 KMIP_OP_ENCRYPT = 0x001F;
760 static const P6UINT8 KMIP_OP_DECRYPT = 0x0020;
761 static const P6UINT8 KMIP_OP_SIGN = 0x0021;
762 static const P6UINT8 KMIP_OP_SIGNATUREVERIFY = 0x0022;
763 static const P6UINT8 KMIP_OP_MAC = 0x0023;
764 static const P6UINT8 KMIP_OP_MACVERIFY = 0x0024;
765 static const P6UINT8 KMIP_OP_RNGRETRIEVE = 0x0025;
766 static const P6UINT8 KMIP_OP_RNGSEED = 0x0026;
767 static const P6UINT8 KMIP_OP_HASH = 0x0027;
768 static const P6UINT8 KMIP_OP_CREATESPLITKEY = 0x0028;
769 static const P6UINT8 KMIP_OP_JOINSPLITKEY = 0x0029;
770 static const P6UINT8 KMIP_OP_IMPORT = 0x002A;
771 static const P6UINT8 KMIP_OP_EXPORT = 0x002B;
772 // KMIP_Extensions 0x8XXXXXXX
773 
774 // Section 9.1.3.2.28 Result Status Enumeration
775 static const P6UINT32 KMIP_RESULT_SUCCESS = 0x0000;
776 static const P6UINT32 KMIP_RESULT_FAILED = 0x0001; // Operation Failed
777 static const P6UINT32 KMIP_RESULT_PENDING = 0x0002; // Operation Pending
778 static const P6UINT32 KMIP_RESULT_UNDONE = 0x0003; // Operation Undone
779 // KMIP_Extensions 0x8XXXXXXX
780 
781 // Section 9.1.3.2.29 Result Reason Enumeration
782 static const P6UINT32 KMIP_ITEN_NOTFOUND = 0x0001;
783 static const P6UINT32 KMIP_RESPONSE_TOOLARGE = 0x0002;
784 static const P6UINT32 KMIP_AUTHENTICATION_FAILURE = 0x0003; // Authentication Not Successful
785 static const P6UINT32 KMIP_INVALID_MESSAGE = 0x0004;
786 static const P6UINT32 KMIP_OPREATION_NOTSUPPORTED = 0x0005;
787 static const P6UINT32 KMIP_MISSING_DATA = 0x0006;
788 static const P6UINT32 KMIP_INVALID_FIELD = 0x0007;
789 static const P6UINT32 KMIP_FEATURE_NOT_SUPPORTED = 0x0008;
790 static const P6UINT32 KMIP_OPERATION_CANCELED = 0x0009; // Operation Canceled By Requester
791 static const P6UINT32 KMIP_CRYPTOGRAPHIC_FAILURE = 0x000A;
792 static const P6UINT32 KMIP_ILLEGAL_OPERATION = 0x000B;
793 static const P6UINT32 KMIP_PERMISSION_DENIED = 0x000C;
794 static const P6UINT32 KMIP_OBJECT_ARCHIVED = 0x000D;
795 static const P6UINT32 KMIP_INDEX_OUTOFBOUNDS = 0x000E;
796 static const P6UINT32 KMIP_NAMESPACE_NOTSUPPORTED = 0x000F; // Application Namespace Not Supported
797 static const P6UINT32 KMIP_KEYFORMAT_NOTSUPPORTED = 0x0010; // Key Format Type Not Supported
798 static const P6UINT32 KMIP_KEYCOMPRES_NOTSUPPORTED = 0x0011; // Key Compression Type Not Supported
799 static const P6UINT32 KMIP_ENCODINGOPTIONERROR = 0x0012;
800 static const P6UINT32 KMIP_KEYVALUE_NOTPRESENT = 0x0013;
801 static const P6UINT32 KMIP_ATTESTATION_REQUIRED = 0x0014;
802 static const P6UINT32 KMIP_ATTESTATION_FAILED = 0x0015;
803 static const P6UINT32 KMIP_SENSITIVE = 0x0016;
804 static const P6UINT32 KMIP_NOT_EXTRACTABLE = 0x0017;
805 static const P6UINT32 KMIP_OBJECT_ALREADY_EXISTS = 0x0018;
806 static const P6UINT32 KMIP_GENERAL_FAILURE = 0x0100;
807 // KMIP_Extensions 0x8XXXXXXX
808 
809 // Section 9.1.3.2.30 Batch Error Continuation Option Enumeration
810 static const P6UINT32 KMIP_BATCHOPTION_CONTINUE = 0x0001;
811 static const P6UINT32 KMIP_BATCHOPTION_STOP = 0x0002;
812 static const P6UINT32 KMIP_BATCHOPTION_UNDO = 0x0003;
813 // KMIP_Extensions 0x8XXXXXXX
814 
815 // Section 9.1.3.2.31 Usage Limits Unit Enumeration
816 static const P6UINT32 KMIP_USAGE_BYTE = 0x0001;
817 static const P6UINT32 KMIP_USAGE_OBJECT = 0x0002;
818 // KMIP_Extensions 0x8XXXXXXX
819 
820 // Section 9.1.3.2.32 Encoding Option Enumeration
821 static const P6UINT32 KMIP_ENCODING_NO = 0x0001;
822 static const P6UINT32 KMIP_ENCODING_TTLV = 0x0002;
823 // KMIP_Extensions 0x8XXXXXXX
824 
825 // Section 9.1.3.2.33 Object Group Member Enumeration
826 static const P6UINT32 KMIP_GROUP_MEMBER_FRESH = 0x0001;
827 static const P6UINT32 KMIP_GROUP_MEMBER_DEFAULT = 0x0002;
828 // KMIP_Extensions 0x8XXXXXXX
829 
830 // Section 9.1.3.2.34 Alternative Name Type Enumeration
831 static const P6UINT32 KMIP_ALTNAME_TEXTSTRING = 0x0001; // Uninterpreted Text String
832 static const P6UINT32 KMIP_ALTNAME_URI = 0x0002;
833 static const P6UINT32 KMIP_ALTNAME_SERIAL_NUMBER = 0x0003; // Object Serial Number
834 static const P6UINT32 KMIP_ALTNAME_EMAILADDRESS = 0x0004;
835 static const P6UINT32 KMIP_ALTNAME_DNSNAME = 0x0005;
836 static const P6UINT32 KMIP_ALTNAME_X500DN = 0x0006; // X.500 Distinguished Name
837 static const P6UINT32 KMIP_ALTNAME_IPADDRESS = 0x0007;
838 // KMIP_Extensions 0x8XXXXXXX
839 
840 // Section 9.1.3.2.35 Key Value Location Type (KVLT) Enumeration
841 static const P6UINT32 KMIP_KVLT_TEXTSTRING = 0x0001; // Uninterpreted Text String
842 static const P6UINT32 KMIP_KVLT_URI = 0x0002;
843 // KMIP_Extensions 0x8XXXXXXX
844 
845 // Section 9.1.3.2.36 Attestation Type Enumeration
846 static const P6UINT32 KMIP_ATTEST_TPM_QUOTE = 0x0001;
847 static const P6UINT32 KMIP_ATTEST_TCG_INTEGRITY = 0x0002; // Attestation TCG Integrity Report
848 static const P6UINT32 KMIP_ATTEST_SAML_ASSERTION = 0x0003;
849 // KMIP_Extensions 0x8XXXXXXX
850 
851 // Section 9.1.3.2.37 RNG Algorithm Enumeration
852 static const P6UINT32 KMIP_RNGALG_UNSPECIFIED = 0x0001; // added KMIP 1.3
853 static const P6UINT32 KMIP_RNGALG_FIPS186_2 = 0x0002;
854 static const P6UINT32 KMIP_RNGALG_DRBG = 0x0003;
855 static const P6UINT32 KMIP_RNGALG_NRBG = 0x0004;
856 static const P6UINT32 KMIP_RNGALG_ANSI_X931 = 0x0005; // ANSI X9.31
857 static const P6UINT32 KMIP_RNGALG_ANSI_X962 = 0x0006; // ANSI X9.62
858 // KMIP_Extensions 0x8XXXXXXX
859 
860 // Section 9.1.3.2.38 DRBG Algorithm Enumeration
861 static const P6UINT32 KMIP_DRBGALG_UNSPECIFIED = 0x0001; // added KMIP 1.3
862 static const P6UINT32 KMIP_DRBGALG_DUALEC = 0x0002;
863 static const P6UINT32 KMIP_DRBGALG_HASH = 0x0003;
864 static const P6UINT32 KMIP_DRBGALG_HMAC = 0x0004;
865 static const P6UINT32 KMIP_DRBGALG_CTR = 0x0005;
866 // KMIP_Extensions 0x8XXXXXXX
867 
868 // Section 9.1.3.2.39 FIPS186 Variation Enumeration
869 static const P6UINT32 KMIP_FIPS186_UNSPECIFIED = 0x0001; // added KMIP 1.3
870 static const P6UINT32 KMIP_FIPS186_GPXORIGINAL = 0x0002;
871 static const P6UINT32 KMIP_FIPS186_GPXCHANGENOTICE = 0x0003;
872 static const P6UINT32 KMIP_FIPS186_XORIGINAL = 0x0004;
873 static const P6UINT32 KMIP_FIPS186_XCHANGENOTICE = 0x0005;
874 static const P6UINT32 KMIP_FIPS186_KORIGINAL = 0x0006;
875 static const P6UINT32 KMIP_FIPS186_KCHANGENOTICE = 0x0007;
876 // KMIP_Extensions 0x8XXXXXXX
877 
878 // Section 9.1.3.2.40 Validation Authority Type Enumeration
879 static const P6UINT32 KMIP_VALAUTH_UNSPECIFIED = 0x0001; // added KMIP 1.3
880 static const P6UINT32 KMIP_VALAUTH_NISTCMVP = 0x0002;
881 static const P6UINT32 KMIP_VALAUTH_COMMONCRITERIA = 0x0003;
882 // KMIP_Extensions 0x8XXXXXXX
883 
884 // Section 9.1.3.2.41 Validation Type Enumeration
885 static const P6UINT32 KMIP_VALTYPE_UNSPECIFIED = 0x0001; // added KMIP 1.3
886 static const P6UINT32 KMIP_VALTYPE_HARDWARE = 0x0002;
887 static const P6UINT32 KMIP_VALTYPE_SOFTWARE = 0x0003;
888 static const P6UINT32 KMIP_VALTYPE_FIRMWARE = 0x0004;
889 static const P6UINT32 KMIP_VALTYPE_HYBRID = 0x0005;
890 // KMIP_Extensions 0x8XXXXXXX
891 
892 // Section 9.1.3.2.42 Profile Name Enumeration
893 // see file: p6kmipprofiles.h
894 
895 // Section 9.1.3.2.43 Unwrap Mode Enumeration
896 static const P6UINT32 KMIP_UNWRAPMODE_UNSPECIFIED = 0x0001; // added KMIP 1.3
897 static const P6UINT32 KMIP_UNWRAPMODE_PROCESSED = 0x0002;
898 static const P6UINT32 KMIP_UNWRAPMODE_NOTPROCESSED = 0x0003;
899 // KMIP_Extensions 0x8XXXXXXX
900 
901 // Section 9.1.3.2.44 Destroy Action Enumeration
902 static const P6UINT32 KMIP_ONDESTROY_UNSPECIFIED = 0x0001; // added KMIP 1.3
903 static const P6UINT32 KMIP_ONDESTROY_KEYMATERIAL_DELETED = 0x0002;
904 static const P6UINT32 KMIP_ONDESTROY_KEYMATERIAL_SHREDDED = 0x0003;
905 static const P6UINT32 KMIP_ONDESTROY_METADATA_DELETED = 0x0004;
906 static const P6UINT32 KMIP_ONDESTROY_METADATA_SHREDDED = 0x0005;
907 static const P6UINT32 KMIP_ONDESTROY_DELETED = 0x0006;
908 static const P6UINT32 KMIP_ONDESTROY_SHREDDED = 0x0007;
909 // KMIP_Extensions 0x8XXXXXXX
910 
911 // Section 9.1.3.2.45 Shredding Algorithm Enumeration
912 static const P6UINT32 KMIP_SHREDALG_UNSPECIFIED = 0x0001; // added KMIP 1.3
913 static const P6UINT32 KMIP_SHREDALG_CRYPTOGRAPHIC = 0x0002;
914 static const P6UINT32 KMIP_SHREDALG_UNSUPPORTED = 0x0003;
915 // KMIP_Extensions 0x8XXXXXXX
916 
917 // Section 9.1.3.2.46 RNG Mode Enumeration
918 static const P6UINT32 KMIP_RNGMODE_UNSPECIFIED = 0x0001; // added KMIP 1.3
919 static const P6UINT32 KMIP_RNGMODE_SHARED = 0x0002; // Shared Instantiation
920 static const P6UINT32 KMIP_RNGMODE_NONSHARED = 0x0003; // Non-Shared Instantation
921 // KMIP_Extensions 0x8XXXXXXX
922 
923 // Section 9.1.3.2.47 Client Registration Methods Enumeration
924 static const P6UINT32 KMIP_REGMETHOD_UNSPECIFIED = 0x0001; // added KMIP 1.3
925 static const P6UINT32 KMIP_REGMETHOD_SERVER_PREGEN = 0x0002; // Server Pre-Generated
926 static const P6UINT32 KMIP_REGMETHOD_SERVER_ONDEMAND = 0x0003; // Server On-Demaind
927 static const P6UINT32 KMIP_REGMETHOD_CLIENT_GEN = 0x0004; // Client Generated
928 static const P6UINT32 KMIP_REGMETHOD_CLIENT_REG = 0x0005; // Client Registered
929 // KMIP_Extensions 0x8XXXXXXX
930 
931 // Section 9.1.3.2.48 Key Wrap Type
932 static const P6UINT32 KMIP_WRAPTYPE_NOTWRAPPED = 0x0001; // added KMIP 1.4
933 static const P6UINT32 KMIP_WRAPTYPE_ASREGISTERED = 0x0002; //
934 // KMIP_Extensions 0x8XXXXXXX
935 
936 // Section 9.1.3.2.49 Mask Generator Enumeration
937 static const P6UINT32 KMIP_MASKGENERATOR_MGF1 = 0x0001; // added KMIP 1.4
938 // KMIP_Extensions 0x8XXXXXXX
939 
940 
941 // Section 9.1.3.3.1 Cryptographic Usage Mask (Bit mask)
942 static const P6UINT32 KMIP_USE_SIGN = 0x00000001;
943 static const P6UINT32 KMIP_USE_VERIFY = 0x00000002;
944 static const P6UINT32 KMIP_USE_ENCRYPT = 0x00000004;
945 static const P6UINT32 KMIP_USE_DECRYPT = 0x00000008;
946 static const P6UINT32 KMIP_USE_WRAPKEY = 0x00000010;
947 static const P6UINT32 KMIP_USE_UNWRAPKEY = 0x00000020;
948 static const P6UINT32 KMIP_USE_EXPORT = 0x00000040;
949 static const P6UINT32 KMIP_USE_MACGEN = 0x00000080; // MAC Generate
950 static const P6UINT32 KMIP_USE_MACVERIFY = 0x00000100; //
951 static const P6UINT32 KMIP_USE_DERIVEKEY = 0x00000200; //
952 static const P6UINT32 KMIP_USE_CONTENT = 0x00000400; // Content Commitment (Non Repudiation)
953 static const P6UINT32 KMIP_USE_KEYAGREEMENT = 0x00000800; //
954 static const P6UINT32 KMIP_USE_CERTSIGN = 0x00001000; // Certificate Sign
955 static const P6UINT32 KMIP_USE_CRLSIGN = 0x00002000; //
956 static const P6UINT32 KMIP_USE_GENCGRAM = 0x00004000; // Generate Cryptogram
957 static const P6UINT32 KMIP_USE_VALIDATECGRAM = 0x00008000; // Validate Cryptogram
958 static const P6UINT32 KMIP_USE_TRANSLATE_ENCRYPT = 0x00010000;
959 static const P6UINT32 KMIP_USE_TRANSLATE_DECRYPT = 0x00020000;
960 static const P6UINT32 KMIP_USE_TRANSLATE_WRAP = 0x00040000;
961 static const P6UINT32 KMIP_USE_TRANSLATE_UNWRAP = 0x00080000;
962 // KMIP_Extensions 0xXXX00000
963 
964 // Section 9.1.3.3.2 Storage Status (Bit) Mask
965 static const P6UINT32 KMIP_STORAGE_ONLINE = 0x00000001;
966 static const P6UINT32 KMIP_STORAGE_ARCHIVAL = 0x00000002;
967 // KMIP_Extensions 0xXXXXXXX0
968 
969 
994 static const P6UINT32 KMIP_CMP_HTTPSPOST = 0x00000001;
995 static const P6UINT32 KMIP_CMP_MSGXML = 0x00000002;
996 static const P6UINT32 KMIP_CMP_MSGJSON = 0x00000004;
997 static const P6UINT32 KMIP_CMP_DESPARITY = 0x00000008;
998 static const P6UINT32 KMIP_CMP_TTLV = 0x00000010;
999 static const P6UINT32 KMIP_CMP_JSON_SOLIDUS = 0x00000020;
1000 static const P6UINT32 KMIP_CMP_OFF_MULTIWRITE = 0x00000040;
1001 
1002 
1003 #ifdef __cplusplus
1004 } // extern "C"
1005 } // namespace
1006 #endif
1007 
1008 
1009 #endif
1010 
uint32_t P6UINT32
Definition: p6types.h:77
unsigned char P6UINT8
Definition: p6types.h:71
P6R API type definitions and macros.
Constant KMIP definitions for profiles.