![]() |
Gray C++ Libraries
0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
|
#include <cSecureChannel.h>
Public Member Functions | |
cSecureClient (cStreamInput *pStreamInp, cStreamOutput *pStreamOut) | |
virtual | ~cSecureClient () |
HRESULT | AdvanceState () |
cStreamInput * | get_SecureInp () const |
cStreamOutput * | get_SecureOut () const |
![]() | |
cSecureChannel () | |
virtual | ~cSecureChannel () |
STATE_TYPE | get_State () const noexcept |
bool | isStateSecure () const noexcept |
cStreamInput * | get_SecureInp () const |
cStreamOutput * | get_SecureOut () const |
UNITTEST_FRIEND (cSecureChannel) | |
Protected Attributes | |
cStreamInput * | m_pStreamInp |
the raw data stream from the cNetSocket More... | |
cStreamOutput * | m_pStreamOut |
the raw data stream to the cNetSocket More... | |
![]() | |
STATE_TYPE | m_eState |
current state of the negotiation of the connection. More... | |
cSecureKnock::CIPHER_TYPE | m_eCipherType |
the selected crypto type. <0=Failed login, 0=no crypt by choice, 1=cCipherRC4, 2=cCipherBlowfish More... | |
cNewPtr< cCipherBase > | m_pCipherEnc |
the selected encryption of the channel. More... | |
cNewPtr< cStreamCipherEnc > | m_pCipherOut |
m_pCipher as a encrypt/output stream. pads to get_BlockAlignSize(). m_pCipherEnc More... | |
cNewPtr< cCipherBase > | m_pCipherDec |
the selected decryption of the channel. More... | |
cNewPtr< cStreamCipherDec > | m_pCipherInp |
m_pCipher as a decrypt/input stream. m_pCipherDec More... | |
Additional Inherited Members | |
![]() | |
enum | STATE_TYPE { STATE_0 = 0 , Client_Knock , Server_Challenge , Client_Login , STATE_Secure , STATE_Failed } |
![]() | |
static void GRAYCALL | ComputeHash (OUT cSecureHash &rHash, const cHashCode &r1, const cHashCode &r2) |
![]() | |
cHashCode | m_Challenge |
the random data used to form the challenge. part of crypto key for data stream. More... | |
cHashCode | m_HashPass |
The working PASSCODE for login. More... | |
cSecureId | m_Id |
My USERNAME and APPNAME. More... | |
![]() | |
virtual HRESULT | SetStateSecure () |
HRESULT | GetCipher (OUT cNewPtr< cCipherBase > &rCipher, bool bEncodeMode, const cSecureHash &hashKey) |
a secure channel from the clients point of view. can encapsulate other protocol stream types.
GrayLib::cSecureClient::cSecureClient | ( | cStreamInput * | pStreamInp, |
cStreamOutput * | pStreamOut | ||
) |
|
virtual |
HRESULT GrayLib::cSecureClient::AdvanceState | ( | ) |
client side Take the next step as needed for the protocol.
|
inline |
ASSUME isStateSecure()
|
inline |
ASSUME isStateSecure()
|
protected |
the raw data stream from the cNetSocket
|
protected |
the raw data stream to the cNetSocket