blocxx
BLOCXX_NAMESPACE::MD5 Class Reference

#include <MD5.hpp>

Inheritance diagram for BLOCXX_NAMESPACE::MD5:
BLOCXX_NAMESPACE::MD5OStreamBase

Classes

struct  MD5_CTX
 

Public Member Functions

 MD5 ()
 
 MD5 (const String &input)
 Start a MD5 session,.
 
void init (const String &input)
 
 ~MD5 ()
 
void update (const String &input)
 Process more data.
 
String toString ()
 Finish the digest, and return the results.
 
unsigned char * getDigest ()
 

Static Public Member Functions

static String convertBinToHex (const unsigned char *sBin)
 

Static Private Member Functions

static void MD5Init (MD5_CTX *md5ctx)
 
static void MD5Update (MD5_CTX *md5ctx, const unsigned char *input, UInt32 inputLen)
 
static void MD5Final (unsigned char *, MD5_CTX *)
 

Private Attributes

MD5_CTX m_ctx
 
unsigned char m_digest [16]
 
bool m_finished
 
- Private Attributes inherited from BLOCXX_NAMESPACE::MD5OStreamBase
MD5StreamBuffer _buf
 

Friends

class MD5StreamBuffer
 

Additional Inherited Members

- Private Member Functions inherited from BLOCXX_NAMESPACE::MD5OStreamBase
 MD5OStreamBase (MD5 *md5)
 

Detailed Description

Definition at line 102 of file MD5.hpp.

Constructor & Destructor Documentation

◆ MD5() [1/2]

BLOCXX_NAMESPACE::MD5::MD5 ( )

Definition at line 78 of file MD5.cpp.

References m_ctx, and MD5Init().

◆ MD5() [2/2]

BLOCXX_NAMESPACE::MD5::MD5 ( const String & input)

Start a MD5 session,.

Parameters
inputThe initial data to process.

Definition at line 92 of file MD5.cpp.

References m_ctx, MD5Init(), and update().

◆ ~MD5()

BLOCXX_NAMESPACE::MD5::~MD5 ( )
inline

Definition at line 113 of file MD5.hpp.

Member Function Documentation

◆ convertBinToHex()

String BLOCXX_NAMESPACE::MD5::convertBinToHex ( const unsigned char * sBin)
static

Definition at line 128 of file MD5.cpp.

References i, BLOCXX_NAMESPACE::MD5HASHHEXLEN, and BLOCXX_NAMESPACE::MD5HASHLEN.

Referenced by toString().

◆ getDigest()

unsigned char * BLOCXX_NAMESPACE::MD5::getDigest ( )

Definition at line 117 of file MD5.cpp.

References m_ctx, m_digest, m_finished, and MD5Final().

Referenced by toString().

◆ init()

void BLOCXX_NAMESPACE::MD5::init ( const String & input)

Definition at line 85 of file MD5.cpp.

References m_ctx, m_finished, MD5Init(), and update().

◆ MD5Final()

void BLOCXX_NAMESPACE::MD5::MD5Final ( unsigned char * digest,
MD5_CTX * context )
staticprivate

◆ MD5Init()

void BLOCXX_NAMESPACE::MD5::MD5Init ( MD5_CTX * md5ctx)
staticprivate

Definition at line 242 of file MD5.cpp.

References BLOCXX_NAMESPACE::MD5::MD5_CTX::count, and BLOCXX_NAMESPACE::MD5::MD5_CTX::state.

Referenced by init(), MD5(), and MD5().

◆ MD5Update()

void BLOCXX_NAMESPACE::MD5::MD5Update ( MD5_CTX * md5ctx,
const unsigned char * input,
UInt32 inputLen )
staticprivate

◆ toString()

String BLOCXX_NAMESPACE::MD5::toString ( )

Finish the digest, and return the results.

Returns
the results of the digest.

Definition at line 111 of file MD5.cpp.

References convertBinToHex(), and getDigest().

◆ update()

void BLOCXX_NAMESPACE::MD5::update ( const String & input)

Process more data.

Parameters
inputthe additional data to process.

Definition at line 100 of file MD5.cpp.

References BLOCXX_THROW, BLOCXX_NAMESPACE::String::c_str(), BLOCXX_NAMESPACE::String::length(), m_ctx, m_finished, and MD5Update().

Referenced by init(), and MD5().

Friends And Related Symbol Documentation

◆ MD5StreamBuffer

friend class MD5StreamBuffer
friend

Definition at line 140 of file MD5.hpp.

Member Data Documentation

◆ m_ctx

MD5_CTX BLOCXX_NAMESPACE::MD5::m_ctx
private

◆ m_digest

unsigned char BLOCXX_NAMESPACE::MD5::m_digest[16]
private

Definition at line 134 of file MD5.hpp.

Referenced by getDigest().

◆ m_finished

bool BLOCXX_NAMESPACE::MD5::m_finished
private

Definition at line 135 of file MD5.hpp.

Referenced by getDigest(), init(), and update().


The documentation for this class was generated from the following files: