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