<!-- ##### SECTION Title ##### -->
keys

<!-- ##### SECTION Short_Description ##### -->
Crypto key object definition.

<!-- ##### SECTION Long_Description ##### -->
<para>
Crypto key object definition.
</para>

<!-- ##### SECTION See_Also ##### -->
<para>

</para>

<!-- ##### SECTION Stability_Level ##### -->


<!-- ##### TYPEDEF xmlSecKeyUsage ##### -->
<para>

</para>


<!-- ##### MACRO xmlSecKeyUsageSign ##### -->
<para>

</para>



<!-- ##### MACRO xmlSecKeyUsageVerify ##### -->
<para>

</para>



<!-- ##### MACRO xmlSecKeyUsageEncrypt ##### -->
<para>

</para>



<!-- ##### MACRO xmlSecKeyUsageDecrypt ##### -->
<para>

</para>



<!-- ##### MACRO xmlSecKeyUsageKeyExchange ##### -->
<para>

</para>



<!-- ##### MACRO xmlSecKeyUsageAny ##### -->
<para>

</para>



<!-- ##### FUNCTION xmlSecKeyUseWithInitialize ##### -->
<para>

</para>

@keyUseWith: 
@Returns: 


<!-- ##### FUNCTION xmlSecKeyUseWithFinalize ##### -->
<para>

</para>

@keyUseWith: 


<!-- ##### FUNCTION xmlSecKeyUseWithReset ##### -->
<para>

</para>

@keyUseWith: 


<!-- ##### FUNCTION xmlSecKeyUseWithCopy ##### -->
<para>

</para>

@dst: 
@src: 
@Returns: 


<!-- ##### FUNCTION xmlSecKeyUseWithCreate ##### -->
<para>

</para>

@application: 
@identifier: 
@Returns: 


<!-- ##### FUNCTION xmlSecKeyUseWithDuplicate ##### -->
<para>

</para>

@keyUseWith: 
@Returns: 


<!-- ##### FUNCTION xmlSecKeyUseWithDestroy ##### -->
<para>

</para>

@keyUseWith: 


<!-- ##### FUNCTION xmlSecKeyUseWithSet ##### -->
<para>

</para>

@keyUseWith: 
@application: 
@identifier: 
@Returns: 


<!-- ##### FUNCTION xmlSecKeyUseWithDebugDump ##### -->
<para>

</para>

@keyUseWith: 
@output: 


<!-- ##### FUNCTION xmlSecKeyUseWithDebugXmlDump ##### -->
<para>

</para>

@keyUseWith: 
@output: 


<!-- ##### STRUCT xmlSecKeyUseWith ##### -->
<para>

</para>

@application: 
@identifier: 
@reserved1: 
@reserved2: 

<!-- ##### MACRO xmlSecKeyUseWithPtrListId ##### -->
<para>

</para>



<!-- ##### FUNCTION xmlSecKeyUseWithPtrListGetKlass ##### -->
<para>

</para>

@Returns: 


<!-- ##### STRUCT xmlSecKeyReq ##### -->
<para>

</para>

@keyId: 
@keyType: 
@keyUsage: 
@keyBitsSize: 
@keyUseWithList: 
@reserved1: 
@reserved2: 

<!-- ##### FUNCTION xmlSecKeyReqInitialize ##### -->
<para>

</para>

@keyReq: 
@Returns: 


<!-- ##### FUNCTION xmlSecKeyReqFinalize ##### -->
<para>

</para>

@keyReq: 


<!-- ##### FUNCTION xmlSecKeyReqReset ##### -->
<para>

</para>

@keyReq: 


<!-- ##### FUNCTION xmlSecKeyReqCopy ##### -->
<para>

</para>

@dst: 
@src: 
@Returns: 


<!-- ##### FUNCTION xmlSecKeyReqMatchKey ##### -->
<para>

</para>

@keyReq: 
@key: 
@Returns: 


<!-- ##### FUNCTION xmlSecKeyReqMatchKeyValue ##### -->
<para>

</para>

@keyReq: 
@value: 
@Returns: 


<!-- ##### FUNCTION xmlSecKeyReqDebugDump ##### -->
<para>

</para>

@keyReq: 
@output: 


<!-- ##### FUNCTION xmlSecKeyReqDebugXmlDump ##### -->
<para>

</para>

@keyReq: 
@output: 


<!-- ##### STRUCT xmlSecKey ##### -->
<para>

</para>

@name: 
@value: 
@dataList: 
@usage: 
@notValidBefore: 
@notValidAfter: 

<!-- ##### FUNCTION xmlSecKeyCreate ##### -->
<para>

</para>

@Returns: 


<!-- ##### FUNCTION xmlSecKeyDestroy ##### -->
<para>

</para>

@key: 


<!-- ##### FUNCTION xmlSecKeyEmpty ##### -->
<para>

</para>

@key: 


<!-- ##### FUNCTION xmlSecKeyDuplicate ##### -->
<para>

</para>

@key: 
@Returns: 


<!-- ##### FUNCTION xmlSecKeyCopy ##### -->
<para>

</para>

@keyDst: 
@keySrc: 
@Returns: 


<!-- ##### FUNCTION xmlSecKeyGetName ##### -->
<para>

</para>

@key: 
@Returns: 


<!-- ##### FUNCTION xmlSecKeySetName ##### -->
<para>

</para>

@key: 
@name: 
@Returns: 


<!-- ##### FUNCTION xmlSecKeyGetType ##### -->
<para>

</para>

@key: 
@Returns: 


<!-- ##### FUNCTION xmlSecKeyGetValue ##### -->
<para>

</para>

@key: 
@Returns: 


<!-- ##### FUNCTION xmlSecKeySetValue ##### -->
<para>

</para>

@key: 
@value: 
@Returns: 


<!-- ##### FUNCTION xmlSecKeyGetData ##### -->
<para>

</para>

@key: 
@dataId: 
@Returns: 


<!-- ##### FUNCTION xmlSecKeyEnsureData ##### -->
<para>

</para>

@key: 
@dataId: 
@Returns: 


<!-- ##### FUNCTION xmlSecKeyAdoptData ##### -->
<para>

</para>

@key: 
@data: 
@Returns: 


<!-- ##### FUNCTION xmlSecKeyDebugDump ##### -->
<para>

</para>

@key: 
@output: 


<!-- ##### FUNCTION xmlSecKeyDebugXmlDump ##### -->
<para>

</para>

@key: 
@output: 


<!-- ##### FUNCTION xmlSecKeyGenerate ##### -->
<para>

</para>

@dataId: 
@sizeBits: 
@type: 
@Returns: 


<!-- ##### FUNCTION xmlSecKeyGenerateByName ##### -->
<para>

</para>

@name: 
@sizeBits: 
@type: 
@Returns: 


<!-- ##### FUNCTION xmlSecKeyMatch ##### -->
<para>

</para>

@key: 
@name: 
@keyReq: 
@Returns: 


<!-- ##### FUNCTION xmlSecKeyReadBuffer ##### -->
<para>

</para>

@dataId: 
@buffer: 
@Returns: 


<!-- ##### FUNCTION xmlSecKeyReadBinaryFile ##### -->
<para>

</para>

@dataId: 
@filename: 
@Returns: 


<!-- ##### FUNCTION xmlSecKeyReadMemory ##### -->
<para>

</para>

@dataId: 
@data: 
@dataSize: 
@Returns: 


<!-- ##### MACRO xmlSecKeyIsValid ##### -->
<para>

</para>

@key: 


<!-- ##### MACRO xmlSecKeyCheckId ##### -->
<para>

</para>

@key: 
@keyId: 


<!-- ##### MACRO xmlSecKeyPtrListId ##### -->
<para>

</para>



<!-- ##### FUNCTION xmlSecKeyPtrListGetKlass ##### -->
<para>

</para>

@Returns: 


