Hardware-based security for high-level protection.

XIP3022B: SHA256 AND SHA224

Secure Hash Algorithm (SHA256 and SHA224) IP Core


Introduction

XIP3022B from Xiphera is a balanced Intellectual Property (IP) core implementing the secure hash algorithms SHA-224 and SHA-256 as specified in the Secure Hash Standard published by the National Institute of Standards and Technology (NIST). The message [1] is parsed and padded into 512 bits long message blocks, and the resulting message digest (hash value) is either 256 or 224 bits long.

XIP3022B has been designed for easy integration with FPGA- and ASIC-based designs in a vendor-agnostic design methodology, and the functionality of XIP3022B does not rely on any FPGA manufacturer-specific features.

Key features

  • Compact resource requirements: The entire XIP3022B requires less than 1400 lookup tables (LUTs) (Xilinx® UltraScale+™ MPSoC), and does not require any multipliers, DSPBlocks or internal memory in a typical FPGA implementation.
  • Performance: Despite its compact size, XIP3022B achieves a throughput in the Gbps range [2], for example 1.75+ Gbps in Xilinx® UltraScale+™ MPSoC.
  • Standard Compliance: XIP3022B is fully compliant with the Secure Hash Standard published by the National Institute of Standards and Technology (NIST), and passes the test vectors published by NIST.
  • Byte-orientated 32-bit Interface eases the integration of XIP3022B with other FPGA logic and/or control software.

Functionality

The main functionality of XIP3022B is to calculate a message digest (also commonly known as a hash value) with a length of either 256 bits (SHA256) or 224 bits (SHA224). XIP3022B pads and parses the incoming message into 512 bits long message blocks as specified in the Secure Hash Standard, and adds the length information to the last 64 bits of the last 512 bits long message block.

After the message digest has been calculated, the result is output during consecutive eight (SHA256) or seven (SHA224) clock cycles on the 32 bits wide digest output signal. After the message digest has been output, the hash algorithm in use for the next message can be controlled by changing the value on the input signal sha256_or_224.


For more technical and commercial details, including FPGA resources & peak performance as well as ordering instructions, open the full product brief in PDF. Contact us by sending and email to email_career.png, and we’ll get back to you as soon as possible.

Open full product brief

Block diagram

Figure 1: Internal high-level block diagram of XIP3022B

Figure 1: Internal high-level block diagram of XIP3022B

Footnotes

[1] The maximum total message size is 264 − 1 bits.

[2] As is typical for sequential hash algorithms, the highest throughput is achieved for long messages.


Visit the product family page