public CSPRNG(byte[] seed) // seed MUST be 48 bytes. { _key = ChachaCipher.ExtractKey(seed); _nonce = ChachaCipher.ExtractNonce(seed); _block_number = ChachaCipher.Slice(seed, 44); _curr_used = 16; }
private void refill() { _curr_gen_block = ChachaCipher.GenStream(_key, _block_number++, _nonce); _curr_used = 0; }