2003-02-08 Sebastien Pouliot <spouliot@videotron.ca>
[mono.git] / mcs / class / corlib / System.Security.Cryptography / ChangeLog
index fc2553d90d3fd5b5f8d0a8f01bd4e16c6ae81b05..db8fea7da3b7153247934401dc731ac7c3431725 100644 (file)
@@ -1,9 +1,487 @@
+2003-02-08  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * Changes to refer Mono.Math and Mono.Security.Cryptography
+
+2003-02-04  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * CryptoConfig.cs: Added initital support for "machine.config" 
+       (limited to algorithms, not OIDs). Modified CreateFromName to use
+       the fully qualified class names (and removed xmldsig hack). Added
+       algorithm names documented in book ".NET Framework Security".
+
+2003-02-03  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * PasswordDeriveBytes.cs: Finally got the derivation right. The
+       class can now derive keys up to 1000 * HashSize (same limit as MS).
+       * RSAPKCS1SignatureDeformatter.cs: No need to create the hash object
+       in this class - the OID is enough.
+
+2003-02-01  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * AsymmetricSignatureFormatter.cs: Call abstract SetHashAlgorithm
+       when CreateSignature(hash) is called.
+       * CryptoStream.cs: Fixed some issues in constructor.
+       * DSACryptoServiceProvider.cs: Fixed a bug (1 chance in 256) that
+       a signature could be less than 40 bytes (which is invalid).
+
+2003-01-25  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * CryptographicException.cs: Default HResult to CORSEC_E_CRYPTO
+       (0x80131430) as documented.
+       * CryptographicUnexpectedOperationException.cs: Default HResult
+       to CORSEC_E_CRYPTO_UNEX_OPER (0x80131431) as documented.
+
+2003-01-20  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * CipherMode.cs: Added missing [Serializable] to enum.
+       * CspProviderFlags.cs: Added missing [Serializable] to enum.
+       * FromBase64Transform.cs: Added missing [Serializable] to enum.
+       * PaddingMode.cs: Added missing [Serializable] to enum.
+
+2003-01-19  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * CryptoTools.cs: Added internal class BlockProcessor to help
+       implementation of block-based algorithms (like MAC and HMAC).
+       * HMACSHA1.cs: Refactored to remove dependencies on CryptoStream,
+       better constructors and Dispose support.
+       * MACTripleDES.cs: Refactored to reuse new HMACSHA1 stuff, better
+       constructors.
+
+2003-01-18  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * HMACSHA1.cs: Now use KeyBuilder to build the default key.
+
+2003-01-12  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * MACTripleDES.cs: Now working (the problem was with my stream usage
+       which was removed for performance reason).
+       * TripleDES.cs: Fixed key generation (wasn't called and returned
+       null).
+
+2003-01-09  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * RNGCryptoServiceProvider.cs: Changed methods interacting with 
+       the runtime as Internal<MethodName>. This will allow to make the
+       class Windows-compatible by doing a switch at runtime.
+
+2003-01-05  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * CryptoAPITransform.cs: Removed all TODO. This class will not be
+       used by Mono. MS uses it with <algo>CryptoServiceProvider classes 
+       to provide a common ICryptoTransform access to CryptoAPI. 
+
+2003-01-03  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * RC2CryptoServiceProvider.cs: Now about 2 time faster by inlining 
+       methods and changing to UInt16 (instead of UInt32). 
+
+2003-01-02  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * RijndaelManaged.cs: Now 7 (encrypt) to 10 (decrypt) times faster 
+       by removing allocation inside intensively called methods, using pre-
+       calculated tables instead of Mult_GF methods and inlining most methods.
+
+2002-12-31  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * AsymmetricAlgorithm.cs: Removed ValidKeySize (method only present
+       in SymmetricAlgorithm).
+       * DSA.cs: Change ZeroizePrivateKey from protected to internal.
+       * DSACryptoServiceProvider.cs: Added some case where we need to check 
+       for keypairGenerated.
+       * RSA.cs: Change ZeroizePrivateKey from protected to internal.
+       * RSACryptoServiceProvider.cs: Key were never generated with the default
+       (no parameter) constructor. Now checks for keypairGenerated in methods.
+       * SignatureDescription.cs: Added CreateDeformatter in RSAPKCS1SHA1-
+       SignatureDescription to please corcompare (it just call it's ancestor).
+
+2002-12-30  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * CryptoStream.cs: Implemented core. Not sure about many details - 
+       but it run the samples now (#30256).
+       * CryptoStreamMode.cs: Added [Serializable] to enum declaration.
+       * SymmetricAlgorithm.cs: Made some changes required for CryptoStream 
+       and to match more closely MS implementation. Also added little
+       optimizations in TransformBlock.
+
+2002-12-27  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * CryptoTools.cs: New. Shared classes for cryptography. Now
+       includes a KeyBuilder to generate symmetric keys and IV.
+       * DES.cs: Modified Key validation.
+       * DESCryptoServiceProvider.cs: Implemented Key and IV using
+       KeyBuilder.
+       * RC2CryptoServiceProvider.cs: Implemented Key and IV using
+       KeyBuilder (and removed TODO).
+       * RijndaelManaged.cs: Implemented Key and IV using KeyBuilder 
+       (and removed TODO).
+       * SHA384Managed.cs: Changed code to remove compiler warning.
+       * SHA512Managed.cs: Changed code to remove compiler warning.
+       * SymmetricAlgorithm.cs: Removed TODO on IV.
+       * TripleDESCryptoServiceProvider.cs: Implemented Key and IV
+       using KeyBuilder (and removed TODO).
+
+2002-11-20  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * AsymmetricSignatureDeformatter.cs: Added exception handling in
+       VerifySignature (moved from RSAPKCS1SignatureDeformatter).
+       * AsymmetricSignatureFormatter.cs: Added exception handling in
+       CreateSignature (moved from RSAPKCS1SignatureFormatter).
+       * CryptoAPITransform.cs: Removed "= false" assignation from a private
+       member (because this created an unwanted "ghost" constructor) and 
+       modified Dispose declaration.
+       * HashAlgorithm.cs: Removed destructor. Disposing unmanaged 
+       ressources is the responsability of each class (not an abstract class).
+       * RSAPKCS1SignatureDeformatter.cs: Removed a VerifySignature method
+       which was present in the base class AsymmetricSignatureDeformatter.
+       * RSAPKCS1SignatureFormatter.cs: Removed a CreateSignature method
+       which was present in the base class AsymmetricSignatureFormatter.
+       * SHA1Managed.cs: Removed sealed from class declaration. Removed 
+       destructor and Dispose method as class is fully managed.
+       * ToBase64Transform.cs: Added virtual to property CanReuseTransform.
+
+2002-11-17  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * CryptoConfig.cs: Added full classes name for MapNameToOID.
+       * PKCS1.cs: New. Internal class for the various primitives defined
+       in PKCS#1 v.2.1.
+       * PKCS1MaskGenerationFunction.cs: Modified to use PKCS1.cs.
+       * RSA.cs: Added internal class RSAHandler (which implements IHandler
+       interface for MiniParser) to import RSA keypairs from XML strings.
+       * RSACryptoServiceProvider.cs: Crypto implemented using BigInteger. 
+       Key generation is VERY LONG.
+       * RSAOAEPKeyExchangeDeformatter.cs: Completed using PKCS1. Not sure 
+       of the results as this is not available in all versions of Windows.
+       * RSAOAEPKeyExchangeFormatter.cs: Completed using PKCS1. Not sure 
+       of the results as this is not available in all versions of Windows.
+       * RSAPKCS1KeyExchangeDeformatter.cs: Completed using PKCS1.
+       * RSAPKCS1KeyExchangeFormatter.cs: Completed using PKCS1.
+       * RSAPKCS1SignatureDeformatter.cs: Completed using PKCS1.
+       * RSAPKCS1SignatureFormatter.cs: Completed using PKCS1.
+
+2002-11-17  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * MiniParser.cs: Added explicit cast in order to compile with mcs.
+
+2002-11-16  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * AsymmetricAlgorithm.cs: Added internal class AsymmetricParameters
+       (which implements the IReader interface for MiniParser). Corrected
+       Dispose declaration.
+       * BigInteger.cs: New. Internal class for handling BIG integers for 
+       asymmetric crypto (both RSA and DSA). Thanks to Chew Keong TAN !
+       * CryptoConfig.cs: Added XMLDSIG URLs in CreateFromName.
+       Will dynamically load System.Security.dll, when required,
+       to return instance of those classes. Also CryptoConfig can now
+       create any object (e.g. System.IO.MemoryStream) !
+       * DSA.cs: Added internal class DSAHandler (which implements IHandler
+       interface for MiniParser) to import DSA keypairs from XML strings.
+       * DSACryptoServiceProvider.cs: Crypto fully implemented using 
+       BigInteger. Key generation (group) is VERY long.
+       * MiniParser.cs: New. Minimal XML parser by Sergey Chaban. Used to 
+       import keypairs in XML strings.
+       * SignatureDescription.cs: Removed local CreateFromName (to use
+       CryptoConfig - which actually can create anything). Added internal
+       classes DSASignatureDescription and RSAPKCS1SHA1SignatureDescription.
+
+2002-11-15  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * CryptographicUnexpectedOperationException.cs: Forgot it last time!
+       * FromBase64Transform.cs: Added missing virtual to CanReuseTransform.
+       Changed Dispose().
+       * HashAlgorithm.cs: Changed Dispose().
+       * MD5CryptoServiceProvider.cs: Added destructor and Dipose(bool).
+       * PasswordDeriveBytes.cs: Changed some declaration from
+       protected to private.
+       * RC2.cs: Added valid keysize check in EffectiveKeySize.
+       * RC2CryptoServiceProvider.cs: Overriden EffectiveKeySize to match
+       corlib declarations.
+       * RSAOAEPKeyExchangeDeformatter.cs: Changed some declaration from
+       protected to private.
+       * RSAOAEPKeyExchangeFormatter.cs: Changed some declaration from
+       protected to private.
+       * RSAPKCS1KeyExchangeDeformatter.cs: Changed some declaration from
+       protected to private.
+       * RSAPKCS1KeyExchangeFormatter.cs: Changed some declaration from
+       protected to private.
+       * RSAPKCS1SignatureDeformatter.cs: Changed some declaration from
+       protected to private.
+       * RSAPKCS1SignatureFormatter.cs: Changed some declaration from
+       protected to private.
+       * SHA1CryptoServiceProvider.cs: Moved SHA1 code to SHA1Internal.
+       SHA1CryptoServiceProvider now use SHA1Internal. Added Dispose and
+       destructor.
+       * SHA1Managed.cs: New. Use SHA1Internal. Same as 
+       SHA1CryptoServiceProvider but is required for binary compatibility.
+       * SHA256Managed.cs: Changed some declaration from protected to private.
+       * SHA384Managed.cs: Changed some declaration from protected to private.
+       * SHA512Managed.cs: Changed some declaration from protected to private.
+       * SymmetricAlgorithm.cs: Added Clear(), changed Dispose() and added
+       virtual to Dispose(bool).
+       * ToBase64Transform.cs: Added missing virtual to CanReuseTransform.
+       Changed Dispose().
+       * TripleDESCryptoServiceProvider.cs: Added missing sealed to class
+       declaration.
+
+2002-11-03  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * CryptoAPITransform.cs: Added missing CanReuseTransform property,
+       Clear method, destructor and IDisposable support.
+       * CryptographicException.cs: Added missing protected constructor.
+       * CryptographicUnexpectedOperationException.cs: Added missing 
+       protected constructor.
+       * ICryptoTransform.cs: Added missing CanReuseTransform property.
+       * FromBase64Transform.cs: Added missing CanReuseTransform property,
+       Clear method, destructor and IDisposable support.
+       * SymmetricAlgorithm.cs: Implement IDisposable.
+       * ToBase64Transform.cs: Added missing CanReuseTransform property,
+       Clear method, destructor and IDisposable support.
+
+2002-11-02  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * SignatureDescription.cs: Updated class to match unit test results
+       * X509Certificate.cs: REMOVED! Wrong namespace. An almost complete
+       implementation is now in System.Security.Cryptography.X509Certificates
+
+2002-11-01  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * bouncycastle.txt: Bouncy Castle JCE License.
+       * SHA384Managed.cs: Hash implementation based on BouncyCastle JCE.
+       * SHA512Managed.cs: Hash implementation based on BouncyCastle JCE.
+
+2002-10-30  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * DSASignatureDeformatter.cs: Fully implemented - however it 
+       requires a functionnal DSA implementation to work.
+       * DSASignatureFormatter.cs: Fully implemented - however it 
+       requires a functionnal DSA implementation to work.
+
+2002-10-25  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * PasswordDeriveBytes.cs: New. PKCS#5 key derivation (PBKDF1) works up to
+       HashSize length (but MS support longer keys)
+
+2002-10-24  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * RSACryptoServiceProvider.cs: New. Implemented most logic expect crypto 
+       * RSAOAEPKeyExchangeDeformatter.cs: New. Stub.
+       * RSAOAEPKeyExchangeFormatter.cs: New. Stub.
+       * RSAPKCS1KeyExchangeDeformatter.cs: New. Stub.
+       * RSAPKCS1KeyExchangeFormatter.cs: New. 98% implemented but still
+       require RSA.DecryptValue (not supported in MS .NET Framework)
+       * RSAPKCS1SignatureDeformatter.cs: New. Stub.
+       * RSAPKCS1SignatureFormatter.cs: New. Stub.
+
+2002-10-23  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * SymmetricAlgorithm.cs: Fixed CFB mode (do encryption while decrypting!)
+       * TripleDESCryptoServiceProvider.cs: Ajusted for CFB.
+
+2002-10-22  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * RjindaelManaged.cs: Fixed decryption for 192 and 256 bit block size
+
+2002-10-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+       * RC2CryptoServiceProvider.cs: fixed end of lines (changed from \r
+       to \n).
+
+2002-10-20  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * SymmetricAlgorithm.cs: Added better Dispose support
+       * DES.cs: Now only contains the abstract DES class.
+       * DESCryptoServiceProvider.cs: Added the DESTransform class (inherited
+       from SymmetricTransform) based the old DESCore and DESTransformBase code
+       * RC2.cs: Fixed EffectiveKeySize == 0
+       * RC2CryptoServiceProvider.cs: Added the RC2Transform class (inherited
+       from SymmetricTransform) based on the old RC2lImpl code. Unrolled some loops.
+       * RjindaelManaged.cs: Few more optimizations while looking for decrypting bug
+       * TripleDESCryptoServiceProvider.cs: New. Implement TripleDESTransform from 
+       DESTransform (non-optimal but working :-).
+
+2002-10-19  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * SymmetricAlgorithm.cs: Added new class SymmetricTransform to avoid
+       duplicating CipherMode (currently ECB, CBC) and PaddingMode functionalities
+       in every crytographic algorithm implementation.
+       * RijndaelManaged.cs: Added the RjindaelTransform class (inherited
+       from SymmetricTransform) based the old RijndaelImpl / RijndaelController 
+       code. Fixed encryption for block size 192, 256, there is still a problem
+       decrypting block size 192, 256. Unrolled some loops + littl'optimizations
+       * PKCS1MaskGenerationMethod.cs: Removed Array.Reverse in I2OSP to be
+       compatible with MS implementation (however we are now failing the PKCS#1
+       test vector) + added some more checks (null, overflow, ...)
+       * AsymmetricAlgorithm.cs: Commented XMLDocument stuff to end the cyclic
+       dependency (corlib->System.Xml->corlib)
+       * RSA.cs: Commented FromXmlString stuff to end the cyclic dependency
+       * DSA.cs: Commented FromXmlString stuff to end the cyclic dependency
+       * RC2.cs: Create using CryptoConfig
+       * TripleDES.cs: Marked class public. Added LegalKeySizes and LegalBlockSizes
+
+2002-10-14  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * MD5.cs: Create using CryptoConfig, set HashSizeValue, removed TODO.
+       * Rijndael.cs: Create using CryptoConfig. Removed TODO.
+       * RSAParameters.cs: Modulus must be serialized. Removed TODO.
+       * SHA256.cs: Create using CryptoConfig, set HashSizeValue, removed TODO.
+       * SHA384.cs: Create using CryptoConfig, set HashSizeValue, removed TODO.
+       * SHA512.cs: Create using CryptoConfig, set HashSizeValue, removed TODO.
+       * FromBase64Transform.cs: Removed ToString()
+       * ToBase64Transform.cs: Removed ToString()
+       * SymmetricAlgorithm.cs: Create using CryptoConfig, set default Mode and 
+       Padding, added Clear, Dispose
+       * TripleDES.cs: New. Abstract class.
+       * MaskGenerationMethod.cs: New. Abstract class.
+       * PKCS1MaskGenerationMethod.cs: New. Implement PKCS#1 MGF (currently not 
+       compatible with MS implementation - but not sure the bug is mine!).
+
+2002-10-13  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * HashAlgorithm.cs: Added Dispose() to HashAlgorithm because it 
+       inherits ICryptoTransform
+       * KeyedHashAlgorithm.cs: New implementation
+       * HMACSHA1.cs: New (include a generic HMACAlgorithm as internal class)
+       * MACTripleDES.cs: New (missing core implementation on generic MACAlgorithm)
+       * CryptoStream.cs: Added limited functionalities to support HMACSHA1
+
+2002-10-12  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * DSA.cs: changed constructor to public from internal (like MS)
+       * HashAlgorithm.cs: Completed ComputeHash methods
+       * SHA1.cs: Added HashSizeValue = 160
+
+2002-10-12  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * ICryptoTransform.cs: Now inherits from IDisposable
+       * RC2CryptoServiceProvider.cs: Added Dispose() to RC2Impl because it inherits ICryptoTransform
+        * CryptoAPITransform.cs: Added Dispose() to CryptoAPITransform... ICryptoTransform
+        * RijndaelManaged.cs: Added Dispose() to RijndaelController...ICryptoTransform
+        * FromBase64Transform.cs: Added Dispose() to FromBase64Transform...ICryptoTransform
+        * ToBase64Transform.cs: Added Dispose() to ToBase64Transform...ICryptoTransform
+        * DESCryptoServiceProvider.cs: Added Dispose() to DESTransformBase...ICryptoTransform
+
+2002-10-11  Duncan Mak  <duncan@ximian.com>
+
+       * DESCryptoServiceProvider.cs: Removed unnecessary Dispose ().
+
+2002-10-11  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * DES.cs: Create() using CryptoConfig, fix #30256
+       * DESCryptoServiceProvider.cs: fix #30256
+       * RandomNumberGenerator.cs: uncomment in Create(rng) for CryptoConfig
+
+2002-10-10  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * AsymmetricAlgorithm.cs: Inherit from IDisposable, common support from XML import
+       * DSA.cs: FromXmlString() keypair import, Create() using CryptoConfig
+       * RSA.cs: FromXmlString() keypair import, Create() using CryptoConfig
+       * DSACryptoServiceProvider.cs: Added Dispose()
+
+2002-10-09  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * CryptoConfig.cs: New implementation
+
+2002-10-05  Andrew Birkett  <andy@nobugs.org>
+
+       * RC2CryptoServiceProvider.cs: New implementation
+       * RC2.cs: New implementation
+
+2002-09-22  Andrew Birkett  <andy@nobugs.org>
+
+       * RijndaelManaged.cs: Added faster case for multiplication by 2 in GF(8)
+       
+2002-09-22  Andrew Birkett  <andy@nobugs.org>
+
+       * RijndaelManaged.cs: BlockSize now reports size in bytes.
+       * ICryptoTransform.cs: Updated comments - BlockSizes are in bytes, unlike elsewhere.
+
+2002-09-19  Andrew Birkett  <andy@nobugs.org>
+
+       * Rijndael.cs: Create() now gives you a RijndaelManaged object
+       * RijndaelManaged.cs: Added dummy GenerateKey until we have a proper RNG.
+       * SymmetricAlgorithm.cs: Updated comments
+
+2002-09-15  Andrew Birkett  <andy@nobugs.org>
+
+       * RijndaelManaged.cs: Added support for CBC-mode, PKCS7/Zero padding.
+       * SymmetricAlgorithm.cs: IV size must match block size, not key size.  
+         Key property now sets KeySizeValue correctly in bits.
+
+2002-09-11  Andrew Birkett  <andy@nobugs.org>
+
+       * RijndaelManaged.cs: Implemented ECB-mode Rijndael cipher.
+       * Rijndael.cs: Set valid key/block sizes.
+       * SymmetricAlgorithm.cs: Remove throw from ctr so we can instantiate
+         derived classes.  Fixes to key sizes so they are measured in bits.
+       * KeySizes.cs: Updated comments to emphasize that sizes are in bits.
+
+2002-06-29  Martin Baulig  <martin@gnome.org>
+
+       * AsymmetricAlgorithm.cs: Removed a duplicate semicolon to make it compile.
+
+2002-05-19  Martin Baulig  <martin@gnome.org>
+
+       * FromBase64Transform.cs (TransformFinalBlock): The return value of
+       `DoTransform' tells us the number of bytes actually written - if it's
+       smaller than `res', copy it to a smaller array.
+
+2002-02-21  Mark Crichton <crichton@gimp.org>
+
+       * RNGCryptoServiceProvider.cs: New file.
+       * RandomNumberGenerator.cs: Constructor is now marked public.
+
+2002-02-13  Dan Lewis <dihlewis@yahoo.co.uk>
+
+       * DSACryptoServiceProvider.cs, SHA384Managed.cs, SHA512Managed.cs,
+       Rijndael.cs, RSA.cs, RSAParameters.cs : New files (stubs)
+
+Mon Feb 11 13:26:17 CET 2002 Paolo Molaro <lupus@ximian.com>
+
+       * X509Certificates: dummy class.
+
+2002-01-10  Duco Fijma <duco@lorentz.xs4all.nl>
+       * Create (trivial) implementation of RandomNumberGenerator
+
+2002-01-05  Ravi Pratap  <ravi@ximian.com>
+
+       * CryptoAPITransform.cs, DESCryptoProvider.cs : MonoTODO attribute
+       decoration.
+
+       * HashAlgorithm.cs, MD5.cs, SHA1.cs, SHA256.cs, SHA384.cs : Ditto.
+
+       * SHA512.cs, SymmetricAlgorithm.cs, ToBase64Transform.cs, 
+       AsymmetricAlgorithm.cs, CryptoStream.cs, DSA.cs, DSASignatureDeformatter.cs,
+       DSASignatureFormatter.cs, SignatureDescription.cs : Ditto.
+       
+Wed Nov 14 17:04:30 CET 2001 Paolo Molaro <lupus@ximian.com>
+
+       * MD5CryptoServiceProvider.cs, SHA1CryptoServiceProvider.cs,
+       SHA256Managed.cs: CLSCompliant updates.
+
+2001-10-11  Thomas Neidhart <tome@sbox.tugraz.at>
+
+       * CryptoAPITransform.cs: Initial version
+       * CryptoStream.cs: Initial version
+       * CspParameter.cs: Initial version
+       * CspProviderFlags.cs: Initial version
+       * DSA.cs: Initial version
+       * DSAParameters.cs: Initial version
+       * DSASignatureDeformatter.cs: Initial version
+       * DSASignatureFormatter.cs: Initial version
+       * DeriveBytes.cs: Initial version
+
 2001-10-06  Thomas Neidhart <tome@sbox.tugraz.at>
 
-    * CryptographicException.cs: Initial version.
+    * AsymmetricAlgorithm.cs: Inital version
+       * AsymmetricKeyExchangeDeformatter.cs: Initial version
+       * AsymmetricKeyExchangeFormatter.cs: Initial version
+       * AsymmetricSignatureDeformatter.cs: Initial version
+       * AsymmetricSignatureFormatter.cs: Initial version
+       * PaddingMode.cs: Added PaddingMode.None
+       * SignatureDescription.cs: Initial version
+    * CryptographicException.cs: Initial version
        * CryptographicUnknownOperationException.cs: Initial version
-       * SymmetricAlgorithm.cs: Implemented CreateDecryptor and CreateEncryptor
-         methods.
+       * SymmetricAlgorithm.cs: Implemented CreateDecryptor, CreateEncryptor
+         and Create() methods.
        
 2001-08-20  Sergey Chaban <serge@wildwestsoftware.com>