Next Previous Table Of Contents

# The SHA1 Class

    #include <chnhash/sha1.hxx>

## Overview

The SHA1 class provides an implementation of the Secure Hash Algorithm as specified in FIPS 180-1. As the SHA1 class is a subclass of the ChainHash and the SHA classes, the variables and methods presented there are not redescribed here.

## Public Methods

### Constructor

    SHA1();

Creates a SHA1 instance. Initializes the chain variables to values specified in FIPS 180-1.

### Destructor

    ~SHA1();

Nothing special is done by the desctructor.

### CompressBlock

    static void CompressBlock(const u32* iv, const u32* block, u32* result);

Calculates the value of the SHA-1 compression function at the point determined by the starting chain variable values pointed to by iv and the block pointed to by block. The result is written into the dwords pointed to by result.

More speficially, iv[i] should equal Hi before the updating. Within block[i], the `j`th most significant byte should be equal to the `4*i+j`th byte of the block. On return, result[i] will equal the updated value of Hi.

Next Previous Table Of Contents