IPC@CHIP® RTOS-LNX – API Documentation

Header image

Main page


Functions
Cryptographic functions

Detailed Description

Here are several standard cryptographic functions.

Go here for a table of benchmark timing measurements for these various encryption and hash API.

Also provided here are big number functions which operate on big numbers up to 512 bytes size.

TCP/IP API main page

Functions

int Crypt_3DES_Decrypt (const Crypt_3DesKeyScheduleS *schedule, const void *in, void *out)
 Decrypt one cipher block of data using 3DES decryption method. More...
 
int Crypt_3DES_Encrypt (const Crypt_3DesKeyScheduleS *schedule, const void *in, void *out)
 Encrypt one cipher block of data using 3DES encryption method. More...
 
int Crypt_3DES_MakeKey (const unsigned char *key, Crypt_3DesKeyScheduleS *schedule)
 Generate 3DES encryption/decryption subkey schedule. More...
 
int Crypt_AES_Decrypt (const Crypt_AES_Context *aescontext, const void *in, void *out)
 Decrypt one cipher block of an AES encrypted message. More...
 
int Crypt_AES_Encrypt (const Crypt_AES_Context *aescontext, const void *in, void *out)
 Use AES to encrypt one cipher block of a message. More...
 
int Crypt_AES_MakeDecryptKey (const Crypt_GenericKey *key, Crypt_AES_ContextPtr aescontext)
 Create AES decryption subkey. More...
 
int Crypt_AES_MakeEncryptKey (const Crypt_GenericKey *key, Crypt_AES_ContextPtr aescontext)
 Create AES encryption subkey. More...
 
int Crypt_Blowfish_Decrypt (const Crypt_BlowfishKeyS *subkeys, const void *in, void *out)
 Decrypt one block of data using Blowfish decryption method. More...
 
int Crypt_Blowfish_Encrypt (const Crypt_BlowfishKeyS *subkeys, const void *in, void *out)
 Encrypt one block of data using Blowfish encryption method. More...
 
int Crypt_Blowfish_MakeKey (Crypt_BlowfishKeyS *subkeys, int len, const unsigned char *key)
 Generate Blowfish encryption/decryption subkey schedule. More...
 
int Crypt_BN_Div (const Crypt_BigNumConstS *dividend, const Crypt_BigNumConstS *divisor, Crypt_BigNumS *quotient, Crypt_BigNumS *remainder)
 Perform big number division. More...
 
int Crypt_BN_Mod_Exp (Crypt_BigNumS *result, const Crypt_BigNumConstS *a, const Crypt_BigNumConstS *power, const Crypt_BigNumConstS *modulo)
 Perform big number modulo exponentiation. More...
 
int Crypt_BN_Mod_Inverse (Crypt_BigNumS *result, const Crypt_BigNumConstS *a, const Crypt_BigNumConstS *b)
 Compute big number modulo inverse. More...
 
int Crypt_BN_Mod_Mul (Crypt_BigNumS *result, const Crypt_BigNumConstS *a, const Crypt_BigNumConstS *b, const Crypt_BigNumConstS *m)
 Perform big number modulo multiplication. More...
 
int Crypt_BN_Mul (Crypt_BigNumS *result, const Crypt_BigNumConstS *a, const Crypt_BigNumConstS *b)
 Perform big number multiplication. More...
 
int Crypt_DES_Decrypt (const Crypt_DesKeyScheduleS *schedule, const void *in, void *out)
 Decrypt one block of data using DES decryption method. More...
 
int Crypt_DES_Encrypt (const Crypt_DesKeyScheduleS *schedule, const void *in, void *out)
 Encrypt one block of data using DES encryption method. More...
 
int Crypt_DES_MakeKey (const unsigned char *key, Crypt_DesKeyScheduleS *schedule)
 Generate DES encryption/decryption subkey schedule. More...
 
int Crypt_MD5_Final (Crypt_MD5_ContextPtr md5context)
 Final MD5 hash checksum generator. More...
 
int Crypt_MD5_Init (Crypt_MD5_ContextPtr md5context)
 Initialize MD5 checksum generator. More...
 
int Crypt_MD5_Update (Crypt_MD5_ContextPtr md5context, const void *inBuffer, unsigned int length)
 Update MD5 checksum generator. More...
 
int Crypt_SHA1_Final (Crypt_SHA1_ContextPtr sha1context)
 Final SHA1 checksum generator. More...
 
int Crypt_SHA1_Init (Crypt_SHA1_ContextPtr sha1context)
 Initialize SHA1 hash checksum generator. More...
 
int Crypt_SHA1_Update (Crypt_SHA1_ContextPtr sha1context, const void *inBuffer, unsigned int length)
 Update SHA1 hash checksum generator. More...
 
int Crypt_SHA256_Init (Crypt_SHA256_ContextPtr sha256context)
 Initialize SHA256 hash checksum generator. More...
 
int Crypt_SHA256_Update (Crypt_SHA256_ContextPtr sha256context, const void *inBuffer, unsigned int length)
 Update SHA256 hash checksum generator. More...
 
int Crypt_SHA256_Final (Crypt_SHA256_ContextPtr sha256context)
 Final SHA256 checksum generator. More...
 
int Crypt_SHA384_Init (Crypt_SHA384_ContextPtr sha384context)
 Initialize SHA384 hash checksum generator. More...
 
int Crypt_SHA384_Update (Crypt_SHA384_ContextPtr sha384context, const void *inBuffer, unsigned int length)
 Update SHA384 hash checksum generator. More...
 
int Crypt_SHA384_Final (Crypt_SHA384_ContextPtr sha384context)
 Final SHA384 checksum generator. More...
 
int Crypt_SHA512_Init (Crypt_SHA512_ContextPtr sha512context)
 Initialize SHA512 hash checksum generator. More...
 
int Crypt_SHA512_Update (Crypt_SHA512_ContextPtr sha512context, const void *inBuffer, unsigned int length)
 Update SHA512 hash checksum generator. More...
 
int Crypt_SHA512_Final (Crypt_SHA512_ContextPtr sha512context)
 Final SHA512 checksum generator. More...
 
int Crypt_Random_Bytes (unsigned char *buf, int num)
 Generate pseudo random number sequence. More...
 
int Crypt_Random_Bytes_Blocking (unsigned char *buf, int num)
 Generate pseudo random number sequence. More...
 
int Crypt_RSA_Sign (const char *keyBuffer, const void *hash, Crypt_RSA_Hash_Type hashType, void *sign, unsigned int signBufLen)
 Sign a SHA1/SHA256 checksum with an RSA private key. More...
 
int Crypt_RSA_Verify (const char *keyBuffer, const void *hash, Crypt_RSA_Hash_Type hashType, const void *sign, unsigned int signLength)
 Verify a SHA1/SHA256 checksum with an RSA public key. More...
 
int Crypt_RSA_GetKeySize (const char *keyBuffer)
 Get the size in bytes of a public or private RSA key. More...
 
char * Crypt_SHA_Build_Password_Hash (int type, const char *password)
 Build a password hash with SHA-256/SHA-512 for a given plain text password. More...
 
int Crypt_SHA_Verify_Password_Hash (const char *hash, const char *password)
 Verify a plain text password against a SHA-256/SHA-512 password hash. More...
 
char * Crypt_Digest_Build_Password_Hash (const char *user, const char *realm, const char *password)
 





Top of page | Main page

Copyright © 2018 Beck IPC GmbH
Generated on Fri Jun 8 2018 12:48:21 by Doxygen 1.8.13