Exemplo n.º 1
0
        public void BlockTest()
        {
            Luffa256Managed luffa = new Luffa256Managed();

            byte[] msg      = RNG.GetBytes(128);
            byte[] expected = luffa.ComputeHash(msg);

            luffa.Initialize();
            luffa.TransformBlock(msg, 0, 32, null, 0);
            luffa.TransformBlock(msg, 32, 32, null, 0);
            luffa.TransformBlock(msg, 64, 32, null, 0);
            luffa.TransformFinalBlock(msg, 96, 32);
            Assert.AreEqual(expected, luffa.Hash, "#1");

            luffa.Initialize();
            luffa.TransformBlock(msg, 0, 20, null, 0);
            luffa.TransformBlock(msg, 20, 20, null, 0);
            luffa.TransformBlock(msg, 40, 20, null, 0);
            luffa.TransformBlock(msg, 60, 20, null, 0);
            luffa.TransformBlock(msg, 80, 20, null, 0);
            luffa.TransformBlock(msg, 100, 20, null, 0);
            luffa.TransformFinalBlock(msg, 120, 8);
            Assert.AreEqual(expected, luffa.Hash, "#2");

            luffa.Initialize();
            luffa.TransformBlock(msg, 0, 70, null, 0);
            luffa.TransformFinalBlock(msg, 70, 58);
            Assert.AreEqual(expected, luffa.Hash, "#3");
        }
Exemplo n.º 2
0
		public void BlockTest ()
		{
			Luffa256Managed luffa = new Luffa256Managed ();
			byte[] msg = RNG.GetBytes (128);
			byte[] expected = luffa.ComputeHash (msg);

			luffa.Initialize ();
			luffa.TransformBlock (msg, 0, 32, null, 0);
			luffa.TransformBlock (msg, 32, 32, null, 0);
			luffa.TransformBlock (msg, 64, 32, null, 0);
			luffa.TransformFinalBlock (msg, 96, 32);
			Assert.AreEqual (expected, luffa.Hash, "#1");

			luffa.Initialize ();
			luffa.TransformBlock (msg, 0, 20, null, 0);
			luffa.TransformBlock (msg, 20, 20, null, 0);
			luffa.TransformBlock (msg, 40, 20, null, 0);
			luffa.TransformBlock (msg, 60, 20, null, 0);
			luffa.TransformBlock (msg, 80, 20, null, 0);
			luffa.TransformBlock (msg, 100, 20, null, 0);
			luffa.TransformFinalBlock (msg, 120, 8);
			Assert.AreEqual (expected, luffa.Hash, "#2");

			luffa.Initialize ();
			luffa.TransformBlock (msg, 0, 70, null, 0);
			luffa.TransformFinalBlock (msg, 70, 58);
			Assert.AreEqual (expected, luffa.Hash, "#3");
		}
Exemplo n.º 3
0
        void Test(int bits, byte[] msg, byte[] expected, string text)
        {
            LuffaManaged luffa;

            switch (bits)
            {
            case Luffa224: luffa = new Luffa224Managed(); break;

            case Luffa256: luffa = new Luffa256Managed(); break;

            case Luffa384: luffa = new Luffa384Managed(); break;

            case Luffa512: luffa = new Luffa512Managed(); break;

            default: throw new ArgumentOutOfRangeException();
            }

            byte[] actual = luffa.ComputeHash(msg);
            Assert.AreEqual(expected, actual, text);
        }
Exemplo n.º 4
0
		void Test (int bits, byte[] msg, byte[] expected, string text)
		{
			LuffaManaged luffa;
			switch (bits) {
				case Luffa224: luffa = new Luffa224Managed (); break;
				case Luffa256: luffa = new Luffa256Managed (); break;
				case Luffa384: luffa = new Luffa384Managed (); break;
				case Luffa512: luffa = new Luffa512Managed (); break;
				default: throw new ArgumentOutOfRangeException ();
			}

			byte[] actual = luffa.ComputeHash (msg);
			Assert.AreEqual (expected, actual, text);
		}