XML Security Library

LibXML2
LibXSLT
OpenSSL

crypto

Name

crypto -- Crypto transforms implementation for MS Crypto.

Synopsis

xmlSecCryptoDLFunctionsPtr  xmlSecCryptoGetFunctions_mscrypto
                                                        (void);
int                 xmlSecMSCryptoInit                  (void);
int                 xmlSecMSCryptoShutdown              (void);
int                 xmlSecMSCryptoKeysMngrInit          (xmlSecKeysMngrPtr mngr);
int                 xmlSecMSCryptoGenerateRandom        (xmlSecBufferPtr buffer,
                                                         size_t size);
void                xmlSecMSCryptoErrorsDefaultCallback (const char *file,
                                                         int line,
                                                         const char *func,
                                                         const char *errorObject,
                                                         const char *errorSubject,
                                                         int reason,
                                                         const char *msg);
BYTE*               xmlSecMSCryptoCertStrToName         (DWORD dwCertEncodingType,
                                                         LPCTSTR pszX500,
                                                         DWORD dwStrType,
                                                         DWORD *len);
#define             xmlSecMSCryptoKeyDataDsaId
xmlSecKeyDataId     xmlSecMSCryptoKeyDataDsaGetKlass    (void);
#define             xmlSecMSCryptoTransformDsaSha1Id
xmlSecTransformId   xmlSecMSCryptoTransformDsaSha1GetKlass
                                                        (void);
#define             xmlSecMSCryptoKeyDataGost2001Id
xmlSecKeyDataId     xmlSecMSCryptoKeyDataGost2001GetKlass
                                                        (void);
#define             xmlSecMSCryptoTransformGost2001GostR3411_94Id
xmlSecTransformId   xmlSecMSCryptoTransformGost2001GostR3411_94GetKlass
                                                        (void);
#define             xmlSecMSCryptoKeyDataRsaId
xmlSecKeyDataId     xmlSecMSCryptoKeyDataRsaGetKlass    (void);
#define             xmlSecMSCryptoTransformRsaSha1Id
xmlSecTransformId   xmlSecMSCryptoTransformRsaSha1GetKlass
                                                        (void);
#define             xmlSecMSCryptoTransformRsaPkcs1Id
xmlSecTransformId   xmlSecMSCryptoTransformRsaPkcs1GetKlass
                                                        (void);
#define             xmlSecMSCryptoTransformSha1Id
xmlSecTransformId   xmlSecMSCryptoTransformSha1GetKlass (void);
#define             xmlSecMSCryptoTransformGostR3411_94Id
xmlSecTransformId   xmlSecMSCryptoTransformGostR3411_94GetKlass
                                                        (void);
#define             xmlSecMSCryptoKeyDataAesId
xmlSecKeyDataId     xmlSecMSCryptoKeyDataAesGetKlass    (void);
int                 xmlSecMSCryptoKeyDataAesSet         (xmlSecKeyDataPtr data,
                                                         const xmlSecByte *buf,
                                                         xmlSecSize bufSize);
#define             xmlSecMSCryptoTransformAes128CbcId
xmlSecTransformId   xmlSecMSCryptoTransformAes128CbcGetKlass
                                                        (void);
#define             xmlSecMSCryptoTransformAes192CbcId
xmlSecTransformId   xmlSecMSCryptoTransformAes192CbcGetKlass
                                                        (void);
#define             xmlSecMSCryptoTransformAes256CbcId
xmlSecTransformId   xmlSecMSCryptoTransformAes256CbcGetKlass
                                                        (void);
#define             xmlSecMSCryptoKeyDataDesId
xmlSecKeyDataId     xmlSecMSCryptoKeyDataDesGetKlass    (void);
#define             xmlSecMSCryptoTransformDes3CbcId
xmlSecTransformId   xmlSecMSCryptoTransformDes3CbcGetKlass
                                                        (void);

Description

Crypto transforms implementation for MS Crypto.

Details

xmlSecCryptoGetFunctions_mscrypto ()

xmlSecCryptoDLFunctionsPtr  xmlSecCryptoGetFunctions_mscrypto
                                                        (void);

Gets MSCrypto specific functions table.

Returns :

xmlsec-mscrypto functions table.


xmlSecMSCryptoInit ()

int                 xmlSecMSCryptoInit                  (void);

XMLSec library specific crypto engine initialization.

Returns :

0 on success or a negative value otherwise.


xmlSecMSCryptoShutdown ()

int                 xmlSecMSCryptoShutdown              (void);

XMLSec library specific crypto engine shutdown.

Returns :

0 on success or a negative value otherwise.


xmlSecMSCryptoKeysMngrInit ()

int                 xmlSecMSCryptoKeysMngrInit          (xmlSecKeysMngrPtr mngr);

Adds MSCrypto specific key data stores in keys manager.

mngr :

the pointer to keys manager.

Returns :

0 on success or a negative value otherwise.


xmlSecMSCryptoGenerateRandom ()

int                 xmlSecMSCryptoGenerateRandom        (xmlSecBufferPtr buffer,
                                                         size_t size);

Generates size random bytes and puts result in buffer (not implemented yet).

buffer :

the destination buffer.

size :

the numer of bytes to generate.

Returns :

0 on success or a negative value otherwise.


xmlSecMSCryptoErrorsDefaultCallback ()

void                xmlSecMSCryptoErrorsDefaultCallback (const char *file,
                                                         int line,
                                                         const char *func,
                                                         const char *errorObject,
                                                         const char *errorSubject,
                                                         int reason,
                                                         const char *msg);

The default errors reporting callback function.

file :

the error location file name (__FILE__ macro).

line :

the error location line number (__LINE__ macro).

func :

the error location function name (__FUNCTION__ macro).

errorObject :

the error specific error object

errorSubject :

the error specific error subject.

reason :

the error code.

msg :

the additional error message.


xmlSecMSCryptoCertStrToName ()

BYTE*               xmlSecMSCryptoCertStrToName         (DWORD dwCertEncodingType,
                                                         LPCTSTR pszX500,
                                                         DWORD dwStrType,
                                                         DWORD *len);

Converts input string to name by calling CertStrToName function.

dwCertEncodingType :

the encoding used.

pszX500 :

the string to convert.

dwStrType :

the string type.

len :

the result len.

Returns :

a pointer to newly allocated string or NULL if an error occurs.


xmlSecMSCryptoKeyDataDsaId

#define             xmlSecMSCryptoKeyDataDsaId

The DSA key klass.


xmlSecMSCryptoKeyDataDsaGetKlass ()

xmlSecKeyDataId     xmlSecMSCryptoKeyDataDsaGetKlass    (void);

The DSA key data klass.

Returns :

pointer to DSA key data klass.


xmlSecMSCryptoTransformDsaSha1Id

#define             xmlSecMSCryptoTransformDsaSha1Id

The DSA SHA1 signature transform klass.


xmlSecMSCryptoTransformDsaSha1GetKlass ()

xmlSecTransformId   xmlSecMSCryptoTransformDsaSha1GetKlass
                                                        (void);

The DSA-SHA1 signature transform klass.

Returns :

DSA-SHA1 signature transform klass.


xmlSecMSCryptoKeyDataGost2001Id

#define             xmlSecMSCryptoKeyDataGost2001Id

The GOST2001 key klass.


xmlSecMSCryptoKeyDataGost2001GetKlass ()

xmlSecKeyDataId     xmlSecMSCryptoKeyDataGost2001GetKlass
                                                        (void);

The GOST2001 key data klass.

Returns :

pointer to GOST2001 key data klass.


xmlSecMSCryptoTransformGost2001GostR3411_94Id

#define             xmlSecMSCryptoTransformGost2001GostR3411_94Id

The GOST2001 GOSTR3411_94 signature transform klass.


xmlSecMSCryptoTransformGost2001GostR3411_94GetKlass ()

xmlSecTransformId   xmlSecMSCryptoTransformGost2001GostR3411_94GetKlass
                                                        (void);

The GOST2001-GOSTR3411_94 signature transform klass.

Returns :

GOST2001-GOSTR3411_94 signature transform klass.


xmlSecMSCryptoKeyDataRsaId

#define             xmlSecMSCryptoKeyDataRsaId

The RSA key klass.


xmlSecMSCryptoKeyDataRsaGetKlass ()

xmlSecKeyDataId     xmlSecMSCryptoKeyDataRsaGetKlass    (void);

The MSCrypto RSA CertKey data klass.

Returns :

pointer to MSCrypto RSA key data klass.


xmlSecMSCryptoTransformRsaSha1Id

#define             xmlSecMSCryptoTransformRsaSha1Id

The RSA-SHA1 signature transform klass.


xmlSecMSCryptoTransformRsaSha1GetKlass ()

xmlSecTransformId   xmlSecMSCryptoTransformRsaSha1GetKlass
                                                        (void);

The RSA-SHA1 signature transform klass.

Returns :

RSA-SHA1 signature transform klass.


xmlSecMSCryptoTransformRsaPkcs1Id

#define             xmlSecMSCryptoTransformRsaPkcs1Id

The RSA PKCS1 key transport transform klass.


xmlSecMSCryptoTransformRsaPkcs1GetKlass ()

xmlSecTransformId   xmlSecMSCryptoTransformRsaPkcs1GetKlass
                                                        (void);

The RSA-PKCS1 key transport transform klass.

Returns :

RSA-PKCS1 key transport transform klass.


xmlSecMSCryptoTransformSha1Id

#define             xmlSecMSCryptoTransformSha1Id

The SHA1 digest transform klass.


xmlSecMSCryptoTransformSha1GetKlass ()

xmlSecTransformId   xmlSecMSCryptoTransformSha1GetKlass (void);

SHA-1 digest transform klass.

Returns :

pointer to SHA-1 digest transform klass.


xmlSecMSCryptoTransformGostR3411_94Id

#define             xmlSecMSCryptoTransformGostR3411_94Id

The GOSTR3411_94 digest transform klass.


xmlSecMSCryptoTransformGostR3411_94GetKlass ()

xmlSecTransformId   xmlSecMSCryptoTransformGostR3411_94GetKlass
                                                        (void);

GOSTR3411_94 digest transform klass.

Returns :

pointer to GOSTR3411_94 digest transform klass.


xmlSecMSCryptoKeyDataAesId

#define             xmlSecMSCryptoKeyDataAesId

The AES key data klass.


xmlSecMSCryptoKeyDataAesGetKlass ()

xmlSecKeyDataId     xmlSecMSCryptoKeyDataAesGetKlass    (void);

The AES key data klass.

Returns :

AES key data klass.


xmlSecMSCryptoKeyDataAesSet ()

int                 xmlSecMSCryptoKeyDataAesSet         (xmlSecKeyDataPtr data,
                                                         const xmlSecByte *buf,
                                                         xmlSecSize bufSize);

Sets the value of AES key data.

data :

the pointer to AES key data.

buf :

the pointer to key value.

bufSize :

the key value size (in bytes).

Returns :

0 on success or a negative value if an error occurs.


xmlSecMSCryptoTransformAes128CbcId

#define             xmlSecMSCryptoTransformAes128CbcId

The AES128 CBC cipher transform klass.


xmlSecMSCryptoTransformAes128CbcGetKlass ()

xmlSecTransformId   xmlSecMSCryptoTransformAes128CbcGetKlass
                                                        (void);

AES 128 CBC encryption transform klass.

Returns :

pointer to AES 128 CBC encryption transform.


xmlSecMSCryptoTransformAes192CbcId

#define             xmlSecMSCryptoTransformAes192CbcId

The AES192 CBC cipher transform klass.


xmlSecMSCryptoTransformAes192CbcGetKlass ()

xmlSecTransformId   xmlSecMSCryptoTransformAes192CbcGetKlass
                                                        (void);

AES 192 CBC encryption transform klass.

Returns :

pointer to AES 192 CBC encryption transform.


xmlSecMSCryptoTransformAes256CbcId

#define             xmlSecMSCryptoTransformAes256CbcId

The AES256 CBC cipher transform klass.


xmlSecMSCryptoTransformAes256CbcGetKlass ()

xmlSecTransformId   xmlSecMSCryptoTransformAes256CbcGetKlass
                                                        (void);

AES 256 CBC encryption transform klass.

Returns :

pointer to AES 256 CBC encryption transform.


xmlSecMSCryptoKeyDataDesId

#define             xmlSecMSCryptoKeyDataDesId

The DES key data klass.


xmlSecMSCryptoKeyDataDesGetKlass ()

xmlSecKeyDataId     xmlSecMSCryptoKeyDataDesGetKlass    (void);

The DES key data klass.

Returns :

DES key data klass.


xmlSecMSCryptoTransformDes3CbcId

#define             xmlSecMSCryptoTransformDes3CbcId

The DES3 CBC cipher transform klass.


xmlSecMSCryptoTransformDes3CbcGetKlass ()

xmlSecTransformId   xmlSecMSCryptoTransformDes3CbcGetKlass
                                                        (void);

Triple DES CBC encryption transform klass.

Returns :

pointer to Triple DES encryption transform.