forked from winlibs/libmcrypt
-
Notifications
You must be signed in to change notification settings - Fork 0
/
NEWS
346 lines (277 loc) · 12 KB
/
NEWS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
March 08 2003: (version 2.5.7)
- The mcrypt_symb.c file is generated only when needed. This should
fix some problems in systems with incompatible sed.
January 19 2003: (version 2.5.6)
- Fixes in win32 detection and DLL building.
- Fixes for solaris (a symbol was not exported)
- Corrected bug which made algorithm symbols to be inserted
twice in symbol table.
- panama algorithm was removed
December 22 2002: (version 2.5.5)
- Better win32 detection and DLL building.
- Changed some variables names in gost.c to allow compiling
with gcc and K6 optimizations.
- Some buffer overrun checks on input. Patches and suggestions
by Ilia A. <ilia@prohost.org>
- Made the default behaviour to include all algorithms into
the main library, instead of using dynamic modules. Dynamic
loading is disabled by default. The --enable-dynamic-loading flag
can be used in the configure script, to get the old behaviour.
- Some fixes in ECB mode.
August 16 2002: (version 2.5.3)
- The const keyword is now used in the exported functions
- Corrected problem in libltdl's configure script
June 22 2002: (version 2.5.2)
- Fixed bug in the returned IV size of ARCFOUR
- Fixed bug in mcrypt_readdir() which prevented the test programs
to work.
May 30 2002: (version 2.5.1)
- Corrected the license. COPYING.LIB (LGPL) is now included
instead of COPYING (GPL)
Mar 09th 2002: (version 2.5.0)
- Several corrections in stream and block cipher modes.
- Added --disable-dynamic-loading configure option
- The IV modifications in Arcfour and Wake have been disabled
by default.
- Added CTR mode for block ciphers.
- Fixes in nCFB and nOFB modes.
- Added mcrypt_enc_get_state() function.
- Added test for nCFB, CFB, nOFB and CTR with AES
Feb 14th 2002:
- nOFB and nCFB modes can now encrypt and decrypt plaintext
of size less than block size.
Feb 1st 2002: (version 2.4.22)
- Corrected nasty bug in init code
Jan 31 2002: (version 2.4.21)
- Corrected problems in Makefiles
- Minor bug fixes
Jan 24th 2002: (version 2.4.20)
- Corrected bug in mcrypt_module_open()
Dec 15th 2001: (version 2.4.19)
- Cleanups in the code.
Nov 9th 2001: (version 2.4.18)
- Fixed memory leak
Sep 24th 2001: (version 2.4.17)
- Corrected bug in mcrypt_module_get_supported_key_size()
- Removed unneeded strdup declaration.
- Corrected bug in ofb mode (reported by Phillip Oleson)
- Corrected some bugs in configure.in (patch by Phillip Oleson)
Sep 8th 2001: (version 2.4.16)
- Added option to include algorithms and modes into the library
(making possible a static library)
eg. './configure --with-included-algos="rijndael-128 twofish cbc ecb"' will add
rijndael, twofish with cbc and ecb into the library
- Added nCFB mode (experimental)
- Changed mcrypt_strerror() return value to const.
Jul 12th 2001:
- Corrected readdir_r() behavior in Solaris
(Patch by Andrew Libby <alibby@commnav.com>)
June 9th 2001: (version 2.4.15)
- Check if the installed libltdl includes lt_dlmutex_register()
- Fixes in libmcrypt-config script
May 18th 2001: (version 2.4.13)
- Corrects behaviour when an older libltdl is found in the system.
- Updated mcrypt_mutex_register()
May 17th 2001: (version 2.4.12)
- Updated the libltdl library included
- Several fixes in modules
- Added scripts to allow easier and faster library version detection
April 30th 2001: (version 2.4.11)
- Corrected memory leaks in mcrypt_module_close()
March 18th 2001: (version 2.4.10)
- Corrected bugs in blowfish and blowfish-compat
January 23th 2001: (version 2.4.9-beta)
- Due to an endianness handling problem Blowfish algorithm was not compatible
with other implementations. Now it has been corrected. If you want
to access the old algorithm used use the "blowfish-compat" module.
- Fixes in mcrypt_list_algorithms() for some systems. Bugs pointed out by
Jonathan Woolmington <jwool@ind.tansu.com.au>
- Fixes in stream mode.
- mcrypt_generic_init() no longer fails if smaller key is used. It uses
the most appropriate key size of the algorithm and pads with zeros.
- Fixes in wake algorithm (and support for IV).
- IV is now used in arcfour (arcfour-iv is now longer used). Speedups in Arcfour.
- mcrypt_generic_deinit() function added.
January 1st 2001: (version 2.4.8)
- Corrected bug in rijndael-256 (reported by: Sami Farin <sfarin@ratol.fi>)
This makes the algorithm incompatible with previous versions.
October 20th 2000: (version 2.4.6)
- Compiles under win32 using cygwin (with -mno-cygwin)
- Added mcrypt_strerror()
September 18th 2000: (version 2.4.5)
- Updates in the documentation
- Libmcrypt can now be used without libltdl (in systems where libdl is present)
- Added the mcrypt_enc_set_state() function.
- Speedups in the blowfish algorithm
May 12th, 2000: (version 2.4.4)
- Added Panama algorithm
April 3rd, 2000: (version 2.4.2)
- Added missing symbols.
April 2nd, 2000: (version 2.4.1)
- Bugfixes
- Internal changes in mode modules
- Changes in the documentation
March 19th, 2000: (version 2.4.0)
- Corrected bugs in the extra algorithms.
- Libmcrypt is now thread safe without need for posix thread locks.
- Libmcrypt is no longer compatible with 2.2 or 2.3 version.
- Speedups in the library.
- The crypt algorithm has changed. In order for it's output to be compatible
with the unix crypt output, the key must be generated using crypt(3).
This was made in order to remove the key transformation, which was
included in the algorithm.
- The crypt algorithm was renamed to enigma.
- Changed many function's names in order to minimize namespace polution.
View the manpage for more information.
March 4th, 2000: (version 2.3.4)
- Improved POSIX Threads detection by Sascha Schumann
- Arcfour was renamed to arcfour-iv. The arcfour algorithm now does not
support iv (as the original algorithm does).
- Modes for block algorithms are not limited any more to a 256 bit block size.
- Mcrypt 2.2 compatibility functions were added.
- mcrypt_get_algo_key_size(), mcrypt_get_algo_block_size() functions
were added.
February 28th, 2000: (version 2.3.3)
- Some dlsyms were cached causing a 50% increase in speed.
February 27th, 2000:
- A slightly modified version of libmcrypt 2.2.4 was released in order
for mcrypt 2.5.0 to be able to compile against that series of libmcrypt.
February 22, 2000:
- mcrypt_is_block_algorithm_mode(), mcrypt_is_block_mode(),
mcrypt_is_block_algorithm(), functions were added.
- Bugfixes in the mcrypt_module_self_test().
February 8th, 2000:
- Keygen functionality was added to the cvs version of libmhash.
Libmcrypt seems to compile fine.
January 21st, 2000:
- Locks were added to libltdl calls so libmcrypt is still thread safe.
January 20th, 2000: (version 2.3.0)
- Tried to include libltdl. Not succesful yet. It compiles but it does
not work.
- keygen functionality was removed. It will be added to libmhash
http://schumann.cx/mhash
January 13th, 2000:
- Changed the sha-1 algorithm implementation
- mcrypt_get_iv_size now calls the specified mode, not the algorithm
- arcfour was added.
December 12th, 1999:
- Included patches by Steve Underwood, to allow an arbitary number of
streams of encryption.
- Thread locking was changed, in order to allow multiple encryption, and avoid
dead locks.
December 10th, 1999:
- Wake algorithm now supports IV.
December 4th, 1999:
- Changes in modules/modes in order to be thread-safe.
December 2nd, 1999:
- Bug fixes in the panama and xtea algorithms.
- The version of the module now can be checked at run-time (check mcrypt.h)
November 30th, 1999:
- Corrections in the panama algorithm, in order to work fine in big-endian
machines.
November 29th, 1999:
- encrypt() function crypt.c was renamed to __encrypt() in order to compile
in some systems.
- version number is included in the modules.
- mcrypt_list_algorithms(), mcrypt_list_modes() and mcrypt_list_keygen() now
check if the file is an mcrypt module (has the _mcrypt_xxx_version function).
November 28th, 1999:
- MARS was added (as a separate module)
November 26th, 1999:
- mcrypt_perror(int) function was added. It prints the text of an mcrypt
error code.
- Versioning has been changed. The release is no longer included in the library
name.
- Documentation was updated.
November 25th, 1999:
- crypt() and setkey() functions for enigma, were renamed to __crypt() and
__setkey() to keep some libcs happy.
- Corrected typo mistakes in twofish.c.
- Patched wake.c to work in bigendian machines.
- IDEA, RC4, RC6 which were non-free now are in a separate distribution.
November 24th, 1999:
- sdes key generation module was corrected. Now it works fine with
des(1).
November 20th, 1999:
- Mcrypt is now modular. Modes, algorithm, and key generation modules, can
be loaded dynamically.
November 17th, 1999:
- PANAMA stream algorithm was added (experimental).
- WAKE stream algorithm was added (experimental).
November 13th, 1999:
- Blowfish algorithm was changed, it is now compatible with other implementations.
- Accessing algorithms is now different. You do not specify TWOFISH_256, to
access TWOFISH algorithm with 256 bit key, but TWOFISH with keylength of
32 bytes (==256 bits). This is more flexible than the previous API since
you can access more keys.
October 16th, 1999:
- The new API is completed.
- STREAM mode was added.
- RC4 was added.
October 15th, 1999:
- libmcrypt is maintained using CVS.
- Major changes in the internal of the library. Much cleaner code.
October 14th, 1999:
- Serpent was added.
October 10th, 1999:
- Bugfix in sha1.
October 4th, 1999:
- Bugfixes in rc2 and rc6.
- rijndael implementation by Mike Scott was added.
September 29th, 1999:
- Minor bugfixes and optimization in the library. Now it uses less memory.
September 20th, 1999:
- Fixes in RC2, RC6 and SAFER+ code, so they work the same way in
big-endian and little-endian machines.
- Porting of SERPENT, MARS and RIJNDAEL is not ready, they do
not work right in bigendian machines.
- Bugfixes in the tests. Tests failed if one or two algorithms failed.
September 19th, 1999
- SERPENT was added in 128,192,256 key modes.
September 15th, 1999
- MARS and RIJNDAEL were added in 128,192,256 key modes.
- RC6 was splitted to RC6_128, RC6_192 and RC6_256 (the old RC6 is equal to RC6_256)
- RC2 was splitted to RC2_128, RC2_256 and RC2_1024 (the old RC2 is equal to RC2_1024)
September 14th, 1999
- Twofish code was changed. Now it uses Dr Brian Gladman's code.
- RC2 code was changed.
June 26th, 1999
- buffer overflow fixed in lib/mcrypt.c. Pointed out by Don Sutherland <dss@yadda.net>
June 23th, 1999
- RC2 code was cleared.
- RC6 was changed according to the specification. It is RC6 32/20/32.
RC6, SAFER+, LOKI97 and CAST-256 codes are actually Dr Brian Gladman's
code a bit modified for mcrypt.
- shared library version has changed (at last!)
June 22th, 1999
- SAFER+, LOKI97 and CAST-256 Added.
June 15th, 1999 - Version 2.2
- Changes in the xTEA algorithm. Some extra parenthesis made the algorithm
differ from the specification. Pointed out by Lars Nordentoft
<lntech@post9.tele.dk>. Read the README.xtea for more information.
June 12th, 1999 - Version 2.1.1
- Changes in the documentation which was inaccurate.
June 11th, 1999 - Version 2.1
- _mcrypt_ was placed as a prefix to all internal functions so they
do not pollute namespace.
May 29th, 1999
- test suites added
- Blowfish was divided to blowfish-448, -256, -192, -128.
- CBC can now accept IV
- mlock and munlock is used before mallocing and freeing any memory,
thus if such capabilities exist the library guarrantees that no
password is written in the disk (as swap etc.)
- gen_key_md5() was added and gen_key() was renamed to gen_key_sha1()
gen_key() is still defined to be gen_keysha1().
May 26th, 1999 - Version 2.0
- Documentation was incorrect and innacurate. Corrected.
- A #define WORDS_BIGENDIAN 0 was removed from acconfig.h, this
was confusing all the library headers, and thus the library was
useless.
- nbit-ofb mode added. n is the blocksize of the algorithm. Still
experimental.
May 24th, 1999 - Version 1.93
- defined get_block_size to be mcrypt_get_block_size so php3.0.8 compiles ok
May 17th, 1999 - Version 1.9
- gen_key() changed
- libtool support (based on Sascha Schumann's patches)