Skein1024 Class
Definition
- Namespace
- Bodu.Security.Cryptography
- Assembly
- Bodu.Security.Cryptography.dll
- Package
- Bodu.Security.Cryptography 1.2.0
- Source
- Skein.1024.cs
Computes a hash using the Skein-1024 variant of the Skein hash function, built on top of the
Threefish1024Cipher tweakable block cipher. This class cannot be inherited.
public sealed class Skein1024 : Skein, ICryptoTransform, IDisposable
- Inheritance
-
Skein1024
- Implements
- Inherited Members
- Extension Methods
Examples
using var skein = new Skein1024(); // Skein-1024-1024
byte[] digest = skein.ComputeHash(message);
Remarks
Skein1024 operates on a 1024-bit internal state in 128-byte blocks. It is the ultra-conservative Skein variant: each Threefish-1024 call runs 80 rounds over sixteen 64-bit words, giving the widest state and the highest security margin in the Skein family at the cost of reduced throughput for short inputs.
The permitted output sizes are 384, 512, and 1024 bits; 1024 bits is the default. Supplying a non-empty
Key turns the instance into the keyed Skein-MAC-1024 variant by prepending a KEY UBI
phase to the standard CFG → MSG → OUT pipeline.
Parameters at a glance.
- State / block size: 1024 bits (128 bytes).
- Output sizes: 384, 512, or 1024 bits - default 1024.
- Underlying cipher: Threefish1024Cipher tweakable block cipher under UBI mode.
- Optional variable-length key: 0-MaxKeySize / 8 bytes.
When to choose Skein-1024. The widest-state Skein variant - pick it when you want the largest security margin in the Skein family or when the surrounding system explicitly requires Skein-1024. Throughput on short inputs is lower than Skein512; for general use the 512-bit variant is the recommended Skein default.
Constructors
Skein1024()
Initializes a new instance of the Skein1024 class that produces a 1024-bit digest.
public Skein1024()
Skein1024(int)
Initializes a new instance of the Skein1024 class with the specified output size.
public Skein1024(int hashSize)
Parameters
hashSizeintThe requested output size, in bits. Must be one of
384,512, or1024.
Exceptions
- ArgumentOutOfRangeException
hashSizeis not one of the permitted output sizes for Skein-1024.
Applies to
| Product | Versions |
|---|---|
| .NET | 8, 10 |