![]() |
Gray C++ Libraries
0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
|
#include <cSSLTransform.h>
Public Member Functions | |
| cSSLTransform () | |
| ~cSSLTransform () | |
| void | SetZeroTransform () |
| HRESULT | Encrypt (cSSLMsgBuilder &rOut, SSL_VERSION_TYPE nVer, bool bEncryptThenMac, IRandomNoise *pRandom) |
| HRESULT | Decrypt (cSSLMsgBuilder &rIn, SSL_VERSION_TYPE nVer, bool bEncryptThenMac) |
Public Attributes | |
| const cSSLCipherSuite * | m_pCipherSuiteDef |
| size_t | m_nSizeKey |
| < for Chosen m_pCipherSuiteDef More... | |
| size_t | m_nSizeMin |
| min. ciphertext length More... | |
| size_t | m_nSizeIV |
| IV length. More... | |
| size_t | m_nSizeFixedIV |
| Fixed part of IV (AEAD) More... | |
| size_t | m_nSizeMac |
| MAC length. effected by m_bTruncatedHMAC. More... | |
| cSSLTransformSide | m_enc |
| (encryption) More... | |
| cSSLTransformSide | m_dec |
| (decryption) More... | |
Additional Inherited Members | |
Static Public Attributes inherited from GrayLib::cSSL | |
| static const size_t | k_PSK_Size_Max = 32 |
| 256 bits More... | |
| static const size_t | k_MAC_Size_Max = 48 |
| 16 to 48. SHA-384 used for HMAC. like k_HashSizeMax More... | |
| static const size_t | k_Number_Size_Max = 1024 |
| Max reasonable size of a big number used for crypt purposes. 8k bits. like cBigInteger::k_SIZE_MAX. More... | |
| static const size_t | k_Content_Size_Max = 16384 |
| Size of content. >= k_MaxFragLens[MAX]. More... | |
| static const WORD | k_MaxFragLens [SSL_MAX_FRAG_LEN_QTY] |
Session specific crypto layer
| GraySSL::cSSLTransform::cSSLTransform | ( | ) |
| GraySSL::cSSLTransform::~cSSLTransform | ( | ) |
| HRESULT GraySSL::cSSLTransform::Decrypt | ( | cSSLMsgBuilder & | rIn, |
| SSL_VERSION_TYPE | nVer, | ||
| bool | bEncryptThenMac | ||
| ) |
Padding is guaranteed to be incorrect if:
| HRESULT GraySSL::cSSLTransform::Encrypt | ( | cSSLMsgBuilder & | rOut, |
| SSL_VERSION_TYPE | nVer, | ||
| bool | bEncryptThenMac, | ||
| IRandomNoise * | pRandom | ||
| ) |
Encryption functions
| void GraySSL::cSSLTransform::SetZeroTransform | ( | ) |
| cSSLTransformSide GraySSL::cSSLTransform::m_dec |
(decryption)
| cSSLTransformSide GraySSL::cSSLTransform::m_enc |
(encryption)
| size_t GraySSL::cSSLTransform::m_nSizeFixedIV |
Fixed part of IV (AEAD)
| size_t GraySSL::cSSLTransform::m_nSizeIV |
IV length.
| size_t GraySSL::cSSLTransform::m_nSizeKey |
< for Chosen m_pCipherSuiteDef
symmetric key length. bytes
| size_t GraySSL::cSSLTransform::m_nSizeMac |
MAC length. effected by m_bTruncatedHMAC.
| size_t GraySSL::cSSLTransform::m_nSizeMin |
min. ciphertext length
| const cSSLCipherSuite* GraySSL::cSSLTransform::m_pCipherSuiteDef |