This section explains how to create a key using the keystore.
Before you create a key, you must know which keystore the new key must be stored in. See Retrieving Keystores for more information.
The following steps explain the process of creating a key:
A new key is created and stored in the selected keystore.
The following code snippet shows how to set a file system session object, initialise keystore and member functions, and create a key.
//Create a file system session object
RFs iFs;
CleanupClosePushL(&iFs);
//Initialise the keystore and member functions
CUnifiedKeyStore* keyStore = CUnifiedKeyStore::NewL(iFs);
keyStore->Initialize(iStatus); //iStatus is a TRequestStatus object
//Initialise the arguments to be passed into the CreateKey() function
TKeyUsagePKCS15 usage = EPKCS15UsageSign | EPKCS15UsageSignRecover;
TUint keysize = 512;
_LIT(KLabel,”keylabel”);
CCTKeyInfo::EKeyAlgorithm algorithm = CCTKeyInfo::EDSA;
TInt accessType = CCTKeyInfo::EExtractable;
TTime startDate, endDate;
startDate.HomeTime();
endDate.HomeTime();
// Create a pointer for data returned by CreateKey()
CCTKeyInfo* keyInfo;
//Create the key
keyStore->CreateKey(0, usage, keysize, KLabel, algorithm,
accessType, startDate, endDate, keyInfo, iStatus);
//Clean up
CleanupStack::PopAndDestroy(); // iFs
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.