tlx
Loading...
Searching...
No Matches

SHA-1 processor without external dependencies. More...

#include <sha1.hpp>

Public Member Functions

 SHA1 ()
 construct empty object.
 
 SHA1 (const void *data, std::uint32_t size)
 construct context and process data range
 
 SHA1 (const std::string &str)
 construct context and process string
 
void process (const void *data, std::uint32_t size)
 process more data
 
void process (const std::string &str)
 process more data
 
void finalize (void *digest)
 finalize computation and output 20 byte (160 bit) digest
 
std::string digest ()
 finalize computation and return 20 byte (160 bit) digest
 
std::string digest_hex ()
 finalize computation and return 20 byte (160 bit) digest hex encoded
 
std::string digest_hex_uc ()
 finalize computation and return 20 byte (160 bit) digest upper-case hex
 

Static Public Attributes

static constexpr size_t kDigestLength
 digest length in bytes
 

Private Attributes

std::uint64_t length_
 
std::uint32_t state_ [5]
 
std::uint32_t curlen_
 
std::uint8_t buf_ [64]
 

Detailed Description

SHA-1 processor without external dependencies.

Definition at line 28 of file sha1.hpp.

Constructor & Destructor Documentation

◆ SHA1() [1/3]

SHA1 ( )

construct empty object.

Definition at line 119 of file sha1.cpp.

◆ SHA1() [2/3]

SHA1 ( const void *  data,
std::uint32_t  size 
)

construct context and process data range

Definition at line 129 of file sha1.cpp.

◆ SHA1() [3/3]

SHA1 ( const std::string &  str)
explicit

construct context and process string

Definition at line 133 of file sha1.cpp.

Member Function Documentation

◆ digest()

std::string digest ( )

finalize computation and return 20 byte (160 bit) digest

Definition at line 205 of file sha1.cpp.

◆ digest_hex()

std::string digest_hex ( )

finalize computation and return 20 byte (160 bit) digest hex encoded

Definition at line 211 of file sha1.cpp.

◆ digest_hex_uc()

std::string digest_hex_uc ( )

finalize computation and return 20 byte (160 bit) digest upper-case hex

Definition at line 217 of file sha1.cpp.

◆ finalize()

void finalize ( void *  digest)

finalize computation and output 20 byte (160 bit) digest

Definition at line 175 of file sha1.cpp.

◆ process() [1/2]

void process ( const std::string &  str)

process more data

Definition at line 171 of file sha1.cpp.

◆ process() [2/2]

void process ( const void *  data,
std::uint32_t  size 
)

process more data

Definition at line 137 of file sha1.cpp.

Member Data Documentation

◆ buf_

std::uint8_t buf_[64]
private

Definition at line 60 of file sha1.hpp.

◆ curlen_

std::uint32_t curlen_
private

Definition at line 59 of file sha1.hpp.

◆ kDigestLength

constexpr size_t kDigestLength
staticconstexpr

digest length in bytes

Definition at line 44 of file sha1.hpp.

◆ length_

std::uint64_t length_
private

Definition at line 57 of file sha1.hpp.

◆ state_

std::uint32_t state_[5]
private

Definition at line 58 of file sha1.hpp.


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