Table of Contents

WhirlpoolVersion Enum

Definition

Namespace
Bodu.Security.Cryptography
Assembly
Bodu.Security.Cryptography.dll
Package
Bodu.Security.Cryptography 1.2.0
Source
WhirlpoolVersion.cs

Specifies the published revision of the Whirlpool hash algorithm selected by Version.

public enum WhirlpoolVersion
Extension Methods

Fields

WhirlpoolInfo1 = 0

The original Whirlpool-0 function submitted to NESSIE in 2000, combining the original pseudo-random S-box with the original diffusion matrix.

WhirlpoolInfo2 = 1

The Whirlpool-T revision published in 2001, which adopts the structured mini-box S-box but retains the original diffusion matrix.

WhirlpoolInfo3 = 2

The final Whirlpool function adopted by ISO/IEC 10118-3 in 2003, pairing the mini-box S-box with the revised diffusion matrix.

Remarks

Whirlpool was proposed by Paulo S. L. M. Barreto and Vincent Rijmen in 2000 and revised twice before being standardized in ISO/IEC 10118-3. The three published revisions use the same overall Merkle-Damgård construction around the internal W block cipher but differ in the non-linear substitution layer and the linear diffusion matrix:

  • WhirlpoolInfo1 - the Whirlpool-0 function as originally submitted to NESSIE in 2000. It uses the original pseudo-random S-box and the original diffusion matrix.
  • WhirlpoolInfo2 - the Whirlpool-T revision published in 2001. It replaces the S-box with the structured mini-box construction while retaining the original diffusion matrix.
  • WhirlpoolInfo3 - the final Whirlpool function adopted by ISO/IEC 10118-3 in 2003. It retains the mini-box S-box introduced in Whirlpool-T and uses the revised diffusion matrix with branch number nine.
important

Only WhirlpoolInfo3 is the standardized variant. The earlier revisions are provided for interoperability with legacy data and academic study.

Applies to

ProductVersions
.NET8, 10