public void Sha512CryptoPrimitiveWorks() { var crng = new CypherBasedPrngGenerator(_ZeroKey64Bytes, CryptoPrimitive.Sha512(), SHA512.Create(), new CypherCounter(64)); var buffer = new byte[crng.BlockSizeBytes * 2]; crng.FillWithRandomBytes(buffer); Assert.IsFalse(buffer.All(b => b == 0)); }
private static ICryptoPrimitive GetSha512CryptoPrimitive() => managedOrNativeCrypto == ManagedOrNative.Managed ? CryptoPrimitive.Sha512Managed() : managedOrNativeCrypto == ManagedOrNative.Native ? new HashCryptoPrimitive(new SHA512CryptoServiceProvider()) : CryptoPrimitive.Sha512();