// Sebastien Pouliot (sebastien@ximian.com)
//
// Portions (C) 2002, 2003 Motus Technologies Inc. (http://www.motus.com)
-// (C) 2004 Novell (http://www.novell.com)
-//
-
-//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
using System.Globalization;
+using System.Runtime.InteropServices;
namespace System.Security.Cryptography {
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public abstract class AsymmetricAlgorithm : IDisposable {
protected int KeySizeValue;
// Authors:\r
// Thomas Neidhart (tome@sbox.tugraz.at)\r
//
-// (C) 2004 Novell (http://www.novell.com)
-//\r
-
-//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
\r
-using System;\r
+using System.Runtime.InteropServices;
\r
namespace System.Security.Cryptography {\r
\r
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public abstract class AsymmetricKeyExchangeDeformatter {\r
\r
public AsymmetricKeyExchangeDeformatter ()
// Authors:\r
// Thomas Neidhart (tome@sbox.tugraz.at)\r
//\r
-// (C) 2004 Novell (http://www.novell.com)
-//\r
-
-//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
\r
-using System;\r
+using System.Runtime.InteropServices;
\r
namespace System.Security.Cryptography {\r
\r
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public abstract class AsymmetricKeyExchangeFormatter {\r
\r
public AsymmetricKeyExchangeFormatter ()
// Authors:
// Thomas Neidhart (tome@sbox.tugraz.at)
//
-// (C) 2004 Novell (http://www.novell.com)
-//\r
-
-//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
+using System.Runtime.InteropServices;
namespace System.Security.Cryptography {
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public abstract class AsymmetricSignatureDeformatter {
public AsymmetricSignatureDeformatter ()
// Authors:
// Thomas Neidhart (tome@sbox.tugraz.at)
//
-// (C) 2004 Novell (http://www.novell.com)
-//\r
-
-//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
+using System.Runtime.InteropServices;
namespace System.Security.Cryptography {
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public abstract class AsymmetricSignatureFormatter {
public AsymmetricSignatureFormatter ()
// Sergey Chaban (serge@wildwestsoftware.com)
// Sebastien Pouliot <sebastien@ximian.com>
//
-// (C) 2004 Novell (http://www.novell.com)
-//
-
-//
-// 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
//
namespace System.Security.Cryptography {
-\r
+
+#if NET_2_0
+ internal static class Base64Constants {\r
+#else\r
internal sealed class Base64Constants {\r
\r
private Base64Constants ()\r
{\r
// Never instantiated.\r
}
-
+#endif
// Pre-calculated tables\r
\r
public static readonly byte[] EncodeTable = {
+2005-06-10 Sebastien Pouliot <sebastien@ximian.com>
+
+ * all: 2.0 beta2 fixes, i.e. mostly added [ComVisible(true)]
+
2005-06-09 Sebastien Pouliot <sebastien@ximian.com>
* HMAC.cs: BlockSizeValue has changed from a protected member to
// Matthew S. Ford (Matthew.S.Ford@Rose-Hulman.Edu)
//
// Copyright 2001 by Matthew S. Ford.
-// (C) 2004 Novell (http://www.novell.com)
-//
-
-//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
+using System.Runtime.InteropServices;
+
namespace System.Security.Cryptography {
[Serializable]
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public enum CipherMode {
CBC = 0x1, // Cipher Block Chaining
ECB, // Electronic Codebook
// Note: This class isn't used by Mono as all algorithms are provided with
// 100% managed implementations.
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public sealed class CryptoAPITransform : ICryptoTransform {
private bool m_disposed;
using System.IO;
using System.Reflection;
using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
using System.Security.Permissions;
using System.Text;
namespace System.Security.Cryptography {
+#if NET_2_0
+[ComVisible (true)]
+#endif
public class CryptoConfig {
static private object lockObject;
// Sebastien Pouliot (sebastien@ximian.com)
//
// Portions (C) 2002, 2003 Motus Technologies Inc. (http://www.motus.com)
-// (C) 2004 Novell (http://www.novell.com)
-//
-
-//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
using System.Globalization;
using System.IO;
using System.Runtime.InteropServices;
namespace System.Security.Cryptography {
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public class CryptoStream : Stream {
private Stream _stream;
private ICryptoTransform _transform;
// Matthew S. Ford (Matthew.S.Ford@Rose-Hulman.Edu)
//
// Copyright 2001 by authors.
-//
-
-//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
+using System.Runtime.InteropServices;
+
namespace System.Security.Cryptography {
[Serializable]
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public enum CryptoStreamMode {
Read,
Write
// Thomas Neidhart (tome@sbox.tugraz.at)
// Sebastien Pouliot <sebastien@ximian.com>
//
-// 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
[Serializable]
#if NET_2_0
+ [ComVisible (true)]
public class CryptographicException : SystemException, _Exception {
#else
public class CryptographicException : SystemException {
// Thomas Neidhart (tome@sbox.tugraz.at)
// Sebastien Pouliot <sebastien@ximian.com>
//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
using System.Globalization;
using System.Runtime.InteropServices;
using System.Runtime.Serialization;
namespace System.Security.Cryptography {
[Serializable]
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public class CryptographicUnexpectedOperationException : CryptographicException {
public CryptographicUnexpectedOperationException ()
#if NET_2_0
+using System.Runtime.InteropServices;
using System.Security.AccessControl;
namespace System.Security.Cryptography {
+ [ComVisible (true)]
public sealed class CspKeyContainerInfo {
private CspParameters _params;
//
#if NET_2_0
+using System.Runtime.InteropServices;
using System.Security.AccessControl;
#endif
\r
namespace System.Security.Cryptography {\r
\r
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public sealed class CspParameters {
\r
private CspProviderFlags _Flags;\r
//
using System.Globalization;
+using System.Runtime.InteropServices;
// References:
// a. FIPS PUB 46-3: Data Encryption Standard
namespace System.Security.Cryptography {
+#if NET_2_0
+[ComVisible (true)]
+#endif
public abstract class DES : SymmetricAlgorithm {
private const int keySizeByte = 8;
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
using System.Globalization;
+using System.Runtime.InteropServices;
using System.Text;
using Mono.Xml;
namespace System.Security.Cryptography {
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public abstract class DSA : AsymmetricAlgorithm {
#if NET_2_0
// (C) 2002
// Portions (C) 2002, 2003 Motus Technologies Inc. (http://www.motus.com)
// Portions (C) 2003 Ben Maurer
-// 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
namespace System.Security.Cryptography {
#if NET_2_0
+ [ComVisible (true)]
public sealed class DSACryptoServiceProvider : DSA, ICspAsymmetricAlgorithm {
#elif NET_1_1
public sealed class DSACryptoServiceProvider : DSA {
// Author:\r
// Thomas Neidhart (tome@sbox.tugraz.at)\r
//
-// (C) 2004 Novell (http://www.novell.com)
-//
-
-//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
\r
-using System;\r
+using System.Runtime.InteropServices;
\r
namespace System.Security.Cryptography {\r
\r
[Serializable]\r
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public struct DSAParameters {
\r
public int Counter;\r
// Sebastien Pouliot (sebastien@ximian.com)
//
// Portions (C) 2002 Motus Technologies Inc. (http://www.motus.com)
-// 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
//
using System.Globalization;
+using System.Runtime.InteropServices;
namespace System.Security.Cryptography {
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public class DSASignatureDeformatter : AsymmetricSignatureDeformatter {
private DSA dsa;
// Sebastien Pouliot (sebastien@ximian.com)
//
// Portions (C) 2002 Motus Technologies Inc. (http://www.motus.com)
-// 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
//
using System.Globalization;
+using System.Runtime.InteropServices;
namespace System.Security.Cryptography {
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public class DSASignatureFormatter : AsymmetricSignatureFormatter {
private DSA dsa;
// Author:\r
// Thomas Neidhart (tome@sbox.tugraz.at)\r
//\r
-// (C) 2004 Novell (http://www.novell.com)
-//
-
-//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
\r
-using System;\r
+using System.Runtime.InteropServices;
\r
namespace System.Security.Cryptography {\r
\r
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public abstract class DeriveBytes {\r
\r
protected DeriveBytes ()
// Author:
// Sergey Chaban (serge@wildwestsoftware.com)
//
-// (C) 2004 Novell (http://www.novell.com)
-//
-
-//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
using System.Globalization;
+using System.Runtime.InteropServices;
namespace System.Security.Cryptography {
[Serializable]
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public enum FromBase64TransformMode : int {
IgnoreWhiteSpaces,
DoNotIgnoreWhiteSpaces
}
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public class FromBase64Transform : ICryptoTransform {
private FromBase64TransformMode mode;
// HMACMD5.cs: HMAC implementation using MD5
//
// Author:
-// Sebastien Pouliot (spouliot@motus.com)
+// Sebastien Pouliot <sebastien@ximian.com>
//
// (C) 2003 Motus Technologies Inc. (http://www.motus.com)
-//
-
-//
-// 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
#if NET_2_0
-using System;
+using System.Runtime.InteropServices;
using Mono.Security.Cryptography;
// b. IETF RFC2202: Test Cases for HMAC-MD5 and HMAC-SHA-1
// (include C source for HMAC-MD5 and HAMAC-SHA1)
// http://www.ietf.org/rfc/rfc2202.txt
-
+ [ComVisible (true)]
public class HMACMD5 : HMAC {
- public HMACMD5 () : this (KeyBuilder.Key (8)) {}
+ public HMACMD5 ()
+ : this (KeyBuilder.Key (8))
+ {
+ }
public HMACMD5 (byte[] rgbKey) : base ()
{
HashSizeValue = 128;
Key = rgbKey;
}
-
- ~HMACMD5 ()
- {
- Dispose (false);
- }
}
}
-#endif
\ No newline at end of file
+#endif
// HMACRIPEMD160.cs: HMAC implementation using RIPEMD160
//
// Author:
-// Sebastien Pouliot (spouliot@motus.com)
+// Sebastien Pouliot <sebastien@ximian.com>
//
// (C) 2003 Motus Technologies Inc. (http://www.motus.com)
-//
-
-//
-// 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
#if NET_2_0
-using System;
+using System.Runtime.InteropServices;
using Mono.Security.Cryptography;
namespace System.Security.Cryptography {
+ [ComVisible (true)]
public class HMACRIPEMD160 : HMAC {
- public HMACRIPEMD160 () : this (KeyBuilder.Key (8)) {}
+ public HMACRIPEMD160 ()
+ : this (KeyBuilder.Key (8))
+ {
+ }
public HMACRIPEMD160 (byte[] rgbKey) : base ()
{
HashSizeValue = 160;
Key = rgbKey;
}
-
- ~HMACRIPEMD160 ()
- {
- Dispose (false);
- }
}
}
-#endif
\ No newline at end of file
+#endif
// HMACSHA1.cs: Handles HMAC with SHA-1
//
// Author:
-// Sebastien Pouliot <sebastien@ximian.com>
+// Sebastien Pouliot <sebastien@ximian.com>
//
-// (C) 2002, 2003 Motus Technologies Inc. (http://www.motus.com)
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
+// (C) 2003 Motus Technologies Inc. (http://www.motus.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
//
using System.IO;
+using System.Runtime.InteropServices;
using Mono.Security.Cryptography;
}
}
#else
+ [ComVisible (true)]
public class HMACSHA1 : HMAC {
- public HMACSHA1 () : this (KeyBuilder.Key (8))
+ public HMACSHA1 ()
+ : this (KeyBuilder.Key (8))
{
}
HashSizeValue = 160;
Key = rgbKey;
}
-
- ~HMACSHA1 ()
- {
- Dispose (false);
- }
}
#endif
}
// HMACSHA256.cs: HMAC implementation using SHA256
//
// Author:
-// Sebastien Pouliot (spouliot@motus.com)
+// Sebastien Pouliot <sebastien@ximian.com>
//
// (C) 2003 Motus Technologies Inc. (http://www.motus.com)
-//
-
-//
-// 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
#if NET_2_0
-using System;
+using System.Runtime.InteropServices;
using Mono.Security.Cryptography;
namespace System.Security.Cryptography {
+ [ComVisible (true)]
public class HMACSHA256 : HMAC {
- public HMACSHA256 () : this (KeyBuilder.Key (8)) {}
+ public HMACSHA256 ()
+ : this (KeyBuilder.Key (8))
+ {
+ }
public HMACSHA256 (byte[] rgbKey) : base ()
{
HashSizeValue = 256;
Key = rgbKey;
}
-
- ~HMACSHA256 ()
- {
- Dispose (false);
- }
}
}
-#endif
\ No newline at end of file
+#endif
// HMACSHA384.cs: HMAC implementation using SHA384
//
// Author:
-// Sebastien Pouliot (spouliot@motus.com)
+// Sebastien Pouliot <sebastien@ximian.com>
//
// (C) 2003 Motus Technologies Inc. (http://www.motus.com)
-//
-
-//
-// 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
#if NET_2_0
-using System;
+using System.Runtime.InteropServices;
using Mono.Security.Cryptography;
namespace System.Security.Cryptography {
+ [ComVisible (true)]
public class HMACSHA384 : HMAC {
- public HMACSHA384 () : this (KeyBuilder.Key (8)) {}
+ public HMACSHA384 ()
+ : this (KeyBuilder.Key (8))
+ {
+ }
public HMACSHA384 (byte[] rgbKey) : base ()
{
HashSizeValue = 384;
Key = rgbKey;
}
-
- ~HMACSHA384 ()
- {
- Dispose (false);
- }
}
}
-#endif
\ No newline at end of file
+#endif
// HMACSHA512.cs: HMAC implementation using SHA512
//
// Author:
-// Sebastien Pouliot (spouliot@motus.com)
+// Sebastien Pouliot <sebastien@ximian.com>
//
// (C) 2003 Motus Technologies Inc. (http://www.motus.com)
-//
-
-//
-// 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
#if NET_2_0
-using System;
+using System.Runtime.InteropServices;
using Mono.Security.Cryptography;
namespace System.Security.Cryptography {
+ [ComVisible (true)]
public class HMACSHA512 : HMAC {
- public HMACSHA512 () : this (KeyBuilder.Key (8)) {}
+ public HMACSHA512 ()
+ : this (KeyBuilder.Key (8))
+ {
+ }
public HMACSHA512 (byte[] rgbKey) : base ()
{
HashSizeValue = 512;
Key = rgbKey;
}
-
- ~HMACSHA512 ()
- {
- Dispose (false);
- }
}
}
-#endif
\ No newline at end of file
+#endif
using System.Globalization;
using System.IO;
+using System.Runtime.InteropServices;
namespace System.Security.Cryptography {
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public abstract class HashAlgorithm : ICryptoTransform {
protected byte[] HashValue;
// Matthew S. Ford (Matthew.S.Ford@Rose-Hulman.Edu)
//
// Copyright 2001 by Matthew S. Ford.
-// (C) 2004 Novell (http://www.novell.com)
-//
-
-//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
+using System.Runtime.InteropServices;
namespace System.Security.Cryptography {
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public interface ICryptoTransform : IDisposable {
bool CanReuseTransform {
// ICspAsymmetricAlgorithm.cs: interface for CSP based asymmetric algorithm
//
// Author:
-// Sebastien Pouliot (spouliot@motus.com)
+// Sebastien Pouliot (sebastien@ximian.com)
//
// (C) 2003 Motus Technologies Inc. (http://www.motus.com)
-//
-
-//
-// 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
#if NET_2_0
-using System;
+using System.Runtime.InteropServices;
namespace System.Security.Cryptography {
+ [ComVisible (true)]
public interface ICspAsymmetricAlgorithm {
byte[] ExportCspBlob (bool includePrivateParameters);
}
}
-#endif
\ No newline at end of file
+#endif
// KeyNumber.cs: Key Number for CAPI containers
//
// Author:
-// Sebastien Pouliot (spouliot@motus.com)
+// Sebastien Pouliot (sebastien@ximian.com)
//
// (C) 2003 Motus Technologies Inc. (http://www.motus.com)
-// 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
#if NET_2_0
-using System;
+using System.Runtime.InteropServices;
namespace System.Security.Cryptography {
+ [ComVisible (true)]
public enum KeyNumber {
Exchange = 1,
Signature = 2
// Sebastien Pouliot (sebastien@ximian.com)
//
// Copyright 2001 by Matthew S. Ford.
-// (C) 2004 Novell (http://www.novell.com)
-//
-
-//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
+using System.Runtime.InteropServices;
+
namespace System.Security.Cryptography {
#if NET_1_0
public class KeySizes {
#else
+ #if NET_2_0
+ [ComVisible (true)]
+ #endif
public sealed class KeySizes {
#endif
private int _maxSize;
// Sebastien Pouliot (sebastien@ximian.com)
//
// (C) 2002 Motus Technologies Inc. (http://www.motus.com)
-// (C) 2004 Novell (http://www.novell.com)
-//
-
-//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
using System.Globalization;
+using System.Runtime.InteropServices;
namespace System.Security.Cryptography {
+#if NET_2_0
+[ComVisible (true)]
+#endif
public abstract class KeyedHashAlgorithm : HashAlgorithm {
protected byte[] KeyValue;
// MACTripleDES.cs: Handles MAC with TripleDES
//
// Author:
-// Sebastien Pouliot (spouliot@motus.com)
+// Sebastien Pouliot (sebastien@ximian.com)
//
// (C) 2002, 2003 Motus Technologies Inc. (http://www.motus.com)
-// 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
// http://www.itl.nist.gov/fipspubs/fip81.htm
// LAMESPEC: MACTripleDES == MAC-CBC using TripleDES (not MAC-CFB).
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public class MACTripleDES: KeyedHashAlgorithm {
private TripleDES tdes;
//\r
// Copyright 2001 by Matthew S. Ford.\r
// Portions (C) 2002 Motus Technologies Inc. (http://www.motus.com)\r
-// (C) 2004 Novell (http://www.novell.com)
-//\r
-
-//
-// 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
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
+
+using System.Runtime.InteropServices;
\r
namespace System.Security.Cryptography {\r
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public abstract class MD5 : HashAlgorithm {\r
// Why is it protected when others abstract hash classes are public ?\r
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
+using System.Runtime.InteropServices;
+
namespace System.Security.Cryptography {
#if NET_1_0
public class MD5CryptoServiceProvider : MD5 {
#else
+ #if NET_2_0
+ [ComVisible (true)]
+ #endif
public sealed class MD5CryptoServiceProvider : MD5 {
#endif
private const int BLOCK_SIZE_BYTES = 64;
// Sebastien Pouliot (sebastien@ximian.com)
//
// (C) 2002 Motus Technologies Inc. (http://www.motus.com)
-// (C) 2004 Novell (http://www.novell.com)
-//
-
-//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
+using System.Runtime.InteropServices;
+
namespace System.Security.Cryptography {
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public abstract class MaskGenerationMethod {
protected MaskGenerationMethod ()
// PKCS1MaskGenerationMethod.cs: Handles PKCS#1 mask generation.
//
// Author:
-// Sebastien Pouliot (spouliot@motus.com)
+// Sebastien Pouliot (sebastien@ximian.com)
//
// (C) 2002, 2003 Motus Technologies Inc. (http://www.motus.com)
-//
-
-//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
+using System.Runtime.InteropServices;
using Mono.Security.Cryptography;
namespace System.Security.Cryptography {
// a. PKCS#1: RSA Cryptography Standard
// http://www.rsasecurity.com/rsalabs/pkcs/pkcs-1/index.html
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public class PKCS1MaskGenerationMethod : MaskGenerationMethod {
private string hashName;
//
// Copyright 2001 by Matthew S. Ford.
// Portions (C) 2003 Motus Technologies Inc. (http://www.motus.com)
-// (C) 2004 Novell (http://www.novell.com)
-//
-
-//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
+using System.Runtime.InteropServices;
+
namespace System.Security.Cryptography {
+#if NET_2_0
+ [ComVisible (true)]
+#endif
[Serializable]
public enum PaddingMode {
None = 0x1,
//
using System.Globalization;
+using System.Runtime.InteropServices;
using System.Text;
namespace System.Security.Cryptography {
// b. IETF RFC2898: PKCS #5: Password-Based Cryptography Specification Version 2.0
// http://www.rfc-editor.org/rfc/rfc2898.txt
+#if NET_2_0
+[ComVisible (true)]
+#endif
public class PasswordDeriveBytes : DeriveBytes {
private string HashNameValue;
// Andrew Birkett (andy@nobugs.org)
// Sebastien Pouliot (sebastien@ximian.com)
//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
+using System.Runtime.InteropServices;
namespace System.Security.Cryptography {
// a. IETF RFC2286: A Description of the RC2(r) Encryption Algorithm
// http://www.ietf.org/rfc/rfc2268.txt
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public abstract class RC2 : SymmetricAlgorithm {
public static new RC2 Create ()
// Sebastien Pouliot (sebastien@ximian.com)
//
// Portions (C) 2002 Motus Technologies Inc. (http://www.motus.com)
-// 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
// a. IETF RFC2286: A Description of the RC2(r) Encryption Algorithm
// http://www.ietf.org/rfc/rfc2268.txt
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public sealed class RC2CryptoServiceProvider : RC2 {
private bool _useSalt;
// Pieter Philippaerts (Pieter@mentalis.org)
//
// (C) 2003 The Mentalis.org Team (http://www.mentalis.org/)
-//
-
-//
-// 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
#if NET_2_0
-using System;
+using System.Runtime.InteropServices;
namespace System.Security.Cryptography {
/// <summary>
/// Represents the abstract class from which all implementations of the <see cref="RIPEMD160"/> hash algorithm inherit.
/// </summary>
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public abstract class RIPEMD160 : HashAlgorithm {
/// <summary>
/// Initializes a new instance of <see cref="RIPEMD160"/>.
}
}
-#endif
\ No newline at end of file
+#endif
// - http://www.esat.kuleuven.ac.be/~cosicart/ps/AB-9601/
//
// (C) 2003 The Mentalis.org Team (http://www.mentalis.org/)
-// 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
/// <summary>
/// Computes the <see cref="RIPEMD160"/> hash for the input data.
/// </summary>
+ [ComVisible (true)]
public class RIPEMD160Managed : RIPEMD160 { // not 'sealed' according to preliminary docs; this may change though
/// <summary>
/// Initializes a new instance of the <see cref="RIPEMD160Managed"/> class. This class cannot be inherited.
// Great Power without form."
// -- The Verrah Rubicon of Verena, Book One
-using System;
using System.Globalization;
using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
using System.Text;
namespace System.Security.Cryptography {
#if NET_1_0
public class RNGCryptoServiceProvider : RandomNumberGenerator {
#else
+ #if NET_2_0
+ [ComVisible (true)]
+ #endif
public sealed class RNGCryptoServiceProvider : RandomNumberGenerator {
#endif
private static object _lock;
//
// (C) 2002
// Portions (C) 2002, 2003 Motus Technologies Inc. (http://www.motus.com)
-// (C) 2004 Novell (http://www.novell.com)
-//
-
-//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
using System.Globalization;
+using System.Runtime.InteropServices;
using System.Text;
using Mono.Xml;
namespace System.Security.Cryptography {
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public abstract class RSA : AsymmetricAlgorithm {
public static new RSA Create ()
//
// (C) 2002, 2003 Motus Technologies Inc. (http://www.motus.com)
// Portions (C) 2003 Ben Maurer
-// 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
namespace System.Security.Cryptography {
-#if (NET_2_0)
+#if NET_2_0
+ [ComVisible (true)]
public sealed class RSACryptoServiceProvider : RSA, ICspAsymmetricAlgorithm {
#else
public sealed class RSACryptoServiceProvider : RSA {
//
using System.Globalization;
+using System.Runtime.InteropServices;
using Mono.Security.Cryptography;
namespace System.Security.Cryptography {
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public class RSAOAEPKeyExchangeDeformatter : AsymmetricKeyExchangeDeformatter {
private RSA rsa;
//
using System.Globalization;
+using System.Runtime.InteropServices;
using Mono.Security.Cryptography;
namespace System.Security.Cryptography {
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public class RSAOAEPKeyExchangeFormatter : AsymmetricKeyExchangeFormatter {
private RSA rsa;
// Sebastien Pouliot <sebastien@ximian.com>
//
// (C) 2002 Motus Technologies Inc. (http://www.motus.com)
-// (C) 2004 Novell (http://www.novell.com)
-//
-
-//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
using System.Globalization;
+using System.Runtime.InteropServices;
using Mono.Security.Cryptography;
namespace System.Security.Cryptography {
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public class RSAPKCS1KeyExchangeDeformatter : AsymmetricKeyExchangeDeformatter {
private RSA rsa;
//
using System.Globalization;
+using System.Runtime.InteropServices;
using Mono.Security.Cryptography;
namespace System.Security.Cryptography {
// LAMESPEC: There seems no way to select a hash algorithm. The default
// algorithm, is SHA1 because the class use the PKCS1MaskGenerationMethod -
// which default to SHA1.
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public class RSAPKCS1KeyExchangeFormatter: AsymmetricKeyExchangeFormatter
{
private RSA rsa;
//
using System.Globalization;
+using System.Runtime.InteropServices;
using Mono.Security.Cryptography;
namespace System.Security.Cryptography {
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public class RSAPKCS1SignatureDeformatter : AsymmetricSignatureDeformatter {
private RSA rsa;
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
+using System.Runtime.InteropServices;
using Mono.Security.Cryptography;
namespace System.Security.Cryptography {
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public class RSAPKCS1SignatureFormatter : AsymmetricSignatureFormatter {
private RSA rsa;
// Dan Lewis (dihlewis@yahoo.co.uk)\r
//\r
// (C) 2002\r
-//\r
-
-//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
\r
-using System;\r
+using System.Runtime.InteropServices;
\r
namespace System.Security.Cryptography {\r
\r
[Serializable]\r
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public struct RSAParameters {\r
[NonSerialized]\r
public byte[] P;\r
// Duco Fijma (duco@lorentz.xs4all.nl)
//
// (C) 2002 Duco Fijma
-// (C) 2004 Novell (http://www.novell.com)
-//
-
-//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
+using System.Runtime.InteropServices;
+
namespace System.Security.Cryptography {
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public abstract class RandomNumberGenerator {
public RandomNumberGenerator ()
#if NET_2_0
+using System.Runtime.InteropServices;
using System.Text;
using Mono.Security.Cryptography;
namespace System.Security.Cryptography {
+ [ComVisible (true)]
public class Rfc2898DeriveBytes : DeriveBytes {
private const int defaultIterations = 1000;
// Andrew Birkett (andy@nobugs.org)\r
//\r
// (C) 2002\r
-// (C) 2004 Novell (http://www.novell.com)
-//\r
-
-//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
\r
-using System;\r
+using System.Runtime.InteropServices;
\r
namespace System.Security.Cryptography {\r
// a. FIPS PUB 197: Advanced Encryption Standard
// http://csrc.nist.gov/publications/fips/fips197/fips-197.pdf
\r
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public abstract class Rijndael : SymmetricAlgorithm {\r
\r
public static new Rijndael Create () \r
//
// (C) 2002
// Portions (C) 2002, 2003 Motus Technologies Inc. (http://www.motus.com)
-// (C) 2004 Novell (http://www.novell.com)
-//
-
-//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
+using System.Runtime.InteropServices;
using Mono.Security.Cryptography;
namespace System.Security.Cryptography {
// a. FIPS PUB 197: Advanced Encryption Standard
// http://csrc.nist.gov/publications/fips/fips197/fips-197.pdf
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public sealed class RijndaelManaged : Rijndael {
public RijndaelManaged ()
// Author:
// Sebastien Pouliot <sebastien@ximian.com>
//
-// 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
#if NET_2_0
-using System;
+using System.Runtime.InteropServices;
namespace System.Security.Cryptography {
// (and more general) one (RijndaelTransform) located in
// RijndaelManaged.cs.
+ [ComVisible (true)]
public sealed class RijndaelManagedTransform: ICryptoTransform, IDisposable {
private RijndaelTransform _st;
//\r
// Copyright 2001 by Matthew S. Ford.\r
// Portions (C) 2002 Motus Technologies Inc. (http://www.motus.com)\r
-// (C) 2004 Novell (http://www.novell.com)
-//\r
-
-//
-// 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
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
+
+using System.Runtime.InteropServices;
\r
namespace System.Security.Cryptography {\r
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public abstract class SHA1 : HashAlgorithm {\r
protected SHA1 ()\r
// Mono must provide those two class for binary compatibility.
// In our case both class are wrappers around a managed internal class SHA1Internal.
+using System.Runtime.InteropServices;
+
namespace System.Security.Cryptography {
internal class SHA1Internal {
}
}
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public sealed class SHA1CryptoServiceProvider : SHA1 {
private SHA1Internal sha;
// Sebastien Pouliot (sebastien@ximian.com)
//
// (C) 2002 Motus Technologies Inc. (http://www.motus.com)
-// (C) 2004 Novell (http://www.novell.com)
-//
-
-//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
+using System.Runtime.InteropServices;
+
namespace System.Security.Cryptography {
// Note:
// Mono must provide those two class for binary compatibility.
// In our case both class are wrappers around a managed internal class SHA1Internal.
-public class SHA1Managed : SHA1 {
+#if NET_2_0
+ [ComVisible (true)]
+#endif
+ public class SHA1Managed : SHA1 {
- private SHA1Internal sha;
+ private SHA1Internal sha;
- public SHA1Managed ()
- {
- sha = new SHA1Internal ();
- }
+ public SHA1Managed ()
+ {
+ sha = new SHA1Internal ();
+ }
- protected override void HashCore (byte[] rgb, int start, int size)
- {
- State = 1;
- sha.HashCore (rgb, start, size);
- }
+ protected override void HashCore (byte[] rgb, int start, int size)
+ {
+ State = 1;
+ sha.HashCore (rgb, start, size);
+ }
- protected override byte[] HashFinal ()
- {
- State = 0;
- return sha.HashFinal ();
- }
+ protected override byte[] HashFinal ()
+ {
+ State = 0;
+ return sha.HashFinal ();
+ }
- public override void Initialize ()
- {
- sha.Initialize ();
+ public override void Initialize ()
+ {
+ sha.Initialize ();
+ }
}
}
-
-}
-
//\r
// Copyright 2001 by Matthew S. Ford.\r
// Portions (C) 2002 Motus Technologies Inc. (http://www.motus.com)\r
-// (C) 2004 Novell (http://www.novell.com)
-//\r
-
-//
-// 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
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
+
+using System.Runtime.InteropServices;
\r
namespace System.Security.Cryptography {\r
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public abstract class SHA256 : HashAlgorithm {\r
public SHA256 () \r
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
+using System.Runtime.InteropServices;
+
namespace System.Security.Cryptography {
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public class SHA256Managed : SHA256 {
private const int BLOCK_SIZE_BYTES = 64;
//\r
// Copyright 2001 by Matthew S. Ford.\r
// Portions (C) 2002 Motus Technologies Inc. (http://www.motus.com)\r
-// (C) 2004 Novell (http://www.novell.com)
-//\r
-
-//
-// 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
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
+
+using System.Runtime.InteropServices;
\r
namespace System.Security.Cryptography {\r
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public abstract class SHA384 : HashAlgorithm {\r
public SHA384 () \r
// (C) 2002
// Implementation translated from Bouncy Castle JCE (http://www.bouncycastle.org/)
// See bouncycastle.txt for license.
-// (C) 2004 Novell (http://www.novell.com)
-//
-
-//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
+using System.Runtime.InteropServices;
namespace System.Security.Cryptography {
+#if NET_2_0
+[ComVisible (true)]
+#endif
public class SHA384Managed : SHA384 {
private byte[] xBuf;
//\r
// Copyright 2001 by Matthew S. Ford.\r
// Portions (C) 2002 Motus Technologies Inc. (http://www.motus.com)\r
-// (C) 2004 Novell (http://www.novell.com)
-//\r
-
-//
-// 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
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
+
+using System.Runtime.InteropServices;
\r
namespace System.Security.Cryptography {\r
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public abstract class SHA512 : HashAlgorithm {\r
public SHA512 () \r
// (C) 2002
// Implementation translated from Bouncy Castle JCE (http://www.bouncycastle.org/)
// See bouncycastle.txt for license.
-// (C) 2004 Novell (http://www.novell.com)
-//
-
-//
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
+using System.Runtime.InteropServices;
namespace System.Security.Cryptography {
+#if NET_2_0
+[ComVisible (true)]
+#endif
public class SHA512Managed : SHA512 {
private byte[] xBuf;
//
// System.Security.Cryptography.SHAConstants.cs
//
-// (C) 2004 Novell (http://www.novell.com)
-//
-
-//
-// 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
namespace System.Security.Cryptography {\r
+#if NET_2_0
+ internal static class SHAConstants {
+#else
internal sealed class SHAConstants {
private SHAConstants ()
{
// Never instantiated.\r
}
-
+#endif
// SHA-256 Constants
// Represent the first 32 bits of the fractional parts of the
// cube roots of the first sixty-four prime numbers
// Sebastien Pouliot <sebastien@ximian.com>
//
// Portions (C) 2002 Motus Technologies Inc. (http://www.motus.com)
-// (C) 2004 Novell (http://www.novell.com)
-//
-
-//
-// 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
// http://www.csharpfriends.com/Members/Main/Classes/get_class.aspx?assembly=mscorlib,%20Version=1.0.3300.0,%20Culture=neutral,%20PublicKeyToken=b77a5c561934e089&namespace=System.Security.Cryptography&class=SignatureDescription
// Those 2 classes are returned by CryptoConfig.CreateFromName and used in XMLDSIG
-using System;
using System.Globalization;
+using System.Runtime.InteropServices;
using System.Security;
namespace System.Security.Cryptography {
+#if NET_2_0
+[ComVisible (true)]
+#endif
public class SignatureDescription {
private string _DeformatterAlgorithm;
//
using System.Globalization;
+using System.Runtime.InteropServices;
using Mono.Security.Cryptography;
namespace System.Security.Cryptography {
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public abstract class SymmetricAlgorithm : IDisposable {
protected int BlockSizeValue;
protected int FeedbackSizeValue;
// Sergey Chaban (serge@wildwestsoftware.com)
//
// (C) 2004 Novell (http://www.novell.com)
-// 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
//
using System.Globalization;
+using System.Runtime.InteropServices;
namespace System.Security.Cryptography {
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public class ToBase64Transform : ICryptoTransform {
private bool m_disposed;
// Sebastien Pouliot <sebastien@ximian.com>
//
// (C) 2002, 2003 Motus Technologies Inc. (http://www.motus.com)
-// 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
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
using System.Globalization;
+using System.Runtime.InteropServices;
using System.Security.Cryptography;
namespace System.Security.Cryptography {
// not free :-(
// http://webstore.ansi.org/ansidocstore/product.asp?sku=ANSI+X9%2E52%2D1998
+#if NET_2_0
+[ComVisible (true)]
+#endif
public abstract class TripleDES : SymmetricAlgorithm {
public TripleDES ()
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
+using System.Runtime.InteropServices;
using Mono.Security.Cryptography;
namespace System.Security.Cryptography {
// not free :-(
// http://webstore.ansi.org/ansidocstore/product.asp?sku=ANSI+X9%2E52%2D1998
+#if NET_2_0
+ [ComVisible (true)]
+#endif
public sealed class TripleDESCryptoServiceProvider : TripleDES {
public TripleDESCryptoServiceProvider ()