Ejemplo n.º 1
0
        public static void HashWithWrongKey()
        {
            var a = new Blake2();

            using (var k = new Key(new Ed25519()))
            {
                Assert.Throws <ArgumentException>("key", () => a.Hash(k, ReadOnlySpan <byte> .Empty));
            }
        }
Ejemplo n.º 2
0
        public static void Test(string msg, string hash)
        {
            var a = new Blake2();

            var expected = hash.DecodeHex();
            var actual   = a.Hash(msg.DecodeHex(), expected.Length);

            Assert.Equal(expected, actual);
        }
Ejemplo n.º 3
0
        public static void HashWithMaxSpanSuccess()
        {
            var a = new Blake2();

            using (var k = new Key(a))
            {
                a.Hash(k, ReadOnlySpan <byte> .Empty, new byte[a.MaxHashSize]);
            }
        }
Ejemplo n.º 4
0
        public static void HashWithSpanTooLarge()
        {
            var a = new Blake2();

            using (var k = new Key(a))
            {
                Assert.Throws <ArgumentException>("hash", () => a.Hash(k, ReadOnlySpan <byte> .Empty, new byte[a.MaxHashSize + 1]));
            }
        }
Ejemplo n.º 5
0
        public static void HashWithSizeTooSmall()
        {
            var a = new Blake2();

            using (var k = new Key(a))
            {
                Assert.Throws <ArgumentOutOfRangeException>("hashSize", () => a.Hash(k, ReadOnlySpan <byte> .Empty, a.MinHashSize - 1));
            }
        }
Ejemplo n.º 6
0
        public static void HashWithKeySuccess()
        {
            var a = new Blake2();

            using (var k = new Key(a))
            {
                var b = a.Hash(k, ReadOnlySpan <byte> .Empty);

                Assert.NotNull(b);
                Assert.Equal(a.DefaultHashSize, b.Length);
            }
        }
Ejemplo n.º 7
0
        public static void Test(string msg, string key, string hash)
        {
            var a = new Blake2();

            using (var k = Key.Import(a, key.DecodeHex(), KeyBlobFormat.RawSymmetricKey))
            {
                var m = msg.DecodeHex();

                var expected = hash.DecodeHex();
                var actual   = a.Hash(k, m, expected.Length);

                Assert.Equal(expected, actual);
            }
        }
Ejemplo n.º 8
0
        public static void HashWithNullKey()
        {
            var a = new Blake2();

            Assert.Throws <ArgumentNullException>("key", () => a.Hash(null, ReadOnlySpan <byte> .Empty));
        }