2004-05-07 Sebastien Pouliot <sebastien@ximian.com>
[mono.git] / mcs / class / corlib / System.Security.Cryptography / ChangeLog
index 11cf671d171a433bcc4e5f272d7640fadd0e015f..d2da5f523f8a785b8d3862d25918aaed95132ab0 100644 (file)
@@ -1,5 +1,288 @@
+2004-05-07  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * CipherMode.cs: Moved XML comments to monodoc.
+       * CryptoConfig.cs: Changed Array.Copy to Buffer.BlockCopy.
+       * CryptoStream.cs: Changed Array.Copy to Buffer.BlockCopy.
+       * DSA.cs: Changed Array.Copy to Buffer.BlockCopy.
+       * ICryptoTransform.cs: Moved XML comments to monodoc.
+       * PasswordDeriveBytes.cs: Changed Array.Copy to Buffer.BlockCopy.
+       * FromBase64Transform.cs: Moved XML comments to monodoc.
+       * ToBase64Transform.cs: Input block may be smaller than a full block
+       when calling TransformFinalBlock (fix 2 CryptoStream unit tests).
+
+2004-05-06  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * RSAOAEPKeyExchangeDeformatter.cs: Fixed wrt completed unit tests.
+       * RSAOAEPKeyExchangeFormatter.cs: Fixed wrt completed unit tests.
+       * RSAPKCS1KeyExchangeDeformatter.cs: Fixed wrt completed unit tests.
+       Added globalization to exceptions.
+       * RSAPKCS1KeyExchangeFormatter.cs: Fixed wrt completed unit tests.
+       * RSAPKCS1SignatureDeformatter.cs: Fixed wrt completed unit tests.
+       Added globalization to exceptions.
+       * RSAPKCS1SignatureFormatter.cs: Fixed wrt completed unit tests.
+       Added globalization to exceptions.
+       
+2004-05-06  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * RC2.cs: Fixed KeySize to change it's value and the EffectiveKeySize
+       when the key is changed.
+       * RC2CryptoServiceProvider.cs: Added globalization to exceptions. 
+       Fixed the KeySize must be equal with EffectiveKeySize to match MS 
+       implementation.
+       * Rijndael.cs: Source clean up.
+       * RijndaelManaged.cs: Moved XML comments to monodoc. Added 
+       globalization to exceptions. 
+       * RNGCryptoServiceProvider.cs: Removed TODO and documented them in
+       mono doc. Now call runtime when a seed is provided.
+       * RSA.cs: Added globalization to exceptions. Removed check for 
+       <RSAKeyValue> as it is not checked by MS implementation.
+       * SHA1.cs: Moved XML comments to monodoc.
+       * SHA1CryptoServiceProvider.cs: Moved XML comments to monodoc. Removed
+       CLSCompliance attributes from private fields. 
+       * SHA256.cs: Moved XML comments to monodoc.
+       * SHA256Managed.cs: Moved XML comments to monodoc. Removed 
+       CLSCompliance attributes from   private fields.
+       * SHA384.cs: Moved XML comments to monodoc.
+       * SHA512.cs: Moved XML comments to monodoc.
+       * SignatureDescription.cs: Moved XML comments to monodoc. Added 
+       globalization to exceptions. Removed TODO and added notes to monodoc.
+       * SymmetricAlgorithm.cs: Moved XML comments to monodoc. Added 
+       globalization to exceptions.
+       * ToBase64Tranform.cs: Added missing exception handling. Moved XML 
+       comments to monodoc.
+       * TripleDES.cs: Added globalization to exceptions.
+       * TripleDESCryptoServiceProvider.cs: Changed Array.Copy to 
+       Buffer.BlockCopy. Zeroize decrypted data.
+
+2004-05-05  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * HashAlgorithm.cs: Moved XML comments to monodoc. Added globalization
+       to exceptions.
+       * KeyedHashAlgorithm.cs: Added globalization to exceptions.
+       * KeySizes.cs: Moved XML comments to monodoc.
+       * MaskGenerationMethod.cs: Source clean up.
+       * MD5.cs: Moved XML comments to monodoc.
+       * MD5CryptoServiceProvider.cs: Removed CLSCompliance attributes from
+       private fields. Changed constants from enum to array. Zeroize data on
+       Dispose.
+       * PaddingMode.cs: Moved XML comments to monodoc.
+       * PasswordDeriveBytes.cs: Added globalization to exceptions. Removed 
+       TODO and documented as "not supported" in MonoDoc.
+       * RandomNumberGenerator.cs: Source clean up.
+
+2004-05-05  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * DSACryptoServiceProvider.cs: Added globalization to exceptions.
+       * HMACSHA1.cs: Cleanup.
+       * SHA1CryptoServiceProvider.cs: Removed unused private methods.
+       * SHA1Managed.cs: Removed unused private methods.
+       * SHA384Managed.cs: Don't zeroize buffer on first initialization.
+       * SHA512Managed.cs: Don't zeroize buffer on first initialization.
+       
+2004-05-05  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * Base64Constants.cs: New. Convert code into tables for better base64
+       performance.
+       * FromBase64Transform.cs: Updated to use the new tables. Source code
+       cleanup.
+       * SHA256Managed.cs: Updated to use shared constants.
+       * SHA384Managed.cs: Updated to use shared constants.
+       * SHA512Managed.cs: Updated to use shared constants.
+       * SHAConstants.cs: New. Shared constants for SHA implementations.
+       * ToBase64Transform.cs: Updated to use the new tables. Added 
+       globalization. Commented finalizer as it isn't required in this case.
+
+2004-05-03  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * CryptoConfig.cs: Specify version and public key token when loading
+       System.Security.dll for XML Digital Signature classes.
+
+2004-04-29 Ben Maurer  <bmaurer@users.sourceforge.net>
+
+       * DES.cs:
+       * DESCryptoServiceProvider.cs:
+       * RC2CryptoServiceProvider.cs:
+       * RijndaelManaged.cs:
+       * SHA384Managed.cs:
+       * SHA512Managed.cs:
+       * ToBase64Transform.cs:
+       Readonly/Constify.
+
+2004-04-29  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * DES.cs: Removed redundant weak/semi-weak key check in Key property.
+       * DESCryptoServiceProvider.cs: Implementation already had 100% 
+       coverage.
+
+2004-04-28  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * DSACryptoServiceProvider.cs: Changed delegate signature.
+       * RSACryptoServiceProvider.cs: Changed delegate signature.
+
+2004-04-28  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * DSA.cs: Moved XML comments to monodoc. Added globalization to 
+       exceptions. Already had 100% coverage.
+       * DSAParameters.cs: Moved XML comments to monodoc.
+       * DSASignatureDeformetter.cs: Added globalization to exceptions. 
+       Limited catch to expected exception. Already had 100% coverage.
+       * DSASignatureFormatter.cs: Added globalization to exceptions. Limited
+       catch to expected exception. Already had 100% coverage.
+
+2004-04-26  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * AsymmetricAlgorithm.cs: Moved XML comments to monodoc. Added 
+       globalization to exceptions. Already had 100% coverage.
+       * AsymmetricKeyExchangeDeformatter.cs: Moved XML comments to monodoc.
+       Already had 100% coverage.
+       * AsymmetricKeyExchangeFormatter.cs: Moved XML comments to monodoc.
+       Already had 100% coverage.
+       * AsymmetricSignatureDeformatter.cs: Moved XML comments to monodoc.
+       Already had 100% coverage.
+       * AsymmetricSignatureFormatter.cs: Moved XML comments to monodoc.
+       Already had 100% coverage.
+       * CryptoAPITransform.cs: Unused by Mono (added note to monodoc).
+       Class will stay at 0% coverage.
+       * CryptoConfig.cs: Added globalization to exceptions. 98% coverage.
+       * CryptographicException.cs: Added globalization to exceptions. 
+       Already had 100% coverage.
+       * CryptoStream.cs: Added globalization to exceptions. Removed (unused)
+       field _previousBlock to get 100% coverage.
+       * CspParameters.cs: Moved XML comments to monodoc. Already had 100% 
+       coverage.
+       * CspProviderFlags.cs: Moved XML comments to monodoc.
+       * DeriveBytes.cs: Moved XML comments to monodoc. Already had 100% 
+       coverage.
+       * DES.cs: Fixes to weak/semi-weak checking to pass new unit tests (it
+       requires to set odd parity on keys before comparing).
+
+2004-04-25  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
+
+       * DSACryptoServiceProvider.cs: Call invariant compare
+
+2004-04-08  Bernie Solomon  <bernard@ugsolutions.com>
+
+       * DSA.cs: Use Mono.Security.BitConverterLE
+
+2004-04-05  Bernie Solomon  <bernard@ugsolutions.com>
+
+       * DESCryptoServiceProvider.cs: Use BitConverter.IsLittleEndian
+       to fix for big endian machines.
+
+2004-03-10  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * FromBase64Transform.cs: Now throws ObjectDisposedException and
+       return true for CanReuseTransform (as MS implementation).
+
+2004-03-09  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DSA.cs : fixed incorrectly modified catch for debugging.
+
+2004-03-09  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * DSA.cs : In ToXmlString(), sequence of Seed and PgenCounter is
+         optional.
+
+2004-02-26  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * DES.cs: Same fix as for SymmetricAlgorithm (get_Key is 
+       overridden to check for weak keys). Also ensured that no weak keys
+       would be generated.
+       * SymmetricAlgorithm.cs: Return a copy of the key (and IV) so it 
+       doesn't get destroyed when dispose is called (in this case the key
+       zeroization is the caller's responsability). Match MS implementation.
+       * TripleDES.cs: Same fix as for SymmetricAlgorithm (get_Key is 
+       overridden to check for weak keys). Fix bugzilla #54868.
+
+2004-02-12  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * CryptoStream.cs: Remove the _blockSize assumptions because some 
+       Transforms could be different on Input/Output. Added a special case
+       for cascading CryptoStreams in FlushFinalBlock.
+
+2004-02-09  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * DSACryptoServiceProvider.cs: Fixed support for key pair persistence.
+       It now requires (like MS) to call Clear to delete an existing 
+       container. PersistKeyInCsp default value also changes if a 
+       CspParameters is supplied (or not) to the constructor.
+       * RSACryptoServiceProvider.cs: Same fixes as DSA.
+       * SymmetricAlgorithm.cs: Reintroduced the patch from 2003-08-24 to fix
+       IV length exception for stream ciphers (e.g. RC4). I overwrote it by
+       accident some time ago :(
+
+2004-02-08  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * HashAlgorithm.cs: Changed the ComputeHash(Stream) method to (a) not
+       allocate the whole stream memory (big memory saver as suggested by
+       Peter Williams in bugzilla entry #54022) and (b) to never use Stream.
+       Length and Stream.Position because they aren't implemented for every
+       stream class (similar issue to the CryptoStream patch).
+       * MD5CryptoServiceProvider.cs: Moved a buffer allocation from 
+       ProcessBlock to constructor to reduce memory allocation. Optimization
+       suggested by Peter Williams in bugzilla entry #54024.
+
+2004-02-06  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * DSACryptoServiceProvider.cs: Added keypair persistence support.
+       Corrected dispose so object cannot be disposed multiple time. Added
+       PublicOnly property (as internal before 1.2, public after).
+       * RSACryptoServiceProvider.cs: Added keypair persistence support.
+       Corrected dispose so object cannot be disposed multiple time. Added
+       PublicOnly property (as internal before 1.2, public after).
+       * SymmetricAlgorithm.cs: Removed class SymmetricTransform from file
+       and moved it to Mono.Security.Cryptography namespace. The transform
+       class will also be included in Mono.Security assembly.
+
+2004-02-06  David Sheldon <dave-mono@earth.li>
+
+  * FromBase64Transform.cs: Improved code layout to match coding style, 
+   and removed the Byte comparison with -1.
+
+2004-02-04  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * CryptoStream.cs: New implementation - should fix all known issues
+       with the class (Read/WriteByte, reading by non-multiple of the
+       block size, using Stream.Length and Stream.Position ...).
+       * SymmetricAlgorithm.cs: Return an empty array when there's nothing
+       to return (required for CryptoStream to work).
+
+2004-01-31  David Sheldon      <dave-mono@earth.li>
+
+       * FromBase64Transform.cs: Removed needless catch and rethrow.
+
+2004-01-31  David Sheldon      <dave-mono@earth.li>
+
+       * FromBase64Transform.cs: Fixes to what happens if a character in the
+       input stream is not in the lookup table. IndexOutOfRangeException was 
+       wrong.
+
+2003-12-15  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * CryptoConfig.cs: Now use internal Environment.GetMachineConfigPath()
+       to find machine.config. Initialization removed from static constructor
+       to speed up 98% of software that do not requires it.
+       * SymmetricAlgorithm.cs: Fixed padding for None and Zeros modes. Unit
+       tests for padding modes are now in PaddingModeTest.cs.
+
+2003-12-10  Zoltan Varga  <vargaz@freemail.hu>
+
+       * HMAC.cs: Fix compilation warnings.
+
+2003-12-10  Mark Crichton  <crichton@gimp.org>
+
+       * RNGCryptoServiceProvider.cs: Removed icall to GetNonZeroBytes. Now
+       done with managed code.
+
+2003-11-13  Sebastien Pouliot  <spouliot@videotron.ca>
+
+       * ProtectedData.cs: Added exceptions - core is still TODO.
+       * ProtectedMemory.cs: Added exceptions - core is still TODO.
+
 2003-11-11  Sebastien Pouliot  <spouliot@videotron.ca>
 
+       * Rfc2898DeriveBytes.cs: Now handle resets and keys longer than 160 
+       bits (HMACSHA1 block size). Removed TODO.
        * SymmetricAlgorithm.cs: Fixed decryption when inputOffset > 0.
        [#50826].