See ChangeLog: Mon Sep 18 16:35:45 CEST 2000 Werner Koch
[gnupg.git] / cipher / ChangeLog
1 Mon Sep 18 16:35:45 CEST 2000  Werner Koch  <wk@openit.de>
2
3         * rndlinux.c (open_device): Loose random device checking.
4         By Nils Ellmenreich.
5
6         * random.c (fast_random_poll): Check ENOSYS for getrusage.
7         * rndunix.c:  Add 2 sources for QNX. By Sam Roberts.
8
9         * pubkey.c (gcry_pk_algo_info): Add GCRYCTL_GET_ALGO_USAGE.
10
11         * rsa.c: Changed the comment about the patent.
12         (secret): Speed up by using the CRT.  For a 2k keys this
13         is about 3 times faster.
14         (stronger_key_check): New but unused code to check the secret key.
15         * Makefile.am: Included rsa.[ch].
16         * pubkey.c: Enabled RSA support.
17         (pubkey_get_npkey): Removed RSA workaround.
18
19 Mon Jul 31 10:04:47 CEST 2000  Werner Koch  <wk@openit.de>
20
21   * pubkey.c: Replaced all gcry_sexp_{car,cdr}_{data,mpi} by the new
22   gcry_sexp_nth_{data,mpi} functions.
23
24 Tue Jul 25 17:44:15 CEST 2000  Werner Koch  <wk@openit.de>
25
26   * pubkey.c (exp_to_key,sexp_to_sig,sexp_to_enc,gcry_pk_encrypt,
27     gcry_pk_decrypt,gcry_pk_sign,gcry_pk_genkey): Changed to work with
28     the new S-Exp interface.
29
30 Mon Jul 17 16:35:47 CEST 2000  Werner Koch  <wk@>
31
32   * random.c (gather_faked): Replaced make_timestamp by time(2) again.
33
34 Fri Jul 14 19:38:23 CEST 2000  Werner Koch  <wk@>
35
36   * md.c (gcry_md_ctl): Support GCRYCTL_{START,STOP}_DUMP.
37
38   * Makefile.am: Never compile mingw32 as module.
39
40   * Makefile.am: Tweaked module build and removed libtool
41
42   * Makefile.am:  Replaced -O1 by -O. Suggested by Alec Habig.
43
44   * elgamal.c (sign): Removed inactive code.
45
46   * rsa.c, rsa.h: New based on the old module version (only in CVS for now).
47   * pubkey.c (setup_pubkey_table): Added commented support for RSA.
48
49   * rndunix.c (waitpid): New. For UTS 2.1.  All by Dave Dykstra.
50   (my_popen): Do the FD_CLOEXEC only if it is available
51   (start_gatherer): Cope with missing _SC_OPEN_MAX
52
53   * rndunix.c: Add some more headers for QNX. By Sam Roberts.
54
55   * rndegd.c (gather_random): Shortcut level 0.
56   * rndunix.c (gather_random): Ditto.
57   * rndw32.c (gather_random): Ditto.
58
59   * rndw32.c: Replaced with code from Cryptlib and commented the old stuff.
60   * rndw32.c: Add some debuging code enabled by an environment variable.
61
62   * random.c (read_seed_file): Binary open for DOSish system
63   (update_random_seed_file): Ditto.
64   * random.c [MINGW32]: Include process.h for getpid.
65   * random.c (fast_random_poll): Add clock_gettime() as fallback for
66   system which support this POSIX.4 fucntion. By Sam Roberts.
67
68   * random.c (read_seed_file): Removed the S_ISLNK test becuase it
69   is already covered by !S_ISREG and is not defined in Unixware.
70   Reported by Dave Dykstra.
71   (update_random_seed_file): Silently ignore update request when pool
72   is not filled.
73
74   * random.c (read_seed_file): New.
75   (set_random_seed_file): New.
76   (read_pool): Try to read the seeding file.
77   (update_random_seed_file): New.
78
79   (read_pool): Do an initial extra seeding when level 2 quality random
80   is requested the first time.  This requestes at least POOLSIZE/2 bytes
81   of entropy.  Compined with the seeding file this should make normal
82   random bytes cheaper and increase the quality of the random bytes
83   used for key generation.
84
85   * random.c (read_pool): Print a more friendly error message in
86   cases when too much random is requested in one call.
87
88   * random.c (fast_random_poll): Check whether RUSAGE_SELF is defined;
89   this is not the case for some ESIX and Unixware, although they have
90   getrusage().
91
92   * primegen.c (generate_elg_prime): All primes are now generated with
93   the lowest random quality level.  Because they are public anyway we
94   don't need stronger random and by this we do not drain the systems
95   entropy so much.
96
97   * primegen.c (register_primegen_progress): New.
98   * dsa.c (register_pk_dsa_progress): New.
99   * elgamal.c (register_pk_elg_progress): New.
100
101   * elgamal.c (wiener_map): New.
102   (gen_k): Use a much smaller k.
103   (generate): Calculate the qbits using the wiener map and
104   choose an x at a size comparable to the one choosen in gen_k
105
106   * rmd160.c (rmd160_get_info): Moved casting to the left side due to a
107   problem with UTS4.3.  Suggested by Dave Dykstra.
108   * sha1.c (sha1_get_info): Ditto.
109   * tiger.c (tiger_get_info): Ditto.
110   * md5.c (md5_get_info): Ditto
111   * des.c (des_get_info): Ditto.
112   * blowfish.c (blowfish_get_info): Ditto.
113   * cast5.c (cast5_get_info): Ditto.
114   * twofish.c (twofish_get_info): Ditto.
115
116 Fri Mar 24 11:25:45 CET 2000  Werner Koch  <wk@openit.de>
117
118         * md.c (md_open): Add hmac arg and allocate space for the pads.
119         (md_finalize): Add HMAC support.
120         (md_copy): Ditto.
121         (md_close): Ditto.
122         (gcry_md_reset): Ditto.
123         (gcry_md_ctl): Ditto.
124         (prepare_macpdas): New.
125
126 Mon Mar 13 19:22:46 CET 2000  Werner Koch  <wk@openit.de>
127
128         * md.c (gcry_md_hash_buffer): Add support for the other algorithms.
129
130 Mon Jan 31 16:37:34 CET 2000  Werner Koch  <wk@gnupg.de>
131
132         * genprime.c (generate_elg_prime): Fixed returned factors which never
133         worked for non-DSA keys.
134
135 Thu Jan 27 18:00:44 CET 2000  Werner Koch  <wk@gnupg.de>
136
137         * pubkey.c (sexp_to_key): Fixed mem leaks in case of errors.
138
139 Mon Jan 24 22:24:38 CET 2000  Werner Koch  <wk@gnupg.de>
140
141         * pubkey.c (gcry_pk_decrypt): Implemented.
142         (gcry_pk_encrypt): Implemented.
143         (gcry_pk_testkey): New.
144         (gcry_pk_genkey): New.
145         (pubkey_decrypt): Made static.
146         (pubkey_encrypt): Ditto.
147         (pubkey_check_secret_key): Ditto.
148         (pubkey_generate): Ditto.
149
150 Mon Jan 24 13:04:28 CET 2000  Werner Koch  <wk@gnupg.de>
151
152         * pubkey.c (pubkey_nbits): Removed and replaced by ...
153         (gcry_pk_get_nbits): this new one.
154
155 Wed Dec  8 21:58:32 CET 1999  Werner Koch  <wk@gnupg.de>
156
157         * dsa.c: s/mpi_powm/gcry_mpi_powm/g
158         * elgamal.c: Ditto.
159         * primegen.c: Ditto.
160
161         * : Replaced g10_opt_verbose by g10_log_verbosity().
162
163         * Makefile.am (INCLUDES): removed intl, add ../gcrypt
164
165 Fri Nov 19 17:15:20 CET 1999  Werner Koch  <wk@gnupg.de>
166
167         * dynload.c (cmp_filenames): New to replaced compare_filename() in
168         module.
169         (register_cipher_extension): Removed the tilde expansion stuff.
170         * rndeg.c (my_make_filename): New.
171
172         * : Replaced header util.h by g10lib.h
173
174         * random.c (gather_faked): Replaced make_timestamp by time(2).
175         Disabled wrning printed with tty_printf.
176         * rndlinux.c (gather_random): Always use fprintf instead of tty_xxx;
177         this should be replaced by a callback function.
178
179         * primegen.c (gen_prime): Use gcry_mpi_randomize.
180         (is_prime): Ditto.
181         * elgamal.c (test_keys): Ditto.
182         * dsa.c (test_keys): Ditto.
183
184         * cipher.c (gcry_cipher_close): Die on invalid handle.
185
186 Mon Nov 15 21:36:02 CET 1999  Werner Koch  <wk@gnupg.de>
187
188         * elgamal.c (gen_k): Use the new random API.
189         (generate): Ditto.
190         * dsa.c (gen_k): Ditto.
191         (generate): Ditto.
192
193 Sat Nov 13 17:44:23 CET 1999  Werner Koch  <wk@gnupg.de>
194
195         * pubkey.c (disable_pubkey_algo): Made static.
196         (gcry_pk_ctl): New.
197
198         * random.c (get_random_bits): Renamed to ...
199         (get_random_bytes): ... this and made static.
200         (gcry_random_bytes): New.
201         (gcry_random_bytes_secure): New.
202         (randomize_buffer): Renamed to ...
203         (gcry_randomize): ...this.
204
205         * md.c (gcry_md_hash_buffer): New.
206
207         * pubkey.c (gcry_pk_algo_info): 4 new commands.
208         (pubkey_get_npkey): Made static.
209         (pubkey_get_nskey): Made static.
210         (pubkey_get_nsig): Made static.
211         (pubkey_get_nenc): Made static.
212
213         * pubkey.c: Removed all G10ERR_xxx.
214         * cipher.c: Changed all GCRYERR_INV_ALGO to GCRYERR_INV_CIPHER_ALGO.
215         * md.c: Changed all GCRYERR_INV_ALGO to GCRYERR_INV_MD_ALGO.
216         * cast5.c (cast_setkey): Changed errocodes to GCRYERR_xxx.
217         * blowfish.c: Ditto.
218         * des.c: Ditto.
219         * twofish.c: Ditto.
220         * dsa.c: Ditto.
221         * elgamal.c: Ditto.
222
223         * g10c.c: Removed
224
225         * cipher.c (gcry_cipher_open): Replaced alloc functions and return NULL
226         if we are out of core.
227         * dynload.c: Replaced all memory allocation functions.
228         * md.c: Ditto.
229         * primegen.c: Ditto.
230         * pubkey.c: Ditto.
231         * random.c: Ditto.
232         * rndw32.c: Ditto.
233         * elgamal.c: Ditto.
234         * dsa.c: Ditto.
235
236 Tue Oct 26 14:10:21 CEST 1999  Werner Koch  <wk@gnupg.de>
237
238         * elgamal.c (sign): Hugh found strange code here. Replaced by BUG().
239
240         * cipher.c: Merged with gcrypt/symapi.c.
241
242         * pubkey.c (string_to_pubkey_algo): Renamed function to ...
243         (gcry_pk_map_name): ... this.
244         (pubkey_algo_to_string): Renamed function to ...
245         (gcry_pk_algo_name): ... this.
246         (gcry_pk_algo_info): New.
247         * pubkey.c: Merged with gcrypt/pkapi.c.
248
249         * md.c (md_reset): Clear finalized; thanks to Ulf Moeller for
250         fixing this bug.
251
252         * md.c: Merged with gcrypt/mdapi.c
253
254 Wed Sep 15 14:39:59 CEST 1999  Michael Roth <mroth@nessie.de>
255
256         * des.c: Various speed improvements: One bit pre rotation
257           trick after initial permutation (Richard Outerbridge).
258           Finished test of SSLeay Tripple-DES patterns.
259
260 Wed Sep 15 16:22:17 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
261
262         * rndw32.c: New.
263
264 Mon Sep 13 10:51:29 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
265
266         * bithelp.h: New.
267         * rmd160.h, sha1.h, md5.h: Use the rol macro from bithelp.h
268
269 Tue Sep  7 16:23:36 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
270
271         * Makefile.am: Fixed seds for latest egcc. By Ollivier Robert.
272
273 Mon Sep  6 19:59:08 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
274
275         * des.c (selftest): Add some testpattern
276
277 Mon Aug 30 20:38:33 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
278
279         * cipher.c (do_cbc_encrypt): Fixed serious bug occuring when not using
280         in place encryption. Pointed out by Frank Stajano.
281
282 Mon Jul 26 09:34:46 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
283
284         * md5.c (md5_final): Fix for a SCO cpp bug.
285
286 Thu Jul 15 10:15:35 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
287
288         * elgamal.c (elg_check_secret_key,elg_encrypt
289         elg_decrypt,elg_sign,elg_verify): Sanity check on the args.
290         * dsa.c (dsa_check_secret_key,dsa_sign,dsa_verify): Ditto.
291
292         * pubkey.c (disable_pubkey_algo): New.
293         (check_pubkey_algo2): Look at disabled algo table.
294         * cipher.c (disable_cipher_algo): New.
295         (check_cipher_algo): Look at disabled algo table.
296
297 Wed Jul  7 13:08:40 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
298
299         * Makefile.am: Support for libtool.
300
301 Fri Jul  2 11:45:54 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
302
303         * dsa.c (gen_k): Changed algorithm to consume less random bytes
304         * elgamal.c (gen_k): Ditto.
305
306         * random.c (random_dump_stats): New.
307
308 Thu Jul  1 12:47:31 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
309
310         * primegen.c, elgamal.c, dsa.c (progess): New and replaced all
311         fputc with a call to this function.
312
313 Sat Jun 26 12:15:59 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
314
315         * rndegd.c (do_write): s/ssize_t/int/ due to SunOS 4.1 probs.
316
317         * cipher.c (do_cbc_encrypt, do_cbc_decrypt): New.
318
319         * dynload.c (HAVE_DL_SHL_LOAD): Map hpux API to dlopen (Dave Dykstra).
320         * Makefile.am (install-exec-hook): Removed.
321
322 Sun May 23 14:20:22 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
323
324         * cipher.c (setup_cipher_table): Enable Twofish
325
326         * random.c (fast_random_poll): Disable use of times() for mingw32.
327
328 Mon May 17 21:54:43 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
329
330         * dynload.c (register_internal_cipher_extension): Minor init fix.
331
332 Tue May  4 15:47:53 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
333
334         * primegen.c (gen_prime): Readded the Fermat test. Fixed the bug
335         that we didn't correct for step when passing the prime to the
336         Rabin-Miller test which led to bad performance (Stefan Keller).
337         (check_prime): Add a first Fermat test.
338
339 Sun Apr 18 10:11:28 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
340
341         * cipher.c (cipher_setiv): Add ivlen arg, changed all callers.
342
343         * random.c (randomize_buffer): alway use secure memory because
344         we can't use m_is_secure() on a statically allocated buffer.
345
346         * twofish.c: Replaced some macros by a loop to reduce text size.
347         * Makefile.am (twofish): No more need for sed editing.
348
349 Fri Apr  9 12:26:25 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
350
351         * cipher.c (cipher_open): Reversed the changes for AUTO_CFB.
352
353         * blowfish.c: Dropped the Blowfish 160 mode.
354         * cipher.c (cipher_open): Ditto.
355         (setup_cipher_table): Ditto.  And removed support of twofish128
356
357 Wed Apr  7 20:51:39 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
358
359         * random.c (get_random_bits): Can now handle requests > POOLSIZE
360
361         * cipher.c (cipher_open): Now uses standard CFB for automode if
362         the blocksize is gt 8 (according to rfc2440).
363
364         * twofish.c: Applied Matthew Skala's patches for 256 bit key.
365
366 Tue Apr  6 19:58:12 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
367
368         * random.c (get_random_bits): Can now handle requests > POOLSIZE
369
370         * cipher.c (cipher_open): Now uses standard CFB for automode if
371         the blocksize is gt 8 (according to rfc2440).
372
373 Sat Mar 20 11:44:21 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
374
375         * rndlinux.c (tty_printf) [IS_MODULE]: Removed.
376
377         * rndegd.c (gather_random): Some fixes.
378
379 Wed Mar 17 13:09:03 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
380
381         * rndegd.c (do_read): New.
382         (gather_random): Changed the implementation.
383
384 Mon Mar  8 20:47:17 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
385
386         * dynload.c (DLSYM_NEEDS_UNDERSCORE): Renamed.
387
388 Fri Feb 26 17:55:41 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
389
390         * md.c: Nearly a total rewrote.
391
392 Wed Feb 24 11:07:27 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
393
394         * cipher.c (context): Fixed alignment
395         * md.c: Ditto.
396
397         * rndegd.c: New
398
399 Mon Feb 22 20:04:00 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
400
401         * rndegd.c: New.
402
403 Wed Feb 10 17:15:39 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
404
405         * Makefile.am: Modules are now figured out by configure
406         * construct.c: New. Generated by configure. Changed all modules
407         to work with that.
408         * sha1.h: Removed.
409         * md5.h: Removed.
410
411         * twofish.c: Changed interface to allow Twofish/256
412
413         * rndunix.c (start_gatherer): Die on SIGPIPE.
414
415 Wed Jan 20 18:59:49 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
416
417         * rndunix.c (gather_random): Fix to avoid infinite loop.
418
419 Sun Jan 17 11:04:33 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
420
421         * des.c (is_weak_key): Replace system memcmp due to bugs
422         in SunOS's memcmp.
423         (des_get_info): Return error on failed selftest.
424         * twofish.c (twofish_setkey): Return error on failed selftest or
425         invalid keylength.
426         * cast5.c (cast_setkey): Ditto.
427         * blowfish.c (bf_setkey): Return error on failed selftest.
428
429 Tue Jan 12 11:17:18 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
430
431         * random.c (random_is_faked): New.
432
433         * tiger.c: Only compile if we have the u64 type
434
435 Sat Jan  9 16:02:23 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
436
437         * rndunix.c (gather_random): check for setuid.
438
439         * Makefile.am: Add a way to staically link random modules
440
441 Thu Jan  7 18:00:58 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
442
443         * md.c (md_stop_debug): Do a flush first.
444         (md_open): size of buffer now depends on the secure parameter
445
446 Sun Jan  3 15:28:44 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
447
448         * rndunix.c (start_gatherer): Fixed stupid ==/= bug
449
450 1998-12-31  Geoff Keating  <geoffk@ozemail.com.au>
451
452         * des.c (is_weak_key): Rewrite loop end condition.
453
454 Tue Dec 29 14:41:47 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
455
456         * random.c: add unistd.h for getpid().
457         (RAND_MAX): Fallback value for Sun.
458
459 Wed Dec 23 17:12:24 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
460
461         * md.c (md_copy): Reset debug.
462
463 Mon Dec 14 21:18:49 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
464
465         * random.c (read_random_source): Changed the interface to the
466         random gathering function.
467         (gather_faked): Use new interface.
468         * dynload.c (dynload_getfnc_fast_random_poll): Ditto.
469         (dynload_getfnc_gather_random): Ditto.
470         * rndlinux.c (gather_random): Ditto.
471         * rndunix.c (gather_random): Ditto.
472
473 Sat Dec 12 18:40:32 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
474
475         * dynload.c (SYMBOL_VERSION): New to cope with system which needs
476         underscores.
477
478         * rndunix.c: Rewrote large parts
479
480 Thu Dec 10 20:15:36 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
481
482         * dynload.c (load_extension): increased needed verbosity level.
483
484         * random.c (fast_random_poll): Fallback to a default fast random
485         poll function.
486         (read_random_source): Always use the faked entroy gatherer if no
487         gather module is available.
488         * rndlinux.c (fast_poll): Removed.
489         * rndunix.c (fast_poll): Removed.
490
491
492 Wed Nov 25 12:33:41 1998  Werner Koch  (wk@isil.d.shuttle.de)
493
494         * rand-*.c: Removed.
495         * rndlinux.c : New.
496         * rndunix.c : New.
497         * random.c : Restructured the interface to the gather modules.
498         (intialize): Call constructor functions
499         (read_radnom_source): Moved to here.
500         * dynload.c (dynload_getfnc_gather_random): New.
501         (dynload_getfnc_fast_random_poll): New.
502         (register_internal_cipher_extension): New.
503         (register_cipher_extension): Support of internal modules.
504
505 Sun Nov  8 17:44:36 1998  Werner Koch  (wk@isil.d.shuttle.de)
506
507         * rand-unix.c (read_random_source): Removed the assert.
508
509 Mon Oct 19 18:34:30 1998  me,,,  (wk@tobold)
510
511         * pubkey.c: Hack to allow us to give some info about RSA keys back.
512
513 Thu Oct 15 11:47:57 1998  Werner Koch  (wk@isil.d.shuttle.de)
514
515         * dynload.c: Support for DLD
516
517 Wed Oct 14 12:13:07 1998  Werner Koch  (wk@isil.d.shuttle.de)
518
519         * rand-unix.c: Now uses names from configure for /dev/random.
520
521 1998-10-10  SL Baur  <steve@altair.xemacs.org>
522
523         * Makefile.am: fix sed -O substitutions to catch -O6, etc.
524
525 Tue Oct  6 10:06:32 1998  Werner Koch  (wk@isil.d.shuttle.de)
526
527         * rand-unix.c (HAVE_GETTIMEOFDAY): Fixed (was ..GETTIMEOFTIME :-)
528         * rand-dummy.c (HAVE_GETTIMEOFDAY): Ditto.
529
530 Mon Sep 28 13:23:09 1998  Werner Koch  (wk@isil.d.shuttle.de)
531
532         * md.c (md_digest): New.
533         (md_reset): New.
534
535 Wed Sep 23 12:27:02 1998  Werner Koch  (wk@isil.d.shuttle.de)
536
537         * tiger.c (TIGER_CONTEXT): moved "buf", so that it is 64 bit aligned.
538
539 Mon Sep 21 06:22:53 1998  Werner Koch  (wk@(none))
540
541         * des.c: Some patches from Michael.
542
543 Thu Sep 17 19:00:06 1998  Werner Koch  (wk@(none))
544
545         * des.c : New file from Michael Roth <mroth@nessie.de>
546
547 Mon Sep 14 11:10:55 1998  Werner Koch  (wk@(none))
548
549         * blowfish.c (bf_setkey): Niklas Hernaeus patch to detect weak keys.
550
551 Mon Sep 14 09:19:25 1998  Werner Koch  (wk@(none))
552
553         * dynload.c (RTLD_NOW): Now defined to 1 if it is undefined.
554
555 Mon Sep  7 17:04:33 1998  Werner Koch  (wk@(none))
556
557         * Makefile.am: Fixes to allow a different build directory
558
559 Thu Aug  6 17:25:38 1998  Werner Koch,mobil,,,  (wk@tobold)
560
561         * random.c (get_random_byte): Removed and changed all callers
562         to use get_random_bits()
563
564 Mon Jul 27 10:30:22 1998  Werner Koch  (wk@(none))
565
566         * cipher.c : Support for other blocksizes
567         (cipher_get_blocksize): New.
568         * twofish.c: New.
569         * Makefile.am: Add twofish module.
570
571 Mon Jul 13 21:30:52 1998  Werner Koch  (wk@isil.d.shuttle.de)
572
573         * random.c (read_pool): Simple alloc if secure_alloc is not set.
574         (get_random_bits): Ditto.
575
576 Thu Jul  9 13:01:14 1998  Werner Koch  (wk@isil.d.shuttle.de)
577
578         * dynload.c (load_extension): Function now nbails out if
579         the program is run setuid.
580
581 Wed Jul  8 18:58:23 1998  Werner Koch  (wk@isil.d.shuttle.de)
582
583         * rmd160.c (rmd160_hash_buffer): New.
584
585 Thu Jul  2 10:50:30 1998  Werner Koch  (wk@isil.d.shuttle.de)
586
587         * cipher.c (cipher_open): algos >=100 use standard CFB
588
589 Thu Jun 25 11:18:25 1998  Werner Koch  (wk@isil.d.shuttle.de)
590
591         * Makefile.am: Support for extensions
592
593 Thu Jun 18 12:09:38 1998  Werner Koch  (wk@isil.d.shuttle.de)
594
595         * random.c (mix_pool): simpler handling for level 0
596
597 Mon Jun 15 14:40:48 1998  Werner Koch  (wk@isil.d.shuttle.de)
598
599         * tiger.c: Removed from dist, will reappear as dynload module
600
601 Sat Jun 13 14:16:57 1998  Werner Koch  (wk@isil.d.shuttle.de)
602
603         * pubkey.c: Major changes to allow extensions. Changed the inteface
604         of all public key ciphers and added the ability to load extensions
605         on demand.
606
607         * misc.c: Removed.
608
609 Wed Jun 10 07:52:08 1998  Werner Koch,mobil,,,  (wk@tobold)
610
611         * dynload.c: New.
612         * cipher.c: Major changes to allow extensions.
613
614 Mon Jun  8 22:43:00 1998  Werner Koch  (wk@isil.d.shuttle.de)
615
616         * cipher.c: Major internal chnages to support extensions.
617         * blowfish.c (blowfish_get_info): New and made all internal
618         functions static, changed heder.
619         * cast5.c (cast5_get_info): Likewise.
620
621 Mon Jun  8 12:27:52 1998  Werner Koch  (wk@isil.d.shuttle.de)
622
623         * tiger.c (transform): Fix for big endian
624
625         * cipher.c (do_cfb_decrypt): Big endian fix.
626
627 Fri May 22 07:30:39 1998  Werner Koch  (wk@isil.d.shuttle.de)
628
629         * md.c (md_get_oid): Add a new one for TIGER.
630
631 Thu May 21 13:24:52 1998  Werner Koch  (wk@isil.d.shuttle.de)
632
633         * cipher.c: Add support for a dummy cipher
634
635 Thu May 14 15:40:36 1998  Werner Koch  (wk@isil.d.shuttle.de)
636
637         * rmd160.c (transform): fixed sigbus - I should better
638         add Christian von Roques's new implemenation of rmd160_write.
639
640 Fri May  8 18:07:44 1998  Werner Koch  (wk@isil.d.shuttle.de)
641
642         * rand-internal.h, rand-unix.c, rand-w32.c, rand_dummy.c: New
643         * random.c: Moved system specific functions to rand-****.c
644
645 Fri May  8 14:01:17 1998  Werner Koch  (wk@isil.d.shuttle.de)
646
647         * random.c (fast_random_poll): add call to gethrtime.
648
649 Tue May  5 21:28:55 1998  Werner Koch  (wk@isil.d.shuttle.de)
650
651         * elgamal.c (elg_generate): choosing x was not correct, could
652         yield 6 bytes which are not from the random pool, tsss, tsss..
653
654 Tue May  5 14:09:06 1998  Werner Koch  (wk@isil.d.shuttle.de)
655
656         * primegen.c (generate_elg_prime): Add arg mode, changed all
657         callers and implemented mode 1.
658
659 Mon Apr 27 14:41:58 1998  Werner Koch  (wk@isil.d.shuttle.de)
660
661         * cipher.c (cipher_get_keylen): New.
662
663 Sun Apr 26 14:44:52 1998  Werner Koch  (wk@isil.d.shuttle.de)
664
665         * tiger.c, tiger.h: New.
666
667 Wed Apr  8 14:57:11 1998  Werner Koch  (wk@isil.d.shuttle.de)
668
669         * misc.c (check_pubkey_algo2): New.
670
671 Tue Apr  7 18:46:49 1998  Werner Koch  (wk@isil.d.shuttle.de)
672
673         * cipher.c: New
674         * misc.c (check_cipher_algo): Moved to cipher.c
675         * cast5.c: Moved many functions to cipher.c
676         * blowfish.c: Likewise.
677
678 Sat Apr  4 19:52:08 1998  Werner Koch  (wk@isil.d.shuttle.de)
679
680         * cast5.c: Implemented and tested.
681
682 Wed Apr  1 16:38:27 1998  Werner Koch  (wk@isil.d.shuttle.de)
683
684         * elgamal.c (elg_generate): Faster generation of x in some cases.
685
686 Thu Mar 19 13:54:48 1998  Werner Koch  (wk@isil.d.shuttle.de)
687
688         * blowfish.c (blowfish_decode_cfb): changed XOR operation
689         (blowfish_encode_cfb): Ditto.
690
691 Thu Mar 12 14:04:05 1998  Werner Koch  (wk@isil.d.shuttle.de)
692
693         * sha1.c (transform): Rewrote
694
695         * blowfish.c (encrypt): Unrolled for rounds == 16
696         (decrypt): Ditto.
697
698 Tue Mar 10 16:32:08 1998  Werner Koch  (wk@isil.d.shuttle.de)
699
700         * rmd160.c (transform): Unrolled the loop.
701
702 Tue Mar 10 13:05:14 1998  Werner Koch  (wk@isil.d.shuttle.de)
703
704         * random.c (read_pool): Add pool_balance stuff.
705         (get_random_bits): New.
706
707         * elgamal.c (elg_generate): Now uses get_random_bits to generate x.
708
709
710 Tue Mar 10 11:33:51 1998  Werner Koch  (wk@isil.d.shuttle.de)
711
712         * md.c (md_digest_length): New.
713
714 Tue Mar 10 11:27:41 1998  Werner Koch  (wk@isil.d.shuttle.de)
715
716         * dsa.c (dsa_verify): Works.
717
718 Mon Mar  9 12:59:08 1998  Werner Koch  (wk@isil.d.shuttle.de)
719
720         * dsa.c, dsa.h: Removed some unused code.
721
722 Wed Mar  4 10:39:22 1998  Werner Koch  (wk@isil.d.shuttle.de)
723
724         * md.c (md_open): Add call to fast_random_poll.
725         blowfish.c (blowfish_setkey): Ditto.
726
727 Tue Mar  3 13:32:54 1998  Werner Koch  (wk@isil.d.shuttle.de)
728
729         * rmd160.c (rmd160_mixblock): New.
730         * random.c: Restructured to start with a new RNG implementation.
731         * random.h: New.
732
733 Mon Mar  2 19:21:46 1998  Werner Koch  (wk@isil.d.shuttle.de)
734
735         * gost.c, gost.h: Removed because they did only conatin trash.
736
737 Sun Mar  1 16:42:29 1998  Werner Koch  (wk@isil.d.shuttle.de)
738
739         * random.c (fill_buffer): removed error message if n == -1.
740
741 Fri Feb 27 16:39:34 1998  Werner Koch  (wk@isil.d.shuttle.de)
742
743         * md.c (md_enable): No init if called twice.
744
745 Thu Feb 26 07:57:02 1998  Werner Koch  (wk@isil.d.shuttle.de)
746
747         * primegen.c (generate_elg_prime): Changed the progress printing.
748         (gen_prime): Ditto.
749
750 Tue Feb 24 12:28:42 1998  Werner Koch  (wk@isil.d.shuttle.de)
751
752         * md5.c, md.5 : Replaced by a modified version of md5.c from
753         GNU textutils 1.22.
754
755 Wed Feb 18 14:08:30 1998  Werner Koch  (wk@isil.d.shuttle.de)
756
757         * md.c, md.h : New debugging support
758
759 Mon Feb 16 10:08:47 1998  Werner Koch  (wk@isil.d.shuttle.de)
760
761         * misc.c (cipher_algo_to_string): New
762         (pubkey_algo_to_string): New.
763         (digest_algo_to_string): New.
764
765