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