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