10 #ifndef P6KEYSTORE_H__
11 #define P6KEYSTORE_H__ 1
38 static const P6KEYSTOREFLAGS P6KEYSTORE_NOFLAGS = 0x00000000;
39 static const P6KEYSTOREFLAGS P6KEYSTORE_RECOVERBADSIG = 0x00000001;
40 static const P6KEYSTOREFLAGS P6KEYSTORE_NOLOADMETA = 0x00000002;
67 #define P6KSMAXNAMESPACE 500
68 #define P6KSMAXNAME 500
69 #define P6KSMAXLINKTYPE 300
70 #define P6KSMAXLINKMETA 300
71 #define P6KSMAXATTRIBNAME 300
72 #define P6KSMAXATTRIBSTR 3000
73 #define P6KSMAXLOCATION 3000
74 #define P6KSMAXLABEL 500
176 } P6KEYSTORE_ATTRIBUTE;
186 #define INTERFACE p6IEnumKeystore
217 #define IF_p6IEnumKeystore {0x2fea7c69,0xc0cf,0x4a80,{0x84,0x2f,0x1,0x97,0x4b,0x79,0xeb,0xda}}
226 #define INTERFACE p6IEnumKeystoreAttrib
257 #define IF_p6IEnumKeystoreAttrib {0x2a52d3f3,0xf42c,0x4a0b,{0xae,0x85,0xb0,0xaa,0xcc,0x82,0xb4,0xbf}}
267 #define INTERFACE p6IKeystoreQuery
551 #define IF_p6IKeystoreQuery {0xb3541c2e,0x703e,0x416d,{0xb0,0xcd,0x30,0x35,0xa7,0xb7,0x60,0x98}}
564 #define INTERFACE p6IKeystoreInit
669 #define IF_p6IKeystoreInit {0xCE121684,0x4E87,0x63FD,{0xBF,0xA6,0xAF,0x86,0xBE,0x5C,0x6D,0xA5}}
688 #define INTERFACE p6IKeystore
1238 #define IF_p6IKeystore {0x6ecb5d85,0x2751,0x49ad,{0x99,0xda,0x2a,0xa1,0x73,0xfc,0x27,0x37}}
1241 #define COMP_p6Keystore {0xc65cdff1,0x4e4a,0x4bba,{0x9e,0x38,0x12,0x73,0xc8,0x89,0x5e,0xf}}
1251 #define INTERFACE p6IKeystoreQuery2
1612 #define IF_p6IKeystoreQuery2 {0x319939ea,0xc0f5,0x4ad1,{0xb4,0x1,0xd1,0xef,0x9,0xaa,0x18,0x2c}}
1623 #define INTERFACE p6IKeystoreQuery3
2003 #define IF_p6IKeystoreQuery3 {0x73fef932,0x9f15,0x4d9f,{0xb8,0x83,0xf4,0xc1,0x6c,0xe4,0x8a,0xb9}}
2024 #define INTERFACE p6IKeystore2
2662 #define IF_p6IKeystore2 {0x8b158122,0x6543,0x45c3,{0xa8,0x4e,0xb2,0x74,0x4,0x5b,0xac,0x9c}}
2674 #define INTERFACE p6IKeystore3
3317 #define IF_p6IKeystore3 {0x0FF257BE,0x43BD,0x41D2,{0x7E,0xC5,0x51,0x62,0x1C,0x8C,0xC4,0x8D}}
3330 #define INTERFACE p6IKeystore4
4071 #define IF_p6IKeystore4 {0x7dd7bc7f,0x6ec3,0x4e26,{0xb8,0xf4,0x1b,0x16,0x88,0x64,0x4a,0xc0}}
4086 #define INTERFACE p6IKeystore5
4940 #define IF_p6IKeystore5 {0x60b74180,0x2c12,0x4d08,{0xbd,0x9f,0x79,0xe7,0x8b,0x94,0xa4,0x4c}}
4951 #define INTERFACE p6IKeystoreComplexQuery
4975 #define IF_p6IKeystoreComplexQuery {0x165c1e5e,0x340f,0x4d0a,{0xb7,0xf1,0xf2,0xf5,0x2e,0x9a,0xf3,0xc}}
4994 #define INTERFACE p6IKeystoreSSL
5258 #define IF_p6IKeystoreSSL {0xCAFAF35E,0xF45D,0x4D4A,{0x85,0xD0,0xE3,0x23,0xA9,0x99,0xFC,0x55}}
5269 #define INTERFACE p6IKeystoreSSL2
5799 #define IF_p6IKeystoreSSL2 {0x4550F136,0x49B3,0x6FA0,{0x0B,0x55,0xB7,0x97,0x69,0x9F,0x15,0x39}}
5807 #define P6_KEYSTORE_SERVICE_INTERFACE "p6r.com.p6IKeystore.Global"
P6SIGNHMAC
Supported HMAC algorthms for signing:
<div class="p6box"> This interface has been depricated in favor of p6IKeystore3.
Cryptography component definitions.
This interface provides key metadata infrormation and key access.
P6KEYSTORE_TYPE sourceType
This is an often used construct where an application needs to provide an unknown number of wide strin...
P6UINT32 P6KEYSTOREFLAGS
P6KEYSTOREFLAGS.
This interface allows the caller to find an existing key, certificate, or blob (e.g., password) by a namespace and name pair.
This interface allows the user to enumerate keys or certificates based on different sets of meta data...
<div class="p6box"> This interface has been depricated in favor of p6IKeystore3.
P6CRYPTOKEYCLASS
Used to categorize keys:
unsigned char P6BOOL
Boolean type.
P6KEYSTORE_TYPE
Value indicates the type of data returned in a P6R::p6IEnumKeystore enumerator.
<div class="p6box"> This interface has been depricated in favor of p6IKeystoreSSL2.
This interface allows the caller to find an existing key, certificate, or blob (e.g., password) by a namespace and name pair.
P6CRYPTOCIPHER
Cipher Type.
P6CRYPTOKEYCLASS keyClass
wchar_t P6WCHAR
Wide character type see p6i18n.h.
Interface definitions for symmetric key encryption.
The base interface all [p6]COM components must derive from and implement.
#define P6KSMAXATTRIBNAME
The p6IEnumKeystore returns this type in order to distinguish between the keys, certs, blobs, and links that can all be stored in the same keystore.
This interface is a general purpose string enumerator.
P6CRYPTOKEYSTATE
The current state of the key as defined in: NIST DRAFT Special Publication 800-130, A Framework for Designing Cryptographic Key Management Systems, June 15, 2010.
Interface definition for X509 V3 Certificates.
it may not contain all the symbols used by this software If you run into undefined symbol please let us know and we can provide you a build that will be compatible with your specific value
A universally unique indentifier (UUID).
This enumerator allows the caller to get a list of all defined entries that exist in the openned keys...
This interface allows the caller to access parts of an X509 V3 certificate for use in protocols and i...
This interface allows the user to enumerate keys or certificates based on different sets of meta data...
Provide SSL related helper methods to make it easier to store SSL client and server certificates in t...
#define P6DECLCOMMETHOD(method)
This interface provides symmetric key encryption/decryption using AES, Blowfish, CAST5 DES and varian...
P6INT64 P6TIME
The wallclock time represented as the number of microseconds since midnight January 1 1970 UTC...
A key, certificate, and blob can have any number of associated attributes.
This interface allows the caller to find an existing key, certificate, or blob (e.g., password) by a namespace and name pair.
The p6IKeystore interface uses the following definition for link retrival.
This enumerator allows the caller to get a list of all defined attributes associated with a specific ...
The purpose of key reference is to represent a remote key and potentially associate to it a set of at...
Interface definition for the cryptographic signature generation and verification. ...
P6KEYSTORE_TYPE targetType
This interface allows the user to build complex queries of multiple attributes at the same time to pe...
This interface allows the user to enumerate keys or certificates based on different sets of meta data...
char P6CHAR
Narrow character type.
This interface is used to create/open/manage the keystore.
#define P6DECLAREIF_(iface, baseif)
P6R Cryptographic key interface definitions.