CryptoKeyStore Class
Properties Methods Events Config Settings Errors
The iaKeystore class offers key storage functionality for a variety of key store types.
Syntax
CryptoKeyStore
Remarks
TBD
Property List
The following is the full list of the properties of the class with short descriptions. Click on the links for further details.
ChannelAuthID | An authentication identifier (e. |
ChannelAuthPars | Authentication parameters, if assumed by the authentication scheme used. |
ChannelAuthToken | An authentication secret (e. |
ChannelAuthType | The authentication type used (e. |
ChannelNetworkConfig | Use this property to provide the network configuration settings. |
ChannelProtectionConfig | Use this property to provide the protection configuration settings. |
ChannelProtocol | The connection protocol. |
ChannelSigID | A signature identifier (e. |
ChannelSigPars | Signature parameters, if assumed by the authentication scheme used. |
ChannelSigToken | A signature secret (e. |
ChannelSigType | The signature type to use (e. |
ChannelValidateServiceCreds | Specifies whether server-side credentials, such as TLS certificates, should be validated automatically using internal validation rules. |
KeyCount | The number of records in the Key arrays. |
KeyBits | The length of the key in bits. |
KeyCanDecrypt | Returns True if the key can be used for decryption. |
KeyCanDerive | Returns True if the key can be used for key derivation. |
KeyCanEncrypt | Returns True if the key can be used for encryption. |
KeyCanHash | Returns True if the key can be used for hashing/MACing. |
KeyCanSign | Returns True if the key can be used for signing. |
KeyCanSignRecover | Returns True if the key can be used for enveloping signing. |
KeyCanUnwrap | Returns True if the key can be used for key unwrapping. |
KeyCanVerify | Returns True if the key can be used for verifying signatures. |
KeyCanVerifyRecover | Returns True if the key can be used for verifying enveloping signatures. |
KeyCanWrap | Returns True if the key can be used for key wrapping. |
KeyCapabilities | A collection of information about the key capabilities TBD: discuss type and options. |
KeyDescription | The description, or label, of the object. |
KeyEnabled | Enables or disables this key for use in encryption or signing operation. |
KeyExportable | Returns True if the key is exportable (can be serialized into an array of bytes), and False otherwise. |
KeyFingerprint | Contains the fingerprint (a hash imprint) of this key. |
KeyFriendlyName | Contains an associated alias (friendly name) of the key. |
KeyGroup | The name of the group associated with this object. |
KeyID | Provides access to a storage-specific key identifier. |
KeyIV | The initialization vector (IV) of a symmetric key. |
KeyKeyType | The type of the key contained in the object. |
KeyMechanism | The algorithm of the cryptographic key. |
KeyMechanismParams | The parameters of the key algorithm, such as Curve for ECDSA keys or domain parameters for DH keys. |
KeyNonce | A nonce value associated with a key. |
KeyNonPublic | Returns True if the object is private, and False otherwise. |
KeyOrigin | Returns the origin (the Storage ID) of this key. |
KeyPersistent | Returns True if the object is persistent in the store. |
KeyProperties | Returns a collection of object properties as a comma separated name=value list. |
KeyReadOnly | Returns True if the object is readonly. |
KeySensitive | Returns True if the object is sensitive, and False otherwise. |
KeySize | The size of the object in bytes. |
KeySubject | Returns the key subject. |
KeyUserId | TBD. |
KeyUserKeySecret | TBD. |
KeyValid | Returns True if this key is valid. |
KeyValidFrom | The time point at which the key becomes valid, in UTC. |
KeyValidTo | The time point at which the key expires, in UTC. |
KeyValue | The byte array representation of the key. |
MechCount | The number of records in the Mech arrays. |
MechAliases | A comma-separated list of aliases of the mechanism. |
MechCanDecrypt | Returns True if the key can be used for decryption. |
MechCanDerive | Returns True if the key can be used for key derivation. |
MechCanEncrypt | Returns True if the key can be used for encryption. |
MechCanGenerate | Returns True if the keystore can generate keys using the mechanism. |
MechCanHash | Returns True if the key can be used for hashing/MACing. |
MechCanPRNG | Returns True if the mechanism can be used for generating pseudorandom numbers. |
MechCanSign | Returns True if the key can be used for signing. |
MechCanSignRecover | Returns True if the key can be used for enveloping signing. |
MechCanUnwrap | Returns True if the key can be used for key unwrapping. |
MechCanVerify | Returns True if the key can be used for verifying signatures. |
MechCanVerifyRecover | Returns True if the key can be used for verifying enveloping signatures. |
MechCanWrap | Returns True if the key can be used for key wrapping. |
MechMaxBits | The maximal supported length of the key in bits. |
MechMechanismName | The official name of the mechanism, such as sha256WithRSAEncryption. |
MechMinBits | The minimal supported length of the key in bits. |
MechProperties | A collection of custom mechanism properties as a collection of comma-separated name=value pairs. |
ObjectCount | The number of records in the Object arrays. |
ObjectDescription | The description, or label, of the object. |
ObjectEnabled | Enables or disables this key for use in encryption or signing operation. |
ObjectExportable | Returns True if the object is exportable (can be serialized into an array of bytes), and False otherwise. |
ObjectFingerprint | Contains the fingerprint (a hash imprint) of this object. |
ObjectFriendlyName | Contains an associated alias (friendly name) of the object. |
ObjectGroup | The name of the group associated with this object. |
ObjectID | Provides access to a storage-specific object identifier. |
ObjectIssuer | Returns the object issuer. |
ObjectKeyUsage | Indicates the purposes of the object. |
ObjectNonPublic | Returns True if the object is private, and False otherwise. |
ObjectObjType | The type of the key contained in the object. |
ObjectOrigin | Returns the origin (the Storage ID) of this object. |
ObjectPersistent | Returns True if the object is persistent in the store. |
ObjectProperties | Returns a collection of object properties as a comma separated name=value list. |
ObjectReadOnly | Returns True if the object is readonly. |
ObjectSensitive | Returns True if the object is sensitive, and False otherwise. |
ObjectSerialNumber | Returns the certificate's serial number. |
ObjectSize | The size of the object in bytes. |
ObjectSubject | Returns the object subject. |
ObjectUserId | TBD. |
ObjectUserKeySecret | TBD. |
ObjectValidFrom | The time point at which the object becomes valid, in UTC. |
ObjectValidTo | The time point at which the object expires, in UTC. |
ObjectValue | The byte array representation of the object. |
Opened | Indicates whether the storage is in the open state. |
ParCount | The number of records in the Par arrays. |
ParName | The name element in a (name, value) pair. |
ParValue | The value element in a (name, value) pair. |
SessionClientAuthenticated | Specifies whether client authentication was performed during this connection. |
SessionClientAuthRequested | Specifies whether client authentication was requested during this connection. |
SessionClientCredential | Contains the client credential that was used for authentication (e. |
SessionConnectionEstablished | Indicates whether the connection has been established fully. |
SessionConnectionLog | Contains the connection log. |
SessionOperationMessage | Contains the status string of the last operation. |
SessionOperationStatus | Contains the status code of the last operation. |
SessionProtection | The protection parameters employed by this connection. |
SessionSecureConnection | Indicates whether TLS or SSL is enabled for this connection. |
SessionServiceAuthenticated | Indicates whether service authentication was performed during a TLS-enabled or otherwise protected connection. |
SessionServiceCredential | Contains the service credential that was used for authentication (e. |
SessionSessionID | The unique identifier assigned to this session. |
SessionTotalBytesReceived | The total number of bytes received over this connection. |
SessionTotalBytesSent | The total number of bytes sent over this connection. |
StorageID | A unique identifier of this storage. |
UserId | TBD. |
UserKeySecret | TBD. |
Method List
The following is the full list of the methods of the class with short descriptions. Click on the links for further details.
AddKey | Adds the pinned key to the storage. |
AddObject | Adds the pinned object to the storage. |
Clear | Removes all existing keys and objects from the storage. |
Close | Closes the logical storage. |
Commit | Commits any changes made locally to the store. |
CommitKey | Commits any changes made to the PinnedKey . |
CommitObject | Commits any changes made to the PinnedObject . |
Config | Sets or retrieves a configuration setting. |
DeriveKey | Generates a strong cryptographic key from a password. |
ExportKey | Exports the pinned key. |
ExportObject | Exports the pinned object. |
GenerateKey | Generates a new cryptographic key or key pair. |
GetKeyParam | Returns an algorithm-specific key parameter. |
GetKeyParamStr | Returns an algorithm-specific key parameter to a string. |
GetObjectParam | Returns an object parameter. |
GetObjectParamStr | Returns an object parameter to a string. |
ImportKey | Imports a key to the storage. |
ImportObject | Imports an object to the storage. |
Lock | Locks the store, preventing concurrent operations by other users. |
Open | Opens existing storage or creates one in memory. |
PerformAction | Performs a custom action and returns its result. |
RemoveKey | Removes a key from the storage. |
RemoveKeys | Removes a subset of keys from the storage by their IDs. |
RemoveObject | Removes an object from the storage. |
RemoveObjects | Removes a subset of objects from the storage by their IDs. |
Select | Allows the selection of keys from the store. |
SetKeyParam | Sets an algorithm-specific key parameter. |
SetKeyParamStr | Sets an algorithm-specific key parameter. |
SetObjectParam | Sets an algorithm-specific object parameter. |
SetObjectParamStr | Sets an algorithm-specific object parameter. |
Unlock | Unlocks the store previously locked with the Lock method. |
Update | Performs an Update operation on the store, obtaining the up-to-date view of it. |
UpdateKey | Performs an Update operation on the pinned key. |
UpdateObject | Performs an Update operation on the pinned object. |
Event List
The following is the full list of the events fired by the class with short descriptions. Click on the links for further details.
AttestationRecord | Passes an attestation record to the user code. |
ClientAuth | Notifies the application that the service requested an authentication credential from the client. |
ClientAuthFailed | Notifies the application about the failure of attempted authentication type. |
Error | Information about errors during data delivery. |
Notification | This event notifies the application about an underlying control flow event. |
OperationFinish | Reports the completion of data processing operation. |
OperationStart | Reports the start of data processing operation. |
Progress | Reports the data encryption/decryption progress. |
ServiceAuth | Notifies about the start of service authentication. |
ServiceAuthFailed | Notifies about the failure of service authentication attempt. |
Config Settings
The following is a list of config settings for the class with short descriptions. Click on the links for further details.
TempPath | Path for storing temporary files. |
ChannelAuthID Property (CryptoKeyStore Class)
An authentication identifier (e.
Syntax
ANSI (Cross Platform) char* GetChannelAuthID();
int SetChannelAuthID(const char* lpszChannelAuthID); Unicode (Windows) LPWSTR GetChannelAuthID();
INT SetChannelAuthID(LPCWSTR lpszChannelAuthID);
char* pkiproxy_cryptokeystore_getchannelauthid(void* lpObj);
int pkiproxy_cryptokeystore_setchannelauthid(void* lpObj, const char* lpszChannelAuthID);
QString GetChannelAuthID();
int SetChannelAuthID(QString qsChannelAuthID);
Default Value
""
Remarks
An authentication identifier (e.g. a username).
Data Type
String
ChannelAuthPars Property (CryptoKeyStore Class)
Authentication parameters, if assumed by the authentication scheme used.
Syntax
ANSI (Cross Platform) char* GetChannelAuthPars();
int SetChannelAuthPars(const char* lpszChannelAuthPars); Unicode (Windows) LPWSTR GetChannelAuthPars();
INT SetChannelAuthPars(LPCWSTR lpszChannelAuthPars);
char* pkiproxy_cryptokeystore_getchannelauthpars(void* lpObj);
int pkiproxy_cryptokeystore_setchannelauthpars(void* lpObj, const char* lpszChannelAuthPars);
QString GetChannelAuthPars();
int SetChannelAuthPars(QString qsChannelAuthPars);
Default Value
""
Remarks
Authentication parameters, if assumed by the authentication scheme used.
Data Type
String
ChannelAuthToken Property (CryptoKeyStore Class)
An authentication secret (e.
Syntax
ANSI (Cross Platform) char* GetChannelAuthToken();
int SetChannelAuthToken(const char* lpszChannelAuthToken); Unicode (Windows) LPWSTR GetChannelAuthToken();
INT SetChannelAuthToken(LPCWSTR lpszChannelAuthToken);
char* pkiproxy_cryptokeystore_getchannelauthtoken(void* lpObj);
int pkiproxy_cryptokeystore_setchannelauthtoken(void* lpObj, const char* lpszChannelAuthToken);
QString GetChannelAuthToken();
int SetChannelAuthToken(QString qsChannelAuthToken);
Default Value
""
Remarks
An authentication secret (e.g. a password or token).
Data Type
String
ChannelAuthType Property (CryptoKeyStore Class)
The authentication type used (e.
Syntax
ANSI (Cross Platform) char* GetChannelAuthType();
int SetChannelAuthType(const char* lpszChannelAuthType); Unicode (Windows) LPWSTR GetChannelAuthType();
INT SetChannelAuthType(LPCWSTR lpszChannelAuthType);
char* pkiproxy_cryptokeystore_getchannelauthtype(void* lpObj);
int pkiproxy_cryptokeystore_setchannelauthtype(void* lpObj, const char* lpszChannelAuthType);
QString GetChannelAuthType();
int SetChannelAuthType(QString qsChannelAuthType);
Default Value
""
Remarks
The authentication type used (e.g. token or cert).
Data Type
String
ChannelNetworkConfig Property (CryptoKeyStore Class)
Use this property to provide the network configuration settings.
Syntax
ANSI (Cross Platform) char* GetChannelNetworkConfig();
int SetChannelNetworkConfig(const char* lpszChannelNetworkConfig); Unicode (Windows) LPWSTR GetChannelNetworkConfig();
INT SetChannelNetworkConfig(LPCWSTR lpszChannelNetworkConfig);
char* pkiproxy_cryptokeystore_getchannelnetworkconfig(void* lpObj);
int pkiproxy_cryptokeystore_setchannelnetworkconfig(void* lpObj, const char* lpszChannelNetworkConfig);
QString GetChannelNetworkConfig();
int SetChannelNetworkConfig(QString qsChannelNetworkConfig);
Default Value
""
Remarks
Use this property to provide the network configuration settings. The exact format and settings supported to be defined later.
Data Type
String
ChannelProtectionConfig Property (CryptoKeyStore Class)
Use this property to provide the protection configuration settings.
Syntax
ANSI (Cross Platform) char* GetChannelProtectionConfig();
int SetChannelProtectionConfig(const char* lpszChannelProtectionConfig); Unicode (Windows) LPWSTR GetChannelProtectionConfig();
INT SetChannelProtectionConfig(LPCWSTR lpszChannelProtectionConfig);
char* pkiproxy_cryptokeystore_getchannelprotectionconfig(void* lpObj);
int pkiproxy_cryptokeystore_setchannelprotectionconfig(void* lpObj, const char* lpszChannelProtectionConfig);
QString GetChannelProtectionConfig();
int SetChannelProtectionConfig(QString qsChannelProtectionConfig);
Default Value
""
Remarks
Use this property to provide the protection configuration settings. The exact format to use depends on the underlying security protocol used. In case of TLS this property expects a list of comma-separated ciphersuites, in order of priority.
Data Type
String
ChannelProtocol Property (CryptoKeyStore Class)
The connection protocol.
Syntax
ANSI (Cross Platform) char* GetChannelProtocol();
int SetChannelProtocol(const char* lpszChannelProtocol); Unicode (Windows) LPWSTR GetChannelProtocol();
INT SetChannelProtocol(LPCWSTR lpszChannelProtocol);
char* pkiproxy_cryptokeystore_getchannelprotocol(void* lpObj);
int pkiproxy_cryptokeystore_setchannelprotocol(void* lpObj, const char* lpszChannelProtocol);
QString GetChannelProtocol();
int SetChannelProtocol(QString qsChannelProtocol);
Default Value
""
Remarks
The connection protocol. Leave empty to use the default protocol supported by the storage type.
Data Type
String
ChannelSigID Property (CryptoKeyStore Class)
A signature identifier (e.
Syntax
ANSI (Cross Platform) char* GetChannelSigID();
int SetChannelSigID(const char* lpszChannelSigID); Unicode (Windows) LPWSTR GetChannelSigID();
INT SetChannelSigID(LPCWSTR lpszChannelSigID);
char* pkiproxy_cryptokeystore_getchannelsigid(void* lpObj);
int pkiproxy_cryptokeystore_setchannelsigid(void* lpObj, const char* lpszChannelSigID);
QString GetChannelSigID();
int SetChannelSigID(QString qsChannelSigID);
Default Value
""
Remarks
A signature identifier (e.g. a username).
Data Type
String
ChannelSigPars Property (CryptoKeyStore Class)
Signature parameters, if assumed by the authentication scheme used.
Syntax
ANSI (Cross Platform) char* GetChannelSigPars();
int SetChannelSigPars(const char* lpszChannelSigPars); Unicode (Windows) LPWSTR GetChannelSigPars();
INT SetChannelSigPars(LPCWSTR lpszChannelSigPars);
char* pkiproxy_cryptokeystore_getchannelsigpars(void* lpObj);
int pkiproxy_cryptokeystore_setchannelsigpars(void* lpObj, const char* lpszChannelSigPars);
QString GetChannelSigPars();
int SetChannelSigPars(QString qsChannelSigPars);
Default Value
""
Remarks
Signature parameters, if assumed by the authentication scheme used.
Data Type
String
ChannelSigToken Property (CryptoKeyStore Class)
A signature secret (e.
Syntax
ANSI (Cross Platform) char* GetChannelSigToken();
int SetChannelSigToken(const char* lpszChannelSigToken); Unicode (Windows) LPWSTR GetChannelSigToken();
INT SetChannelSigToken(LPCWSTR lpszChannelSigToken);
char* pkiproxy_cryptokeystore_getchannelsigtoken(void* lpObj);
int pkiproxy_cryptokeystore_setchannelsigtoken(void* lpObj, const char* lpszChannelSigToken);
QString GetChannelSigToken();
int SetChannelSigToken(QString qsChannelSigToken);
Default Value
""
Remarks
A signature secret (e.g. a password or token). Signature credentials are used to sign individual requests. They may be different to authentication credentials, which are used to authorize and/or authenticate to the keystore service.
Data Type
String
ChannelSigType Property (CryptoKeyStore Class)
The signature type to use (e.
Syntax
ANSI (Cross Platform) char* GetChannelSigType();
int SetChannelSigType(const char* lpszChannelSigType); Unicode (Windows) LPWSTR GetChannelSigType();
INT SetChannelSigType(LPCWSTR lpszChannelSigType);
char* pkiproxy_cryptokeystore_getchannelsigtype(void* lpObj);
int pkiproxy_cryptokeystore_setchannelsigtype(void* lpObj, const char* lpszChannelSigType);
QString GetChannelSigType();
int SetChannelSigType(QString qsChannelSigType);
Default Value
""
Remarks
The signature type to use (e.g. token or cert).
Data Type
String
ChannelValidateServiceCreds Property (CryptoKeyStore Class)
Specifies whether server-side credentials, such as TLS certificates, should be validated automatically using internal validation rules.
Syntax
ANSI (Cross Platform) int GetChannelValidateServiceCreds();
int SetChannelValidateServiceCreds(int bChannelValidateServiceCreds); Unicode (Windows) BOOL GetChannelValidateServiceCreds();
INT SetChannelValidateServiceCreds(BOOL bChannelValidateServiceCreds);
int pkiproxy_cryptokeystore_getchannelvalidateservicecreds(void* lpObj);
int pkiproxy_cryptokeystore_setchannelvalidateservicecreds(void* lpObj, int bChannelValidateServiceCreds);
bool GetChannelValidateServiceCreds();
int SetChannelValidateServiceCreds(bool bChannelValidateServiceCreds);
Default Value
TRUE
Remarks
Specifies whether server-side credentials, such as TLS certificates, should be validated automatically using internal validation rules.
Data Type
Boolean
KeyCount Property (CryptoKeyStore Class)
The number of records in the Key arrays.
Syntax
ANSI (Cross Platform) int GetKeyCount(); Unicode (Windows) INT GetKeyCount();
int pkiproxy_cryptokeystore_getkeycount(void* lpObj);
int GetKeyCount();
Default Value
0
Remarks
This property controls the size of the following arrays:
- KeyBits
- KeyCanDecrypt
- KeyCanDerive
- KeyCanEncrypt
- KeyCanHash
- KeyCanSign
- KeyCanSignRecover
- KeyCanUnwrap
- KeyCanVerify
- KeyCanVerifyRecover
- KeyCanWrap
- KeyCapabilities
- KeyDescription
- KeyEnabled
- KeyExportable
- KeyFingerprint
- KeyFriendlyName
- KeyGroup
- KeyID
- KeyIV
- KeyKeyType
- KeyMechanism
- KeyMechanismParams
- KeyNonce
- KeyNonPublic
- KeyOrigin
- KeyPersistent
- KeyProperties
- KeyReadOnly
- KeySensitive
- KeySize
- KeySubject
- KeyUserId
- KeyUserKeySecret
- KeyValid
- KeyValidFrom
- KeyValidTo
- KeyValue
This property is read-only and not available at design time.
Data Type
Integer
KeyBits Property (CryptoKeyStore Class)
The length of the key in bits.
Syntax
ANSI (Cross Platform) int GetKeyBits(int iKeyIndex); Unicode (Windows) INT GetKeyBits(INT iKeyIndex);
int pkiproxy_cryptokeystore_getkeybits(void* lpObj, int keyindex);
int GetKeyBits(int iKeyIndex);
Default Value
0
Remarks
The length of the key in bits.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
Integer
KeyCanDecrypt Property (CryptoKeyStore Class)
Returns True if the key can be used for decryption.
Syntax
ANSI (Cross Platform) int GetKeyCanDecrypt(int iKeyIndex); Unicode (Windows) BOOL GetKeyCanDecrypt(INT iKeyIndex);
int pkiproxy_cryptokeystore_getkeycandecrypt(void* lpObj, int keyindex);
bool GetKeyCanDecrypt(int iKeyIndex);
Default Value
FALSE
Remarks
Returns True if the key can be used for decryption.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
Boolean
KeyCanDerive Property (CryptoKeyStore Class)
Returns True if the key can be used for key derivation.
Syntax
ANSI (Cross Platform) int GetKeyCanDerive(int iKeyIndex); Unicode (Windows) BOOL GetKeyCanDerive(INT iKeyIndex);
int pkiproxy_cryptokeystore_getkeycanderive(void* lpObj, int keyindex);
bool GetKeyCanDerive(int iKeyIndex);
Default Value
FALSE
Remarks
Returns True if the key can be used for key derivation.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
Boolean
KeyCanEncrypt Property (CryptoKeyStore Class)
Returns True if the key can be used for encryption.
Syntax
ANSI (Cross Platform) int GetKeyCanEncrypt(int iKeyIndex); Unicode (Windows) BOOL GetKeyCanEncrypt(INT iKeyIndex);
int pkiproxy_cryptokeystore_getkeycanencrypt(void* lpObj, int keyindex);
bool GetKeyCanEncrypt(int iKeyIndex);
Default Value
FALSE
Remarks
Returns True if the key can be used for encryption.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
Boolean
KeyCanHash Property (CryptoKeyStore Class)
Returns True if the key can be used for hashing/MACing.
Syntax
ANSI (Cross Platform) int GetKeyCanHash(int iKeyIndex); Unicode (Windows) BOOL GetKeyCanHash(INT iKeyIndex);
int pkiproxy_cryptokeystore_getkeycanhash(void* lpObj, int keyindex);
bool GetKeyCanHash(int iKeyIndex);
Default Value
FALSE
Remarks
Returns True if the key can be used for hashing/MACing.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
Boolean
KeyCanSign Property (CryptoKeyStore Class)
Returns True if the key can be used for signing.
Syntax
ANSI (Cross Platform) int GetKeyCanSign(int iKeyIndex); Unicode (Windows) BOOL GetKeyCanSign(INT iKeyIndex);
int pkiproxy_cryptokeystore_getkeycansign(void* lpObj, int keyindex);
bool GetKeyCanSign(int iKeyIndex);
Default Value
FALSE
Remarks
Returns True if the key can be used for signing.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
Boolean
KeyCanSignRecover Property (CryptoKeyStore Class)
Returns True if the key can be used for enveloping signing.
Syntax
ANSI (Cross Platform) int GetKeyCanSignRecover(int iKeyIndex); Unicode (Windows) BOOL GetKeyCanSignRecover(INT iKeyIndex);
int pkiproxy_cryptokeystore_getkeycansignrecover(void* lpObj, int keyindex);
bool GetKeyCanSignRecover(int iKeyIndex);
Default Value
FALSE
Remarks
Returns True if the key can be used for enveloping signing.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
Boolean
KeyCanUnwrap Property (CryptoKeyStore Class)
Returns True if the key can be used for key unwrapping.
Syntax
ANSI (Cross Platform) int GetKeyCanUnwrap(int iKeyIndex); Unicode (Windows) BOOL GetKeyCanUnwrap(INT iKeyIndex);
int pkiproxy_cryptokeystore_getkeycanunwrap(void* lpObj, int keyindex);
bool GetKeyCanUnwrap(int iKeyIndex);
Default Value
FALSE
Remarks
Returns True if the key can be used for key unwrapping.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
Boolean
KeyCanVerify Property (CryptoKeyStore Class)
Returns True if the key can be used for verifying signatures.
Syntax
ANSI (Cross Platform) int GetKeyCanVerify(int iKeyIndex); Unicode (Windows) BOOL GetKeyCanVerify(INT iKeyIndex);
int pkiproxy_cryptokeystore_getkeycanverify(void* lpObj, int keyindex);
bool GetKeyCanVerify(int iKeyIndex);
Default Value
FALSE
Remarks
Returns True if the key can be used for verifying signatures.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
Boolean
KeyCanVerifyRecover Property (CryptoKeyStore Class)
Returns True if the key can be used for verifying enveloping signatures.
Syntax
ANSI (Cross Platform) int GetKeyCanVerifyRecover(int iKeyIndex); Unicode (Windows) BOOL GetKeyCanVerifyRecover(INT iKeyIndex);
int pkiproxy_cryptokeystore_getkeycanverifyrecover(void* lpObj, int keyindex);
bool GetKeyCanVerifyRecover(int iKeyIndex);
Default Value
FALSE
Remarks
Returns True if the key can be used for verifying enveloping signatures.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
Boolean
KeyCanWrap Property (CryptoKeyStore Class)
Returns True if the key can be used for key wrapping.
Syntax
ANSI (Cross Platform) int GetKeyCanWrap(int iKeyIndex); Unicode (Windows) BOOL GetKeyCanWrap(INT iKeyIndex);
int pkiproxy_cryptokeystore_getkeycanwrap(void* lpObj, int keyindex);
bool GetKeyCanWrap(int iKeyIndex);
Default Value
FALSE
Remarks
Returns True if the key can be used for key wrapping.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
Boolean
KeyCapabilities Property (CryptoKeyStore Class)
A collection of information about the key capabilities TBD: discuss type and options.
Syntax
ANSI (Cross Platform) char* GetKeyCapabilities(int iKeyIndex); Unicode (Windows) LPWSTR GetKeyCapabilities(INT iKeyIndex);
char* pkiproxy_cryptokeystore_getkeycapabilities(void* lpObj, int keyindex);
QString GetKeyCapabilities(int iKeyIndex);
Default Value
""
Remarks
A collection of information about the key capabilities TBD: discuss type and options. The following capabilities are offered by PKCS#11: "local", "trusted", "sensitive", "always sensitive", "never extractable", "always authenticate", "modifiable", plus we need to support custom parameters (e.g. Key Checksum)
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
String
KeyDescription Property (CryptoKeyStore Class)
The description, or label, of the object.
Syntax
ANSI (Cross Platform) char* GetKeyDescription(int iKeyIndex); Unicode (Windows) LPWSTR GetKeyDescription(INT iKeyIndex);
char* pkiproxy_cryptokeystore_getkeydescription(void* lpObj, int keyindex);
QString GetKeyDescription(int iKeyIndex);
Default Value
""
Remarks
The description, or label, of the object.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
String
KeyEnabled Property (CryptoKeyStore Class)
Enables or disables this key for use in encryption or signing operation.
Syntax
ANSI (Cross Platform) int GetKeyEnabled(int iKeyIndex); Unicode (Windows) BOOL GetKeyEnabled(INT iKeyIndex);
int pkiproxy_cryptokeystore_getkeyenabled(void* lpObj, int keyindex);
bool GetKeyEnabled(int iKeyIndex);
Default Value
FALSE
Remarks
Enables or disables this key for use in encryption or signing operation.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
Boolean
KeyExportable Property (CryptoKeyStore Class)
Returns True if the key is exportable (can be serialized into an array of bytes), and False otherwise.
Syntax
ANSI (Cross Platform) int GetKeyExportable(int iKeyIndex); Unicode (Windows) BOOL GetKeyExportable(INT iKeyIndex);
int pkiproxy_cryptokeystore_getkeyexportable(void* lpObj, int keyindex);
bool GetKeyExportable(int iKeyIndex);
Default Value
FALSE
Remarks
Returns True if the key is exportable (can be serialized into an array of bytes), and False otherwise.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
Boolean
KeyFingerprint Property (CryptoKeyStore Class)
Contains the fingerprint (a hash imprint) of this key.
Syntax
ANSI (Cross Platform) int GetKeyFingerprint(int iKeyIndex, char* &lpKeyFingerprint, int &lenKeyFingerprint); Unicode (Windows) INT GetKeyFingerprint(INT iKeyIndex, LPSTR &lpKeyFingerprint, INT &lenKeyFingerprint);
int pkiproxy_cryptokeystore_getkeyfingerprint(void* lpObj, int keyindex, char** lpKeyFingerprint, int* lenKeyFingerprint);
QByteArray GetKeyFingerprint(int iKeyIndex);
Remarks
Contains the fingerprint (a hash imprint) of this key.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
KeyFriendlyName Property (CryptoKeyStore Class)
Contains an associated alias (friendly name) of the key.
Syntax
ANSI (Cross Platform) char* GetKeyFriendlyName(int iKeyIndex); Unicode (Windows) LPWSTR GetKeyFriendlyName(INT iKeyIndex);
char* pkiproxy_cryptokeystore_getkeyfriendlyname(void* lpObj, int keyindex);
QString GetKeyFriendlyName(int iKeyIndex);
Default Value
""
Remarks
Contains an associated alias (friendly name) of the key. PKCS#11 equivalent: Label.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
String
KeyGroup Property (CryptoKeyStore Class)
The name of the group associated with this object.
Syntax
ANSI (Cross Platform) char* GetKeyGroup(int iKeyIndex); Unicode (Windows) LPWSTR GetKeyGroup(INT iKeyIndex);
char* pkiproxy_cryptokeystore_getkeygroup(void* lpObj, int keyindex);
QString GetKeyGroup(int iKeyIndex);
Default Value
""
Remarks
The name of the group associated with this object. Groups allow to bind together multiple objects logically connected with each other, such as certificates and their keys.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
String
KeyID Property (CryptoKeyStore Class)
Provides access to a storage-specific key identifier.
Syntax
ANSI (Cross Platform) char* GetKeyID(int iKeyIndex); Unicode (Windows) LPWSTR GetKeyID(INT iKeyIndex);
char* pkiproxy_cryptokeystore_getkeyid(void* lpObj, int keyindex);
QString GetKeyID(int iKeyIndex);
Default Value
""
Remarks
Provides access to a storage-specific key identifier. Key identifiers are used by cryptographicproviders to refer to a particular key and/or distinguish between different keys. They aretypically unique within a storage, but there is no guarantee that a particular cryptoproviderwill conform to that (or will assign any key IDs at all).
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
String
KeyIV Property (CryptoKeyStore Class)
The initialization vector (IV) of a symmetric key.
Syntax
ANSI (Cross Platform) int GetKeyIV(int iKeyIndex, char* &lpKeyIV, int &lenKeyIV); Unicode (Windows) INT GetKeyIV(INT iKeyIndex, LPSTR &lpKeyIV, INT &lenKeyIV);
int pkiproxy_cryptokeystore_getkeyiv(void* lpObj, int keyindex, char** lpKeyIV, int* lenKeyIV);
QByteArray GetKeyIV(int iKeyIndex);
Remarks
The initialization vector (IV) of a symmetric key. This is normally a public part of a symmetric key, the idea of which is to introduce randomness to the encrypted dataand/or serve as a first block in chaining ciphers.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
KeyKeyType Property (CryptoKeyStore Class)
The type of the key contained in the object.
Syntax
ANSI (Cross Platform) int GetKeyKeyType(int iKeyIndex); Unicode (Windows) INT GetKeyKeyType(INT iKeyIndex);
Possible Values
CKT_UNKNOWN(0),
CKT_PUBLIC(1),
CKT_PRIVATE(2),
CKT_SYMMETRIC(3),
CKT_DOMAIN_PARAMS(4),
CKT_GENERIC(5)
int pkiproxy_cryptokeystore_getkeykeytype(void* lpObj, int keyindex);
int GetKeyKeyType(int iKeyIndex);
Default Value
0
Remarks
The type of the key contained in the object.
Use this property to establish the key type.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
Integer
KeyMechanism Property (CryptoKeyStore Class)
The algorithm of the cryptographic key.
Syntax
ANSI (Cross Platform) char* GetKeyMechanism(int iKeyIndex); Unicode (Windows) LPWSTR GetKeyMechanism(INT iKeyIndex);
char* pkiproxy_cryptokeystore_getkeymechanism(void* lpObj, int keyindex);
QString GetKeyMechanism(int iKeyIndex);
Default Value
""
Remarks
The algorithm of the cryptographic key. A cryptokey object may hold either symmetric, MAC, or public key.Public key algorithms: RSA, ECDSA, Elgamal, DH.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
String
KeyMechanismParams Property (CryptoKeyStore Class)
The parameters of the key algorithm, such as Curve for ECDSA keys or domain parameters for DH keys.
Syntax
ANSI (Cross Platform) char* GetKeyMechanismParams(int iKeyIndex); Unicode (Windows) LPWSTR GetKeyMechanismParams(INT iKeyIndex);
char* pkiproxy_cryptokeystore_getkeymechanismparams(void* lpObj, int keyindex);
QString GetKeyMechanismParams(int iKeyIndex);
Default Value
""
Remarks
The parameters of the key algorithm, such as Curve for ECDSA keys or domain parameters for DH keys.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
String
KeyNonce Property (CryptoKeyStore Class)
A nonce value associated with a key.
Syntax
ANSI (Cross Platform) int GetKeyNonce(int iKeyIndex, char* &lpKeyNonce, int &lenKeyNonce); Unicode (Windows) INT GetKeyNonce(INT iKeyIndex, LPSTR &lpKeyNonce, INT &lenKeyNonce);
int pkiproxy_cryptokeystore_getkeynonce(void* lpObj, int keyindex, char** lpKeyNonce, int* lenKeyNonce);
QByteArray GetKeyNonce(int iKeyIndex);
Remarks
A nonce value associated with a key. It is similar to IV, but its only purpose is to introduce randomness.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
KeyNonPublic Property (CryptoKeyStore Class)
Returns True if the object is private, and False otherwise.
Syntax
ANSI (Cross Platform) int GetKeyNonPublic(int iKeyIndex); Unicode (Windows) BOOL GetKeyNonPublic(INT iKeyIndex);
int pkiproxy_cryptokeystore_getkeynonpublic(void* lpObj, int keyindex);
bool GetKeyNonPublic(int iKeyIndex);
Default Value
FALSE
Remarks
Returns True if the object is private, and False otherwise.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
Boolean
KeyOrigin Property (CryptoKeyStore Class)
Returns the origin (the Storage ID) of this key.
Syntax
ANSI (Cross Platform) char* GetKeyOrigin(int iKeyIndex); Unicode (Windows) LPWSTR GetKeyOrigin(INT iKeyIndex);
char* pkiproxy_cryptokeystore_getkeyorigin(void* lpObj, int keyindex);
QString GetKeyOrigin(int iKeyIndex);
Default Value
""
Remarks
Returns the origin (the Storage ID) of this key.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
String
KeyPersistent Property (CryptoKeyStore Class)
Returns True if the object is persistent in the store.
Syntax
ANSI (Cross Platform) int GetKeyPersistent(int iKeyIndex); Unicode (Windows) BOOL GetKeyPersistent(INT iKeyIndex);
int pkiproxy_cryptokeystore_getkeypersistent(void* lpObj, int keyindex);
bool GetKeyPersistent(int iKeyIndex);
Default Value
FALSE
Remarks
Returns True if the object is persistent in the store.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
Boolean
KeyProperties Property (CryptoKeyStore Class)
Returns a collection of object properties as a comma separated name=value list.
Syntax
ANSI (Cross Platform) char* GetKeyProperties(int iKeyIndex); Unicode (Windows) LPWSTR GetKeyProperties(INT iKeyIndex);
char* pkiproxy_cryptokeystore_getkeyproperties(void* lpObj, int keyindex);
QString GetKeyProperties(int iKeyIndex);
Default Value
""
Remarks
Returns a collection of object properties as a comma separated name=value list.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
String
KeyReadOnly Property (CryptoKeyStore Class)
Returns True if the object is readonly.
Syntax
ANSI (Cross Platform) int GetKeyReadOnly(int iKeyIndex); Unicode (Windows) BOOL GetKeyReadOnly(INT iKeyIndex);
int pkiproxy_cryptokeystore_getkeyreadonly(void* lpObj, int keyindex);
bool GetKeyReadOnly(int iKeyIndex);
Default Value
FALSE
Remarks
Returns True if the object is readonly.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
Boolean
KeySensitive Property (CryptoKeyStore Class)
Returns True if the object is sensitive, and False otherwise.
Syntax
ANSI (Cross Platform) int GetKeySensitive(int iKeyIndex); Unicode (Windows) BOOL GetKeySensitive(INT iKeyIndex);
int pkiproxy_cryptokeystore_getkeysensitive(void* lpObj, int keyindex);
bool GetKeySensitive(int iKeyIndex);
Default Value
FALSE
Remarks
Returns True if the object is sensitive, and False otherwise.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
Boolean
KeySize Property (CryptoKeyStore Class)
The size of the object in bytes.
Syntax
ANSI (Cross Platform) int GetKeySize(int iKeyIndex); Unicode (Windows) INT GetKeySize(INT iKeyIndex);
int pkiproxy_cryptokeystore_getkeysize(void* lpObj, int keyindex);
int GetKeySize(int iKeyIndex);
Default Value
0
Remarks
The size of the object in bytes
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
Integer
KeySubject Property (CryptoKeyStore Class)
Returns the key subject.
Syntax
ANSI (Cross Platform) char* GetKeySubject(int iKeyIndex); Unicode (Windows) LPWSTR GetKeySubject(INT iKeyIndex);
char* pkiproxy_cryptokeystore_getkeysubject(void* lpObj, int keyindex);
QString GetKeySubject(int iKeyIndex);
Default Value
""
Remarks
Returns the key subject. This is a cryptoprovider-dependent value,which normally aims to provide some user-friendly insight into thekey owner.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
String
KeyUserId Property (CryptoKeyStore Class)
TBD.
Syntax
ANSI (Cross Platform) char* GetKeyUserId(int iKeyIndex); Unicode (Windows) LPWSTR GetKeyUserId(INT iKeyIndex);
char* pkiproxy_cryptokeystore_getkeyuserid(void* lpObj, int keyindex);
QString GetKeyUserId(int iKeyIndex);
Default Value
""
Remarks
TBD
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
String
KeyUserKeySecret Property (CryptoKeyStore Class)
TBD.
Syntax
ANSI (Cross Platform) char* GetKeyUserKeySecret(int iKeyIndex); Unicode (Windows) LPWSTR GetKeyUserKeySecret(INT iKeyIndex);
char* pkiproxy_cryptokeystore_getkeyuserkeysecret(void* lpObj, int keyindex);
QString GetKeyUserKeySecret(int iKeyIndex);
Default Value
""
Remarks
TBD
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
String
KeyValid Property (CryptoKeyStore Class)
Returns True if this key is valid.
Syntax
ANSI (Cross Platform) int GetKeyValid(int iKeyIndex); Unicode (Windows) BOOL GetKeyValid(INT iKeyIndex);
int pkiproxy_cryptokeystore_getkeyvalid(void* lpObj, int keyindex);
bool GetKeyValid(int iKeyIndex);
Default Value
FALSE
Remarks
Returns True if this key is valid. The term Valid highly depends onthe kind of the key being stored. A symmetric key is considered validif its length fits the algorithm being set. The validity of anRSA key also ensures that the RSA key elements (primes, exponents,and modulus) are consistent.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
Boolean
KeyValidFrom Property (CryptoKeyStore Class)
The time point at which the key becomes valid, in UTC.
Syntax
ANSI (Cross Platform) char* GetKeyValidFrom(int iKeyIndex); Unicode (Windows) LPWSTR GetKeyValidFrom(INT iKeyIndex);
char* pkiproxy_cryptokeystore_getkeyvalidfrom(void* lpObj, int keyindex);
QString GetKeyValidFrom(int iKeyIndex);
Default Value
""
Remarks
The time point at which the key becomes valid, in UTC.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
String
KeyValidTo Property (CryptoKeyStore Class)
The time point at which the key expires, in UTC.
Syntax
ANSI (Cross Platform) char* GetKeyValidTo(int iKeyIndex); Unicode (Windows) LPWSTR GetKeyValidTo(INT iKeyIndex);
char* pkiproxy_cryptokeystore_getkeyvalidto(void* lpObj, int keyindex);
QString GetKeyValidTo(int iKeyIndex);
Default Value
""
Remarks
The time point at which the key expires, in UTC.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
String
KeyValue Property (CryptoKeyStore Class)
The byte array representation of the key.
Syntax
ANSI (Cross Platform) int GetKeyValue(int iKeyIndex, char* &lpKeyValue, int &lenKeyValue); Unicode (Windows) INT GetKeyValue(INT iKeyIndex, LPSTR &lpKeyValue, INT &lenKeyValue);
int pkiproxy_cryptokeystore_getkeyvalue(void* lpObj, int keyindex, char** lpKeyValue, int* lenKeyValue);
QByteArray GetKeyValue(int iKeyIndex);
Remarks
The byte array representation of the key. This may not be available for non-KeyExportable keys.
The KeyIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KeyCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
MechCount Property (CryptoKeyStore Class)
The number of records in the Mech arrays.
Syntax
ANSI (Cross Platform) int GetMechCount(); Unicode (Windows) INT GetMechCount();
int pkiproxy_cryptokeystore_getmechcount(void* lpObj);
int GetMechCount();
Default Value
0
Remarks
This property controls the size of the following arrays:
- MechAliases
- MechCanDecrypt
- MechCanDerive
- MechCanEncrypt
- MechCanGenerate
- MechCanHash
- MechCanPRNG
- MechCanSign
- MechCanSignRecover
- MechCanUnwrap
- MechCanVerify
- MechCanVerifyRecover
- MechCanWrap
- MechMaxBits
- MechMechanismName
- MechMinBits
- MechProperties
This property is read-only and not available at design time.
Data Type
Integer
MechAliases Property (CryptoKeyStore Class)
A comma-separated list of aliases of the mechanism.
Syntax
ANSI (Cross Platform) char* GetMechAliases(int iMechIndex); Unicode (Windows) LPWSTR GetMechAliases(INT iMechIndex);
char* pkiproxy_cryptokeystore_getmechaliases(void* lpObj, int mechindex);
QString GetMechAliases(int iMechIndex);
Default Value
""
Remarks
A comma-separated list of aliases of the mechanism. These may be environment-specific or reflect the naming of the mechanism in otherstandards, such as OIDs (1.2.840.113549.1.1.11) or third-party numeric constants.
The MechIndex parameter specifies the index of the item in the array. The size of the array is controlled by the MechCount property.
This property is read-only and not available at design time.
Data Type
String
MechCanDecrypt Property (CryptoKeyStore Class)
Returns True if the key can be used for decryption.
Syntax
ANSI (Cross Platform) int GetMechCanDecrypt(int iMechIndex); Unicode (Windows) BOOL GetMechCanDecrypt(INT iMechIndex);
int pkiproxy_cryptokeystore_getmechcandecrypt(void* lpObj, int mechindex);
bool GetMechCanDecrypt(int iMechIndex);
Default Value
FALSE
Remarks
Returns True if the key can be used for decryption.
The MechIndex parameter specifies the index of the item in the array. The size of the array is controlled by the MechCount property.
This property is read-only and not available at design time.
Data Type
Boolean
MechCanDerive Property (CryptoKeyStore Class)
Returns True if the key can be used for key derivation.
Syntax
ANSI (Cross Platform) int GetMechCanDerive(int iMechIndex); Unicode (Windows) BOOL GetMechCanDerive(INT iMechIndex);
int pkiproxy_cryptokeystore_getmechcanderive(void* lpObj, int mechindex);
bool GetMechCanDerive(int iMechIndex);
Default Value
FALSE
Remarks
Returns True if the key can be used for key derivation.
The MechIndex parameter specifies the index of the item in the array. The size of the array is controlled by the MechCount property.
This property is read-only and not available at design time.
Data Type
Boolean
MechCanEncrypt Property (CryptoKeyStore Class)
Returns True if the key can be used for encryption.
Syntax
ANSI (Cross Platform) int GetMechCanEncrypt(int iMechIndex); Unicode (Windows) BOOL GetMechCanEncrypt(INT iMechIndex);
int pkiproxy_cryptokeystore_getmechcanencrypt(void* lpObj, int mechindex);
bool GetMechCanEncrypt(int iMechIndex);
Default Value
FALSE
Remarks
Returns True if the key can be used for encryption.
The MechIndex parameter specifies the index of the item in the array. The size of the array is controlled by the MechCount property.
This property is read-only and not available at design time.
Data Type
Boolean
MechCanGenerate Property (CryptoKeyStore Class)
Returns True if the keystore can generate keys using the mechanism.
Syntax
ANSI (Cross Platform) int GetMechCanGenerate(int iMechIndex); Unicode (Windows) BOOL GetMechCanGenerate(INT iMechIndex);
int pkiproxy_cryptokeystore_getmechcangenerate(void* lpObj, int mechindex);
bool GetMechCanGenerate(int iMechIndex);
Default Value
FALSE
Remarks
Returns True if the keystore can generate keys using the mechanism.
The MechIndex parameter specifies the index of the item in the array. The size of the array is controlled by the MechCount property.
This property is read-only and not available at design time.
Data Type
Boolean
MechCanHash Property (CryptoKeyStore Class)
Returns True if the key can be used for hashing/MACing.
Syntax
ANSI (Cross Platform) int GetMechCanHash(int iMechIndex); Unicode (Windows) BOOL GetMechCanHash(INT iMechIndex);
int pkiproxy_cryptokeystore_getmechcanhash(void* lpObj, int mechindex);
bool GetMechCanHash(int iMechIndex);
Default Value
FALSE
Remarks
Returns True if the key can be used for hashing/MACing.
The MechIndex parameter specifies the index of the item in the array. The size of the array is controlled by the MechCount property.
This property is read-only and not available at design time.
Data Type
Boolean
MechCanPRNG Property (CryptoKeyStore Class)
Returns True if the mechanism can be used for generating pseudorandom numbers.
Syntax
ANSI (Cross Platform) int GetMechCanPRNG(int iMechIndex); Unicode (Windows) BOOL GetMechCanPRNG(INT iMechIndex);
int pkiproxy_cryptokeystore_getmechcanprng(void* lpObj, int mechindex);
bool GetMechCanPRNG(int iMechIndex);
Default Value
FALSE
Remarks
Returns True if the mechanism can be used for generating pseudorandom numbers.
The MechIndex parameter specifies the index of the item in the array. The size of the array is controlled by the MechCount property.
This property is read-only and not available at design time.
Data Type
Boolean
MechCanSign Property (CryptoKeyStore Class)
Returns True if the key can be used for signing.
Syntax
ANSI (Cross Platform) int GetMechCanSign(int iMechIndex); Unicode (Windows) BOOL GetMechCanSign(INT iMechIndex);
int pkiproxy_cryptokeystore_getmechcansign(void* lpObj, int mechindex);
bool GetMechCanSign(int iMechIndex);
Default Value
FALSE
Remarks
Returns True if the key can be used for signing.
The MechIndex parameter specifies the index of the item in the array. The size of the array is controlled by the MechCount property.
This property is read-only and not available at design time.
Data Type
Boolean
MechCanSignRecover Property (CryptoKeyStore Class)
Returns True if the key can be used for enveloping signing.
Syntax
ANSI (Cross Platform) int GetMechCanSignRecover(int iMechIndex); Unicode (Windows) BOOL GetMechCanSignRecover(INT iMechIndex);
int pkiproxy_cryptokeystore_getmechcansignrecover(void* lpObj, int mechindex);
bool GetMechCanSignRecover(int iMechIndex);
Default Value
FALSE
Remarks
Returns True if the key can be used for enveloping signing.
The MechIndex parameter specifies the index of the item in the array. The size of the array is controlled by the MechCount property.
This property is read-only and not available at design time.
Data Type
Boolean
MechCanUnwrap Property (CryptoKeyStore Class)
Returns True if the key can be used for key unwrapping.
Syntax
ANSI (Cross Platform) int GetMechCanUnwrap(int iMechIndex); Unicode (Windows) BOOL GetMechCanUnwrap(INT iMechIndex);
int pkiproxy_cryptokeystore_getmechcanunwrap(void* lpObj, int mechindex);
bool GetMechCanUnwrap(int iMechIndex);
Default Value
FALSE
Remarks
Returns True if the key can be used for key unwrapping.
The MechIndex parameter specifies the index of the item in the array. The size of the array is controlled by the MechCount property.
This property is read-only and not available at design time.
Data Type
Boolean
MechCanVerify Property (CryptoKeyStore Class)
Returns True if the key can be used for verifying signatures.
Syntax
ANSI (Cross Platform) int GetMechCanVerify(int iMechIndex); Unicode (Windows) BOOL GetMechCanVerify(INT iMechIndex);
int pkiproxy_cryptokeystore_getmechcanverify(void* lpObj, int mechindex);
bool GetMechCanVerify(int iMechIndex);
Default Value
FALSE
Remarks
Returns True if the key can be used for verifying signatures.
The MechIndex parameter specifies the index of the item in the array. The size of the array is controlled by the MechCount property.
This property is read-only and not available at design time.
Data Type
Boolean
MechCanVerifyRecover Property (CryptoKeyStore Class)
Returns True if the key can be used for verifying enveloping signatures.
Syntax
ANSI (Cross Platform) int GetMechCanVerifyRecover(int iMechIndex); Unicode (Windows) BOOL GetMechCanVerifyRecover(INT iMechIndex);
int pkiproxy_cryptokeystore_getmechcanverifyrecover(void* lpObj, int mechindex);
bool GetMechCanVerifyRecover(int iMechIndex);
Default Value
FALSE
Remarks
Returns True if the key can be used for verifying enveloping signatures.
The MechIndex parameter specifies the index of the item in the array. The size of the array is controlled by the MechCount property.
This property is read-only and not available at design time.
Data Type
Boolean
MechCanWrap Property (CryptoKeyStore Class)
Returns True if the key can be used for key wrapping.
Syntax
ANSI (Cross Platform) int GetMechCanWrap(int iMechIndex); Unicode (Windows) BOOL GetMechCanWrap(INT iMechIndex);
int pkiproxy_cryptokeystore_getmechcanwrap(void* lpObj, int mechindex);
bool GetMechCanWrap(int iMechIndex);
Default Value
FALSE
Remarks
Returns True if the key can be used for key wrapping.
The MechIndex parameter specifies the index of the item in the array. The size of the array is controlled by the MechCount property.
This property is read-only and not available at design time.
Data Type
Boolean
MechMaxBits Property (CryptoKeyStore Class)
The maximal supported length of the key in bits.
Syntax
ANSI (Cross Platform) int GetMechMaxBits(int iMechIndex); Unicode (Windows) INT GetMechMaxBits(INT iMechIndex);
int pkiproxy_cryptokeystore_getmechmaxbits(void* lpObj, int mechindex);
int GetMechMaxBits(int iMechIndex);
Default Value
0
Remarks
The maximal supported length of the key in bits.
The MechIndex parameter specifies the index of the item in the array. The size of the array is controlled by the MechCount property.
This property is read-only and not available at design time.
Data Type
Integer
MechMechanismName Property (CryptoKeyStore Class)
The official name of the mechanism, such as sha256WithRSAEncryption.
Syntax
ANSI (Cross Platform) char* GetMechMechanismName(int iMechIndex); Unicode (Windows) LPWSTR GetMechMechanismName(INT iMechIndex);
char* pkiproxy_cryptokeystore_getmechmechanismname(void* lpObj, int mechindex);
QString GetMechMechanismName(int iMechIndex);
Default Value
""
Remarks
The official name of the mechanism, such as sha256WithRSAEncryption.
The MechIndex parameter specifies the index of the item in the array. The size of the array is controlled by the MechCount property.
This property is read-only and not available at design time.
Data Type
String
MechMinBits Property (CryptoKeyStore Class)
The minimal supported length of the key in bits.
Syntax
ANSI (Cross Platform) int GetMechMinBits(int iMechIndex); Unicode (Windows) INT GetMechMinBits(INT iMechIndex);
int pkiproxy_cryptokeystore_getmechminbits(void* lpObj, int mechindex);
int GetMechMinBits(int iMechIndex);
Default Value
0
Remarks
The minimal supported length of the key in bits.
The MechIndex parameter specifies the index of the item in the array. The size of the array is controlled by the MechCount property.
This property is read-only and not available at design time.
Data Type
Integer
MechProperties Property (CryptoKeyStore Class)
A collection of custom mechanism properties as a collection of comma-separated name=value pairs.
Syntax
ANSI (Cross Platform) char* GetMechProperties(int iMechIndex); Unicode (Windows) LPWSTR GetMechProperties(INT iMechIndex);
char* pkiproxy_cryptokeystore_getmechproperties(void* lpObj, int mechindex);
QString GetMechProperties(int iMechIndex);
Default Value
""
Remarks
A collection of custom mechanism properties as a collection of comma-separated name=value pairs.
The MechIndex parameter specifies the index of the item in the array. The size of the array is controlled by the MechCount property.
This property is read-only and not available at design time.
Data Type
String
ObjectCount Property (CryptoKeyStore Class)
The number of records in the Object arrays.
Syntax
ANSI (Cross Platform) int GetObjectCount(); Unicode (Windows) INT GetObjectCount();
int pkiproxy_cryptokeystore_getobjectcount(void* lpObj);
int GetObjectCount();
Default Value
0
Remarks
This property controls the size of the following arrays:
- ObjectDescription
- ObjectEnabled
- ObjectExportable
- ObjectFingerprint
- ObjectFriendlyName
- ObjectGroup
- ObjectID
- ObjectIssuer
- ObjectKeyUsage
- ObjectNonPublic
- ObjectObjType
- ObjectOrigin
- ObjectPersistent
- ObjectProperties
- ObjectReadOnly
- ObjectSensitive
- ObjectSerialNumber
- ObjectSize
- ObjectSubject
- ObjectUserId
- ObjectUserKeySecret
- ObjectValidFrom
- ObjectValidTo
- ObjectValue
This property is read-only and not available at design time.
Data Type
Integer
ObjectDescription Property (CryptoKeyStore Class)
The description, or label, of the object.
Syntax
ANSI (Cross Platform) char* GetObjectDescription(int iObjectIndex); Unicode (Windows) LPWSTR GetObjectDescription(INT iObjectIndex);
char* pkiproxy_cryptokeystore_getobjectdescription(void* lpObj, int objectindex);
QString GetObjectDescription(int iObjectIndex);
Default Value
""
Remarks
The description, or label, of the object.
The ObjectIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ObjectCount property.
This property is read-only and not available at design time.
Data Type
String
ObjectEnabled Property (CryptoKeyStore Class)
Enables or disables this key for use in encryption or signing operation.
Syntax
ANSI (Cross Platform) int GetObjectEnabled(int iObjectIndex); Unicode (Windows) BOOL GetObjectEnabled(INT iObjectIndex);
int pkiproxy_cryptokeystore_getobjectenabled(void* lpObj, int objectindex);
bool GetObjectEnabled(int iObjectIndex);
Default Value
FALSE
Remarks
Enables or disables this key for use in encryption or signing operation.
The ObjectIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ObjectCount property.
This property is read-only and not available at design time.
Data Type
Boolean
ObjectExportable Property (CryptoKeyStore Class)
Returns True if the object is exportable (can be serialized into an array of bytes), and False otherwise.
Syntax
ANSI (Cross Platform) int GetObjectExportable(int iObjectIndex); Unicode (Windows) BOOL GetObjectExportable(INT iObjectIndex);
int pkiproxy_cryptokeystore_getobjectexportable(void* lpObj, int objectindex);
bool GetObjectExportable(int iObjectIndex);
Default Value
FALSE
Remarks
Returns True if the object is exportable (can be serialized into an array of bytes), and False otherwise.
The ObjectIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ObjectCount property.
This property is read-only and not available at design time.
Data Type
Boolean
ObjectFingerprint Property (CryptoKeyStore Class)
Contains the fingerprint (a hash imprint) of this object.
Syntax
ANSI (Cross Platform) int GetObjectFingerprint(int iObjectIndex, char* &lpObjectFingerprint, int &lenObjectFingerprint); Unicode (Windows) INT GetObjectFingerprint(INT iObjectIndex, LPSTR &lpObjectFingerprint, INT &lenObjectFingerprint);
int pkiproxy_cryptokeystore_getobjectfingerprint(void* lpObj, int objectindex, char** lpObjectFingerprint, int* lenObjectFingerprint);
QByteArray GetObjectFingerprint(int iObjectIndex);
Remarks
Contains the fingerprint (a hash imprint) of this object.
The ObjectIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ObjectCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
ObjectFriendlyName Property (CryptoKeyStore Class)
Contains an associated alias (friendly name) of the object.
Syntax
ANSI (Cross Platform) char* GetObjectFriendlyName(int iObjectIndex); Unicode (Windows) LPWSTR GetObjectFriendlyName(INT iObjectIndex);
char* pkiproxy_cryptokeystore_getobjectfriendlyname(void* lpObj, int objectindex);
QString GetObjectFriendlyName(int iObjectIndex);
Default Value
""
Remarks
Contains an associated alias (friendly name) of the object. PKCS#11 equivalent: Label.
The ObjectIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ObjectCount property.
This property is read-only and not available at design time.
Data Type
String
ObjectGroup Property (CryptoKeyStore Class)
The name of the group associated with this object.
Syntax
ANSI (Cross Platform) char* GetObjectGroup(int iObjectIndex); Unicode (Windows) LPWSTR GetObjectGroup(INT iObjectIndex);
char* pkiproxy_cryptokeystore_getobjectgroup(void* lpObj, int objectindex);
QString GetObjectGroup(int iObjectIndex);
Default Value
""
Remarks
The name of the group associated with this object. Groups allow to bind together multiple objects logically connected with each other, such as certificates and their keys.
The ObjectIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ObjectCount property.
This property is read-only and not available at design time.
Data Type
String
ObjectID Property (CryptoKeyStore Class)
Provides access to a storage-specific object identifier.
Syntax
ANSI (Cross Platform) char* GetObjectID(int iObjectIndex); Unicode (Windows) LPWSTR GetObjectID(INT iObjectIndex);
char* pkiproxy_cryptokeystore_getobjectid(void* lpObj, int objectindex);
QString GetObjectID(int iObjectIndex);
Default Value
""
Remarks
Provides access to a storage-specific object identifier.
The ObjectIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ObjectCount property.
This property is read-only and not available at design time.
Data Type
String
ObjectIssuer Property (CryptoKeyStore Class)
Returns the object issuer.
Syntax
ANSI (Cross Platform) char* GetObjectIssuer(int iObjectIndex); Unicode (Windows) LPWSTR GetObjectIssuer(INT iObjectIndex);
char* pkiproxy_cryptokeystore_getobjectissuer(void* lpObj, int objectindex);
QString GetObjectIssuer(int iObjectIndex);
Default Value
""
Remarks
Returns the object issuer. This is a cryptoprovider-dependent value,which normally aims to provide some user-friendly insight into thekey owner.
The ObjectIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ObjectCount property.
This property is read-only and not available at design time.
Data Type
String
ObjectKeyUsage Property (CryptoKeyStore Class)
Indicates the purposes of the object.
Syntax
ANSI (Cross Platform) char* GetObjectKeyUsage(int iObjectIndex); Unicode (Windows) LPWSTR GetObjectKeyUsage(INT iObjectIndex);
char* pkiproxy_cryptokeystore_getobjectkeyusage(void* lpObj, int objectindex);
QString GetObjectKeyUsage(int iObjectIndex);
Default Value
""
Remarks
Indicates the purposes of the object. For certificate object, this corresponds to the elements contained in the Key Usage and Extended Key Usage extensions.
The ObjectIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ObjectCount property.
This property is read-only and not available at design time.
Data Type
String
ObjectNonPublic Property (CryptoKeyStore Class)
Returns True if the object is private, and False otherwise.
Syntax
ANSI (Cross Platform) int GetObjectNonPublic(int iObjectIndex); Unicode (Windows) BOOL GetObjectNonPublic(INT iObjectIndex);
int pkiproxy_cryptokeystore_getobjectnonpublic(void* lpObj, int objectindex);
bool GetObjectNonPublic(int iObjectIndex);
Default Value
FALSE
Remarks
Returns True if the object is private, and False otherwise.
The ObjectIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ObjectCount property.
This property is read-only and not available at design time.
Data Type
Boolean
ObjectObjType Property (CryptoKeyStore Class)
The type of the key contained in the object.
Syntax
ANSI (Cross Platform) int GetObjectObjType(int iObjectIndex); Unicode (Windows) INT GetObjectObjType(INT iObjectIndex);
Possible Values
COT_UNKNOWN(0),
COT_CERTIFICATE(1),
COT_DATA(2),
COT_GENERIC(3)
int pkiproxy_cryptokeystore_getobjectobjtype(void* lpObj, int objectindex);
int GetObjectObjType(int iObjectIndex);
Default Value
0
Remarks
The type of the key contained in the object.
Use this property to establish the object type.
The ObjectIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ObjectCount property.
This property is read-only and not available at design time.
Data Type
Integer
ObjectOrigin Property (CryptoKeyStore Class)
Returns the origin (the Storage ID) of this object.
Syntax
ANSI (Cross Platform) char* GetObjectOrigin(int iObjectIndex); Unicode (Windows) LPWSTR GetObjectOrigin(INT iObjectIndex);
char* pkiproxy_cryptokeystore_getobjectorigin(void* lpObj, int objectindex);
QString GetObjectOrigin(int iObjectIndex);
Default Value
""
Remarks
Returns the origin (the Storage ID) of this object.
The ObjectIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ObjectCount property.
This property is read-only and not available at design time.
Data Type
String
ObjectPersistent Property (CryptoKeyStore Class)
Returns True if the object is persistent in the store.
Syntax
ANSI (Cross Platform) int GetObjectPersistent(int iObjectIndex); Unicode (Windows) BOOL GetObjectPersistent(INT iObjectIndex);
int pkiproxy_cryptokeystore_getobjectpersistent(void* lpObj, int objectindex);
bool GetObjectPersistent(int iObjectIndex);
Default Value
FALSE
Remarks
Returns True if the object is persistent in the store.
The ObjectIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ObjectCount property.
This property is read-only and not available at design time.
Data Type
Boolean
ObjectProperties Property (CryptoKeyStore Class)
Returns a collection of object properties as a comma separated name=value list.
Syntax
ANSI (Cross Platform) char* GetObjectProperties(int iObjectIndex); Unicode (Windows) LPWSTR GetObjectProperties(INT iObjectIndex);
char* pkiproxy_cryptokeystore_getobjectproperties(void* lpObj, int objectindex);
QString GetObjectProperties(int iObjectIndex);
Default Value
""
Remarks
Returns a collection of object properties as a comma separated name=value list.
The ObjectIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ObjectCount property.
This property is read-only and not available at design time.
Data Type
String
ObjectReadOnly Property (CryptoKeyStore Class)
Returns True if the object is readonly.
Syntax
ANSI (Cross Platform) int GetObjectReadOnly(int iObjectIndex); Unicode (Windows) BOOL GetObjectReadOnly(INT iObjectIndex);
int pkiproxy_cryptokeystore_getobjectreadonly(void* lpObj, int objectindex);
bool GetObjectReadOnly(int iObjectIndex);
Default Value
FALSE
Remarks
Returns True if the object is readonly.
The ObjectIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ObjectCount property.
This property is read-only and not available at design time.
Data Type
Boolean
ObjectSensitive Property (CryptoKeyStore Class)
Returns True if the object is sensitive, and False otherwise.
Syntax
ANSI (Cross Platform) int GetObjectSensitive(int iObjectIndex); Unicode (Windows) BOOL GetObjectSensitive(INT iObjectIndex);
int pkiproxy_cryptokeystore_getobjectsensitive(void* lpObj, int objectindex);
bool GetObjectSensitive(int iObjectIndex);
Default Value
FALSE
Remarks
Returns True if the object is sensitive, and False otherwise.
The ObjectIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ObjectCount property.
This property is read-only and not available at design time.
Data Type
Boolean
ObjectSerialNumber Property (CryptoKeyStore Class)
Returns the certificate's serial number.
Syntax
ANSI (Cross Platform) char* GetObjectSerialNumber(int iObjectIndex); Unicode (Windows) LPWSTR GetObjectSerialNumber(INT iObjectIndex);
char* pkiproxy_cryptokeystore_getobjectserialnumber(void* lpObj, int objectindex);
QString GetObjectSerialNumber(int iObjectIndex);
Default Value
""
Remarks
Returns the certificate's serial number.
The ObjectIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ObjectCount property.
This property is read-only and not available at design time.
Data Type
String
ObjectSize Property (CryptoKeyStore Class)
The size of the object in bytes.
Syntax
ANSI (Cross Platform) int GetObjectSize(int iObjectIndex); Unicode (Windows) INT GetObjectSize(INT iObjectIndex);
int pkiproxy_cryptokeystore_getobjectsize(void* lpObj, int objectindex);
int GetObjectSize(int iObjectIndex);
Default Value
0
Remarks
The size of the object in bytes
The ObjectIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ObjectCount property.
This property is read-only and not available at design time.
Data Type
Integer
ObjectSubject Property (CryptoKeyStore Class)
Returns the object subject.
Syntax
ANSI (Cross Platform) char* GetObjectSubject(int iObjectIndex); Unicode (Windows) LPWSTR GetObjectSubject(INT iObjectIndex);
char* pkiproxy_cryptokeystore_getobjectsubject(void* lpObj, int objectindex);
QString GetObjectSubject(int iObjectIndex);
Default Value
""
Remarks
Returns the object subject. This is a cryptoprovider-dependent value,which normally aims to provide some user-friendly insight into thekey owner.
The ObjectIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ObjectCount property.
This property is read-only and not available at design time.
Data Type
String
ObjectUserId Property (CryptoKeyStore Class)
TBD.
Syntax
ANSI (Cross Platform) char* GetObjectUserId(int iObjectIndex); Unicode (Windows) LPWSTR GetObjectUserId(INT iObjectIndex);
char* pkiproxy_cryptokeystore_getobjectuserid(void* lpObj, int objectindex);
QString GetObjectUserId(int iObjectIndex);
Default Value
""
Remarks
TBD
The ObjectIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ObjectCount property.
This property is read-only and not available at design time.
Data Type
String
ObjectUserKeySecret Property (CryptoKeyStore Class)
TBD.
Syntax
ANSI (Cross Platform) char* GetObjectUserKeySecret(int iObjectIndex); Unicode (Windows) LPWSTR GetObjectUserKeySecret(INT iObjectIndex);
char* pkiproxy_cryptokeystore_getobjectuserkeysecret(void* lpObj, int objectindex);
QString GetObjectUserKeySecret(int iObjectIndex);
Default Value
""
Remarks
TBD
The ObjectIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ObjectCount property.
This property is read-only and not available at design time.
Data Type
String
ObjectValidFrom Property (CryptoKeyStore Class)
The time point at which the object becomes valid, in UTC.
Syntax
ANSI (Cross Platform) char* GetObjectValidFrom(int iObjectIndex); Unicode (Windows) LPWSTR GetObjectValidFrom(INT iObjectIndex);
char* pkiproxy_cryptokeystore_getobjectvalidfrom(void* lpObj, int objectindex);
QString GetObjectValidFrom(int iObjectIndex);
Default Value
""
Remarks
The time point at which the object becomes valid, in UTC.
The ObjectIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ObjectCount property.
This property is read-only and not available at design time.
Data Type
String
ObjectValidTo Property (CryptoKeyStore Class)
The time point at which the object expires, in UTC.
Syntax
ANSI (Cross Platform) char* GetObjectValidTo(int iObjectIndex); Unicode (Windows) LPWSTR GetObjectValidTo(INT iObjectIndex);
char* pkiproxy_cryptokeystore_getobjectvalidto(void* lpObj, int objectindex);
QString GetObjectValidTo(int iObjectIndex);
Default Value
""
Remarks
The time point at which the object expires, in UTC.
The ObjectIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ObjectCount property.
This property is read-only and not available at design time.
Data Type
String
ObjectValue Property (CryptoKeyStore Class)
The byte array representation of the object.
Syntax
ANSI (Cross Platform) int GetObjectValue(int iObjectIndex, char* &lpObjectValue, int &lenObjectValue); Unicode (Windows) INT GetObjectValue(INT iObjectIndex, LPSTR &lpObjectValue, INT &lenObjectValue);
int pkiproxy_cryptokeystore_getobjectvalue(void* lpObj, int objectindex, char** lpObjectValue, int* lenObjectValue);
QByteArray GetObjectValue(int iObjectIndex);
Remarks
The byte array representation of the object. This may not be available for non-ObjectExportable objects.
The ObjectIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ObjectCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
Opened Property (CryptoKeyStore Class)
Indicates whether the storage is in the open state.
Syntax
ANSI (Cross Platform) int GetOpened(); Unicode (Windows) BOOL GetOpened();
int pkiproxy_cryptokeystore_getopened(void* lpObj);
bool GetOpened();
Default Value
FALSE
Remarks
Use this property to check if the storage has been 'opened.' Different kinds of key storages imply different meanings for 'being opened', but generally a storage is open if it is available for operations.
Use Open method to open a storage.
This property is read-only and not available at design time.
Data Type
Boolean
ParCount Property (CryptoKeyStore Class)
The number of records in the Par arrays.
Syntax
ANSI (Cross Platform) int GetParCount();
int SetParCount(int iParCount); Unicode (Windows) INT GetParCount();
INT SetParCount(INT iParCount);
int pkiproxy_cryptokeystore_getparcount(void* lpObj);
int pkiproxy_cryptokeystore_setparcount(void* lpObj, int iParCount);
int GetParCount();
int SetParCount(int iParCount);
Default Value
0
Remarks
This property controls the size of the following arrays:
The array indices start at 0 and end at ParCount - 1.This property is not available at design time.
Data Type
Integer
ParName Property (CryptoKeyStore Class)
The name element in a (name, value) pair.
Syntax
ANSI (Cross Platform) char* GetParName(int iParIndex);
int SetParName(int iParIndex, const char* lpszParName); Unicode (Windows) LPWSTR GetParName(INT iParIndex);
INT SetParName(INT iParIndex, LPCWSTR lpszParName);
char* pkiproxy_cryptokeystore_getparname(void* lpObj, int parindex);
int pkiproxy_cryptokeystore_setparname(void* lpObj, int parindex, const char* lpszParName);
QString GetParName(int iParIndex);
int SetParName(int iParIndex, QString qsParName);
Default Value
""
Remarks
The name element in a (name, value) pair.
The ParIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ParCount property.
This property is not available at design time.
Data Type
String
ParValue Property (CryptoKeyStore Class)
The value element in a (name, value) pair.
Syntax
ANSI (Cross Platform) char* GetParValue(int iParIndex);
int SetParValue(int iParIndex, const char* lpszParValue); Unicode (Windows) LPWSTR GetParValue(INT iParIndex);
INT SetParValue(INT iParIndex, LPCWSTR lpszParValue);
char* pkiproxy_cryptokeystore_getparvalue(void* lpObj, int parindex);
int pkiproxy_cryptokeystore_setparvalue(void* lpObj, int parindex, const char* lpszParValue);
QString GetParValue(int iParIndex);
int SetParValue(int iParIndex, QString qsParValue);
Default Value
""
Remarks
The value element in a (name, value) pair.
The ParIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ParCount property.
This property is not available at design time.
Data Type
String
SessionClientAuthenticated Property (CryptoKeyStore Class)
Specifies whether client authentication was performed during this connection.
Syntax
ANSI (Cross Platform) int GetSessionClientAuthenticated(); Unicode (Windows) BOOL GetSessionClientAuthenticated();
int pkiproxy_cryptokeystore_getsessionclientauthenticated(void* lpObj);
bool GetSessionClientAuthenticated();
Default Value
FALSE
Remarks
Specifies whether client authentication was performed during this connection.
This property is read-only.
Data Type
Boolean
SessionClientAuthRequested Property (CryptoKeyStore Class)
Specifies whether client authentication was requested during this connection.
Syntax
ANSI (Cross Platform) int GetSessionClientAuthRequested(); Unicode (Windows) BOOL GetSessionClientAuthRequested();
int pkiproxy_cryptokeystore_getsessionclientauthrequested(void* lpObj);
bool GetSessionClientAuthRequested();
Default Value
FALSE
Remarks
Specifies whether client authentication was requested during this connection.
This property is read-only.
Data Type
Boolean
SessionClientCredential Property (CryptoKeyStore Class)
Contains the client credential that was used for authentication (e.
Syntax
ANSI (Cross Platform) char* GetSessionClientCredential(); Unicode (Windows) LPWSTR GetSessionClientCredential();
char* pkiproxy_cryptokeystore_getsessionclientcredential(void* lpObj);
QString GetSessionClientCredential();
Default Value
""
Remarks
Contains the client credential that was used for authentication (e.g. the certificate)
This property is read-only.
Data Type
String
SessionConnectionEstablished Property (CryptoKeyStore Class)
Indicates whether the connection has been established fully.
Syntax
ANSI (Cross Platform) int GetSessionConnectionEstablished(); Unicode (Windows) BOOL GetSessionConnectionEstablished();
int pkiproxy_cryptokeystore_getsessionconnectionestablished(void* lpObj);
bool GetSessionConnectionEstablished();
Default Value
FALSE
Remarks
Indicates whether the connection has been established fully.
This property is read-only.
Data Type
Boolean
SessionConnectionLog Property (CryptoKeyStore Class)
Contains the connection log.
Syntax
ANSI (Cross Platform) char* GetSessionConnectionLog(); Unicode (Windows) LPWSTR GetSessionConnectionLog();
char* pkiproxy_cryptokeystore_getsessionconnectionlog(void* lpObj);
QString GetSessionConnectionLog();
Default Value
""
Remarks
Contains the connection log. This information may be useful in investigating connection issues.
This property is read-only.
Data Type
String
SessionOperationMessage Property (CryptoKeyStore Class)
Contains the status string of the last operation.
Syntax
ANSI (Cross Platform) char* GetSessionOperationMessage(); Unicode (Windows) LPWSTR GetSessionOperationMessage();
char* pkiproxy_cryptokeystore_getsessionoperationmessage(void* lpObj);
QString GetSessionOperationMessage();
Default Value
""
Remarks
Contains the status string of the last operation.
This property is read-only.
Data Type
String
SessionOperationStatus Property (CryptoKeyStore Class)
Contains the status code of the last operation.
Syntax
ANSI (Cross Platform) int GetSessionOperationStatus(); Unicode (Windows) INT GetSessionOperationStatus();
int pkiproxy_cryptokeystore_getsessionoperationstatus(void* lpObj);
int GetSessionOperationStatus();
Default Value
0
Remarks
Contains the status code of the last operation.
This property is read-only.
Data Type
Integer
SessionProtection Property (CryptoKeyStore Class)
The protection parameters employed by this connection.
Syntax
ANSI (Cross Platform) char* GetSessionProtection(); Unicode (Windows) LPWSTR GetSessionProtection();
char* pkiproxy_cryptokeystore_getsessionprotection(void* lpObj);
QString GetSessionProtection();
Default Value
""
Remarks
The protection parameters employed by this connection.
For TLS connections, this property returns the ciphersuite that was/is employed by the connection, e.g: TLS:RSA-AES256-SHA256
This property is read-only.
Data Type
String
SessionSecureConnection Property (CryptoKeyStore Class)
Indicates whether TLS or SSL is enabled for this connection.
Syntax
ANSI (Cross Platform) int GetSessionSecureConnection(); Unicode (Windows) BOOL GetSessionSecureConnection();
int pkiproxy_cryptokeystore_getsessionsecureconnection(void* lpObj);
bool GetSessionSecureConnection();
Default Value
FALSE
Remarks
Indicates whether TLS or SSL is enabled for this connection.
This property is read-only.
Data Type
Boolean
SessionServiceAuthenticated Property (CryptoKeyStore Class)
Indicates whether service authentication was performed during a TLS-enabled or otherwise protected connection.
Syntax
ANSI (Cross Platform) int GetSessionServiceAuthenticated(); Unicode (Windows) BOOL GetSessionServiceAuthenticated();
int pkiproxy_cryptokeystore_getsessionserviceauthenticated(void* lpObj);
bool GetSessionServiceAuthenticated();
Default Value
FALSE
Remarks
Indicates whether service authentication was performed during a TLS-enabled or otherwise protected connection.
This property is read-only.
Data Type
Boolean
SessionServiceCredential Property (CryptoKeyStore Class)
Contains the service credential that was used for authentication (e.
Syntax
ANSI (Cross Platform) char* GetSessionServiceCredential(); Unicode (Windows) LPWSTR GetSessionServiceCredential();
char* pkiproxy_cryptokeystore_getsessionservicecredential(void* lpObj);
QString GetSessionServiceCredential();
Default Value
""
Remarks
Contains the service credential that was used for authentication (e.g. the certificate)
This property is read-only.
Data Type
String
SessionSessionID Property (CryptoKeyStore Class)
The unique identifier assigned to this session.
Syntax
ANSI (Cross Platform) char* GetSessionSessionID(); Unicode (Windows) LPWSTR GetSessionSessionID();
char* pkiproxy_cryptokeystore_getsessionsessionid(void* lpObj);
QString GetSessionSessionID();
Default Value
""
Remarks
The unique identifier assigned to this session.
This property is read-only and not available at design time.
Data Type
String
SessionTotalBytesReceived Property (CryptoKeyStore Class)
The total number of bytes received over this connection.
Syntax
ANSI (Cross Platform) int64 GetSessionTotalBytesReceived(); Unicode (Windows) LONG64 GetSessionTotalBytesReceived();
int64 pkiproxy_cryptokeystore_getsessiontotalbytesreceived(void* lpObj);
qint64 GetSessionTotalBytesReceived();
Default Value
0
Remarks
The total number of bytes received over this connection.
This property is read-only.
Data Type
Long64
SessionTotalBytesSent Property (CryptoKeyStore Class)
The total number of bytes sent over this connection.
Syntax
ANSI (Cross Platform) int64 GetSessionTotalBytesSent(); Unicode (Windows) LONG64 GetSessionTotalBytesSent();
int64 pkiproxy_cryptokeystore_getsessiontotalbytessent(void* lpObj);
qint64 GetSessionTotalBytesSent();
Default Value
0
Remarks
The total number of bytes sent over this connection.
This property is read-only.
Data Type
Long64
StorageID Property (CryptoKeyStore Class)
A unique identifier of this storage.
Syntax
ANSI (Cross Platform) char* GetStorageID(); Unicode (Windows) LPWSTR GetStorageID();
char* pkiproxy_cryptokeystore_getstorageid(void* lpObj);
QString GetStorageID();
Default Value
""
Remarks
Use this property to get a unique ID of this storage. The format of ID may differ for different kinds of key storages, and may range from a file path for a file storage, to a URI-like ID for a PKCS#11 storage, to an empty value for an in-memory storage.
This property is read-only.
Data Type
String
UserId Property (CryptoKeyStore Class)
TBD.
Syntax
ANSI (Cross Platform) char* GetUserId();
int SetUserId(const char* lpszUserId); Unicode (Windows) LPWSTR GetUserId();
INT SetUserId(LPCWSTR lpszUserId);
char* pkiproxy_cryptokeystore_getuserid(void* lpObj);
int pkiproxy_cryptokeystore_setuserid(void* lpObj, const char* lpszUserId);
QString GetUserId();
int SetUserId(QString qsUserId);
Default Value
""
Remarks
TBD
This property is not available at design time.
Data Type
String
UserKeySecret Property (CryptoKeyStore Class)
TBD.
Syntax
ANSI (Cross Platform) char* GetUserKeySecret();
int SetUserKeySecret(const char* lpszUserKeySecret); Unicode (Windows) LPWSTR GetUserKeySecret();
INT SetUserKeySecret(LPCWSTR lpszUserKeySecret);
char* pkiproxy_cryptokeystore_getuserkeysecret(void* lpObj);
int pkiproxy_cryptokeystore_setuserkeysecret(void* lpObj, const char* lpszUserKeySecret);
QString GetUserKeySecret();
int SetUserKeySecret(QString qsUserKeySecret);
Default Value
""
Remarks
TBD
This property is not available at design time.
Data Type
String
AddKey Method (CryptoKeyStore Class)
Adds the pinned key to the storage.
Syntax
ANSI (Cross Platform) int AddKey(); Unicode (Windows) INT AddKey();
int pkiproxy_cryptokeystore_addkey(void* lpObj);
int AddKey();
Remarks
This method adds a key attached to the PinnedKey property to the storage. This method is a handy way of adding keys generated/returned by other components.
Error Handling (C++)
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
AddObject Method (CryptoKeyStore Class)
Adds the pinned object to the storage.
Syntax
ANSI (Cross Platform) int AddObject(); Unicode (Windows) INT AddObject();
int pkiproxy_cryptokeystore_addobject(void* lpObj);
int AddObject();
Remarks
This method adds a key attached to the PinnedObject property to the storage.
Error Handling (C++)
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
Clear Method (CryptoKeyStore Class)
Removes all existing keys and objects from the storage.
Syntax
ANSI (Cross Platform) int Clear(); Unicode (Windows) INT Clear();
int pkiproxy_cryptokeystore_clear(void* lpObj);
int Clear();
Remarks
Use this method to empty the storage.
Error Handling (C++)
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
Close Method (CryptoKeyStore Class)
Closes the logical storage.
Syntax
ANSI (Cross Platform) int Close(); Unicode (Windows) INT Close();
int pkiproxy_cryptokeystore_close(void* lpObj);
int Close();
Remarks
Use this method to close the key store.
Error Handling (C++)
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
Commit Method (CryptoKeyStore Class)
Commits any changes made locally to the store.
Syntax
ANSI (Cross Platform) int Commit(); Unicode (Windows) INT Commit();
int pkiproxy_cryptokeystore_commit(void* lpObj);
int Commit();
Remarks
This operation has no meaning for stores with direct access.
Error Handling (C++)
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
CommitKey Method (CryptoKeyStore Class)
Commits any changes made to the PinnedKey .
Syntax
ANSI (Cross Platform) int CommitKey(); Unicode (Windows) INT CommitKey();
int pkiproxy_cryptokeystore_commitkey(void* lpObj);
int CommitKey();
Remarks
TBD
Error Handling (C++)
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
CommitObject Method (CryptoKeyStore Class)
Commits any changes made to the PinnedObject .
Syntax
ANSI (Cross Platform) int CommitObject(); Unicode (Windows) INT CommitObject();
int pkiproxy_cryptokeystore_commitobject(void* lpObj);
int CommitObject();
Remarks
TBD
Error Handling (C++)
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
Config Method (CryptoKeyStore Class)
Sets or retrieves a configuration setting.
Syntax
ANSI (Cross Platform) char* Config(const char* lpszConfigurationString); Unicode (Windows) LPWSTR Config(LPCWSTR lpszConfigurationString);
char* pkiproxy_cryptokeystore_config(void* lpObj, const char* lpszConfigurationString);
QString Config(const QString& qsConfigurationString);
Remarks
Config is a generic method available in every class. It is used to set and retrieve configuration settings for the class.
These settings are similar in functionality to properties, but they are rarely used. In order to avoid "polluting" the property namespace of the class, access to these internal properties is provided through the Config method.
To set a configuration setting named PROPERTY, you must call Config("PROPERTY=VALUE"), where VALUE is the value of the setting expressed as a string. For boolean values, use the strings "True", "False", "0", "1", "Yes", or "No" (case does not matter).
To read (query) the value of a configuration setting, you must call Config("PROPERTY"). The value will be returned as a string.
Error Handling (C++)
This method returns a String value; after it returns, call the GetLastErrorCode() method to obtain its result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message.
DeriveKey Method (CryptoKeyStore Class)
Generates a strong cryptographic key from a password.
Syntax
ANSI (Cross Platform) char* DeriveKey(int iKeyBits, const char* lpszPassword, const char* lpszSalt, const char* lpszSourceKeyID); Unicode (Windows) LPWSTR DeriveKey(INT iKeyBits, LPCWSTR lpszPassword, LPCWSTR lpszSalt, LPCWSTR lpszSourceKeyID);
char* pkiproxy_cryptokeystore_derivekey(void* lpObj, int iKeyBits, const char* lpszPassword, const char* lpszSalt, const char* lpszSourceKeyID);
QString DeriveKey(int iKeyBits, const QString& qsPassword, const QString& qsSalt, const QString& qsSourceKeyID);
Remarks
Use this method to generate a cryptographically strong key of a needed length from a password.
This method uses a general-purpose PBKDF2 function with PRF1 and 2048 iterations.
Error Handling (C++)
This method returns a String value; after it returns, call the GetLastErrorCode() method to obtain its result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message.
ExportKey Method (CryptoKeyStore Class)
Exports the pinned key.
Syntax
ANSI (Cross Platform) char* ExportKey(const char* lpszWrapKeyID, const char* lpszPars, int *lpSize = NULL); Unicode (Windows) LPSTR ExportKey(LPCWSTR lpszWrapKeyID, LPCWSTR lpszPars, LPINT lpSize = NULL);
char* pkiproxy_cryptokeystore_exportkey(void* lpObj, const char* lpszWrapKeyID, const char* lpszPars, int *lpSize);
QByteArray ExportKey(const QString& qsWrapKeyID, const QString& qsPars);
Remarks
Use this method to export a key referenced in PinnedKey to a byte array. If WrapKeyID is provided, the key will be exported in encrypted form.
Error Handling (C++)
This method returns a Binary String value (with length lpSize); after it returns, call the GetLastErrorCode() method to obtain its result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message.
ExportObject Method (CryptoKeyStore Class)
Exports the pinned object.
Syntax
ANSI (Cross Platform) char* ExportObject(const char* lpszWrapKeyID, const char* lpszPars, int *lpSize = NULL); Unicode (Windows) LPSTR ExportObject(LPCWSTR lpszWrapKeyID, LPCWSTR lpszPars, LPINT lpSize = NULL);
char* pkiproxy_cryptokeystore_exportobject(void* lpObj, const char* lpszWrapKeyID, const char* lpszPars, int *lpSize);
QByteArray ExportObject(const QString& qsWrapKeyID, const QString& qsPars);
Remarks
Use this method to export a key referenced in PinnedObject to a byte array.
Error Handling (C++)
This method returns a Binary String value (with length lpSize); after it returns, call the GetLastErrorCode() method to obtain its result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message.
GenerateKey Method (CryptoKeyStore Class)
Generates a new cryptographic key or key pair.
Syntax
ANSI (Cross Platform) int GenerateKey(const char* lpszKeyAlgorithm, const char* lpszScheme, const char* lpszSchemeParams, int iKeyBits); Unicode (Windows) INT GenerateKey(LPCWSTR lpszKeyAlgorithm, LPCWSTR lpszScheme, LPCWSTR lpszSchemeParams, INT iKeyBits);
int pkiproxy_cryptokeystore_generatekey(void* lpObj, const char* lpszKeyAlgorithm, const char* lpszScheme, const char* lpszSchemeParams, int iKeyBits);
int GenerateKey(const QString& qsKeyAlgorithm, const QString& qsScheme, const QString& qsSchemeParams, int iKeyBits);
Remarks
Call this method to generate a new key or keypair with the desired KeyAlgorithmand KeyBits of length.
The generated key will be added to the store and populated in the PinnedKey property.
Error Handling (C++)
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
GetKeyParam Method (CryptoKeyStore Class)
Returns an algorithm-specific key parameter.
Syntax
ANSI (Cross Platform) char* GetKeyParam(const char* lpszName, int *lpSize = NULL); Unicode (Windows) LPSTR GetKeyParam(LPCWSTR lpszName, LPINT lpSize = NULL);
char* pkiproxy_cryptokeystore_getkeyparam(void* lpObj, const char* lpszName, int *lpSize);
QByteArray GetKeyParam(const QString& qsName);
Remarks
Use this method to retrieve an algorithm-specific key parameter.
Error Handling (C++)
This method returns a Byte Array value (with length lpSize); after it returns, call the GetLastErrorCode() method to obtain its result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message.
GetKeyParamStr Method (CryptoKeyStore Class)
Returns an algorithm-specific key parameter to a string.
Syntax
ANSI (Cross Platform) char* GetKeyParamStr(const char* lpszName); Unicode (Windows) LPWSTR GetKeyParamStr(LPCWSTR lpszName);
char* pkiproxy_cryptokeystore_getkeyparamstr(void* lpObj, const char* lpszName);
QString GetKeyParamStr(const QString& qsName);
Remarks
Use this method to get an algorithm-specific key parameter to a string.
Error Handling (C++)
This method returns a String value; after it returns, call the GetLastErrorCode() method to obtain its result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message.
GetObjectParam Method (CryptoKeyStore Class)
Returns an object parameter.
Syntax
ANSI (Cross Platform) char* GetObjectParam(const char* lpszName, int *lpSize = NULL); Unicode (Windows) LPSTR GetObjectParam(LPCWSTR lpszName, LPINT lpSize = NULL);
char* pkiproxy_cryptokeystore_getobjectparam(void* lpObj, const char* lpszName, int *lpSize);
QByteArray GetObjectParam(const QString& qsName);
Remarks
Use this method to retrieve an object parameter.
Error Handling (C++)
This method returns a Byte Array value (with length lpSize); after it returns, call the GetLastErrorCode() method to obtain its result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message.
GetObjectParamStr Method (CryptoKeyStore Class)
Returns an object parameter to a string.
Syntax
ANSI (Cross Platform) char* GetObjectParamStr(const char* lpszName); Unicode (Windows) LPWSTR GetObjectParamStr(LPCWSTR lpszName);
char* pkiproxy_cryptokeystore_getobjectparamstr(void* lpObj, const char* lpszName);
QString GetObjectParamStr(const QString& qsName);
Remarks
Use this method to get an object parameter to a string.
Error Handling (C++)
This method returns a String value; after it returns, call the GetLastErrorCode() method to obtain its result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message.
ImportKey Method (CryptoKeyStore Class)
Imports a key to the storage.
Syntax
ANSI (Cross Platform) char* ImportKey(const char* lpValue, int lenValue, const char* lpszKeyAlgorithm, const char* lpszScheme, const char* lpszSchemeParams, const char* lpszWrapKeyID, const char* lpszPars); Unicode (Windows) LPWSTR ImportKey(LPCSTR lpValue, INT lenValue, LPCWSTR lpszKeyAlgorithm, LPCWSTR lpszScheme, LPCWSTR lpszSchemeParams, LPCWSTR lpszWrapKeyID, LPCWSTR lpszPars);
char* pkiproxy_cryptokeystore_importkey(void* lpObj, const char* lpValue, int lenValue, const char* lpszKeyAlgorithm, const char* lpszScheme, const char* lpszSchemeParams, const char* lpszWrapKeyID, const char* lpszPars);
QString ImportKey(QByteArray qbaValue, const QString& qsKeyAlgorithm, const QString& qsScheme, const QString& qsSchemeParams, const QString& qsWrapKeyID, const QString& qsPars);
Remarks
Use this method to import a key contained in a byte array.
Error Handling (C++)
This method returns a String value; after it returns, call the GetLastErrorCode() method to obtain its result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message.
ImportObject Method (CryptoKeyStore Class)
Imports an object to the storage.
Syntax
ANSI (Cross Platform) char* ImportObject(int iObjType, const char* lpObjData, int lenObjData, const char* lpszPars); Unicode (Windows) LPWSTR ImportObject(INT iObjType, LPCSTR lpObjData, INT lenObjData, LPCWSTR lpszPars);
char* pkiproxy_cryptokeystore_importobject(void* lpObj, int iObjType, const char* lpObjData, int lenObjData, const char* lpszPars);
QString ImportObject(int iObjType, QByteArray qbaObjData, const QString& qsPars);
Remarks
Use this method to import an object contained in a byte array.
Error Handling (C++)
This method returns a String value; after it returns, call the GetLastErrorCode() method to obtain its result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message.
Lock Method (CryptoKeyStore Class)
Locks the store, preventing concurrent operations by other users.
Syntax
ANSI (Cross Platform) char* Lock(const char* lpszAccess, int iTimeout); Unicode (Windows) LPWSTR Lock(LPCWSTR lpszAccess, INT iTimeout);
char* pkiproxy_cryptokeystore_lock(void* lpObj, const char* lpszAccess, int iTimeout);
QString Lock(const QString& qsAccess, int iTimeout);
Remarks
This operation may not be supported by all store types. Supported Access values: "read", "write". Returns a lock token, which should be passed to the Unlock method when the work is over.
Error Handling (C++)
This method returns a String value; after it returns, call the GetLastErrorCode() method to obtain its result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message.
Open Method (CryptoKeyStore Class)
Opens existing storage or creates one in memory.
Syntax
ANSI (Cross Platform) int Open(const char* lpszStorageID, const char* lpszOpenMode, const char* lpszAccess); Unicode (Windows) INT Open(LPCWSTR lpszStorageID, LPCWSTR lpszOpenMode, LPCWSTR lpszAccess);
int pkiproxy_cryptokeystore_open(void* lpObj, const char* lpszStorageID, const char* lpszOpenMode, const char* lpszAccess);
int Open(const QString& qsStorageID, const QString& qsOpenMode, const QString& qsAccess);
Remarks
Use this method to open the storage with the given StorageID. Key storages can come from several different locations, detailed below. OpenMode: "open", "create", "createnew", "openorcreate" Access: "read", "readwrite", "write", plus a "direct" modifier for real-time access (not commit/update). For example: "read,direct"
Error Handling (C++)
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
PerformAction Method (CryptoKeyStore Class)
Performs a custom action and returns its result.
Syntax
ANSI (Cross Platform) char* PerformAction(const char* lpszAction, const char* lpszParam); Unicode (Windows) LPWSTR PerformAction(LPCWSTR lpszAction, LPCWSTR lpszParam);
char* pkiproxy_cryptokeystore_performaction(void* lpObj, const char* lpszAction, const char* lpszParam);
QString PerformAction(const QString& qsAction, const QString& qsParam);
Remarks
Use this method to perform secondary actions not available via the default API.
Error Handling (C++)
This method returns a String value; after it returns, call the GetLastErrorCode() method to obtain its result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message.
RemoveKey Method (CryptoKeyStore Class)
Removes a key from the storage.
Syntax
ANSI (Cross Platform) int RemoveKey(int iIndex); Unicode (Windows) INT RemoveKey(INT iIndex);
int pkiproxy_cryptokeystore_removekey(void* lpObj, int iIndex);
int RemoveKey(int iIndex);
Remarks
Use this method to remove a key from the storage by its index.
Error Handling (C++)
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
RemoveKeys Method (CryptoKeyStore Class)
Removes a subset of keys from the storage by their IDs.
Syntax
ANSI (Cross Platform) int RemoveKeys(const char* lpszIDs); Unicode (Windows) INT RemoveKeys(LPCWSTR lpszIDs);
int pkiproxy_cryptokeystore_removekeys(void* lpObj, const char* lpszIDs);
int RemoveKeys(const QString& qsIDs);
Remarks
Use this method to remove a selection of keys from the storage by their IDs. Pass comma-separated IDs or ":selected:" to remove the selected keys.
Error Handling (C++)
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
RemoveObject Method (CryptoKeyStore Class)
Removes an object from the storage.
Syntax
ANSI (Cross Platform) int RemoveObject(int iIndex); Unicode (Windows) INT RemoveObject(INT iIndex);
int pkiproxy_cryptokeystore_removeobject(void* lpObj, int iIndex);
int RemoveObject(int iIndex);
Remarks
Use this method to remove an object from the storage by its index.
Error Handling (C++)
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
RemoveObjects Method (CryptoKeyStore Class)
Removes a subset of objects from the storage by their IDs.
Syntax
ANSI (Cross Platform) int RemoveObjects(const char* lpszIDs); Unicode (Windows) INT RemoveObjects(LPCWSTR lpszIDs);
int pkiproxy_cryptokeystore_removeobjects(void* lpObj, const char* lpszIDs);
int RemoveObjects(const QString& qsIDs);
Remarks
Use this method to remove a selection of objects from the storage by their IDs. Pass comma-separated IDs or ":selected:" to remove the objects previously selected.
Error Handling (C++)
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
Select Method (CryptoKeyStore Class)
Allows the selection of keys from the store.
Syntax
ANSI (Cross Platform) char* Select(const char* lpszFilter, int bSelectKeys, int bSelectObjects, int iMaxCount); Unicode (Windows) LPWSTR Select(LPCWSTR lpszFilter, BOOL bSelectKeys, BOOL bSelectObjects, INT iMaxCount);
char* pkiproxy_cryptokeystore_select(void* lpObj, const char* lpszFilter, int bSelectKeys, int bSelectObjects, int iMaxCount);
QString Select(const QString& qsFilter, bool bSelectKeys, bool bSelectObjects, int iMaxCount);
Remarks
This function allows the user to select keys from the storage by applying a Filter. MaxCount limits the number of objects and keys selected. If not all objects and keys were returned because of the MaxCount limit, the method returns a "select token" that can be used to continue the search. Pass it as a filter to obtain the next portion of the list.
Error Handling (C++)
This method returns a String value; after it returns, call the GetLastErrorCode() method to obtain its result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message.
SetKeyParam Method (CryptoKeyStore Class)
Sets an algorithm-specific key parameter.
Syntax
ANSI (Cross Platform) int SetKeyParam(const char* lpszName, const char* lpValue, int lenValue); Unicode (Windows) INT SetKeyParam(LPCWSTR lpszName, LPCSTR lpValue, INT lenValue);
int pkiproxy_cryptokeystore_setkeyparam(void* lpObj, const char* lpszName, const char* lpValue, int lenValue);
int SetKeyParam(const QString& qsName, QByteArray qbaValue);
Remarks
Use this method to set an algorithm-specific key parameter.
Error Handling (C++)
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
SetKeyParamStr Method (CryptoKeyStore Class)
Sets an algorithm-specific key parameter.
Syntax
ANSI (Cross Platform) int SetKeyParamStr(const char* lpszName, const char* lpszValueStr); Unicode (Windows) INT SetKeyParamStr(LPCWSTR lpszName, LPCWSTR lpszValueStr);
int pkiproxy_cryptokeystore_setkeyparamstr(void* lpObj, const char* lpszName, const char* lpszValueStr);
int SetKeyParamStr(const QString& qsName, const QString& qsValueStr);
Remarks
Use this method to set an algorithm-specific key parameter provided in a string.
Error Handling (C++)
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
SetObjectParam Method (CryptoKeyStore Class)
Sets an algorithm-specific object parameter.
Syntax
ANSI (Cross Platform) int SetObjectParam(const char* lpszName, const char* lpValue, int lenValue); Unicode (Windows) INT SetObjectParam(LPCWSTR lpszName, LPCSTR lpValue, INT lenValue);
int pkiproxy_cryptokeystore_setobjectparam(void* lpObj, const char* lpszName, const char* lpValue, int lenValue);
int SetObjectParam(const QString& qsName, QByteArray qbaValue);
Remarks
Use this method to set an algorithm-specific object parameter.
Error Handling (C++)
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
SetObjectParamStr Method (CryptoKeyStore Class)
Sets an algorithm-specific object parameter.
Syntax
ANSI (Cross Platform) int SetObjectParamStr(const char* lpszName, const char* lpszValueStr); Unicode (Windows) INT SetObjectParamStr(LPCWSTR lpszName, LPCWSTR lpszValueStr);
int pkiproxy_cryptokeystore_setobjectparamstr(void* lpObj, const char* lpszName, const char* lpszValueStr);
int SetObjectParamStr(const QString& qsName, const QString& qsValueStr);
Remarks
Use this method to set an algorithm-specific object parameter provided in a string.
Error Handling (C++)
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
Unlock Method (CryptoKeyStore Class)
Unlocks the store previously locked with the Lock method.
Syntax
ANSI (Cross Platform) int Unlock(const char* lpszToken); Unicode (Windows) INT Unlock(LPCWSTR lpszToken);
int pkiproxy_cryptokeystore_unlock(void* lpObj, const char* lpszToken);
int Unlock(const QString& qsToken);
Remarks
This operation may not be supported by all store types. Pass the lock token obtained from the Lock method as parameter to this method.
Error Handling (C++)
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
Update Method (CryptoKeyStore Class)
Performs an Update operation on the store, obtaining the up-to-date view of it.
Syntax
ANSI (Cross Platform) int Update(); Unicode (Windows) INT Update();
int pkiproxy_cryptokeystore_update(void* lpObj);
int Update();
Remarks
This operation invalidates any key and data objects previously obtained from the store.
Error Handling (C++)
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
UpdateKey Method (CryptoKeyStore Class)
Performs an Update operation on the pinned key.
Syntax
ANSI (Cross Platform) int UpdateKey(); Unicode (Windows) INT UpdateKey();
int pkiproxy_cryptokeystore_updatekey(void* lpObj);
int UpdateKey();
Remarks
TBD
Error Handling (C++)
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
UpdateObject Method (CryptoKeyStore Class)
Performs an Update operation on the pinned object.
Syntax
ANSI (Cross Platform) int UpdateObject(); Unicode (Windows) INT UpdateObject();
int pkiproxy_cryptokeystore_updateobject(void* lpObj);
int UpdateObject();
Remarks
TBD
Error Handling (C++)
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
AttestationRecord Event (CryptoKeyStore Class)
Passes an attestation record to the user code.
Syntax
ANSI (Cross Platform) virtual int FireAttestationRecord(CryptoKeyStoreAttestationRecordEventParams *e);
typedef struct {
const char *Operation;
const char *OpId;
const char *AttRec; int reserved; } CryptoKeyStoreAttestationRecordEventParams;
Unicode (Windows) virtual INT FireAttestationRecord(CryptoKeyStoreAttestationRecordEventParams *e);
typedef struct {
LPCWSTR Operation;
LPCWSTR OpId;
LPCWSTR AttRec; INT reserved; } CryptoKeyStoreAttestationRecordEventParams;
#define EID_CRYPTOKEYSTORE_ATTESTATIONRECORD 1 virtual INT PKIPROXY_CALL FireAttestationRecord(LPSTR &lpszOperation, LPSTR &lpszOpId, LPSTR &lpszAttRec);
class CryptoKeyStoreAttestationRecordEventParams { public: const QString &Operation(); const QString &OpId(); const QString &AttRec(); int EventRetVal(); void SetEventRetVal(int iRetVal); };
// To handle, connect one or more slots to this signal. void AttestationRecord(CryptoKeyStoreAttestationRecordEventParams *e);
// Or, subclass CryptoKeyStore and override this emitter function. virtual int FireAttestationRecord(CryptoKeyStoreAttestationRecordEventParams *e) {...}
Remarks
This event can fire repeatedly during the operation to pass any attestation records to the component user.
The data returned via this event can be saved and used as evidence of the operation performed.
ClientAuth Event (CryptoKeyStore Class)
Notifies the application that the service requested an authentication credential from the client.
Syntax
ANSI (Cross Platform) virtual int FireClientAuth(CryptoKeyStoreClientAuthEventParams *e);
typedef struct {
const char *Operation;
const char *OpId;
const char *AuthTypes;
int Accept; int reserved; } CryptoKeyStoreClientAuthEventParams;
Unicode (Windows) virtual INT FireClientAuth(CryptoKeyStoreClientAuthEventParams *e);
typedef struct {
LPCWSTR Operation;
LPCWSTR OpId;
LPCWSTR AuthTypes;
BOOL Accept; INT reserved; } CryptoKeyStoreClientAuthEventParams;
#define EID_CRYPTOKEYSTORE_CLIENTAUTH 2 virtual INT PKIPROXY_CALL FireClientAuth(LPSTR &lpszOperation, LPSTR &lpszOpId, LPSTR &lpszAuthTypes, BOOL &bAccept);
class CryptoKeyStoreClientAuthEventParams { public: const QString &Operation(); const QString &OpId(); const QString &AuthTypes(); bool Accept(); void SetAccept(bool bAccept); int EventRetVal(); void SetEventRetVal(int iRetVal); };
// To handle, connect one or more slots to this signal. void ClientAuth(CryptoKeyStoreClientAuthEventParams *e);
// Or, subclass CryptoKeyStore and override this emitter function. virtual int FireClientAuth(CryptoKeyStoreClientAuthEventParams *e) {...}
Remarks
AuthTypes contain a list of supported/suggested authentication methods. Use the CryptoChannel object to adjust authentication parameters.
This event can fire repeatedly during an operation, reflecting multi-factor authentication stages.
ClientAuthFailed Event (CryptoKeyStore Class)
Notifies the application about the failure of attempted authentication type.
Syntax
ANSI (Cross Platform) virtual int FireClientAuthFailed(CryptoKeyStoreClientAuthFailedEventParams *e);
typedef struct {
const char *Operation;
const char *OpId;
const char *AuthType;
int Retry; int reserved; } CryptoKeyStoreClientAuthFailedEventParams;
Unicode (Windows) virtual INT FireClientAuthFailed(CryptoKeyStoreClientAuthFailedEventParams *e);
typedef struct {
LPCWSTR Operation;
LPCWSTR OpId;
LPCWSTR AuthType;
BOOL Retry; INT reserved; } CryptoKeyStoreClientAuthFailedEventParams;
#define EID_CRYPTOKEYSTORE_CLIENTAUTHFAILED 3 virtual INT PKIPROXY_CALL FireClientAuthFailed(LPSTR &lpszOperation, LPSTR &lpszOpId, LPSTR &lpszAuthType, BOOL &bRetry);
class CryptoKeyStoreClientAuthFailedEventParams { public: const QString &Operation(); const QString &OpId(); const QString &AuthType(); bool Retry(); void SetRetry(bool bRetry); int EventRetVal(); void SetEventRetVal(int iRetVal); };
// To handle, connect one or more slots to this signal. void ClientAuthFailed(CryptoKeyStoreClientAuthFailedEventParams *e);
// Or, subclass CryptoKeyStore and override this emitter function. virtual int FireClientAuthFailed(CryptoKeyStoreClientAuthFailedEventParams *e) {...}
Remarks
AuthType contain the authentication method that failed.
Set Retry to true to try again (subject to service acceptance).
Error Event (CryptoKeyStore Class)
Information about errors during data delivery.
Syntax
ANSI (Cross Platform) virtual int FireError(CryptoKeyStoreErrorEventParams *e);
typedef struct {
int ErrorCode;
const char *Description; int reserved; } CryptoKeyStoreErrorEventParams;
Unicode (Windows) virtual INT FireError(CryptoKeyStoreErrorEventParams *e);
typedef struct {
INT ErrorCode;
LPCWSTR Description; INT reserved; } CryptoKeyStoreErrorEventParams;
#define EID_CRYPTOKEYSTORE_ERROR 4 virtual INT PKIPROXY_CALL FireError(INT &iErrorCode, LPSTR &lpszDescription);
class CryptoKeyStoreErrorEventParams { public: int ErrorCode(); const QString &Description(); int EventRetVal(); void SetEventRetVal(int iRetVal); };
// To handle, connect one or more slots to this signal. void Error(CryptoKeyStoreErrorEventParams *e);
// Or, subclass CryptoKeyStore and override this emitter function. virtual int FireError(CryptoKeyStoreErrorEventParams *e) {...}
Remarks
The Error event is fired in case of exceptional conditions during message processing.
ErrorCode contains an error code and Description contains a textual description of the error. For a list of valid error codes and their descriptions, please refer to the Error Codes section.
Notification Event (CryptoKeyStore Class)
This event notifies the application about an underlying control flow event.
Syntax
ANSI (Cross Platform) virtual int FireNotification(CryptoKeyStoreNotificationEventParams *e);
typedef struct {
const char *EventID;
const char *EventParam; int reserved; } CryptoKeyStoreNotificationEventParams;
Unicode (Windows) virtual INT FireNotification(CryptoKeyStoreNotificationEventParams *e);
typedef struct {
LPCWSTR EventID;
LPCWSTR EventParam; INT reserved; } CryptoKeyStoreNotificationEventParams;
#define EID_CRYPTOKEYSTORE_NOTIFICATION 5 virtual INT PKIPROXY_CALL FireNotification(LPSTR &lpszEventID, LPSTR &lpszEventParam);
class CryptoKeyStoreNotificationEventParams { public: const QString &EventID(); const QString &EventParam(); int EventRetVal(); void SetEventRetVal(int iRetVal); };
// To handle, connect one or more slots to this signal. void Notification(CryptoKeyStoreNotificationEventParams *e);
// Or, subclass CryptoKeyStore and override this emitter function. virtual int FireNotification(CryptoKeyStoreNotificationEventParams *e) {...}
Remarks
The class fires this event to let the application know about some event, occurrence, or milestone in the component. For example, it may fire to report completion of the document processing. The list of events being reported is not fixed, and may be flexibly extended over time.
The unique identifier of the event is provided in EventID parameter. EventParam contains any parameters accompanying the occurrence. Depending on the type of the component, the exact action it is performing, or the document being processed, one or both may be omitted.
OperationFinish Event (CryptoKeyStore Class)
Reports the completion of data processing operation.
Syntax
ANSI (Cross Platform) virtual int FireOperationFinish(CryptoKeyStoreOperationFinishEventParams *e);
typedef struct {
const char *Operation;
const char *OpId; int reserved; } CryptoKeyStoreOperationFinishEventParams;
Unicode (Windows) virtual INT FireOperationFinish(CryptoKeyStoreOperationFinishEventParams *e);
typedef struct {
LPCWSTR Operation;
LPCWSTR OpId; INT reserved; } CryptoKeyStoreOperationFinishEventParams;
#define EID_CRYPTOKEYSTORE_OPERATIONFINISH 6 virtual INT PKIPROXY_CALL FireOperationFinish(LPSTR &lpszOperation, LPSTR &lpszOpId);
class CryptoKeyStoreOperationFinishEventParams { public: const QString &Operation(); const QString &OpId(); int EventRetVal(); void SetEventRetVal(int iRetVal); };
// To handle, connect one or more slots to this signal. void OperationFinish(CryptoKeyStoreOperationFinishEventParams *e);
// Or, subclass CryptoKeyStore and override this emitter function. virtual int FireOperationFinish(CryptoKeyStoreOperationFinishEventParams *e) {...}
Remarks
This event fires when the cryptographic operation has completed.
OperationStart Event (CryptoKeyStore Class)
Reports the start of data processing operation.
Syntax
ANSI (Cross Platform) virtual int FireOperationStart(CryptoKeyStoreOperationStartEventParams *e);
typedef struct {
const char *Operation;
const char *OpId;
int Cancel; int reserved; } CryptoKeyStoreOperationStartEventParams;
Unicode (Windows) virtual INT FireOperationStart(CryptoKeyStoreOperationStartEventParams *e);
typedef struct {
LPCWSTR Operation;
LPCWSTR OpId;
BOOL Cancel; INT reserved; } CryptoKeyStoreOperationStartEventParams;
#define EID_CRYPTOKEYSTORE_OPERATIONSTART 7 virtual INT PKIPROXY_CALL FireOperationStart(LPSTR &lpszOperation, LPSTR &lpszOpId, BOOL &bCancel);
class CryptoKeyStoreOperationStartEventParams { public: const QString &Operation(); const QString &OpId(); bool Cancel(); void SetCancel(bool bCancel); int EventRetVal(); void SetEventRetVal(int iRetVal); };
// To handle, connect one or more slots to this signal. void OperationStart(CryptoKeyStoreOperationStartEventParams *e);
// Or, subclass CryptoKeyStore and override this emitter function. virtual int FireOperationStart(CryptoKeyStoreOperationStartEventParams *e) {...}
Remarks
This event fires when the cryptographic operation is about to start.
Use the Cancel parameter to cancel the operation.
Progress Event (CryptoKeyStore Class)
Reports the data encryption/decryption progress.
Syntax
ANSI (Cross Platform) virtual int FireProgress(CryptoKeyStoreProgressEventParams *e);
typedef struct {
const char *Operation;
const char *OpId;
int64 Total;
int64 Current;
int Cancel; int reserved; } CryptoKeyStoreProgressEventParams;
Unicode (Windows) virtual INT FireProgress(CryptoKeyStoreProgressEventParams *e);
typedef struct {
LPCWSTR Operation;
LPCWSTR OpId;
LONG64 Total;
LONG64 Current;
BOOL Cancel; INT reserved; } CryptoKeyStoreProgressEventParams;
#define EID_CRYPTOKEYSTORE_PROGRESS 8 virtual INT PKIPROXY_CALL FireProgress(LPSTR &lpszOperation, LPSTR &lpszOpId, LONG64 &lTotal, LONG64 &lCurrent, BOOL &bCancel);
class CryptoKeyStoreProgressEventParams { public: const QString &Operation(); const QString &OpId(); qint64 Total(); qint64 Current(); bool Cancel(); void SetCancel(bool bCancel); int EventRetVal(); void SetEventRetVal(int iRetVal); };
// To handle, connect one or more slots to this signal. void Progress(CryptoKeyStoreProgressEventParams *e);
// Or, subclass CryptoKeyStore and override this emitter function. virtual int FireProgress(CryptoKeyStoreProgressEventParams *e) {...}
Remarks
This event fires periodically during a file encrypt/decrypt operation to report its progress.
Use the Cancel parameter to terminate the encryption/decryption if needed.
ServiceAuth Event (CryptoKeyStore Class)
Notifies about the start of service authentication.
Syntax
ANSI (Cross Platform) virtual int FireServiceAuth(CryptoKeyStoreServiceAuthEventParams *e);
typedef struct {
const char *Operation;
const char *OpId;
const char *AuthType;
const char *AuthID;
const char *AuthToken;
int Accept; int reserved; } CryptoKeyStoreServiceAuthEventParams;
Unicode (Windows) virtual INT FireServiceAuth(CryptoKeyStoreServiceAuthEventParams *e);
typedef struct {
LPCWSTR Operation;
LPCWSTR OpId;
LPCWSTR AuthType;
LPCWSTR AuthID;
LPCWSTR AuthToken;
BOOL Accept; INT reserved; } CryptoKeyStoreServiceAuthEventParams;
#define EID_CRYPTOKEYSTORE_SERVICEAUTH 9 virtual INT PKIPROXY_CALL FireServiceAuth(LPSTR &lpszOperation, LPSTR &lpszOpId, LPSTR &lpszAuthType, LPSTR &lpszAuthID, LPSTR &lpszAuthToken, BOOL &bAccept);
class CryptoKeyStoreServiceAuthEventParams { public: const QString &Operation(); const QString &OpId(); const QString &AuthType(); const QString &AuthID(); const QString &AuthToken(); bool Accept(); void SetAccept(bool bAccept); int EventRetVal(); void SetEventRetVal(int iRetVal); };
// To handle, connect one or more slots to this signal. void ServiceAuth(CryptoKeyStoreServiceAuthEventParams *e);
// Or, subclass CryptoKeyStore and override this emitter function. virtual int FireServiceAuth(CryptoKeyStoreServiceAuthEventParams *e) {...}
Remarks
Subscribe to this event to respond to service authentication and validate credentials as required.
This event can fire repeatedly during an operation, reflecting multi-factor authentication stages.
ServiceAuthFailed Event (CryptoKeyStore Class)
Notifies about the failure of service authentication attempt.
Syntax
ANSI (Cross Platform) virtual int FireServiceAuthFailed(CryptoKeyStoreServiceAuthFailedEventParams *e);
typedef struct {
const char *Operation;
const char *OpId;
const char *AuthType;
const char *AuthID; int reserved; } CryptoKeyStoreServiceAuthFailedEventParams;
Unicode (Windows) virtual INT FireServiceAuthFailed(CryptoKeyStoreServiceAuthFailedEventParams *e);
typedef struct {
LPCWSTR Operation;
LPCWSTR OpId;
LPCWSTR AuthType;
LPCWSTR AuthID; INT reserved; } CryptoKeyStoreServiceAuthFailedEventParams;
#define EID_CRYPTOKEYSTORE_SERVICEAUTHFAILED 10 virtual INT PKIPROXY_CALL FireServiceAuthFailed(LPSTR &lpszOperation, LPSTR &lpszOpId, LPSTR &lpszAuthType, LPSTR &lpszAuthID);
class CryptoKeyStoreServiceAuthFailedEventParams { public: const QString &Operation(); const QString &OpId(); const QString &AuthType(); const QString &AuthID(); int EventRetVal(); void SetEventRetVal(int iRetVal); };
// To handle, connect one or more slots to this signal. void ServiceAuthFailed(CryptoKeyStoreServiceAuthFailedEventParams *e);
// Or, subclass CryptoKeyStore and override this emitter function. virtual int FireServiceAuthFailed(CryptoKeyStoreServiceAuthFailedEventParams *e) {...}
Remarks
Subscribe to this event to track service authentication failures.
Config Settings (CryptoKeyStore Class)
The class accepts one or more of the following configuration settings. Configuration settings are similar in functionality to properties, but they are rarely used. In order to avoid "polluting" the property namespace of the class, access to these internal properties is provided through the Config method.CryptoKeyStore Config Settings
Trappable Errors (CryptoKeyStore Class)
Error Handling (C++)
Call the GetLastErrorCode() method to obtain the last called method's result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. Known error codes are listed below. If an error occurs, the GetLastError() method can be called to retrieve the associated error message.
CryptoKeyStore Errors
1 error message (1) |