21 #ifndef P6KMIPENCODER_H__
22 #define P6KMIPENCODER_H__ 1
275 static const P6UINT8 KMIP_ATTRIB_UNIQUEIDENTIFIER = 1;
276 static const P6UINT8 KMIP_ATTRIB_NAME = 2;
277 static const P6UINT8 KMIP_ATTRIB_OBJECTTYPE = 3;
278 static const P6UINT8 KMIP_ATTRIB_CRYPTOALGORITHM = 4;
279 static const P6UINT8 KMIP_ATTRIB_CRYPTOLENGTH = 5;
280 static const P6UINT8 KMIP_ATTRIB_CRYPTOPARAMS = 6;
281 static const P6UINT8 KMIP_ATTRIB_CRYPTODOMAINPARAMS = 7;
282 static const P6UINT8 KMIP_ATTRIB_CERTIFICATETYPE = 8;
283 static const P6UINT8 KMIP_ATTRIB_CERTIFICATELENGTH = 9;
284 static const P6UINT8 KMIP_ATTRIB_X509CERTIFICATEIDENTIFIER = 10;
285 static const P6UINT8 KMIP_ATTRIB_X509CERTIFICATESUBJECT = 11;
286 static const P6UINT8 KMIP_ATTRIB_X509CERTIFICATEISSUER = 12;
287 static const P6UINT8 KMIP_ATTRIB_CERTIFICATEIDENTIFIER = 13;
288 static const P6UINT8 KMIP_ATTRIB_CERTIFICATESUBJECT = 14;
289 static const P6UINT8 KMIP_ATTRIB_CERTIFICATEISSUER = 15;
290 static const P6UINT8 KMIP_ATTRIB_DIGITALSIGALG = 16;
291 static const P6UINT8 KMIP_ATTRIB_DIGEST = 17;
292 static const P6UINT8 KMIP_ATTRIB_OPERATIONPOLICYNAME = 18;
293 static const P6UINT8 KMIP_ATTRIB_CRYPTOUSAGEMASK = 19;
294 static const P6UINT8 KMIP_ATTRIB_LEASETIME = 20;
295 static const P6UINT8 KMIP_ATTRIB_USAGELIMITS = 21;
296 static const P6UINT8 KMIP_ATTRIB_STATE = 22;
297 static const P6UINT8 KMIP_ATTRIB_INITIALDATE = 23;
298 static const P6UINT8 KMIP_ATTRIB_ACTIVATIONDATE = 24;
299 static const P6UINT8 KMIP_ATTRIB_PROCESSSTARTDATE = 25;
300 static const P6UINT8 KMIP_ATTRIB_PROTECTSTOPDATE = 26;
301 static const P6UINT8 KMIP_ATTRIB_DEACTIVATIONDATE = 27;
302 static const P6UINT8 KMIP_ATTRIB_DESTROYDATE = 28;
303 static const P6UINT8 KMIP_ATTRIB_COMPROMISEOCCURANCEDATE = 29;
304 static const P6UINT8 KMIP_ATTRIB_COMPROMISEDATE = 30;
305 static const P6UINT8 KMIP_ATTRIB_REVOCATION = 31;
306 static const P6UINT8 KMIP_ATTRIB_ARCHIVEDATE = 32;
307 static const P6UINT8 KMIP_ATTRIB_OBJECTGROUP = 33;
308 static const P6UINT8 KMIP_ATTRIB_FRESH = 34;
309 static const P6UINT8 KMIP_ATTRIB_LINK = 35;
310 static const P6UINT8 KMIP_ATTRIB_APPLICATIONINFO = 36;
311 static const P6UINT8 KMIP_ATTRIB_CONTACTINFORMATION = 37;
312 static const P6UINT8 KMIP_ATTRIB_LASTCHANGEDATE = 38;
313 static const P6UINT8 KMIP_ATTRIB_CUSTOM = 39;
314 static const P6UINT8 KMIP_ATTRIB_ALTERNATIVENAME = 40;
315 static const P6UINT8 KMIP_ATTRIB_KEYVALUEPRESENT = 41;
316 static const P6UINT8 KMIP_ATTRIB_KEYVALELOCATION = 42;
317 static const P6UINT8 KMIP_ATTRIB_ORIGCREATIONDATE = 43;
318 static const P6UINT8 KMIP_ATTRIB_EXTENSION = 44;
319 static const P6UINT8 KMIP_ATTRIB_NOVALUE = 45;
320 static const P6UINT8 KMIP_ATTRIB_RNG = 46;
685 static const P6UINT8 KMIP_STREAM_INITIAL = 1;
686 static const P6UINT8 KMIP_STREAM_UPDATE = 2;
687 static const P6UINT8 KMIP_STREAM_FINAL = 3;
1032 static const P6KMIPENCODERFLAGS P6KMIPENCODER_NOFLAGS = 0x00000000;
1033 static const P6KMIPENCODERFLAGS P6KMIPENCODER_TRACEON = 0x00000001;
1045 #define INTERFACE p6IKMIPRequest
2335 #define IF_p6IKMIPRequest {0xb972a9bf,0xf0c,0x4f40,{0x85,0x91,0xcb,0x6d,0xdf,0x80,0x79,0x90}}
2352 #define INTERFACE p6IKMIPRequest2
3691 #define IF_p6IKMIPRequest2 {0x2e3a3a14,0xbad4,0x4399,{0x97,0xca,0xd,0x91,0x58,0x34,0x84,0x6d}}
3705 #define INTERFACE p6IKMIPResponse
4509 #define IF_p6IKMIPResponse {0xffb702bb,0x8ff4,0x423e,{0x9e,0x4d,0xa0,0xe8,0xd0,0x8b,0x42,0x33}}
4549 static const P6KMIPVERSION P6KMIP_VERSION_10 = 0;
4550 static const P6KMIPVERSION P6KMIP_VERSION_11 = 1;
4551 static const P6KMIPVERSION P6KMIP_VERSION_12 = 2;
4552 static const P6KMIPVERSION P6KMIP_VERSION_13 = 3;
4567 #define INTERFACE p6IKMIPEncoder
4604 #define IF_p6IKMIPEncoder {0x9d517a85,0xbc81,0x4bf8,{0xb2,0xfd,0xfb,0x67,0x9a,0x9b,0xc9,0xa3}}
4607 #define COMP_p6KMIPEncoder {0x7e0bab5e,0xb69f,0x4bcd,{0x8c,0xa1,0x9d,0x40,0xec,0xc,0x44,0xd9}}
P6KMIP_X509CERTNAME attribute.
P6KMIP_CERTNAME attribute.
P6KMIP_USAGELIMITS attribute.
P6BOOL * pAttestationIndicator
P6KMIP_NAME alternativeName
P6TIME originalCreationDate
P6INT32 predictionResistance
A convience structure to pass around a narrow string along with its length.
P6UINT32 FIPS186Variation
P6KMIP_CRYPTOPARAMS * pParams
This interface provides key metadata infrormation and key access.
P6KMIP_CERTID certificateIdentifier
P6KMIP_ATTRIBUTE * pAttributeList
P6KMIP_CAPABILITIES * pCapabilities
P6NCSTR operationPolicyName
P6KMIP_REVOCATION attribute.
Constant KMIP definitions.
This interface is used to create / encode the construction of a KMIP message as defined in Key Manage...
P6KMIP_REVOCATION revocation
unsigned char P6BOOL
Boolean type.
P6UINT32 publicKeyEncoding
This factory interface is responsible for creating and managing memory pooled Io Buffers (p6IIoBuffer...
P6UINT32 * pInitialCounterValue
P6NCSTR distinguishedName
P6UINT32 symmetricKeyEncoding
P6KMIP_CRYPTOPARAMS params
P6KMIP_RNGPARAMS randomNumberGenerator
P6KMIP_CRYPTOPARAMS attribute.
P6KMIP_CERTNAME certificateSubject
P6UINT32 * pAttestationTypes
P6UINT32 shreddingAlgorithm
P6UINT32 * pInvocationFieldLength
P6UINT32 digitalSignatureAlg
Interface definition for Diffe-Hellman Key Exchange References: 1) RFC 4253, SSH Transport Layer Prot...
P6UINT32 hashingAlgorithm
P6BOOL * pBatchOrderOption
The base interface all [p6]COM components must derive from and implement.
P6KMIP_KEYWRAPPING * pWrapInfo
P6KMIP_APPLICATION applicationInfo
P6KMIP_APPLICATION * pNamespaces
P6KMIP_X509CERTID attribute.
P6UINT32 privateKeyEncoding
P6KMIP_CRYPTOPARAMS * pParams
P6UINT32 * pAttestationTypes
P6UINT32 recommendedCurve
P6KMIP_ATTRIBUTE * pAttributeList
Interface definition for X509 V3 Certificates.
P6NCSTR replacedIdentifier
P6INT32 certificateLength
P6KMIP_EXTENSION * pExtension
P6NCSTR * pAttributeNames
P6KMIP_PROFILEINFO attribute.
P6UINT32 P6KMIPVERSION
P6KMIPVERSION.
P6KMIP_NAME keyValueLocation
P6KMIP_CREDENTIAL * pCredential
This component provides the basics of the key exchange calculates used in the Diffe-Hellman key excha...
P6KMIP_KEYWRAPPING * pWrapInfo
This interface is used to create / encode the construction of a KMIP request message as defined in Ke...
P6BCSTR distinguishedName
This interface allows the caller to access parts of an X509 V3 certificate for use in protocols and i...
P6KMIP_ATTRIBUTE * pAttributeList
P6KMIP_PROFILEINFO * pProfiles
P6KMIP_CERTNAME certificateIssuer
P6UINT32 cryptographicAlg
P6KMIP_XATTRIB attribute.
P6NCSTR contactInformation
P6KMIP_SETVALIDATION * pValidations
#define P6DECLCOMMETHOD(method)
P6KMIP_USAGELIMITS usageLimits
P6INT64 P6TIME
The wallclock time represented as the number of microseconds since midnight January 1 1970 UTC...
P6KMIP_TEMPLATEATTRIBUTE.
P6KMIP_DOMAINPARAMS dParams
P6UINT32 P6KMIPENCODERFLAGS
P6KMIPENCODERFLAGS.
P6KMIP_X509CERTNAME x509certificateIssuer
P6KMIP_APPLICATION attribute.
P6KMIP_CRYPTOPARAMS cParams
P6KMIP_CRYPTOPARAMS params
P6UINT32 * pFixedFieldLength
P6KMIP_ATTESTATION attestation
P6NCSTR * pUniqueIdentifers
P6KMIP_ATTRIBUTE * pAttributeList
Interfaces for wallclock and interval time.
P6UINT32 * pMaxResponseSize
P6R_VENDOR_SLOT_INFO * pExtension
P6BOOL * pAsynchIndicator
P6UINT32 * pRegistrationMethods
P6KMIP_X509CERTNAME x509certificateSubject
P6UINT32 * pCounterLength
P6KMIP_X509CERTID x509certificateIdentifier
P6UINT32 * pBatchErrorOption
This interface is used to create / encode the construction of a KMIP request message as defined in Ke...
This interface is used to create / encode the construction of a KMIP response message as defined in K...
#define P6DECLAREIF_(iface, baseif)
P6R Cryptographic key interface definitions.