12 #define P6GENKEYS_H__ 1
194 #define IF_p6IGenKeys {0x18150f93,0x5c77,0x426b,{0x9c,0x47,0x67,0x12,0x3,0xbc,0x80,0x8c}}
374 #define IF_p6IGenKeys2 {0x64cf2209,0x655b,0x4b81,{0x95,0x9c,0xc5,0xfb,0x31,0x70,0x31,0x2d}}
378 #define COMP_p6GenKeys {0x2f884654,0xa993,0x4901,{0x97,0xc3,0x88,0x81,0xbf,0xa1,0x5f,0x9c}}
virtual P6R::P6ERR genSymmetricKeyRaw(P6UCHAR *pKeyBuffer, P6INT32 cKeyBuffer, P6UINT32 keySize, P6BOOL bReseed)=0
Symetric keys are used for the bulk of encrypting data since PKI encryption is slow.
const P6GENKEYFLAGS P6GENKEY_TRACEON
virtual P6R::P6ERR genDSAKeyPair(p6ICryptoKey **ppPubKey, p6ICryptoKey **ppPrvKey, P6UINT32 keySize)=0
Digital Signature Algorithm (DSA) – Public Key Cryptography Generate a public and private DSA key pai...
virtual P6R::P6ERR genSymmetricKey(p6ICryptoKey **ppKey, P6UINT32 keySize, P6BOOL bReseed)=0
Symetric keys are used for the bulk of encrypting data since PKI encryption is slow.
This interface provides key metadata infrormation and key access.
virtual P6R::P6ERR localizeSnmpKey(p6ICryptoKey *pInKey, p6ICryptoKey **ppOutKey, const P6CHAR *pEngineID, P6UINT32 idSize, p6IEntropySource *pEntropy)=0
Takes a symmetric key and "localizes" it with the byte sequence pointed to by "pEngineID".
virtual P6R::P6ERR genECKeyPair(P6ECCURVE curveId, P6CRYPTOCIPHER cipher, p6ICryptoKey **ppPubKey, p6ICryptoKey **ppPrvKey)=0
EC Algorithm Generate a public - private EC key pair and save them into the named files in PEM format...
This interface provides key generation methods for all p6Crypto supported ciphers.
virtual P6R::P6ERR genDSAKeyPair(p6ICryptoKey **ppPubKey, p6ICryptoKey **ppPrvKey, P6UINT32 keySize)=0
Digital Signature Algorithm (DSA) – Public Key Cryptography Generate a public and private DSA key pai...
virtual P6R::P6ERR genSymmetricKeyRaw(P6UCHAR *pKeyBuffer, P6INT32 cKeyBuffer, P6UINT32 keySize, P6BOOL bReseed)=0
Symetric keys are used for the bulk of encrypting data since PKI encryption is slow.
[p6]COM Cryptographic Random Number Generator.
virtual P6R::P6ERR genSymmetricKey(p6ICryptoKey **ppKey, P6UINT32 keySize, P6BOOL bReseed)=0
Symetric keys are used for the bulk of encrypting data since PKI encryption is slow.
P6UINT32 P6GENKEYFLAGS
P6GENKEYFLAGS.
P6CRYPTOCIPHER
Cipher Type.
The base interface all [p6]COM components must derive from and implement.
This interface provides key generation methods for all p6Crypto supported ciphers.
Provides a cryptographically strong random number generator.
virtual P6R::P6ERR genSymmetricKeyFromData(p6ICryptoKey **ppKey, P6CHAR *pData, P6UINT32 cData)=0
This method allows the creation of a symmetric key from existing data supplied by the caller...
virtual P6R::P6ERR genRSAKeyPair(p6ICryptoKey **ppPubKey, p6ICryptoKey **ppPrvKey, P6UINT32 keySize)=0
RSA Algorithm Generate a public - private RSA key pair and save them in p6ICryptoKey objects...
This is a plugin interface for the customer of the ICrypto interface to enhance the built in entropy ...
const P6GENKEYFLAGS P6GENKEY_NOFLAGS
virtual P6R::P6ERR genSymmetricKeyFromData(p6ICryptoKey **ppKey, P6CHAR *pData, P6UINT32 cData)=0
This method allows the creation of a symmetric key from existing data supplied by the caller...
virtual P6R::P6ERR initialize(P6GENKEYFLAGS flags, p6IRandom *pRandom)=0
Sets up the object to run properly.
virtual P6R::P6ERR localizeSnmpKey(p6ICryptoKey *pInKey, p6ICryptoKey **ppOutKey, const P6CHAR *pEngineID, P6UINT32 idSize, p6IEntropySource *pEntropy)=0
Takes a symmetric key and "localizes" it with the byte sequence pointed to by "pEngineID".
virtual P6R::P6ERR initialize(P6GENKEYFLAGS flags, p6IRandom *pRandom)=0
Sets up the object to run properly.
virtual P6R::P6ERR genRSAKeyPair(p6ICryptoKey **ppPubKey, p6ICryptoKey **ppPrvKey, P6UINT32 keySize)=0
RSA Algorithm Generate a public - private RSA key pair and return them in p6ICryptoKey objects...
char P6CHAR
Narrow character type.
P6R Cryptographic key interface definitions.