public abstract byte[] SignHash(byte[] hash); public abstract bool VerifyHash(byte[] hash, byte[] signature);
public async Task <byte[]> SignAsync(Stream source) { byte[] hash; using (var sha = System.Security.Cryptography.SHA256.Create()) { hash = sha.ComputeHash(source); } return(Key.SignHash(hash)); }