## About SHA3-224 hash

SHA3-224 is a cryptographic hash function that belongs to the SHA-3 (Secure Hash Algorithm 3) family. It was standardized by the National Institute of Standards and Technology (NIST) in 2015 as part of the SHA-3 competition, which aimed to find a new cryptographic hash standard to complement the existing SHA-2 family.

### Characteristics of SHA3-224

**Fixed-Length Output**:- SHA3-224 produces a fixed-length output of 224 bits (28 bytes), regardless of the input data's length.

**Input Padding**:- Unlike SHA-2, SHA3 uses a different padding scheme. The input message is padded with a single '1' bit followed by a series of '0' bits until reaching the desired block size. Unlike SHA-2, the padding is not bit-oriented, but rather uses a byte-oriented padding for efficiency and performance.

**Processing in Blocks**:- SHA3-224 processes input in a different manner from SHA-2, using a permutation-based sponge construction. The input message is divided into blocks, and each block is processed iteratively through a permutation function.

**Initialization**:- SHA3-224 has an internal state of 1600 bits, which is organized into a 5x5 matrix of 64-bit lanes. This state is initialized to a fixed value before processing begins.

**Compression Function**:- SHA3-224 uses a sponge construction with a permutation function known as Keccak-f. This function operates on the internal state in rounds, mixing and transforming the bits based on a set of defined rules.

### Algorithm Steps

**Initialization**:- Initialize the internal state and set parameters such as the rate and capacity of the sponge construction.

**Absorbing Phase**:- Absorb the input message by XORing it with portions of the internal state and applying the permutation function iteratively.

**Squeezing Phase**:- Extract the hash value from the final state after all input blocks have been absorbed. This is done by reading out the desired number of bits from the internal state.

**Output**:- The final output is the 224-bit hash value derived from the squeezing phase of the sponge construction.

### Security and Usage

**Security**:- SHA3-224 provides strong security guarantees against collision attacks, preimage attacks, and second-preimage attacks. Its design and use of the sponge construction with Keccak-f ensure robust resistance against cryptanalytic attacks.

**Usage**:- SHA3-224 is suitable for various cryptographic applications where a 224-bit hash value is needed, such as digital signatures, message authentication codes (MACs), and integrity verification.
- It is particularly recommended in new applications or environments where the use of SHA-3 for cryptographic hashing is preferred over SHA-2 due to specific security requirements or considerations.

### Summary

SHA3-224 is a cryptographic hash function standardized by NIST as part of the SHA-3 family. It produces a fixed-length hash value of 224 bits using a sponge construction with the Keccak-f permutation function. SHA3-224 offers strong security properties, including resistance to various types of attacks, making it suitable for a wide range of cryptographic applications where data integrity and authenticity are critical. Its adoption continues to grow in security-critical systems due to its design and robustness against cryptographic attacks.