ExternalCryptoKeyID Property
The ID of the pre-shared key used for DC request authentication.
Syntax
ANSI (Cross Platform) char* GetExternalCryptoKeyID();
int SetExternalCryptoKeyID(const char* lpszExternalCryptoKeyID); Unicode (Windows) LPWSTR GetExternalCryptoKeyID();
INT SetExternalCryptoKeyID(LPCWSTR lpszExternalCryptoKeyID);
@property (nonatomic,readwrite,assign,getter=externalCryptoKeyID,setter=setExternalCryptoKeyID:) NSString* externalCryptoKeyID; - (NSString*)externalCryptoKeyID; - (void)setExternalCryptoKeyID:(NSString*)newExternalCryptoKeyID;
#define PID_DTLSSERVER_EXTERNALCRYPTOKEYID 9 SECUREBLACKBOX_EXTERNAL void* SECUREBLACKBOX_CALL SecureBlackbox_DTLSServer_Get(void *lpObj, int propid, int arridx, int *lpcbVal, int64 *lpllVal); SECUREBLACKBOX_EXTERNAL int SECUREBLACKBOX_CALL SecureBlackbox_DTLSServer_Set(void *lpObj, int propid, int arridx, const void *val, int cbVal);
Default Value
""
Remarks
The ID of the pre-shared key used for DC request authentication.
Asynchronous DCAuth-driven communication requires that parties authenticate each other with a secret pre-shared cryptographic key. This provides extra protection layer for the protocol and diminishes the risk of private key becoming abused by foreign parties. Use this property to provide the pre-shared key identifier, and use ExternalCryptoKeySecret to pass the key itself.
The same KeyID/KeySecret pair should be used on the DCAuth side for the signing requests to be accepted.
Note: The KeyID/KeySecret scheme is very similar to the AuthKey scheme used in various Cloud service providers to authenticate users.
Example:
signer.ExternalCrypto.KeyID = "MainSigningKey"; signer.ExternalCrypto.KeySecret = "abcdef0123456789";
Data Type
String