Merge pull request #1542 from ninjarobot/UriTemplateMatchException
[mono.git] / mcs / class / corlib / System.Security.Cryptography / DES.cs
index fc49a869d39ea484829ec8f972f825b3960e1833..7c042cd9dddb1ed82c122cebc12b99792324b368 100644 (file)
@@ -1,5 +1,5 @@
 //
-// System.Security.Cryptography.DES
+// System.Security.Cryptography.DES.cs
 //
 // Author:
 //     Sergey Chaban (serge@wildwestsoftware.com)
@@ -37,18 +37,12 @@ using System.Runtime.InteropServices;
 
 namespace System.Security.Cryptography {
 
-#if NET_2_0
 [ComVisible (true)]
-#endif
 public abstract class DES : SymmetricAlgorithm {
 
        private const int keySizeByte = 8;
 
-#if NET_2_0
        protected DES ()
-#else
-       public DES ()
-#endif
        {
                KeySizeValue = 64; 
                BlockSizeValue = 64; 
@@ -63,12 +57,16 @@ public abstract class DES : SymmetricAlgorithm {
 
        public static new DES Create () 
        {
+#if FULL_AOT_RUNTIME
+               return new System.Security.Cryptography.DESCryptoServiceProvider ();
+#else
                return Create ("System.Security.Cryptography.DES");
+#endif
        }
 
-       public static new DES Create (string algo
+       public static new DES Create (string algName
         {
-               return (DES) CryptoConfig.CreateFromName (algo);
+               return (DES) CryptoConfig.CreateFromName (algName);
        }
 
 
@@ -82,26 +80,24 @@ public abstract class DES : SymmetricAlgorithm {
 
        // Ek1(Ek2(m)) = m
        internal static readonly byte[,] semiWeakKeys = {
-               { 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x0E, 0x00, 0x0E }, // map to packed key 011F011F010E010E\r
-               { 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xF0, 0x00, 0xF0 }, // map to packed key 01E001E001F101F1\r
-               { 0x00, 0xFE, 0x00, 0xFE, 0x00, 0xFE, 0x00, 0xFE }, // map to packed key 01FE01FE01FE01FE\r
-               { 0x1E, 0x00, 0x1E, 0x00, 0x0E, 0x00, 0x0E, 0x00 }, // map to packed key 1F011F010E010E01\r
-               { 0x1E, 0xE0, 0x1E, 0xE0, 0x0E, 0xF0, 0x0E, 0xF0 }, // map to packed key 1FE01FE00EF10EF1\r
-               { 0x1E, 0xFE, 0x1E, 0xFE, 0x0E, 0xFE, 0x0E, 0xFE }, // map to packed key 1FFE1FFE0EFE0EFE\r
-               { 0xE0, 0x00, 0xE0, 0x00, 0xF0, 0x00, 0xF0, 0x00 }, // map to packed key E001E001F101F101\r
-               { 0xE0, 0x1E, 0xE0, 0x1E, 0xF0, 0x0E, 0xF0, 0x0E }, // map to packed key E01FE01FF10EF10E\r
-               { 0xE0, 0xFE, 0xE0, 0xFE, 0xF0, 0xFE, 0xF0, 0xFE }, // map to packed key E0FEE0FEF1FEF1FE\r
-               { 0xFE, 0x00, 0xFE, 0x00, 0xFE, 0x00, 0xFE, 0x00 }, // map to packed key FE01FE01FE01FE01\r
-               { 0xFE, 0x1E, 0xFE, 0x1E, 0xFE, 0x0E, 0xFE, 0x0E }, // map to packed key FE1FFE1FFE0EFE0E\r
-               { 0xFE, 0xE0, 0xFE, 0xE0, 0xFE, 0xF0, 0xFE, 0xF0 }, // map to packed key FEE0FEE0FEF1FEF1\r
-       };\r
+               { 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x0E, 0x00, 0x0E }, // map to packed key 011F011F010E010E
+               { 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xF0, 0x00, 0xF0 }, // map to packed key 01E001E001F101F1
+               { 0x00, 0xFE, 0x00, 0xFE, 0x00, 0xFE, 0x00, 0xFE }, // map to packed key 01FE01FE01FE01FE
+               { 0x1E, 0x00, 0x1E, 0x00, 0x0E, 0x00, 0x0E, 0x00 }, // map to packed key 1F011F010E010E01
+               { 0x1E, 0xE0, 0x1E, 0xE0, 0x0E, 0xF0, 0x0E, 0xF0 }, // map to packed key 1FE01FE00EF10EF1
+               { 0x1E, 0xFE, 0x1E, 0xFE, 0x0E, 0xFE, 0x0E, 0xFE }, // map to packed key 1FFE1FFE0EFE0EFE
+               { 0xE0, 0x00, 0xE0, 0x00, 0xF0, 0x00, 0xF0, 0x00 }, // map to packed key E001E001F101F101
+               { 0xE0, 0x1E, 0xE0, 0x1E, 0xF0, 0x0E, 0xF0, 0x0E }, // map to packed key E01FE01FF10EF10E
+               { 0xE0, 0xFE, 0xE0, 0xFE, 0xF0, 0xFE, 0xF0, 0xFE }, // map to packed key E0FEE0FEF1FEF1FE
+               { 0xFE, 0x00, 0xFE, 0x00, 0xFE, 0x00, 0xFE, 0x00 }, // map to packed key FE01FE01FE01FE01
+               { 0xFE, 0x1E, 0xFE, 0x1E, 0xFE, 0x0E, 0xFE, 0x0E }, // map to packed key FE1FFE1FFE0EFE0E
+               { 0xFE, 0xE0, 0xFE, 0xE0, 0xFE, 0xF0, 0xFE, 0xF0 }, // map to packed key FEE0FEE0FEF1FEF1
+       };
 
        public static bool IsWeakKey (byte[] rgbKey) 
        {
-#if NET_2_0
                if (rgbKey == null)
                        throw new CryptographicException (Locale.GetText ("Null Key"));
-#endif
                if (rgbKey.Length != keySizeByte)
                        throw new CryptographicException (Locale.GetText ("Wrong Key Length"));
 
@@ -133,10 +129,8 @@ public abstract class DES : SymmetricAlgorithm {
 
        public static bool IsSemiWeakKey (byte[] rgbKey)
        {
-#if NET_2_0
                if (rgbKey == null)
                        throw new CryptographicException (Locale.GetText ("Null Key"));
-#endif
                if (rgbKey.Length != keySizeByte)
                        throw new CryptographicException (Locale.GetText ("Wrong Key Length"));
 
@@ -191,3 +185,4 @@ public abstract class DES : SymmetricAlgorithm {
 }
 
 }
+