コード例 #1
0
        // Call this function to randomly generate these byte arrays.
        public static void Generate(IHashTestHost provider)
        {
            var rng = RandomNumberGenerator.Create();

            var seed1 = "master secret";

            DebugHelper.WriteCSharp("TestSeed1", seed1);

            var secret1 = new byte [128];

            rng.GetBytes(secret1);
            DebugHelper.WriteCSharp("TestSecret1", secret1);

            var data1 = new byte [64];

            rng.GetBytes(data1);
            DebugHelper.WriteCSharp("TestData1", data1);

            var output1 = provider.TestPRF(HandshakeHashType.SHA256, secret1, seed1, data1, 48);

            DebugHelper.WriteCSharp("PRF1", output1);

            var seed2 = "key expansion";

            DebugHelper.WriteCSharp("TestSeed2", seed2);

            var secret2 = new byte [128];

            rng.GetBytes(secret2);
            DebugHelper.WriteCSharp("TestSecret2", secret2);

            var data2 = new byte [64];

            rng.GetBytes(data2);
            DebugHelper.WriteCSharp("TestData2", data2);

            var output2 = provider.TestPRF(HandshakeHashType.SHA256, secret2, seed2, data2, 148);

            DebugHelper.WriteCSharp("KeyExpansion2", output2);

            var seed3 = "master secret";

            DebugHelper.WriteCSharp("TestSeed3", seed3);

            var secret3 = new byte [128];

            rng.GetBytes(secret3);
            DebugHelper.WriteCSharp("TestSecret3", secret3);

            var data3 = new byte [64];

            rng.GetBytes(data3);
            DebugHelper.WriteCSharp("TestData3", data3);

            var output3 = provider.TestPRF(HandshakeHashType.SHA384, secret3, seed3, data3, 48);

            DebugHelper.WriteCSharp("PRF3", output3);

            var data4 = new byte [64];

            rng.GetBytes(data4);
            DebugHelper.WriteCSharp("TestData4", data4);

            var output4 = provider.TestDigest(HandshakeHashType.SHA256, data4);

            DebugHelper.WriteCSharp("Digest4", output4);

            var data5 = new byte [64];

            rng.GetBytes(data5);
            DebugHelper.WriteCSharp("TestData5", data5);

            var output5 = provider.TestDigest(HandshakeHashType.SHA384, data5);

            DebugHelper.WriteCSharp("Digest5", output5);

            var seed6 = "key expansion";

            DebugHelper.WriteCSharp("TestSeed6", seed6);

            var secret6 = new byte [128];

            rng.GetBytes(secret6);
            DebugHelper.WriteCSharp("TestSecret6", secret6);

            var data6 = new byte [64];

            rng.GetBytes(data6);
            DebugHelper.WriteCSharp("TestData6", data6);

            var output6 = provider.TestPRF(HandshakeHashType.SHA384, secret6, seed6, data6, 72);

            DebugHelper.WriteCSharp("KeyExpansion6", output6);
        }
コード例 #2
0
 public CryptoTest(TestConfiguration config, IHashTestHost provider)
 {
     Configuration = config;
     Provider      = provider;
 }
コード例 #3
0
 public TestGaloisCounterCipher(TestConfiguration config, IHashTestHost provider)
     : base(config, provider)
 {
 }