<PackageReference Include="BouncyCastle.Cryptography" Version="2.7.0-beta.98" />

S2k

public class S2k : BcpgObject
public sealed class Argon2Params

public const int Argon2 = 4

Memory-hard, salted key generation using Argon2 hash algorithm.

public const int GnuDummyS2K = 101

public const int GnuProtectionModeDivertToCard = 2

public const int GnuProtectionModeInternal = 3

public const int GnuProtectionModeNoPrivateKey = 1

public const int Salted = 1

Salted key generation. A single iteration of a hash function with a (unique) salt.

public const int SaltedAndIterated = 3

Salted and iterated key generation. Multiple iterations of a hash function, with a salt.

public const int Simple = 0

Simple key generation. A single non-salted iteration of a hash function.

public virtual Argon2Params Argon2Config { get; }

public virtual HashAlgorithmTag HashAlgorithm { get; }

The hash algorithm.

public virtual long IterationCount { get; }

The iteration count

public virtual int ProtectionMode { get; }

The protection mode - only if GnuDummyS2K

public virtual int Type { get; }

public S2k(HashAlgorithmTag algorithm)

public S2k(HashAlgorithmTag algorithm, byte[] iv)

public S2k(HashAlgorithmTag algorithm, byte[] iv, int itCount)

public S2k(Argon2Params argon2Config)

public static S2k GenerateSalted(SecureRandom secureRandom, HashAlgorithmTag hashAlgorithm)

public static S2k GenerateSaltedAndIterated(SecureRandom secureRandom, HashAlgorithmTag hashAlgorithm, int itCount)

public virtual byte[] GetIV()

The IV for the key generation algorithm.