---
name: "ost_Digest"
section: "3"
platform: "linux"
package: "libcommoncpp2-doc"
version: "1.8.1-10"
release: "Debian 11 (Bullseye)"
platforms: ["linux"]
url: "https://new.carta.tech/ost_Digest"
---

# ost\_Digest(3)

The digest base class is used for implementing and deriving one way hashing functions.

## NAME

ost::Digest - The digest base class is used for implementing and deriving one way hashing functions.

## SYNOPSIS

`#include <digest.h>`

Inherits streambuf, and ostream.

Inherited by **ost::ChecksumDigest**, **ost::CRC16Digest**, **ost::CRC32Digest**, and **ost::MD5Digest**.

### Public Member Functions

virtual void **initDigest** (void)=0\
 Reset the digest table to an initial default value.  virtual **~Digest** ()\

### Protected Member Functions

**Digest** ()\
 virtual unsigned **getSize** (void)=0\
 Get the size of a digest in octets.  virtual unsigned **getDigest** (unsigned char \*buffer)=0\
 Copy the binary digest buffer to user memory.  virtual void **putDigest** (const unsigned char \*buffer, unsigned length)=0\
 Put data into the digest bypassing the stream subsystem.  virtual std::ostream & **strDigest** (std::ostream &os)=0\
 print a digest string for export.

### Friends

std::ostream & **operator\<\<** (std::ostream &os, **Digest** &ia)\

## Detailed Description

The digest base class is used for implementing and deriving one way hashing functions.

**Author**

David Sugar dyfet@ostel.com

base class for hashing services.

## Constructor & Destructor Documentation

### ost::Digest::Digest ()` [protected]`

### virtual ost::Digest::~Digest ()` [virtual]`

## Member Function Documentation

### virtual unsigned ost::Digest::getDigest (unsigned char \* buffer)` [protected]`, ` [pure virtual]`

Copy the binary digest buffer to user memory.

**Returns**

number of bytes in digest.

**Parameters**

*buffer* to write into.

Implemented in **ost::MD5Digest**, **ost::CRC32Digest**, **ost::CRC16Digest**, and **ost::ChecksumDigest**.

### virtual unsigned ost::Digest::getSize (void)` [protected]`, ` [pure virtual]`

Get the size of a digest in octets.

**Returns**

number of bytes in digest.

Implemented in **ost::MD5Digest**, **ost::CRC32Digest**, **ost::CRC16Digest**, and **ost::ChecksumDigest**.

### virtual void ost::Digest::initDigest (void)` [pure virtual]`

Reset the digest table to an initial default value.

Implemented in **ost::MD5Digest**, **ost::CRC32Digest**, **ost::CRC16Digest**, and **ost::ChecksumDigest**.

### virtual void ost::Digest::putDigest (const unsigned char \* buffer, unsigned length)` [protected]`, ` [pure virtual]`

Put data into the digest bypassing the stream subsystem.

**Parameters**

*buffer* to read from. \
 *length* of data.

Implemented in **ost::CRC32Digest**, **ost::CRC16Digest**, **ost::ChecksumDigest**, and **ost::MD5Digest**.

### virtual std::ostream& ost::Digest::strDigest (std::ostream & os)` [protected]`, ` [pure virtual]`

print a digest string for export.

**Returns**

string representation of digest.

Implemented in **ost::MD5Digest**, **ost::CRC32Digest**, **ost::CRC16Digest**, and **ost::ChecksumDigest**.

## Friends And Related Function Documentation

### std::ostream& operator\<\< (std::ostream & os, Digest & ia)` [friend]`

## Author

Generated automatically by Doxygen for GNU CommonC++ from the source code.
