Symbian3/SDK/Source/GUID-8AB9527A-1C7E-5D3A-9AB2-A3FA1F5A2D5B.dita
author Dominic Pinkman <dominic.pinkman@nokia.com>
Fri, 11 Jun 2010 12:39:03 +0100
changeset 8 ae94777fff8f
permissions -rw-r--r--
Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.

<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
<!-- This component and the accompanying materials are made available under the terms of the License 
"Eclipse Public License v1.0" which accompanies this distribution, 
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
<!-- Initial Contributors:
    Nokia Corporation - initial contribution.
Contributors: 
-->
<!DOCTYPE concept
  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
<concept id="GUID-8AB9527A-1C7E-5D3A-9AB2-A3FA1F5A2D5B" xml:lang="en"><title>UIDs</title><prolog><metadata><keywords/></metadata></prolog><conbody>
<section id="GUID-D577F130-EBFF-4526-BB1B-C09C2D1AE41F"><title>Symmetric cipher
algorithm UIDs</title> <table id="GUID-8DF2D162-47BE-5B6F-992E-81EF1BA45AEA">
<tgroup cols="4"><colspec colname="col0" colwidth="0.59*"/><colspec colname="col1" colwidth="1.14*"/><colspec colname="col2" colwidth="0.57*"/><colspec colname="col3" colwidth="1.73*"/>
<thead>
<row>
<entry>UID</entry>
<entry>Description</entry>
<entry>Value</entry>
<entry>RFC standard</entry>
</row>
</thead>
<tbody>
<row>
<entry><p>KDesUid </p> </entry>
<entry><p>DES (Data Encryption Standard) algorithm </p> </entry>
<entry><p>0x10283179 </p> </entry>
<entry><p> <xref href="http://www.ietf.org/rfc/rfc2406.txt" scope="external"> RFC
2406</xref> </p> </entry>
</row>
<row>
<entry><p>K3DesUid </p> </entry>
<entry><p>3DES (Triple Data Encryption Standard) algorithm </p> </entry>
<entry><p>0x1028317a </p> </entry>
<entry><p> <xref href="http://www.ietf.org/rfc/rfc2405.txt" scope="external">RFC
2405</xref>  </p> <p> <xref href="http://www.ietf.org/rfc/rfc2420.txt" scope="external">RFC
2420</xref>  </p> </entry>
</row>
<row>
<entry><p>KRc2Uid </p> </entry>
<entry><p>RC2 algorithm </p> </entry>
<entry><p>0x1028317b </p> </entry>
<entry><p> <xref href="http://www.ietf.org/rfc/rfc2268.txt" scope="external"> RFC
2268</xref>  </p> </entry>
</row>
<row>
<entry><p>KArc4Uid </p> </entry>
<entry><p>ARC4 ('alleged' RC4) algorithm (strong random number generator) </p> </entry>
<entry><p>0x1028317c </p> </entry>
<entry><p> <xref href="http://www.ietf.org/rfc/rfc2144.txt" scope="external"> RFC
2144 </xref>  </p> </entry>
</row>
<row>
<entry><p>KAesUid </p> </entry>
<entry><p>AES (Advanced Encryption Standard) </p> </entry>
<entry><p>0x1028317d </p> </entry>
<entry><p> <xref href="http://www.ietf.org/rfc/rfc3268.txt" scope="external"> RFC
3268</xref>  </p> </entry>
</row>
<row>
<entry><p>KMisty1Uid </p> </entry>
<entry><p>Misty1 algorithm </p> </entry>
<entry><p>0x102831be </p> </entry>
<entry><p> <xref href="http://tools.ietf.org/html/rfc2994" scope="external">RFC
2994</xref> </p> </entry>
</row>
<row>
<entry><p>KMisty2Uid </p> </entry>
<entry><p>Misty2 algorithm </p> </entry>
<entry><p>0x102831bf </p> </entry>
<entry/>
</row>
<row>
<entry><p>KKasumiUid </p> </entry>
<entry><p>Kasumi algorithm </p> </entry>
<entry><p>0x102831c0 </p> </entry>
<entry><p> <xref href="http://tools.ietf.org/html/rfc3711" scope="external">RFC
3711</xref> </p> </entry>
</row>
</tbody>
</tgroup>
</table> <p>The symmetric cipher algorithm UIDs are used by the following
CryptoSPI APIs: </p><ul>
<li><p><xref href="GUID-D13C874A-A34F-3DAD-8E58-C6E518E40C9B.dita#GUID-D13C874A-A34F-3DAD-8E58-C6E518E40C9B/GUID-E0E5C018-973F-3704-9B61-233E977E0224"><apiname>CSymmetricCipherFactory::CreateSymmetricCipherL()</apiname></xref></p></li>
<li><p><xref href="GUID-253D228B-4210-3906-B5AC-31C7DDBCCD79.dita#GUID-253D228B-4210-3906-B5AC-31C7DDBCCD79/GUID-751A1919-E6F3-3445-B011-2AED64768544"><apiname>CRuleSelector::CreateSymmetricCipherL()</apiname></xref></p></li>
<li><p><xref href="GUID-3CDC62B1-2CC9-3546-9E75-772CC1D9546A.dita#GUID-3CDC62B1-2CC9-3546-9E75-772CC1D9546A/GUID-CCA2D456-B208-384C-B74A-B06B83EFCC16"><apiname>CCryptoPluginEntry::CreateSymmetricCipherL()</apiname></xref></p></li>
<li><p><xref href="GUID-F9DF2529-463B-3D0C-853A-42E1B9DDD170.dita#GUID-F9DF2529-463B-3D0C-853A-42E1B9DDD170/GUID-DEB128B1-EC5F-363B-AE73-9232771F5FB4"><apiname>CAsymmetricCipherFactory::CreateAsymmetricCipherL()</apiname></xref></p></li>
<li><p><xref href="GUID-253D228B-4210-3906-B5AC-31C7DDBCCD79.dita#GUID-253D228B-4210-3906-B5AC-31C7DDBCCD79/GUID-781533FC-C92E-34C5-9848-A98A836A952D"><apiname>CRuleSelector::CreateAsymmetricCipherL()</apiname></xref></p></li>
<li><p><xref href="GUID-3CDC62B1-2CC9-3546-9E75-772CC1D9546A.dita#GUID-3CDC62B1-2CC9-3546-9E75-772CC1D9546A/GUID-B3B34A75-353E-3D39-8A5C-AA0391F8F15B"><apiname>CCryptoPluginEntry::CreateAsymmetricCipherL()</apiname></xref></p></li>
</ul> </section>
<section id="GUID-D2728977-CA7E-4DDB-AE35-9AC8A6577D27"><title>Asymmetric
cipher algorithm UIDs</title> <table id="GUID-1B15D4D7-208B-568C-8411-E0F715614C85">
<tgroup cols="4"><colspec colname="col0" colwidth="0.63*"/><colspec colname="col1" colwidth="0.53*"/><colspec colname="col2" colwidth="0.57*"/><colspec colname="col3" colwidth="2.29*"/>
<thead>
<row>
<entry>UID</entry>
<entry>Description</entry>
<entry>Value</entry>
<entry>RFC standard</entry>
</row>
</thead>
<tbody>
<row>
<entry><p>KRsaCipherUid </p> </entry>
<entry><p>RSA </p> </entry>
<entry><p>0x1028317e </p> </entry>
<entry><p> <xref href="http://www.ietf.org/rfc/rfc2437.txt" scope="external">RFC
2437: PKCS #1</xref>: RSA Cryptography Specifications Version 2.0 </p> <p> <xref href="http://tools.ietf.org/html/rfc2313" scope="external">RFC 2313 - PKCS
#1</xref>: RSA Encryption Version 1.5 </p> </entry>
</row>
</tbody>
</tgroup>
</table> <p>The asymmetric cipher algorithm UIDs are used by the following
 CryptoSPI APIs: </p><ul>
<li><p><xref href="GUID-F9DF2529-463B-3D0C-853A-42E1B9DDD170.dita#GUID-F9DF2529-463B-3D0C-853A-42E1B9DDD170/GUID-DEB128B1-EC5F-363B-AE73-9232771F5FB4"><apiname>CAsymmetricCipherFactory::CreateAsymmetricCipherL()</apiname></xref></p></li>
<li><p><xref href="GUID-253D228B-4210-3906-B5AC-31C7DDBCCD79.dita#GUID-253D228B-4210-3906-B5AC-31C7DDBCCD79/GUID-781533FC-C92E-34C5-9848-A98A836A952D"><apiname>CRuleSelector::CreateAsymmetricCipherL()</apiname></xref></p></li>
<li><p><xref href="GUID-3CDC62B1-2CC9-3546-9E75-772CC1D9546A.dita#GUID-3CDC62B1-2CC9-3546-9E75-772CC1D9546A/GUID-B3B34A75-353E-3D39-8A5C-AA0391F8F15B"><apiname>CCryptoPluginEntry::CreateAsymmetricCipherL()</apiname></xref></p></li>
<li><p><xref href="GUID-F9DF2529-463B-3D0C-853A-42E1B9DDD170.dita#GUID-F9DF2529-463B-3D0C-853A-42E1B9DDD170/GUID-EDC16E45-F72F-3E1A-ABDA-762CFAA3E82B"><apiname>CAsymmetricCipherFactory::CreateAsyncAsymmetricCipherL()</apiname></xref></p></li>
<li><p><xref href="GUID-253D228B-4210-3906-B5AC-31C7DDBCCD79.dita#GUID-253D228B-4210-3906-B5AC-31C7DDBCCD79/GUID-12050906-942F-342B-9B40-1AAA7010ECB6"><apiname>CRuleSelector::CreateAsyncAsymmetricCipherL()</apiname></xref></p></li>
</ul> </section>
<section id="GUID-07EFE951-61E0-4F53-BBDA-43B189051BAA"><title>Signer algorithm
UIDs</title> <table id="GUID-9AA786D9-4884-5765-906B-E917729A1871">
<tgroup cols="4"><colspec colname="col0" colwidth="1.00*"/><colspec colname="col1" colwidth="1.00*"/><colspec colname="col2" colwidth="0.48*"/><colspec colname="col3" colwidth="1.52*"/>
<thead>
<row>
<entry>UID</entry>
<entry>Description</entry>
<entry>Value</entry>
<entry>RFC standard</entry>
</row>
</thead>
<tbody>
<row>
<entry><p>KRsaSignerUid </p> </entry>
<entry><p>RSA Signer algorithm </p> </entry>
<entry><p>0x1028317f </p> </entry>
<entry><p> <xref href="http://www.ietf.org/rfc/rfc4853.txt" scope="external">RFC
4853</xref>  </p> </entry>
</row>
<row>
<entry><p>KDsaSignerUid </p> </entry>
<entry><p>DSA Signer algorithm </p> </entry>
<entry><p>0x10283180 </p> </entry>
<entry><p> <xref href="http://www.ietf.org/rfc/rfc3279.txt" scope="external">RFC
3279</xref>  </p> </entry>
</row>
</tbody>
</tgroup>
</table> <p>The signer algorithm UIDs are used by the following CryptoSPI
APIs: </p><ul>
<li><p><xref href="GUID-3ED5D4BF-0EDD-30ED-B7BA-C62EE2981DAC.dita#GUID-3ED5D4BF-0EDD-30ED-B7BA-C62EE2981DAC/GUID-686038A5-6F90-32C1-960E-E286B59370EE"><apiname>CSignatureFactory::CreateSignerL()</apiname></xref></p></li>
<li><p><xref href="GUID-253D228B-4210-3906-B5AC-31C7DDBCCD79.dita#GUID-253D228B-4210-3906-B5AC-31C7DDBCCD79/GUID-B4EEB1B5-C068-36B3-BE72-7597113ED55F"><apiname>CRuleSelector::CreateSignerL()</apiname></xref></p></li>
<li><p><xref href="GUID-3ED5D4BF-0EDD-30ED-B7BA-C62EE2981DAC.dita#GUID-3ED5D4BF-0EDD-30ED-B7BA-C62EE2981DAC/GUID-DCF8148C-9781-385D-BC46-BB3DC8873F9B"><apiname>CSignatureFactory::CreateAsyncSignerL()</apiname></xref></p></li>
<li><p><xref href="GUID-253D228B-4210-3906-B5AC-31C7DDBCCD79.dita#GUID-253D228B-4210-3906-B5AC-31C7DDBCCD79/GUID-B2194066-ABAE-3810-A77C-B734B49D5FC7"><apiname>CRuleSelector::CreateAsyncSignerL()</apiname></xref></p></li>
</ul></section>
<section id="GUID-D056A982-5E83-4501-BDB1-693A7A503756"><title>Verifier algorithm
UIDs</title> <table id="GUID-4D36FD6F-EB37-5D3E-87DC-DE75CFFCF683">
<tgroup cols="4"><colspec colname="col0" colwidth="1.00*"/><colspec colname="col1" colwidth="1.00*"/><colspec colname="col2" colwidth="0.57*"/><colspec colname="col3" colwidth="1.43*"/>
<thead>
<row>
<entry>UID</entry>
<entry>Description</entry>
<entry>Value</entry>
<entry>RFC standard</entry>
</row>
</thead>
<tbody>
<row>
<entry><p>KRsaVerifierUid </p> </entry>
<entry><p>RSA Verifier algorithm </p> </entry>
<entry><p>0x10283181 </p> </entry>
<entry><p> <xref href="http://www.ietf.org/rfc/rfc4853.txt" scope="external">RFC
4853</xref>  </p> </entry>
</row>
<row>
<entry><p>KDsaVerifierUid </p> </entry>
<entry><p>DSA Verifier algorithm </p> </entry>
<entry><p>0x10283182 </p> </entry>
<entry><p> <xref href="http://www.ietf.org/rfc/rfc3279.txt" scope="external">RFC
3279</xref>  </p> </entry>
</row>
</tbody>
</tgroup>
</table> <p>The verifier algorithm UIDs are used by the following CryptoSPI
APIs: </p><ul>
<li><p><xref href="GUID-3ED5D4BF-0EDD-30ED-B7BA-C62EE2981DAC.dita#GUID-3ED5D4BF-0EDD-30ED-B7BA-C62EE2981DAC/GUID-3DD66A5A-5B9F-3BDB-84B4-DB95BD386100"><apiname>CSignatureFactory::CreateVerifierL()</apiname></xref></p></li>
<li><p><xref href="GUID-E564F6AF-9D01-3D3F-AA3E-5956A7221552.dita#GUID-E564F6AF-9D01-3D3F-AA3E-5956A7221552/GUID-3227DC19-D09F-30FB-91BB-93B56D669BE7"><apiname>MPluginSelector::CreateVerifierL()</apiname></xref></p></li>
<li><p><xref href="GUID-3ED5D4BF-0EDD-30ED-B7BA-C62EE2981DAC.dita#GUID-3ED5D4BF-0EDD-30ED-B7BA-C62EE2981DAC/GUID-D0C7C0BB-72E5-3BA5-864F-B047A49BD237"><apiname>CSignatureFactory::CreateAsyncVerifierL()</apiname></xref></p></li>
<li><p><xref href="GUID-253D228B-4210-3906-B5AC-31C7DDBCCD79.dita#GUID-253D228B-4210-3906-B5AC-31C7DDBCCD79/GUID-1CA31AAD-CD01-3F06-864F-A2B37EA1177A"><apiname>CRuleSelector::CreateAsyncVerifierL()</apiname></xref></p></li>
</ul></section>
<section id="GUID-B2C80B22-9EB3-4AC1-B377-5DC957EB6AEE"><title>Key Agreement
algorithm UIDs</title> <table id="GUID-60895D3B-D766-5E65-9392-CCF7A55281D1">
<tgroup cols="4"><colspec colname="col0" colwidth="1.00*"/><colspec colname="col1" colwidth="1.00*"/><colspec colname="col2" colwidth="0.55*"/><colspec colname="col3" colwidth="1.46*"/>
<thead>
<row>
<entry>UID</entry>
<entry>Description</entry>
<entry>Value</entry>
<entry>RFC standard</entry>
</row>
</thead>
<tbody>
<row>
<entry><p>KDHAgreementUid </p> </entry>
<entry><p>Diffie-Hellman Key Agreement algorithm </p> </entry>
<entry><p>0x10283183 </p> </entry>
<entry><p> <xref href="http://www.ietf.org/rfc/rfc2631.txt" scope="external">RFC
2631</xref>  </p> </entry>
</row>
</tbody>
</tgroup>
</table> <p>The Key Agreement algorithm UIDs are used by the following CryptoSPI
APIs: </p><ul>
<li><p><xref href="GUID-7DF57CF7-F165-3648-A434-7963F2491D1A.dita#GUID-7DF57CF7-F165-3648-A434-7963F2491D1A/GUID-D3EFC9F7-D0E8-36EB-80E4-03B7716ABED4"><apiname>CKeyAgreementFactory::CreateKeyAgreementL()</apiname></xref></p></li>
<li><p><xref href="GUID-253D228B-4210-3906-B5AC-31C7DDBCCD79.dita#GUID-253D228B-4210-3906-B5AC-31C7DDBCCD79/GUID-88221CC1-77C4-30D3-86F0-A365D1A03F84"><apiname>CRuleSelector::CreateKeyAgreementL()</apiname></xref></p></li>
<li><p><xref href="GUID-3CDC62B1-2CC9-3546-9E75-772CC1D9546A.dita#GUID-3CDC62B1-2CC9-3546-9E75-772CC1D9546A/GUID-EE365359-41F8-3270-9449-C5A58D89C54A"><apiname>CCryptoPluginEntry::CreateKeyAgreementL()</apiname></xref></p></li>
<li><p><xref href="GUID-7DF57CF7-F165-3648-A434-7963F2491D1A.dita#GUID-7DF57CF7-F165-3648-A434-7963F2491D1A/GUID-A327708D-7089-34C0-B717-D3A10D8B5FAF"><apiname>CKeyAgreementFactory::CreateAsyncKeyAgreementL()</apiname></xref></p></li>
<li><p><xref href="GUID-253D228B-4210-3906-B5AC-31C7DDBCCD79.dita#GUID-253D228B-4210-3906-B5AC-31C7DDBCCD79/GUID-FB7A80AE-3AB8-300F-8FA3-E14C5D3B6E52"><apiname>CRuleSelector::CreateAsyncKeyAgreementL()</apiname></xref></p></li>
</ul> </section>
<section id="GUID-3BF50684-42E8-4BAA-95C5-73448C048B2F"><title>Key Pair Generator
algorithm UIDs</title> <table id="GUID-8CB20C6D-8C7A-5D2B-AD7F-6F04B7204A5F">
<tgroup cols="4"><colspec colname="col0" colwidth="1.00*"/><colspec colname="col1" colwidth="1.00*"/><colspec colname="col2" colwidth="0.56*"/><colspec colname="col3" colwidth="1.45*"/>
<thead>
<row>
<entry>UID</entry>
<entry>Description</entry>
<entry>Value</entry>
<entry>RFC standard</entry>
</row>
</thead>
<tbody>
<row>
<entry><p>KDHKeyPairGeneratorUid </p> </entry>
<entry><p>DH Key Pair Generator algorithm </p> </entry>
<entry><p>0x10283184 </p> </entry>
<entry><p> <xref href="http://www.isi.edu/in-notes/rfc2539.txt" scope="external"> RFC
2539</xref>  </p> </entry>
</row>
<row>
<entry><p>KRSAKeyPairGeneratorUid </p> </entry>
<entry><p>RSA Key Pair Generator algorithm </p> </entry>
<entry><p>0x10283185 </p> </entry>
<entry><p> <xref href="http://www.ietf.org/rfc/rfc4055.txt" scope="external">RFC
4055</xref>  </p> </entry>
</row>
<row>
<entry><p>KDSAKeyPairGeneratorUid </p> </entry>
<entry><p>DSA Key Pair Generator algorithm </p> </entry>
<entry><p>0x10283186 </p> </entry>
<entry/>
</row>
</tbody>
</tgroup>
</table> <p>The Key Pair Generator algorithm UIDs are used by the following
CryptoSPI APIs: </p><ul>
<li><p><xref href="GUID-F6E699CD-2B2F-36A6-AD82-BD2CC58A7A29.dita#GUID-F6E699CD-2B2F-36A6-AD82-BD2CC58A7A29/GUID-733E6326-0886-3BC3-83BE-67CE02724200"><apiname>CKeyPairGeneratorFactory::CreateAsyncKeyPairGeneratorL()</apiname></xref></p></li>
<li><p><xref href="GUID-253D228B-4210-3906-B5AC-31C7DDBCCD79.dita#GUID-253D228B-4210-3906-B5AC-31C7DDBCCD79/GUID-199FAC0D-A9C2-32B9-897A-3A95D795D3CE"><apiname>CRuleSelector::CreateAsyncKeyPairGeneratorL()</apiname></xref></p></li>
</ul> </section>
<section id="GUID-3485CB77-BD12-4798-886A-F876E2C97FEE"><title>Padding modes</title> <table id="GUID-22EE4534-D4C8-5B74-BF1D-FED85D52D706">
<tgroup cols="3"><colspec colname="col0"/><colspec colname="col1"/><colspec colname="col2"/>
<thead>
<row>
<entry>UID</entry>
<entry>Description</entry>
<entry>Value</entry>
</row>
</thead>
<tbody>
<row>
<entry><p>KPaddingModeNoneUid </p> </entry>
<entry><p>Padding Mode None Uid </p> </entry>
<entry><p>0x10283188 </p> </entry>
</row>
<row>
<entry><p>KPaddingModeSSLv3Uid </p> </entry>
<entry><p>SSLv3 Padding Mode Uid </p> </entry>
<entry><p>0x10283189 </p> </entry>
</row>
<row>
<entry><p>KPaddingModePKCS7Uid </p> </entry>
<entry><p>PKCS7 Padding Mode Uid </p> </entry>
<entry><p>0x1028318a </p> </entry>
</row>
<row>
<entry><p>KPaddingModePkcs1_v1_5_EncryptionUid </p> </entry>
<entry><p>Pkcs1 v1.5 Encryption Padding mode Uid </p> </entry>
<entry><p>0x1028318b </p> </entry>
</row>
<row>
<entry><p>KPaddingModePkcs1_v1_5_SignatureUid </p> </entry>
<entry><p>Pkcs1 v1.5 Signature Padding mode Uid </p> </entry>
<entry><p>0x1028318c </p> </entry>
</row>
</tbody>
</tgroup>
</table> <p>The padding modes are used by the following CryptoSPI APIs: </p><ul>
<li><p><xref href="GUID-F9DF2529-463B-3D0C-853A-42E1B9DDD170.dita#GUID-F9DF2529-463B-3D0C-853A-42E1B9DDD170/GUID-DEB128B1-EC5F-363B-AE73-9232771F5FB4"><apiname>CAsymmetricCipherFactory::CreateAsymmetricCipherL()</apiname></xref></p></li>
<li><p><xref href="GUID-F9DF2529-463B-3D0C-853A-42E1B9DDD170.dita#GUID-F9DF2529-463B-3D0C-853A-42E1B9DDD170/GUID-EDC16E45-F72F-3E1A-ABDA-762CFAA3E82B"><apiname>CAsymmetricCipherFactory::CreateAsyncAsymmetricCipherL()</apiname></xref></p></li>
</ul> </section>
<section id="GUID-47A7F1B3-12A7-4567-ABE9-21539CE6D737"><title>Cryptography
modes</title> <table id="GUID-1E4937C9-0E59-547D-8B56-1BAC3F8ED38C">
<tgroup cols="3"><colspec colname="col0"/><colspec colname="col1"/><colspec colname="col2"/>
<thead>
<row>
<entry>UID</entry>
<entry>Description</entry>
<entry>Value</entry>
</row>
</thead>
<tbody>
<row>
<entry><p>KCryptoModeEncryptUid </p> </entry>
<entry><p>Crypto Encrypt Mode Uid </p> </entry>
<entry><p>0x1028318d </p> </entry>
</row>
<row>
<entry><p>KCryptoModeDecryptUid </p> </entry>
<entry><p>Crypto Decrypt Mode Uid </p> </entry>
<entry><p>0x1028318e </p> </entry>
</row>
<row>
<entry><p>KCryptoModeNoneUid </p> </entry>
<entry><p>Crypto None Mode Uid </p> </entry>
<entry><p>0x1028318f </p> </entry>
</row>
</tbody>
</tgroup>
</table> <p>The cryptography modes are used by the following CryptoSPI APIs: </p><ul>
<li><p><xref href="GUID-F9DF2529-463B-3D0C-853A-42E1B9DDD170.dita#GUID-F9DF2529-463B-3D0C-853A-42E1B9DDD170/GUID-DEB128B1-EC5F-363B-AE73-9232771F5FB4"><apiname>CAsymmetricCipherFactory::CreateAsymmetricCipherL()</apiname></xref></p></li>
<li><p><xref href="GUID-F9DF2529-463B-3D0C-853A-42E1B9DDD170.dita#GUID-F9DF2529-463B-3D0C-853A-42E1B9DDD170/GUID-EDC16E45-F72F-3E1A-ABDA-762CFAA3E82B"><apiname>CAsymmetricCipherFactory::CreateAsyncAsymmetricCipherL()</apiname></xref></p></li>
</ul></section>
<section id="GUID-4C67EEC6-151D-4BF9-A2A4-12FE450B9CC3"><title>Hash algorithm UIDs</title> <table id="GUID-419E5D6D-17A7-5454-92A1-E7EDEF618ED6">
<tgroup cols="4"><colspec colname="col0" colwidth="1.00*"/><colspec colname="col1" colwidth="1.00*"/><colspec colname="col2" colwidth="0.72*"/><colspec colname="col3" colwidth="1.28*"/>
<thead>
<row>
<entry>UID</entry>
<entry>Description</entry>
<entry>Value</entry>
<entry>RFC standard</entry>
</row>
</thead>
<tbody>
<row>
<entry><p>KMd2Uid </p> </entry>
<entry><p>MD2, Message-Digest Algorithm </p> </entry>
<entry><p>0x10283173 </p> </entry>
<entry><p> <xref href="http://www.ietf.org/rfc/rfc1319.txt" scope="external">RFC
1319</xref>  </p> </entry>
</row>
<row>
<entry><p>KMd4Uid </p> </entry>
<entry><p>MD4, Message-Digest Algorithm (Output: 128 bit message digest) </p> </entry>
<entry><p>0x2000B341 </p> </entry>
<entry><p> <xref href="http://www.ietf.org/rfc/rfc1320.txt" scope="external">RFC
1320</xref>  </p> </entry>
</row>
<row>
<entry><p>KMd5Uid </p> </entry>
<entry><p>MD5 ,Message-Digest Algorithm (output:128-bit "fingerprint" or "message
digest) </p> </entry>
<entry><p>0x10283174 </p> </entry>
<entry><p> <xref href="http://www.ietf.org/rfc/rfc1321.txt" scope="external">RFC
1321</xref>  </p> </entry>
</row>
<row>
<entry><p>KSha1Uid </p> </entry>
<entry><p>Secure Hash Algorithm(output: 160-bit message digest) </p> </entry>
<entry><p>0x10283175 </p> </entry>
<entry><p> <xref href="http://www.itl.nist.gov/fipspubs/fip180-1.htm" scope="external">FIPS
180-1</xref> and <xref href="http://www.ietf.org/rfc/rfc3174.txt" scope="external">RFC
3174</xref>  </p> </entry>
</row>
<row>
<entry><p>KSha224Uid </p> </entry>
<entry><p>Sha224 algorithm </p> </entry>
<entry><p>0x2000E258 </p> </entry>
<entry><p> <xref href="http://all.net/books/standards/NIST-CSRC/csrc.nist.gov/publications/fips/fips180-2/FIPS180-2_changenotice.pdf" scope="external">FIPS 180-2 (with change notice)</xref>, <xref href="http://www.ietf.org/rfc/rfc3874.txt" scope="external">RFC3874</xref> and <xref href="http://csrc.nist.gov/publications/fips/fips180-3/fips180-3_final.pdf" scope="external">FIPS 180-3</xref>  </p> </entry>
</row>
<row>
<entry><p>KSha256Uid </p> </entry>
<entry><p>Sha256 algorithm </p> </entry>
<entry><p>0x2000E259 </p> </entry>
<entry><p> <xref href="http://csrc.nist.gov/publications/fips/fips180-2/fips180-2.pdf" scope="external">FIPS 180-2</xref> and <xref href="http://tools.ietf.org/html/rfc4634" scope="external">RFC 4634 </xref>  </p> </entry>
</row>
<row>
<entry><p>KSha384Uid </p> </entry>
<entry><p>Sha384 algorithm </p> </entry>
<entry><p>0x2000E25A </p> </entry>
<entry><p> <xref href="http://csrc.nist.gov/publications/fips/fips180-2/fips180-2.pdf" scope="external">FIPS 180-2</xref> and <xref href="http://tools.ietf.org/html/rfc4634" scope="external">RFC 4634 </xref>  </p> </entry>
</row>
<row>
<entry><p>KSha512Uid </p> </entry>
<entry><p>Sha512 algorithm </p> </entry>
<entry><p>0x2000E25B </p> </entry>
<entry><p> <xref href="http://csrc.nist.gov/publications/fips/fips180-2/fips180-2.pdf" scope="external">FIPS 180-2</xref> and <xref href="http://tools.ietf.org/html/rfc4634" scope="external">RFC 4634 </xref>  </p> </entry>
</row>
</tbody>
</tgroup>
</table> <p>The hash algorithm UIDs are used by the following APIs: </p> <ul>
<li id="GUID-FAD44CE7-B0C3-523C-895F-DB58122ACA9D"><p> <xref href="GUID-48BB2346-6840-3A26-B43C-4DF70A322B17.dita"><apiname>CryptoSpi::CHashFactory::CreateHashL()</apiname></xref>  </p> </li>
<li id="GUID-B206FCF6-A9B4-5330-AC91-148D2A18C292"><p> <xref href="GUID-48BB2346-6840-3A26-B43C-4DF70A322B17.dita"><apiname>CryptoSpi::CRuleSelector::CreateHashL()</apiname></xref>  </p> </li>
<li id="GUID-DE3E3CC4-7041-5D50-9C38-409D37858CA0"><p> <xref href="GUID-48BB2346-6840-3A26-B43C-4DF70A322B17.dita"><apiname>CryptoSpi::CCryptoPluginEntry::CreateHashL()</apiname></xref>  </p> </li>
<li id="GUID-17E00247-8550-53C2-9484-3BD0B7BB8350"><p> <xref href="GUID-48BB2346-6840-3A26-B43C-4DF70A322B17.dita"><apiname>CryptoSpi::CHashFactory::CreateAsyncHashL()</apiname></xref>  </p> </li>
<li id="GUID-3FAA4591-64B1-55BF-9A07-D8E4318F9DA7"><p> <xref href="GUID-48BB2346-6840-3A26-B43C-4DF70A322B17.dita"><apiname>CryptoSpi::CRuleSelector::CreateAsyncHashL()</apiname></xref>  </p> </li>
</ul> </section>
<section id="GUID-A558F4E2-F9A7-4CE1-86DC-A6E75646D9A7"><title>Random algorithm UIDs</title> <table id="GUID-7080EBEE-F16E-58E7-86D4-55B06AEE3F9C">
<tgroup cols="3"><colspec colname="col0"/><colspec colname="col1"/><colspec colname="col2"/>
<thead>
<row>
<entry>UID</entry>
<entry>Description</entry>
<entry>Value</entry>
</row>
</thead>
<tbody>
<row>
<entry><p>KRandomUid </p> </entry>
<entry><p>Random algorithm UID </p> </entry>
<entry><p>0x10283178 </p> </entry>
</row>
</tbody>
</tgroup>
</table> <p>The random algorithm UIDs are used by the following APIs: </p> <ul>
<li id="GUID-60CD845B-520E-5A92-9D98-7060DFAFBE2A"><p> <xref href="GUID-48BB2346-6840-3A26-B43C-4DF70A322B17.dita"><apiname>CryptoSpi::CRandomFactory::CreateRandomL()</apiname></xref>  </p> </li>
<li id="GUID-F78A3F91-F0FC-5B97-B09C-377B84DAB442"><p> <xref href="GUID-48BB2346-6840-3A26-B43C-4DF70A322B17.dita"><apiname> CryptoSpi::CRuleSelector::CreateRandomL()</apiname></xref>  </p> </li>
<li id="GUID-43703C40-4FB3-5233-BF18-34320FC50D8E"><p> <xref href="GUID-48BB2346-6840-3A26-B43C-4DF70A322B17.dita"><apiname>CryptoSpi::CRandomFactory::CreateAsyncRandomL()</apiname></xref> </p> </li>
<li id="GUID-E98800A8-4C96-52CE-AE42-0D780065FBDE"><p> <xref href="GUID-48BB2346-6840-3A26-B43C-4DF70A322B17.dita"><apiname>CryptoSpi::CRuleSelector::CreateAsyncRandomL()</apiname></xref> </p> </li>
</ul> </section>
<section id="GUID-C0A00B5D-4499-41D5-A81D-372AFF2F0E98"><title>Symmetric key algorithm UIDs</title> <table id="GUID-21816DBD-BC04-5F12-9972-8FEF5CEA3F5A">
<tgroup cols="3"><colspec colname="col0"/><colspec colname="col1"/><colspec colname="col2"/>
<thead>
<row>
<entry>UID</entry>
<entry>Description</entry>
<entry>Value</entry>
</row>
</thead>
<tbody>
<row>
<entry><p>KDesUid </p> </entry>
<entry><p>Des algorithm UID </p> </entry>
<entry><p>0x10283179 </p> </entry>
</row>
<row>
<entry><p>K3DesUid </p> </entry>
<entry><p>3Des algorithm UID </p> </entry>
<entry><p>0x1028317a </p> </entry>
</row>
<row>
<entry><p>KRc2Uid </p> </entry>
<entry><p>RC2 algorithm UID </p> </entry>
<entry><p>0x1028317b </p> </entry>
</row>
<row>
<entry><p>KArc4Uid </p> </entry>
<entry><p>ARC4 algorithm UID </p> </entry>
<entry><p>0x1028317c </p> </entry>
</row>
<row>
<entry><p>KAesUid </p> </entry>
<entry><p>AES algorithm UID </p> </entry>
<entry><p>0x1028317d </p> </entry>
</row>
<row>
<entry><p>KMisty1Uid </p> </entry>
<entry><p>Misty1 algorithm UID </p> </entry>
<entry><p>0x102831be </p> </entry>
</row>
<row>
<entry><p>KMisty2Uid </p> </entry>
<entry><p>Misty2 algorithm UID </p> </entry>
<entry><p>0x102831bf </p> </entry>
</row>
<row>
<entry><p>KKasumiUid </p> </entry>
<entry><p>Kasumi algorithm UID </p> </entry>
<entry><p>0x102831c0 </p> </entry>
</row>
</tbody>
</tgroup>
</table> <p>The symmetric key algorithm UIDs are used by the following API: </p> <ul>
<li id="GUID-CF4CBD6B-F8AE-5034-9A3D-7D85D35DDCC4"><p> <xref href="GUID-48BB2346-6840-3A26-B43C-4DF70A322B17.dita"><apiname>CryptoSpi::CSymmetricCipher::CSymmetricCipher()</apiname></xref> </p> </li>
</ul> </section>
<section id="GUID-6A2F6C81-F91D-4453-8A5C-2B5D797681DD"><title>Asymmetric key algorithm UIDs</title> <table id="GUID-FB96DF5A-16F9-535F-B754-52FCEE1337C5">
<tgroup cols="3"><colspec colname="col0"/><colspec colname="col1"/><colspec colname="col2"/>
<thead>
<row>
<entry>UID</entry>
<entry>Description</entry>
<entry>Value</entry>
</row>
</thead>
<tbody>
<row>
<entry><p>KRsaCipherUid </p> </entry>
<entry><p>RSA Cipher algorithm UID </p> </entry>
<entry><p>0x1028317e </p> </entry>
</row>
<row>
<entry><p>KRsaSignerUid </p> </entry>
<entry><p>RSA Signer algorithm UID </p> </entry>
<entry><p>0x1028317f </p> </entry>
</row>
<row>
<entry><p>KRsaVerifierUid </p> </entry>
<entry><p>RSA Verifier algorithm UID </p> </entry>
<entry><p>0x10283181 </p> </entry>
</row>
<row>
<entry><p>KRSAKeyPairGeneratorUid </p> </entry>
<entry><p>RSA Key Pair Generator algorithm UID </p> </entry>
<entry><p>0x10283185 </p> </entry>
</row>
<row>
<entry><p>KDsaSignerUid </p> </entry>
<entry><p>DSA Signer algorithm UID </p> </entry>
<entry><p>0x10283180 </p> </entry>
</row>
<row>
<entry><p>KDsaVerifierUid </p> </entry>
<entry><p>DSA Verifier algorithm UID </p> </entry>
<entry><p>0x10283182 </p> </entry>
</row>
<row>
<entry><p>KDSAKeyPairGeneratorUid </p> </entry>
<entry><p>DSA Key Pair Generator algorithm UID </p> </entry>
<entry><p>0x10283186 </p> </entry>
</row>
<row>
<entry><p>KDHAgreementUid </p> </entry>
<entry><p>DH Agreement algorithm UID </p> </entry>
<entry><p>0x10283183 </p> </entry>
</row>
<row>
<entry><p>KDHKeyPairGeneratorUid </p> </entry>
<entry><p>DH Key Pair Generator algorithm UID </p> </entry>
<entry><p>0x10283184 </p> </entry>
</row>
<row>
<entry><p>KEccCipherUid </p> </entry>
<entry><p>ECC Key Cipher algorithm UID </p> </entry>
<entry><p>0x20024482 </p> </entry>
</row>
<row>
<entry><p>KEccSignerUid </p> </entry>
<entry><p>ECC Key Signer algorithm UID </p> </entry>
<entry><p>0x20024483 </p> </entry>
</row>
<row>
<entry><p>KEccVerifierUid </p> </entry>
<entry><p>ECC Key Verifier algorithm UID </p> </entry>
<entry><p>0x20024486 </p> </entry>
</row>
<row>
<entry><p>KEccKeyPairGeneratorUid </p> </entry>
<entry><p>ECC Key Pair Generator algorithm UID </p> </entry>
<entry><p>0x20024487 </p> </entry>
</row>
</tbody>
</tgroup>
</table> <p> <b>Note:</b> The ECC key UIDs are enabled only if the macros <codeph>SYMBIAN_ENABLE_SDP_ECC</codeph> and <codeph>SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT</codeph> are enabled. </p> <p>The asymmetric key algorithm UIDs are used by the following
API: </p> <ul>
<li id="GUID-6121C646-5898-51C4-A51D-063A6841BDF7"><p> <xref href="GUID-48BB2346-6840-3A26-B43C-4DF70A322B17.dita"><apiname>CryptoSpi::CAsymmetricCipher::CAsymmetricCipher()</apiname></xref> </p> </li>
</ul> </section>
<section id="GUID-CF0ECFB3-C28B-41D2-AE47-6C360F47DA17"><title>Other UIDs</title> <table id="GUID-58122807-15E8-5919-BE4B-6E52BB425319">
<tgroup cols="3"><colspec colname="col0"/><colspec colname="col1"/><colspec colname="col2"/>
<thead>
<row>
<entry>UID</entry>
<entry>Description</entry>
<entry>Value</entry>
</row>
</thead>
<tbody>
<row>
<entry><p>KPassedHandleToKeyUid </p> </entry>
<entry><p>Use this UID as <xref href="GUID-48BB2346-6840-3A26-B43C-4DF70A322B17.dita"><apiname>CKey</apiname></xref> 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. </p> <p> <b>Note:</b> This UID is enabled only
if the <codeph>SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT</codeph> macro is enabled. </p> </entry>
<entry><p>0x20025161 </p> </entry>
</row>
</tbody>
</tgroup>
</table> <p><b>Example usage of KPassedHandleToKeyUid</b> </p> <p>The following
sequence of steps explains the use of <codeph>KPassedHandleToKeyUid</codeph> in
the key parameter, which, along with the key property creates a <xref href="GUID-48BB2346-6840-3A26-B43C-4DF70A322B17.dita"><apiname>CKey</apiname></xref> object.
This <xref href="GUID-48BB2346-6840-3A26-B43C-4DF70A322B17.dita"><apiname>CKey</apiname></xref> object is one of the parameters
in the creation of a signer object, which can be used for performing signing
operations. </p> <ol id="GUID-90F8CE15-EFDA-5330-A8A0-722EFC5714B0">
<li id="GUID-809C4C15-873A-51CE-B1E8-CCFAAD66C8A7"><p>Define the key property. </p> <p>Create
a <codeph>CCryptoParams</codeph> object for the key parameter. Add the key
handle and <codeph>KPassedHandleToKeyUid</codeph> to the CCryptoParams object
by using <xref href="GUID-48BB2346-6840-3A26-B43C-4DF70A322B17.dita"><apiname>CCryptoParams::AddL()</apiname></xref>. </p> </li>
<li id="GUID-D6732C41-74A4-59A3-A099-D7CA9AE2C634"><p>Create a <xref href="GUID-48BB2346-6840-3A26-B43C-4DF70A322B17.dita"><apiname>CKey</apiname></xref> object
by passing instance of the key property and the <codeph>CCryptoParams</codeph> object
containing <codeph>KPassedHandleToKeyUid</codeph>. </p> </li>
<li id="GUID-ADA7CF45-9A3B-5888-9BF7-11465E78A04B"><p>Create a signer object
by using the <xref href="GUID-48BB2346-6840-3A26-B43C-4DF70A322B17.dita"><apiname>CKey</apiname></xref> object as one of the
parameters. This signer object can be used for performing signing operations. </p> </li>
</ol> <p>The following code snippet demonstrates the use of <codeph>KPassedHandleToKeyUid</codeph>: </p> <codeblock id="GUID-2BDD4700-C5EA-56A9-ACE7-5CB703B43886" xml:space="preserve">
.
.
.
// 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-&gt;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);
.
.
.
</codeblock> </section>
<section id="GUID-0086C0B8-AE57-4653-9F77-A8594441D7AE"><title>Operation modes</title> <table id="GUID-DE9AE866-8A93-5876-A083-30A054D35651">
<tgroup cols="3"><colspec colname="col0"/><colspec colname="col1"/><colspec colname="col2"/>
<thead>
<row>
<entry>UID</entry>
<entry>Description</entry>
<entry>Value</entry>
</row>
</thead>
<tbody>
<row>
<entry><p>KOperationModeNoneUid </p> </entry>
<entry><p>None Mode UID </p> </entry>
<entry><p>0x10283190 </p> </entry>
</row>
<row>
<entry><p>KOperationModeECBUid </p> </entry>
<entry><p>ECB Mode UID </p> </entry>
<entry><p>0x10283191 </p> </entry>
</row>
<row>
<entry><p>KOperationModeCBCUid </p> </entry>
<entry><p>CBC Mode UID </p> </entry>
<entry><p>0x10283192 </p> </entry>
</row>
<row>
<entry><p>KOperationModeOFBUid </p> </entry>
<entry><p>OFB Mode UID </p> </entry>
<entry><p>0x10283193 </p> </entry>
</row>
<row>
<entry><p>KOperationModeCFBUid </p> </entry>
<entry><p>CFB Mode UID </p> </entry>
<entry><p>0x10283194 </p> </entry>
</row>
<row>
<entry><p>KOperationModeCTRUid </p> </entry>
<entry><p>CTR Mode UID </p> </entry>
<entry><p>0x10283195 </p> </entry>
</row>
</tbody>
</tgroup>
</table> <p>The operation modes are used by the following APIs: </p> <ul>
<li id="GUID-3A02B850-7569-58CD-9D70-0A978DDA2963"><p> <xref href="GUID-48BB2346-6840-3A26-B43C-4DF70A322B17.dita"><apiname>CryptoSpi::CHashFactory::CreateHashL()</apiname></xref>  </p> </li>
<li id="GUID-81EA0218-CCFE-563D-9709-3DBA86260262"><p> <xref href="GUID-48BB2346-6840-3A26-B43C-4DF70A322B17.dita"><apiname> CryptoSpi::CHashFactory::CreateAsyncHashL()</apiname></xref>  </p> </li>
</ul> </section>
</conbody></concept>