IPC@CHIP® RTOS-PPC – API Documentation

Header image

Main page


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.

These @CHIP-RTOS-PPC functions have been optimized for speed.

TCPIP 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.
int Crypt_3DES_Encrypt (const Crypt_3DesKeyScheduleS *schedule, const void *in, void *out)
 Encrypt one cipher block of data using 3DES encryption method.
int Crypt_3DES_MakeKey (const unsigned char *key, Crypt_3DesKeyScheduleS *schedule)
 Generate 3DES encryption/decryption subkey schedule.
int Crypt_AES_Decrypt (const Crypt_AES_Context *aescontext, const void *in, void *out)
 Decrypt one cipher block of an AES encrypted message.
int Crypt_AES_Encrypt (const Crypt_AES_Context *aescontext, const void *in, void *out)
 Use AES to encrypt one cipher block of a message.
int Crypt_AES_MakeDecryptKey (const Crypt_GenericKey *key, Crypt_AES_ContextPtr aescontext)
 Create AES decryption subkey.
int Crypt_AES_MakeEncryptKey (const Crypt_GenericKey *key, Crypt_AES_ContextPtr aescontext)
 Create AES encryption subkey.
int Crypt_Blowfish_Decrypt (const Crypt_BlowfishKeyS *subkeys, const void *in, void *out)
 Decrypt one block of data using Blowfish decryption method.
int Crypt_Blowfish_Encrypt (const Crypt_BlowfishKeyS *subkeys, const void *in, void *out)
 Encrypt one block of data using Blowfish encryption method.
int Crypt_Blowfish_MakeKey (Crypt_BlowfishKeyS *subkeys, int len, const unsigned char *key)
 Generate Blowfish encryption/decryption subkey schedule.
int Crypt_BN_Div (const Crypt_BigNumConstS *dividend, const Crypt_BigNumConstS *divisor, Crypt_BigNumS *quotient, Crypt_BigNumS *remainder)
 Perform big number division.
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.
int Crypt_BN_Mod_Inverse (Crypt_BigNumS *result, const Crypt_BigNumConstS *a, const Crypt_BigNumConstS *b)
 Compute big number modulo inverse.
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.
int Crypt_BN_Mul (Crypt_BigNumS *result, const Crypt_BigNumConstS *a, const Crypt_BigNumConstS *b)
 Perform big number multiplication.
int Crypt_DES_Decrypt (const Crypt_DesKeyScheduleS *schedule, const void *in, void *out)
 Decrypt one block of data using DES decryption method.
int Crypt_DES_Encrypt (const Crypt_DesKeyScheduleS *schedule, const void *in, void *out)
 Encrypt one block of data using DES encryption method.
int Crypt_DES_MakeKey (const unsigned char *key, Crypt_DesKeyScheduleS *schedule)
 Generate DES encryption/decryption subkey schedule.
int Crypt_MD5_Final (Crypt_MD5_ContextPtr md5context)
 Final MD5 hash checksum generator.
int Crypt_MD5_Init (Crypt_MD5_ContextPtr md5context)
 Initialize MD5 checksum generator.
int Crypt_MD5_Update (Crypt_MD5_ContextPtr md5context, const void *inBuffer, unsigned int length)
 Update MD5 checksum generator.
int Crypt_SHA1_Final (Crypt_SHA1_ContextPtr sha1context)
 Final SHA1 checksum generator.
int Crypt_SHA1_Init (Crypt_SHA1_ContextPtr sha1context)
 Initialize SHA1 hash checksum generator.
int Crypt_SHA1_Update (Crypt_SHA1_ContextPtr sha1context, const void *inBuffer, unsigned int length)
 Update SHA1 hash checksum generator.
int Crypt_SHA256_Final (Crypt_SHA256_ContextPtr sha256context)
 Final SHA256 checksum generator.
int Crypt_SHA256_Init (Crypt_SHA256_ContextPtr sha256context)
 Initialize SHA256 hash checksum generator.
int Crypt_SHA256_Update (Crypt_SHA256_ContextPtr sha256context, const void *inBuffer, unsigned int length)
 Update SHA256 hash checksum generator.
int Crypt_SHA384_Final (Crypt_SHA384_ContextPtr sha384context)
 Final SHA384 checksum generator.
int Crypt_SHA384_Init (Crypt_SHA384_ContextPtr sha384context)
 Initialize SHA384 hash checksum generator.
int Crypt_SHA384_Update (Crypt_SHA384_ContextPtr sha384context, const void *inBuffer, unsigned int length)
 Update SHA384 hash checksum generator.
int Crypt_SHA512_Final (Crypt_SHA512_ContextPtr sha512context)
 Final SHA512 checksum generator.
int Crypt_SHA512_Init (Crypt_SHA512_ContextPtr sha512context)
 Initialize SHA512 hash checksum generator.
int Crypt_SHA512_Update (Crypt_SHA512_ContextPtr sha512context, const void *inBuffer, unsigned int length)
 Update SHA512 hash checksum generator.
int Crypt_RSA_Sign (const char *keyBuffer, const void *hash, Crypt_RSA_Hash_Type hashType, void *sign, unsigned int signBufLen)
 RSA Signature.
int Crypt_RSA_Verify (const char *keyBuffer, const void *hash, Crypt_RSA_Hash_Type hashType, const void *sign, unsigned int signLength)
 RSA Signature Verify.
int Crypt_RSA_GetKeySize (const char *keyBuffer)
 Get RSA key size.
int Crypt_Random_Bytes (unsigned char *buf, int num)
 Generate pseudo random number sequence.





Top of page | Main page

Copyright © 2017 Beck IPC GmbH
Generated on Thu Jan 26 16:21:38 2017 by Doxygen 1.6.1