S2OPC OPCUA Toolkit
Functions
crypto_functions_lib.h File Reference
#include "sopc_crypto_decl.h"
#include "sopc_key_manager.h"
#include "sopc_secret_buffer.h"

Go to the source code of this file.

Functions

SOPC_ReturnStatus CryptoProvider_SymmEncrypt_AES128 (const SOPC_CryptoProvider *pProvider, const uint8_t *pInput, uint32_t lenPlainText, const SOPC_ExposedBuffer *pKey, const SOPC_ExposedBuffer *pIV, uint8_t *pOutput, uint32_t lenOutput)
 
SOPC_ReturnStatus CryptoProvider_SymmDecrypt_AES128 (const SOPC_CryptoProvider *pProvider, const uint8_t *pInput, uint32_t lenCipherText, const SOPC_ExposedBuffer *pKey, const SOPC_ExposedBuffer *pIV, uint8_t *pOutput, uint32_t lenOutput)
 
SOPC_ReturnStatus CryptoProvider_SymmEncrypt_AES256 (const SOPC_CryptoProvider *pProvider, const uint8_t *pInput, uint32_t lenPlainText, const SOPC_ExposedBuffer *pKey, const SOPC_ExposedBuffer *pIV, uint8_t *pOutput, uint32_t lenOutput)
 
SOPC_ReturnStatus CryptoProvider_SymmDecrypt_AES256 (const SOPC_CryptoProvider *pProvider, const uint8_t *pInput, uint32_t lenCipherText, const SOPC_ExposedBuffer *pKey, const SOPC_ExposedBuffer *pIV, uint8_t *pOutput, uint32_t lenOutput)
 
SOPC_ReturnStatus CryptoProvider_SymmSign_HMAC_SHA256 (const SOPC_CryptoProvider *pProvider, const uint8_t *pInput, uint32_t lenInput, const SOPC_ExposedBuffer *pKey, uint8_t *pOutput)
 
SOPC_ReturnStatus CryptoProvider_SymmVerify_HMAC_SHA256 (const SOPC_CryptoProvider *pProvider, const uint8_t *pInput, uint32_t lenInput, const SOPC_ExposedBuffer *pKey, const uint8_t *pSignature)
 
SOPC_ReturnStatus CryptoProvider_GenTrueRnd (const SOPC_CryptoProvider *pProvider, SOPC_ExposedBuffer *pData, uint32_t lenData)
 
SOPC_ReturnStatus CryptoProvider_DeriveData_PRF_SHA256 (const SOPC_CryptoProvider *pProvider, const SOPC_ExposedBuffer *pSecret, uint32_t lenSecret, const SOPC_ExposedBuffer *pSeed, uint32_t lenSeed, SOPC_ExposedBuffer *pOutput, uint32_t lenOutput)
 
SOPC_ReturnStatus CryptoProvider_AsymEncrypt_RSA_OAEP (const SOPC_CryptoProvider *pProvider, const uint8_t *pInput, uint32_t lenPlainText, const SOPC_AsymmetricKey *pKey, uint8_t *pOutput)
 
SOPC_ReturnStatus CryptoProvider_AsymDecrypt_RSA_OAEP (const SOPC_CryptoProvider *pProvider, const uint8_t *pInput, uint32_t lenPlainText, const SOPC_AsymmetricKey *pKey, uint8_t *pOutput, uint32_t *pLenWritten)
 
SOPC_ReturnStatus CryptoProvider_AsymSign_RSASSA_PKCS1_v15_w_SHA256 (const SOPC_CryptoProvider *pProvider, const uint8_t *pInput, uint32_t lenInput, const SOPC_AsymmetricKey *pKey, uint8_t *pSignature)
 
SOPC_ReturnStatus CryptoProvider_AsymVerify_RSASSA_PKCS1_v15_w_SHA256 (const SOPC_CryptoProvider *pProvider, const uint8_t *pInput, uint32_t lenInput, const SOPC_AsymmetricKey *pKey, const uint8_t *pSignature)
 
SOPC_ReturnStatus CryptoProvider_CertVerify_RSA_SHA256_2048_4096 (const SOPC_CryptoProvider *pCrypto, const SOPC_CertificateList *pCert)
 
SOPC_ReturnStatus CryptoProvider_AsymEncrypt_RSA_OAEP_SHA256 (const SOPC_CryptoProvider *pProvider, const uint8_t *pInput, uint32_t lenPlainText, const SOPC_AsymmetricKey *pKey, uint8_t *pOutput)
 
SOPC_ReturnStatus CryptoProvider_AsymDecrypt_RSA_OAEP_SHA256 (const SOPC_CryptoProvider *pProvider, const uint8_t *pInput, uint32_t lenPlainText, const SOPC_AsymmetricKey *pKey, uint8_t *pOutput, uint32_t *pLenWritten)
 
SOPC_ReturnStatus CryptoProvider_AsymSign_RSASSA_PSS (const SOPC_CryptoProvider *pProvider, const uint8_t *pInput, uint32_t lenInput, const SOPC_AsymmetricKey *pKey, uint8_t *pSignature)
 
SOPC_ReturnStatus CryptoProvider_AsymVerify_RSASSA_PSS (const SOPC_CryptoProvider *pProvider, const uint8_t *pInput, uint32_t lenInput, const SOPC_AsymmetricKey *pKey, const uint8_t *pSignature)
 
SOPC_ReturnStatus CryptoProvider_SymmSign_HMAC_SHA1 (const SOPC_CryptoProvider *pProvider, const uint8_t *pInput, uint32_t lenInput, const SOPC_ExposedBuffer *pKey, uint8_t *pOutput)
 
SOPC_ReturnStatus CryptoProvider_SymmVerify_HMAC_SHA1 (const SOPC_CryptoProvider *pProvider, const uint8_t *pInput, uint32_t lenInput, const SOPC_ExposedBuffer *pKey, const uint8_t *pSignature)
 
SOPC_ReturnStatus CryptoProvider_DeriveData_PRF_SHA1 (const SOPC_CryptoProvider *pProvider, const SOPC_ExposedBuffer *pSecret, uint32_t lenSecret, const SOPC_ExposedBuffer *pSeed, uint32_t lenSeed, SOPC_ExposedBuffer *pOutput, uint32_t lenOutput)
 
SOPC_ReturnStatus CryptoProvider_AsymSign_RSASSA_PKCS1_v15_w_SHA1 (const SOPC_CryptoProvider *pProvider, const uint8_t *pInput, uint32_t lenInput, const SOPC_AsymmetricKey *pKey, uint8_t *pSignature)
 
SOPC_ReturnStatus CryptoProvider_AsymVerify_RSASSA_PKCS1_v15_w_SHA1 (const SOPC_CryptoProvider *pProvider, const uint8_t *pInput, uint32_t lenInput, const SOPC_AsymmetricKey *pKey, const uint8_t *pSignature)
 
SOPC_ReturnStatus CryptoProvider_CertVerify_RSA_SHA1_SHA256_1024_2048 (const SOPC_CryptoProvider *pCrypto, const SOPC_CertificateList *pCert)
 
SOPC_ReturnStatus CryptoProvider_CTR_Crypt_AES256 (const SOPC_CryptoProvider *pProvider, const uint8_t *pInput, uint32_t lenInput, const SOPC_ExposedBuffer *pKey, const SOPC_ExposedBuffer *pKeyNonce, const SOPC_ExposedBuffer *pRandom, uint32_t uSequenceNumber, uint8_t *pOutput)
 

Detailed Description

Gathers the definitions of the lib-specific and crypto-related functions.

Function Documentation

◆ CryptoProvider_SymmEncrypt_AES128()

SOPC_ReturnStatus CryptoProvider_SymmEncrypt_AES128 ( const SOPC_CryptoProvider pProvider,
const uint8_t *  pInput,
uint32_t  lenPlainText,
const SOPC_ExposedBuffer pKey,
const SOPC_ExposedBuffer pIV,
uint8_t *  pOutput,
uint32_t  lenOutput 
)

◆ CryptoProvider_SymmDecrypt_AES128()

SOPC_ReturnStatus CryptoProvider_SymmDecrypt_AES128 ( const SOPC_CryptoProvider pProvider,
const uint8_t *  pInput,
uint32_t  lenCipherText,
const SOPC_ExposedBuffer pKey,
const SOPC_ExposedBuffer pIV,
uint8_t *  pOutput,
uint32_t  lenOutput 
)

◆ CryptoProvider_SymmEncrypt_AES256()

SOPC_ReturnStatus CryptoProvider_SymmEncrypt_AES256 ( const SOPC_CryptoProvider pProvider,
const uint8_t *  pInput,
uint32_t  lenPlainText,
const SOPC_ExposedBuffer pKey,
const SOPC_ExposedBuffer pIV,
uint8_t *  pOutput,
uint32_t  lenOutput 
)

◆ CryptoProvider_SymmDecrypt_AES256()

SOPC_ReturnStatus CryptoProvider_SymmDecrypt_AES256 ( const SOPC_CryptoProvider pProvider,
const uint8_t *  pInput,
uint32_t  lenCipherText,
const SOPC_ExposedBuffer pKey,
const SOPC_ExposedBuffer pIV,
uint8_t *  pOutput,
uint32_t  lenOutput 
)

◆ CryptoProvider_SymmSign_HMAC_SHA256()

SOPC_ReturnStatus CryptoProvider_SymmSign_HMAC_SHA256 ( const SOPC_CryptoProvider pProvider,
const uint8_t *  pInput,
uint32_t  lenInput,
const SOPC_ExposedBuffer pKey,
uint8_t *  pOutput 
)

◆ CryptoProvider_SymmVerify_HMAC_SHA256()

SOPC_ReturnStatus CryptoProvider_SymmVerify_HMAC_SHA256 ( const SOPC_CryptoProvider pProvider,
const uint8_t *  pInput,
uint32_t  lenInput,
const SOPC_ExposedBuffer pKey,
const uint8_t *  pSignature 
)

◆ CryptoProvider_GenTrueRnd()

SOPC_ReturnStatus CryptoProvider_GenTrueRnd ( const SOPC_CryptoProvider pProvider,
SOPC_ExposedBuffer pData,
uint32_t  lenData 
)

◆ CryptoProvider_DeriveData_PRF_SHA256()

SOPC_ReturnStatus CryptoProvider_DeriveData_PRF_SHA256 ( const SOPC_CryptoProvider pProvider,
const SOPC_ExposedBuffer pSecret,
uint32_t  lenSecret,
const SOPC_ExposedBuffer pSeed,
uint32_t  lenSeed,
SOPC_ExposedBuffer pOutput,
uint32_t  lenOutput 
)

◆ CryptoProvider_AsymEncrypt_RSA_OAEP()

SOPC_ReturnStatus CryptoProvider_AsymEncrypt_RSA_OAEP ( const SOPC_CryptoProvider pProvider,
const uint8_t *  pInput,
uint32_t  lenPlainText,
const SOPC_AsymmetricKey pKey,
uint8_t *  pOutput 
)

◆ CryptoProvider_AsymDecrypt_RSA_OAEP()

SOPC_ReturnStatus CryptoProvider_AsymDecrypt_RSA_OAEP ( const SOPC_CryptoProvider pProvider,
const uint8_t *  pInput,
uint32_t  lenPlainText,
const SOPC_AsymmetricKey pKey,
uint8_t *  pOutput,
uint32_t *  pLenWritten 
)

◆ CryptoProvider_AsymSign_RSASSA_PKCS1_v15_w_SHA256()

SOPC_ReturnStatus CryptoProvider_AsymSign_RSASSA_PKCS1_v15_w_SHA256 ( const SOPC_CryptoProvider pProvider,
const uint8_t *  pInput,
uint32_t  lenInput,
const SOPC_AsymmetricKey pKey,
uint8_t *  pSignature 
)

◆ CryptoProvider_AsymVerify_RSASSA_PKCS1_v15_w_SHA256()

SOPC_ReturnStatus CryptoProvider_AsymVerify_RSASSA_PKCS1_v15_w_SHA256 ( const SOPC_CryptoProvider pProvider,
const uint8_t *  pInput,
uint32_t  lenInput,
const SOPC_AsymmetricKey pKey,
const uint8_t *  pSignature 
)

◆ CryptoProvider_CertVerify_RSA_SHA256_2048_4096()

SOPC_ReturnStatus CryptoProvider_CertVerify_RSA_SHA256_2048_4096 ( const SOPC_CryptoProvider pCrypto,
const SOPC_CertificateList pCert 
)

◆ CryptoProvider_AsymEncrypt_RSA_OAEP_SHA256()

SOPC_ReturnStatus CryptoProvider_AsymEncrypt_RSA_OAEP_SHA256 ( const SOPC_CryptoProvider pProvider,
const uint8_t *  pInput,
uint32_t  lenPlainText,
const SOPC_AsymmetricKey pKey,
uint8_t *  pOutput 
)

◆ CryptoProvider_AsymDecrypt_RSA_OAEP_SHA256()

SOPC_ReturnStatus CryptoProvider_AsymDecrypt_RSA_OAEP_SHA256 ( const SOPC_CryptoProvider pProvider,
const uint8_t *  pInput,
uint32_t  lenPlainText,
const SOPC_AsymmetricKey pKey,
uint8_t *  pOutput,
uint32_t *  pLenWritten 
)

◆ CryptoProvider_AsymSign_RSASSA_PSS()

SOPC_ReturnStatus CryptoProvider_AsymSign_RSASSA_PSS ( const SOPC_CryptoProvider pProvider,
const uint8_t *  pInput,
uint32_t  lenInput,
const SOPC_AsymmetricKey pKey,
uint8_t *  pSignature 
)

◆ CryptoProvider_AsymVerify_RSASSA_PSS()

SOPC_ReturnStatus CryptoProvider_AsymVerify_RSASSA_PSS ( const SOPC_CryptoProvider pProvider,
const uint8_t *  pInput,
uint32_t  lenInput,
const SOPC_AsymmetricKey pKey,
const uint8_t *  pSignature 
)

◆ CryptoProvider_SymmSign_HMAC_SHA1()

SOPC_ReturnStatus CryptoProvider_SymmSign_HMAC_SHA1 ( const SOPC_CryptoProvider pProvider,
const uint8_t *  pInput,
uint32_t  lenInput,
const SOPC_ExposedBuffer pKey,
uint8_t *  pOutput 
)

◆ CryptoProvider_SymmVerify_HMAC_SHA1()

SOPC_ReturnStatus CryptoProvider_SymmVerify_HMAC_SHA1 ( const SOPC_CryptoProvider pProvider,
const uint8_t *  pInput,
uint32_t  lenInput,
const SOPC_ExposedBuffer pKey,
const uint8_t *  pSignature 
)

◆ CryptoProvider_DeriveData_PRF_SHA1()

SOPC_ReturnStatus CryptoProvider_DeriveData_PRF_SHA1 ( const SOPC_CryptoProvider pProvider,
const SOPC_ExposedBuffer pSecret,
uint32_t  lenSecret,
const SOPC_ExposedBuffer pSeed,
uint32_t  lenSeed,
SOPC_ExposedBuffer pOutput,
uint32_t  lenOutput 
)

◆ CryptoProvider_AsymSign_RSASSA_PKCS1_v15_w_SHA1()

SOPC_ReturnStatus CryptoProvider_AsymSign_RSASSA_PKCS1_v15_w_SHA1 ( const SOPC_CryptoProvider pProvider,
const uint8_t *  pInput,
uint32_t  lenInput,
const SOPC_AsymmetricKey pKey,
uint8_t *  pSignature 
)

◆ CryptoProvider_AsymVerify_RSASSA_PKCS1_v15_w_SHA1()

SOPC_ReturnStatus CryptoProvider_AsymVerify_RSASSA_PKCS1_v15_w_SHA1 ( const SOPC_CryptoProvider pProvider,
const uint8_t *  pInput,
uint32_t  lenInput,
const SOPC_AsymmetricKey pKey,
const uint8_t *  pSignature 
)

◆ CryptoProvider_CertVerify_RSA_SHA1_SHA256_1024_2048()

SOPC_ReturnStatus CryptoProvider_CertVerify_RSA_SHA1_SHA256_1024_2048 ( const SOPC_CryptoProvider pCrypto,
const SOPC_CertificateList pCert 
)

◆ CryptoProvider_CTR_Crypt_AES256()

SOPC_ReturnStatus CryptoProvider_CTR_Crypt_AES256 ( const SOPC_CryptoProvider pProvider,
const uint8_t *  pInput,
uint32_t  lenInput,
const SOPC_ExposedBuffer pKey,
const SOPC_ExposedBuffer pKeyNonce,
const SOPC_ExposedBuffer pRandom,
uint32_t  uSequenceNumber,
uint8_t *  pOutput 
)