diff -r 51a74ef9ed63 -r ae94777fff8f Symbian3/SDK/Source/GUID-8AB9527A-1C7E-5D3A-9AB2-A3FA1F5A2D5B.dita --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Symbian3/SDK/Source/GUID-8AB9527A-1C7E-5D3A-9AB2-A3FA1F5A2D5B.dita Fri Jun 11 12:39:03 2010 +0100 @@ -0,0 +1,675 @@ + + + + + +UIDs +
Symmetric cipher +algorithm UIDs + + + +UID +Description +Value +RFC standard + + + + +

KDesUid

+

DES (Data Encryption Standard) algorithm

+

0x10283179

+

RFC +2406

+
+ +

K3DesUid

+

3DES (Triple Data Encryption Standard) algorithm

+

0x1028317a

+

RFC +2405

RFC +2420

+
+ +

KRc2Uid

+

RC2 algorithm

+

0x1028317b

+

RFC +2268

+
+ +

KArc4Uid

+

ARC4 ('alleged' RC4) algorithm (strong random number generator)

+

0x1028317c

+

RFC +2144

+
+ +

KAesUid

+

AES (Advanced Encryption Standard)

+

0x1028317d

+

RFC +3268

+
+ +

KMisty1Uid

+

Misty1 algorithm

+

0x102831be

+

RFC +2994

+
+ +

KMisty2Uid

+

Misty2 algorithm

+

0x102831bf

+ +
+ +

KKasumiUid

+

Kasumi algorithm

+

0x102831c0

+

RFC +3711

+
+ + +

The symmetric cipher algorithm UIDs are used by the following +CryptoSPI APIs:

    +
  • CSymmetricCipherFactory::CreateSymmetricCipherL()

  • +
  • CRuleSelector::CreateSymmetricCipherL()

  • +
  • CCryptoPluginEntry::CreateSymmetricCipherL()

  • +
  • CAsymmetricCipherFactory::CreateAsymmetricCipherL()

  • +
  • CRuleSelector::CreateAsymmetricCipherL()

  • +
  • CCryptoPluginEntry::CreateAsymmetricCipherL()

  • +
+
Asymmetric +cipher algorithm UIDs + + + +UID +Description +Value +RFC standard + + + + +

KRsaCipherUid

+

RSA

+

0x1028317e

+

RFC +2437: PKCS #1: RSA Cryptography Specifications Version 2.0

RFC 2313 - PKCS +#1: RSA Encryption Version 1.5

+
+ + +

The asymmetric cipher algorithm UIDs are used by the following + CryptoSPI APIs:

    +
  • CAsymmetricCipherFactory::CreateAsymmetricCipherL()

  • +
  • CRuleSelector::CreateAsymmetricCipherL()

  • +
  • CCryptoPluginEntry::CreateAsymmetricCipherL()

  • +
  • CAsymmetricCipherFactory::CreateAsyncAsymmetricCipherL()

  • +
  • CRuleSelector::CreateAsyncAsymmetricCipherL()

  • +
+
Signer algorithm +UIDs + + + +UID +Description +Value +RFC standard + + + + +

KRsaSignerUid

+

RSA Signer algorithm

+

0x1028317f

+

RFC +4853

+
+ +

KDsaSignerUid

+

DSA Signer algorithm

+

0x10283180

+

RFC +3279

+
+ + +

The signer algorithm UIDs are used by the following CryptoSPI +APIs:

    +
  • CSignatureFactory::CreateSignerL()

  • +
  • CRuleSelector::CreateSignerL()

  • +
  • CSignatureFactory::CreateAsyncSignerL()

  • +
  • CRuleSelector::CreateAsyncSignerL()

  • +
+
Verifier algorithm +UIDs + + + +UID +Description +Value +RFC standard + + + + +

KRsaVerifierUid

+

RSA Verifier algorithm

+

0x10283181

+

RFC +4853

+
+ +

KDsaVerifierUid

+

DSA Verifier algorithm

+

0x10283182

+

RFC +3279

+
+ + +

The verifier algorithm UIDs are used by the following CryptoSPI +APIs:

    +
  • CSignatureFactory::CreateVerifierL()

  • +
  • MPluginSelector::CreateVerifierL()

  • +
  • CSignatureFactory::CreateAsyncVerifierL()

  • +
  • CRuleSelector::CreateAsyncVerifierL()

  • +
+
Key Agreement +algorithm UIDs + + + +UID +Description +Value +RFC standard + + + + +

KDHAgreementUid

+

Diffie-Hellman Key Agreement algorithm

+

0x10283183

+

RFC +2631

+
+ + +

The Key Agreement algorithm UIDs are used by the following CryptoSPI +APIs:

    +
  • CKeyAgreementFactory::CreateKeyAgreementL()

  • +
  • CRuleSelector::CreateKeyAgreementL()

  • +
  • CCryptoPluginEntry::CreateKeyAgreementL()

  • +
  • CKeyAgreementFactory::CreateAsyncKeyAgreementL()

  • +
  • CRuleSelector::CreateAsyncKeyAgreementL()

  • +
+
Key Pair Generator +algorithm UIDs + + + +UID +Description +Value +RFC standard + + + + +

KDHKeyPairGeneratorUid

+

DH Key Pair Generator algorithm

+

0x10283184

+

RFC +2539

+
+ +

KRSAKeyPairGeneratorUid

+

RSA Key Pair Generator algorithm

+

0x10283185

+

RFC +4055

+
+ +

KDSAKeyPairGeneratorUid

+

DSA Key Pair Generator algorithm

+

0x10283186

+ +
+ + +

The Key Pair Generator algorithm UIDs are used by the following +CryptoSPI APIs:

    +
  • CKeyPairGeneratorFactory::CreateAsyncKeyPairGeneratorL()

  • +
  • CRuleSelector::CreateAsyncKeyPairGeneratorL()

  • +
+
Padding modes + + + +UID +Description +Value + + + + +

KPaddingModeNoneUid

+

Padding Mode None Uid

+

0x10283188

+
+ +

KPaddingModeSSLv3Uid

+

SSLv3 Padding Mode Uid

+

0x10283189

+
+ +

KPaddingModePKCS7Uid

+

PKCS7 Padding Mode Uid

+

0x1028318a

+
+ +

KPaddingModePkcs1_v1_5_EncryptionUid

+

Pkcs1 v1.5 Encryption Padding mode Uid

+

0x1028318b

+
+ +

KPaddingModePkcs1_v1_5_SignatureUid

+

Pkcs1 v1.5 Signature Padding mode Uid

+

0x1028318c

+
+ + +

The padding modes are used by the following CryptoSPI APIs:

    +
  • CAsymmetricCipherFactory::CreateAsymmetricCipherL()

  • +
  • CAsymmetricCipherFactory::CreateAsyncAsymmetricCipherL()

  • +
+
Cryptography +modes + + + +UID +Description +Value + + + + +

KCryptoModeEncryptUid

+

Crypto Encrypt Mode Uid

+

0x1028318d

+
+ +

KCryptoModeDecryptUid

+

Crypto Decrypt Mode Uid

+

0x1028318e

+
+ +

KCryptoModeNoneUid

+

Crypto None Mode Uid

+

0x1028318f

+
+ + +

The cryptography modes are used by the following CryptoSPI APIs:

    +
  • CAsymmetricCipherFactory::CreateAsymmetricCipherL()

  • +
  • CAsymmetricCipherFactory::CreateAsyncAsymmetricCipherL()

  • +
+
Hash algorithm UIDs + + + +UID +Description +Value +RFC standard + + + + +

KMd2Uid

+

MD2, Message-Digest Algorithm

+

0x10283173

+

RFC +1319

+
+ +

KMd4Uid

+

MD4, Message-Digest Algorithm (Output: 128 bit message digest)

+

0x2000B341

+

RFC +1320

+
+ +

KMd5Uid

+

MD5 ,Message-Digest Algorithm (output:128-bit "fingerprint" or "message +digest)

+

0x10283174

+

RFC +1321

+
+ +

KSha1Uid

+

Secure Hash Algorithm(output: 160-bit message digest)

+

0x10283175

+

FIPS +180-1 and RFC +3174

+
+ +

KSha224Uid

+

Sha224 algorithm

+

0x2000E258

+

FIPS 180-2 (with change notice), RFC3874 and FIPS 180-3

+
+ +

KSha256Uid

+

Sha256 algorithm

+

0x2000E259

+

FIPS 180-2 and RFC 4634

+
+ +

KSha384Uid

+

Sha384 algorithm

+

0x2000E25A

+

FIPS 180-2 and RFC 4634

+
+ +

KSha512Uid

+

Sha512 algorithm

+

0x2000E25B

+

FIPS 180-2 and RFC 4634

+
+ + +

The hash algorithm UIDs are used by the following APIs:

    +
  • CryptoSpi::CHashFactory::CreateHashL()

  • +
  • CryptoSpi::CRuleSelector::CreateHashL()

  • +
  • CryptoSpi::CCryptoPluginEntry::CreateHashL()

  • +
  • CryptoSpi::CHashFactory::CreateAsyncHashL()

  • +
  • CryptoSpi::CRuleSelector::CreateAsyncHashL()

  • +
+
Random algorithm UIDs + + + +UID +Description +Value + + + + +

KRandomUid

+

Random algorithm UID

+

0x10283178

+
+ + +

The random algorithm UIDs are used by the following APIs:

    +
  • CryptoSpi::CRandomFactory::CreateRandomL()

  • +
  • CryptoSpi::CRuleSelector::CreateRandomL()

  • +
  • CryptoSpi::CRandomFactory::CreateAsyncRandomL()

  • +
  • CryptoSpi::CRuleSelector::CreateAsyncRandomL()

  • +
+
Symmetric key algorithm UIDs + + + +UID +Description +Value + + + + +

KDesUid

+

Des algorithm UID

+

0x10283179

+
+ +

K3DesUid

+

3Des algorithm UID

+

0x1028317a

+
+ +

KRc2Uid

+

RC2 algorithm UID

+

0x1028317b

+
+ +

KArc4Uid

+

ARC4 algorithm UID

+

0x1028317c

+
+ +

KAesUid

+

AES algorithm UID

+

0x1028317d

+
+ +

KMisty1Uid

+

Misty1 algorithm UID

+

0x102831be

+
+ +

KMisty2Uid

+

Misty2 algorithm UID

+

0x102831bf

+
+ +

KKasumiUid

+

Kasumi algorithm UID

+

0x102831c0

+
+ + +

The symmetric key algorithm UIDs are used by the following API:

    +
  • CryptoSpi::CSymmetricCipher::CSymmetricCipher()

  • +
+
Asymmetric key algorithm UIDs + + + +UID +Description +Value + + + + +

KRsaCipherUid

+

RSA Cipher algorithm UID

+

0x1028317e

+
+ +

KRsaSignerUid

+

RSA Signer algorithm UID

+

0x1028317f

+
+ +

KRsaVerifierUid

+

RSA Verifier algorithm UID

+

0x10283181

+
+ +

KRSAKeyPairGeneratorUid

+

RSA Key Pair Generator algorithm UID

+

0x10283185

+
+ +

KDsaSignerUid

+

DSA Signer algorithm UID

+

0x10283180

+
+ +

KDsaVerifierUid

+

DSA Verifier algorithm UID

+

0x10283182

+
+ +

KDSAKeyPairGeneratorUid

+

DSA Key Pair Generator algorithm UID

+

0x10283186

+
+ +

KDHAgreementUid

+

DH Agreement algorithm UID

+

0x10283183

+
+ +

KDHKeyPairGeneratorUid

+

DH Key Pair Generator algorithm UID

+

0x10283184

+
+ +

KEccCipherUid

+

ECC Key Cipher algorithm UID

+

0x20024482

+
+ +

KEccSignerUid

+

ECC Key Signer algorithm UID

+

0x20024483

+
+ +

KEccVerifierUid

+

ECC Key Verifier algorithm UID

+

0x20024486

+
+ +

KEccKeyPairGeneratorUid

+

ECC Key Pair Generator algorithm UID

+

0x20024487

+
+ + +

Note: The ECC key UIDs are enabled only if the macros SYMBIAN_ENABLE_SDP_ECC and SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT are enabled.

The asymmetric key algorithm UIDs are used by the following +API:

    +
  • CryptoSpi::CAsymmetricCipher::CAsymmetricCipher()

  • +
+
Other UIDs + + + +UID +Description +Value + + + + +

KPassedHandleToKeyUid

+

Use this UID as CKey key parameter, +whenever the CryptoSPI user has just the handle and not the actual key. The +CryptoSPI plug-in searches for this ID and invokes the appropriate APIs for +providing access to the key.

Note: This UID is enabled only +if the SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT macro is enabled.

+

0x20025161

+
+ + +

Example usage of KPassedHandleToKeyUid

The following +sequence of steps explains the use of KPassedHandleToKeyUid in +the key parameter, which, along with the key property creates a CKey object. +This CKey object is one of the parameters +in the creation of a signer object, which can be used for performing signing +operations.

    +
  1. Define the key property.

    Create +a CCryptoParams object for the key parameter. Add the key +handle and KPassedHandleToKeyUid to the CCryptoParams object +by using CCryptoParams::AddL().

  2. +
  3. Create a CKey object +by passing instance of the key property and the CCryptoParams object +containing KPassedHandleToKeyUid.

  4. +
  5. Create a signer object +by using the CKey object as one of the +parameters. This signer object can be used for performing signing operations.

  6. +

The following code snippet demonstrates the use of KPassedHandleToKeyUid:

+. +. +. +// Define the key property +TKeyProperty keyProperty; +keyProperty.iAlgorithmUid = KRsaSignerUid; + +// Create the key parameter object +CCryptoParams* keyParameters = CCryptoParams::NewLC(); + +// iHandle is of type TCTTokenObjectHandle. It contains handle to the key +keyParameters->AddL(iHandle.iObjectId, KPassedHandleToKeyUid); + +// Create a CKey object +CKey* newKey = CKey::NewL(keyProperty, *keyParameters); + +// Create a signer plug-in object +CSigner * implsig = NULL; + +// Create the signer object +CSignatureFactory::CreateSignerL(implsig, KRsaSignerUid, *newKey, KPaddingModePkcs1_v1_5_SignatureUid, NULL); +. +. +. +
+
Operation modes + + + +UID +Description +Value + + + + +

KOperationModeNoneUid

+

None Mode UID

+

0x10283190

+
+ +

KOperationModeECBUid

+

ECB Mode UID

+

0x10283191

+
+ +

KOperationModeCBCUid

+

CBC Mode UID

+

0x10283192

+
+ +

KOperationModeOFBUid

+

OFB Mode UID

+

0x10283193

+
+ +

KOperationModeCFBUid

+

CFB Mode UID

+

0x10283194

+
+ +

KOperationModeCTRUid

+

CTR Mode UID

+

0x10283195

+
+ + +

The operation modes are used by the following APIs:

    +
  • CryptoSpi::CHashFactory::CreateHashL()

  • +
  • CryptoSpi::CHashFactory::CreateAsyncHashL()

  • +
+
\ No newline at end of file