X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mcs%2Fclass%2Fcorlib%2FTest%2FSystem.Security.Cryptography%2FSymmetricAlgorithm2Test.cs;h=325cad16259f497ef5833c97f3cf6f415ec5e7ff;hb=64eff753bdeb747d6c7d35c3c7cc77fe5fd5cea4;hp=767c922f8282c3d9fda8772d6677e5e1d223ba35;hpb=1d2f1d82f4cbc913ebbb5b36b0c14a92c2dbc5ae;p=mono.git diff --git a/mcs/class/corlib/Test/System.Security.Cryptography/SymmetricAlgorithm2Test.cs b/mcs/class/corlib/Test/System.Security.Cryptography/SymmetricAlgorithm2Test.cs old mode 100755 new mode 100644 index 767c922f828..325cad16259 --- a/mcs/class/corlib/Test/System.Security.Cryptography/SymmetricAlgorithm2Test.cs +++ b/mcs/class/corlib/Test/System.Security.Cryptography/SymmetricAlgorithm2Test.cs @@ -5,7 +5,7 @@ // Author: // Sebastien Pouliot // -// Copyright (C) 2004 Novell, Inc (http://www.novell.com) +// Copyright (C) 2004-2005 Novell, Inc (http://www.novell.com) // // Permission is hereby granted, free of charge, to any person obtaining // a copy of this software and associated documentation files (the @@ -39,12 +39,7 @@ namespace MonoTests.System.Security.Cryptography { // be tested here (but will be in its descendants). [TestFixture] - public class SymmetricAlgorithm2Test : Assertion { - - public void AssertEquals (string msg, byte[] array1, byte[] array2) - { - AllTests.AssertEquals (msg, array1, array2); - } + public class SymmetricAlgorithm2Test { [Test] public void KeySize_SameSize () @@ -56,7 +51,21 @@ namespace MonoTests.System.Security.Cryptography { // set the key size algo.KeySize = ks; // did it change the key ? Yes! - Assert ("Key", BitConverter.ToString (key) != BitConverter.ToString (algo.Key)); + Assert.AreNotEqual (BitConverter.ToString (key), BitConverter.ToString (algo.Key), "Key"); + } + } + + [Test] + public void BlockSize_SameSize () + { + using (SymmetricAlgorithm algo = SymmetricAlgorithm.Create ()) { + // get a copy of the IV + byte[] iv = algo.IV; + int bs = algo.BlockSize; + // set the iv size + algo.BlockSize = bs; + // did it change the IV ? No! + Assert.AreEqual (BitConverter.ToString (iv), BitConverter.ToString (algo.IV), "IV"); } } @@ -85,9 +94,7 @@ namespace MonoTests.System.Security.Cryptography { } [Test] -#if NET_2_0 [ExpectedException (typeof (CryptographicException))] -#endif public void IV_None () { SymmetricAlgorithm algo = SymmetricAlgorithm.Create (); @@ -143,5 +150,24 @@ namespace MonoTests.System.Security.Cryptography { SymmetricAlgorithm algo = SymmetricAlgorithm.Create (); algo.Padding = (PaddingMode) 255; } + + [Test] + [ExpectedException (typeof (CryptographicException))] + public void FeedbackZero () + { + // thanks to Yakk for the sample + DES des = new DESCryptoServiceProvider(); + des.FeedbackSize = 0; + des.Padding = PaddingMode.None; + des.Mode = CipherMode.ECB; + des.Key = new byte [8] { 8, 7, 6, 5, 4, 3, 2, 1 }; + + ICryptoTransform enc = des.CreateEncryptor (); + byte[] response = new byte [16]; + byte[] challenge = new byte [16] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 }; + + enc.TransformBlock (challenge, 0, challenge.Length, response, 0); + Assert.AreEqual ("7A-64-CD-1B-4F-EE-B5-92-54-90-53-E9-83-71-A6-0C", BitConverter.ToString (response)); + } } }