1 2 CHANGELOG for Crypt::RSA 3 4-------------------------------------------------------------------------- 5 6 71.98 Jul 08, 2008 8 9 * Precedence bug in Public::write() and Private::write() 10 (http://rt.cpan.org/Public/Bug/Display.html?id=37489) 11 Thanks to HRAFNKELL for reporting this! 12 131.96 Jul 06, 2008 14 15 * Set the version numbers in modules to $Crypt::RSA::Version::VERSIOn 16 171.95 Jul 06, 2008 18 19 * Remove STDERR error output in Crypt::RSA::SS::PSS. 20 (http://rt.cpan.org/Public/Bug/Display.html?id=29048) 21 22 * Allow symmetric cipher specification in Crypt::RSA::Key. 23 (http://rt.cpan.org/Public/Bug/Display.html?id=27929) 24 25 * Fix bug in AUTOLOAD. 26 (http://rt.cpan.org/Public/Bug/Display.html?id=26028) 27 28 * Use Module::Install instead of ExtUtils::MakeMaker 29 30 * Consolidate versioning to module version in Crypt::RSA::Version 31 (which is the reason for the version # jump) 32 33 * "use base" instead of @ISA 34 35 * "use FindBin" instead of the literal "lib" - this is safer. 36 37 381.58 Dec 21, 2006 39 40 * We turn on binmode() on filehandles when reading and writing 41 keys from disk, so allow safe exchange of SSH private keys 42 from Windows and *nix systems. Thanks to Ulisses Gomes 43 <ulisses@ibiz.com.br> for pointing this out. 44 45 * Include a copy of the GPL in the distribution. This addresses 46 bug #18771. (http://rt.cpan.org/Public/Bug/Display.html?id=18771) 47 48 * Removed warnings from t/15-benchmark.t 49 501.57 Oct 20, 2005 51 52 * Updated POD documentation and added POD syntax and coverage 53 tests using Test::Pod and Pod::Coverage. 54 551.56 July 05, 2005 56 57 * Removed references to the mailing list and added support for 58 an optional commercial license. 59 601.55 February 18, 2005 61 62 * Fixed a bug ::DataFormat::i2osp(), wherein there was an encoding problem 63 when the most significant byte is 0x0100. Reported and patched by 64 <jbarkdull@yahoo.com> <rt.cpan.org: Bug #11495> 65 66 * Fixed warnings in t/15-benchmark.t 67 681.51 February 25, 2003 69 70 * In Crypt::RSA::encrypt() and decrypt() added a check to ensure the 71 blocksize is greater than 0. Blocksize can be smaller than 0 if the RSA 72 key modulus is too small for a particular encoding. 73 741.50 January 08, 2003 75 76 * In ::Key::generate() calls to ::Key::Private::write() and 77 ::Key::Public::write() have been fixed. Thanks to 78 Lars Rehe <rehe@mail.desy.de> for pointing out this bug. 79 80 * Removed all /home/vipul/PERL/crypt* from @INC from all modules. 81 82 * Fixed version numbers on a few modules, so CPAN correctly reports the 83 newer modules. 84 85 * Fixed some documentation typos. 86 87 881.48 September 25, 2001 89 90 * POD documentation for ::Key::[Private|Public]. 91 921.47 June 22, 2001 93 94 * ::ES::*::decrypt() won't raise an error when cyphertext is an empty 95 string. Thanks to Roman Semenov for pointing out the bug. 96 97 * Field names Plaintext & Message and Cyphertext & Ciphertext can now be 98 used interchangeably everywhere. 99 1001.46 June 18, 2001 101 102 * encrypt()/decrypt() routines everywhere do a key check before calling 103 octet_len() and die gracefully when passed a bad key. Thanks to 104 Nicolas Huillard for pointing out the bugs. 105 1061.45 June 11, 2001 107 108 * Small fixes in ::Key::Private/Pubic and ::Key::Private pod. Thanks 109 to Eric Kolve for pointing out the bugs. 110 1111.44 May 31, 2001 112 113 * Dirty hack to shut off warnings in t/15-benchmark.t 114 1151.43 May 25, 2001 116 117 * Specified the correct version number of Class::Loader in PREREQ_PM 118 hash of Makefile.PL. 119 120 * ::Key loads ::Key::Private and ::Key::Public by default. 121 1221.42 May 24, 2001 123 124 * Speed optimizations throughout. 125 126 * Documented Crypt::RSA and Crypt::RSA::Key. 127 128 * ::Key::Private::read() will call reveal() if the password is provided 129 at construction. 130 131 * Added support for unencrypted keys to ::Key::Private. 132 133 * ::Key::Private does not convert pari2pv at every STORE(). 134 Tie::EncryptedHash is created explicitely at hide(). 135 136 * Put together ::Key::Private::SSH from Benjamin Trott's patches and 137 wrote ::Key::Public::SSH. ::Key::Private::SSH's CBC encryption is 138 not compatible with SSH yet. 139 140 * Documented the Crypt::RSA error handling mechanism in 141 Crypt::RSA::Errorhandler. 142 143 * Encryption schemes, signature schemes and post processors are now 144 loaded at runtime in Crypt::RSA. Suitable values for these can be 145 specified at object construction. Primary reason for this is to 146 interface with modules not included in the Crypt::RSA bundle. 147 148 * Wrote ::Key::Private::check() and ::Key::Public::check(). Key checks 149 happen automagically in ::Primitives. 150 151 * ::Key::generate() computes dp, dq, u (parameters required for 152 decrypting with CRT) and stores them in the private key. 153 154 * Fixed another bug in ::ES::PKCS1v15, where a greedy regex was slurping 155 up part of the plaintext when plaintext had a null character. 156 157 1581.37 April 17, 2001 159 160 * Moved ::DataFormat::generate_random_octet() to Crypt::Random where it 161 is implemented more efficiently. Modified t/03-random-octet.t to use 162 Crypt::Random. (Crypt::RSA now needs Crypt::Random 1.34+). 163 164 * Fixed a bug in ::ES::PKCS1v15 caused by inclusion of null characters 165 in the padding string. Null chars are used as delimiters in PKCS #1 166 v1.5 encoding. Thanks to Gan�che <gramanoudjame@promonetic.com> 167 for reporting this bug. 168 169 1701.36 April 10, 2001 171 172 * Modified Crypt::RSA::encrypt() to return an error when the keysize is 173 too small for use with the selected scheme. 174 175 * Modified Crypt::RSA ::ES::* and ::SS::* to work with keysizes 176 that are not multiples of 8. 177 178 * Wrote ::DataFormat::octet_len() to computes the octet length of 179 an integer. 180 181 * Wrote exportable ::Debug::debuglevel(). Use debuglevel(1) to turn on 182 debugging. 183 184 1851.34 April 7, 2001 186 187 * Wrote crypt-rsa-interoperablity.pod that contains the structure for a 188 Crypt::RSA interoperability chart. Added an entry for RSAREF 2.0 189 signatures and encryption 190 191 * Support for decryption using the Chinese Remainder Threorum 192 in ::Primitives::decrypt(). Patch by Benjamin Trott 193 <ben@rhumba.pair.com> 194 195 * Identity is now kept unencrypted in ::Key::Private objects 196 197 1981.33 April 6, 2001 199 200 * Wrote ::SS:PKCS1v15 (that implements PKCS #1 v1.5 signatures) and a test 201 for it (t/14-es-pkcs1v15.t) 202 203 * Renamed ::ES::PKCS1_v1_5 to ::ES::PKCS1v15. The underscores were 204 driving me nuts 205 206 * Wrote ::DataFormat::h2osp() - Hex to Octet String Primitive, that 207 converts hex strings/numbers of arbitrary length into octet strings 208 209 * Couple of small changes to ::Debug::debug() 210 211 2121.32 April 5, 2001 213 214 * Wrote ::ES::PKCS1_v1_5 that implements PKCS #1 v1.5 padded encryption, 215 and a test for it (t/13-es-pkcs1v15.t) 216 217 2181.31 April 3, 2001 219 220 * Renamed ::EME::* to ::ES::*. EME (Encoding Method for encryption) was a 221 leftover from an earlier class framework. Renamed ::SSA::* to ::SS::*, 222 since we might have Signature Schemes without Appendix under ::SS::* 223 224 * Changed `P' (parameterization) in ::ES::OAEP to a null string. 225 Strings encrypted with versions < 1.15 will not decrypt. 226 227 * Added versioning support in ::ES::OAEP. Returns the old 228 parameterization string for version < 1.15. So strings encrypted 229 with < 1.15 will decrypt! 230 231 * Wrote t/12-versioning.t, with tests for versioning in ::ES::OAEP. 232 233 * Added versioning support in ::SS::PSS. 234 235 * Numerical parameters of ::Key::Public and ::Key::Private can be 236 assigned perl strings, hex strings, or hex numbers. 237 238 2391.30 March 25, 2001 240 241 * Documented Crypt::RSA methods 242 243 * Added ASCII armour support to Crypt::RSA::encrypt(), decrypt(), sign() 244 and verify() using Convert::ASCII::Armour 245 246 * Crypt::RSA will now work with any encryption/signing scheme as long as 247 they provide the same method interface as Crypt::RSA::EME::OAEP and 248 Crypt::RSA::SSA::PSS 249 250 * Wrote ::EME::OAEP::version() and ::SSA::PSS::version(). The next 251 release will include support for version specific operation in ::EME::* 252 and ::PSS::* 253 254 * Added and corrected documentation for ::EME::OAEP and ::SSA::PSS 255 256 2571.25 March 12, 2001 258 259 * Wrote Crypt::RSA::sign() and Crypt::RSA::verify() 260 261 * Added tests for sign and verify to t/11-wrapper.t 262 263 * Bugfix in Crypt::RSA::EME::OAEP::hash() and mgf() 264 $self was being fed to the digest 265 266 * Bugfix in Crypt::RSA::SSA::PSS::hash() and mgf() 267 268 2691.24 March 11, 2001 270 271 * Bug fix in Crypt::RSA::EME::OAEP::decode() 272 newline in plaintext was causing decode() to return error 273 274 * Wrote Crypt::RSA::encrypt() and Crypt:RSA::decrypt() 275 276 * Wrote a test for Crypt::RSA (t/11-wrapper.t) 277 278 279