コード例 #1
0
ファイル: HkdfSha512Tests.cs プロジェクト: wandbond/nsec
        public static void ExpandWithCountWithLongPrk()
        {
            var a = new HkdfSha512();

            var b = a.Expand((s_prkForEmpty + s_prkForEmpty).DecodeHex(), ReadOnlySpan <byte> .Empty, 256);

            Assert.NotNull(b);
            Assert.Equal(256, b.Length);
        }
コード例 #2
0
ファイル: HkdfSha512Tests.cs プロジェクト: wandbond/nsec
        public static void ExpandWithMaxSpan()
        {
            var a = new HkdfSha512();

            var expected = s_outputForEmpty.DecodeHex();
            var actual   = new byte[a.MaxOutputSize];

            a.Expand(s_prkForEmpty.DecodeHex(), ReadOnlySpan <byte> .Empty, actual);

            Assert.Equal(expected, actual);
        }
コード例 #3
0
ファイル: HkdfSha512Tests.cs プロジェクト: wandbond/nsec
        public static void ExpandWithSpanSuccess(int count)
        {
            var a = new HkdfSha512();

            var expected = s_outputForEmpty.DecodeHex().Substring(0, count);
            var actual   = new byte[count];

            a.Expand(s_prkForEmpty.DecodeHex(), ReadOnlySpan <byte> .Empty, actual);

            Assert.Equal(expected, actual);
        }
コード例 #4
0
ファイル: HkdfSha512Tests.cs プロジェクト: wandbond/nsec
        public static void ExpandWithMaxCount()
        {
            var a = new HkdfSha512();

            var expected = s_outputForEmpty.DecodeHex();
            var actual   = a.Expand(s_prkForEmpty.DecodeHex(), ReadOnlySpan <byte> .Empty, a.MaxOutputSize);

            Assert.NotNull(actual);
            Assert.Equal(expected, actual);
            Assert.Equal(a.MaxOutputSize, actual.Length);
        }
コード例 #5
0
ファイル: HkdfSha512Tests.cs プロジェクト: wandbond/nsec
        public static void ExpandWithCountSuccess(int count)
        {
            var a = new HkdfSha512();

            var expected = s_outputForEmpty.DecodeHex().Substring(0, count);
            var actual   = a.Expand(s_prkForEmpty.DecodeHex(), ReadOnlySpan <byte> .Empty, count);

            Assert.NotNull(actual);
            Assert.Equal(expected, actual);
            Assert.Equal(count, actual.Length);
        }
コード例 #6
0
ファイル: HkdfSha512Tests.cs プロジェクト: wandbond/nsec
        public static void ExpandWithSpanTooLarge()
        {
            var a = new HkdfSha512();

            Assert.Throws <ArgumentException>("bytes", () => a.Expand(s_prkForEmpty.DecodeHex(), ReadOnlySpan <byte> .Empty, new byte[a.MaxOutputSize + 1]));
        }
コード例 #7
0
ファイル: HkdfSha512Tests.cs プロジェクト: wandbond/nsec
        public static void ExpandWithSpanWithPrkTooShort()
        {
            var a = new HkdfSha512();

            Assert.Throws <ArgumentException>("pseudorandomKey", () => a.Expand(new byte[a.PseudorandomKeySize - 1], ReadOnlySpan <byte> .Empty, new byte[0]));
        }
コード例 #8
0
ファイル: HkdfSha512Tests.cs プロジェクト: wandbond/nsec
        public static void ExpandWithCountTooLarge()
        {
            var a = new HkdfSha512();

            Assert.Throws <ArgumentOutOfRangeException>("count", () => a.Expand(s_prkForEmpty.DecodeHex(), ReadOnlySpan <byte> .Empty, a.MaxOutputSize + 1));
        }
コード例 #9
0
ファイル: HkdfSha512Tests.cs プロジェクト: wandbond/nsec
        public static void ExpandWithNegativeCount()
        {
            var a = new HkdfSha512();

            Assert.Throws <ArgumentOutOfRangeException>("count", () => a.Expand(s_prkForEmpty.DecodeHex(), ReadOnlySpan <byte> .Empty, -1));
        }