/// <summary> /// </summary> /// <param name="pair"></param> /// <param name="mode"></param> public Curl(bool pair, SpongeFactory.Mode mode) { switch (mode) { case SpongeFactory.Mode.CurlP27: _numberOfRounds = NumberOfRoundsP27; break; case SpongeFactory.Mode.CurlP81: _numberOfRounds = NumberOfRoundsP81; break; default: throw new InvalidEnumArgumentException("Only Curl-P-27 and Curl-P-81 are supported."); } if (pair) { _stateHigh = new long[StateLength]; _stateLow = new long[StateLength]; State = null; Set(); } else { State = new int[StateLength]; _stateHigh = null; _stateLow = null; } }
public HammingNonce(SpongeFactory.Mode curlMode) { _stateLow = new ulong[CurlStateLength]; _stateHigh = new ulong[CurlStateLength]; switch (curlMode) { case SpongeFactory.Mode.CURLP27: _numberOfRounds = NumberOfRoundsP27; break; case SpongeFactory.Mode.CURLP81: _numberOfRounds = NumberOfRoundsP81; break; } }
/// <summary> /// /// </summary> /// <param name="mode"></param> public Curl(SpongeFactory.Mode mode) { switch (mode) { case SpongeFactory.Mode.CURLP81: _numberOfRounds = NUMBER_OF_ROUNDSP81; break; case SpongeFactory.Mode.CURLP27: _numberOfRounds = NUMBER_OF_ROUNDSP27; break; default: throw new InvalidEnumArgumentException("Only Curl-P-27 and Curl-P-81 are supported."); } State = new sbyte[STATE_LENGTH]; }