public static void VerifyWithWrongKey(MacAlgorithm a) { using (var k = new Key(SignatureAlgorithm.Ed25519)) { Assert.Throws <ArgumentException>("key", () => a.Verify(k, ReadOnlySpan <byte> .Empty, ReadOnlySpan <byte> .Empty)); } }
public static void VerifyWithSpanTooLarge(MacAlgorithm a) { using (var k = new Key(a)) { Assert.False(a.Verify(k, ReadOnlySpan <byte> .Empty, new byte[a.MacSize + 1])); } }
public static void VerifyWithDisposedKey(MacAlgorithm a) { var k = new Key(a); k.Dispose(); Assert.Throws <ObjectDisposedException>(() => a.Verify(k, ReadOnlySpan <byte> .Empty, new byte[a.MacSize])); }
public static void VerifyWithSpanSuccess(MacAlgorithm a) { using var k = new Key(a); var d = ReadOnlySpan <byte> .Empty; var mac = a.Mac(k, d); Assert.True(a.Verify(k, d, mac)); }
public bool TryVerify( string password, ReadOnlySpan <byte> salt, ReadOnlySpan <byte> data, ReadOnlySpan <byte> mac) { using Key key = _keyDerivationAlgorithm.DeriveKey(password, salt, _macAlgorithm); return(_macAlgorithm.Verify(key, data, mac)); }
public static void VerifyWithNullKey(MacAlgorithm a) { Assert.Throws <ArgumentNullException>("key", () => a.Verify(null, ReadOnlySpan <byte> .Empty, ReadOnlySpan <byte> .Empty)); }
public static void VerifyWithSpanTooSmall(MacAlgorithm a) { using var k = new Key(a); Assert.False(a.Verify(k, ReadOnlySpan <byte> .Empty, new byte[a.MacSize - 1])); }