2003-07-30 Moritz Schulte <moritz@g10code.com>
[libgcrypt.git] / NEWS
1 Noteworthy changes in version 1.1.42 (unreleased)
2 -------------------------------------------------
3
4  * New function gcry_mpi_dump to help in debugging. 
5
6  * Added alternative interface for asymmetric cryptography.
7
8  * Removed `libgcrypt errno' concept, resulting in some more API
9    changes.
10
11  * Renamed all libgcrypt specific types.
12
13  * Use libgpg-error for error handling.
14
15  * CRC-32, CRC-32 a'la RFC 1510, CRC-24 a'la RFC 2440 is now
16    supported.
17
18  * SHA-256 is now supported.
19
20  * The public RSA exponent can now be specified in key generation. 
21
22  * The random module won't print the "not enough random bytes
23    available" anymore.  A new progress status is issued instead.
24
25  * CBC-MAC for block ciphers is now supported, by using a
26    GCRY_CIPHER_CBC_MAC cipher flag.
27
28  * CTR mode for block ciphers is now supported.
29
30  * RSA blinding is now supported and is used automatically for RSA
31    decryption.  It can be explicitely disabled by using the `no-blinding'
32    symbol in the `flags' S-Expression or by using the
33    GCRY_AC_FLAG_DATA_NO_BLINDING flag when using the ac interface.
34
35  * Interface changes relative to the 1.1.12 release:
36 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
37 GCRY_MPI                        DEPRECATED; Use: gcry_mpi_t
38 GcryMPI                         DEPRECATED; Use: gcry_mpi_t
39 GCRY_SEXP                       DEPRECATED; Use: gcry_sexp_t
40 GcrySexp                        DEPRECATED; Use: gcry_sexp_t
41 GCRY_CIPHER_HD                  DEPRECATED; Use: gcry_cipher_hd_t
42 GcryCipherHd                    DEPRECATED; Use: gcry_cipher_hd_t
43 GCRY_MD_HD                      DEPRECATED; Use: gcry_md_hd_t
44 GcryMDHd                        DEPRECATED; Use: gcry_md_hd_t
45 gcry_error_t                    NEW
46 gcry_err_code_t                 NEW
47 gcry_err_source_t               NEW
48 gcry_err_make                   NEW
49 gcry_error                      NEW
50 gcry_err_code                   NEW
51 gcry_err_source                 NEW
52 gcry_err_code_from_errno        NEW
53 gcry_err_code_to_errno          NEW
54 gcry_err_make_from_errno        NEW
55 gcry_error_from_errno           NEW
56 gcry_strsource                  NEW
57 GCRYERR_{some error code}       REMOVED; Use GPG_ERR_* from libgpg-error instead.
58 gcry_errno                      REMOVED
59 gcry_sexp_canon_len             CHANGED
60 gcry_sexp_build_array           NEW
61 gcry_mpi_scan                   CHANGED: New argument to separate in/out args.
62 gcry_mpi_print                  CHANGED: Ditto.
63 gcry_mpi_dump                   NEW
64 gcry_cipher_open                CHANGED
65 gcry_cipher_reset               NEW
66 gcry_cipher_register            NEW
67 gcry_cipher_unregister          NEW
68 gcry_cipher_list                NEW
69 gcry_cipher_algo_keylen         REPLACED macro with function.
70 gcry_cipher_algo_blklen         REPLACED macro with function.
71 gcry_pk_register                NEW
72 gcry_pk_unregister              NEW
73 gcry_pk_list                    NEW
74 gcry_pk_decrypt                 ENHANCED: Allows flag to return complete S-expression.
75 gcry_md_open                    CHANGED
76 gcry_md_copy                    CHANGED
77 gcry_md_is_enabled              NEW
78 gcry_md_is_secure               NEW
79 gcry_md_register                NEW
80 gcry_md_unregister              NEW
81 gcry_md_list                    NEW
82 gcry_ac_data_t                  NEW
83 gcry_ac_key_t                   NEW
84 gcry_ac_key_pair_t              NEW
85 gcry_ac_handle_t                NEW
86 gcry_ac_key_spec_rsa_t          NEW
87 gcry_ac_data_new                NEW
88 gcry_ac_data_destroy            NEW
89 gcry_ac_data_set                NEW
90 gcry_ac_data_copy               NEW
91 gcry_ac_data_length             NEW
92 gcry_ac_data_get_name           NEW
93 gcry_ac_data_get_index          NEW
94 gcry_ac_data_clear              NEW
95 gcry_ac_open                    NEW
96 gcry_ac_close                   NEW
97 gcry_ac_key_init                NEW
98 gcry_ac_key_pair_generate       NEW
99 gcry_ac_key_pair_extract        NEW
100 gcry_ac_key_data_get            NEW
101 gcry_ac_key_test                NEW
102 gcry_ac_key_get_nbits           NEW
103 gcry_ac_key_get_grip            NEW
104 gcry_ac_key_destroy             NEW
105 gcry_ac_key_pair_destroy        NEW
106 gcry_ac_data_encrypt            NEW
107 gcry_ac_data_decrypt            NEW
108 gcry_ac_data_sign               NEW
109 gcry_ac_data_verify             NEW
110 gcry_ac_id_to_name              NEW
111 gcry_ac_name_to_id              NEW
112 gcry_handler_progress_t         NEW
113 gcry_handler_alloc_t            NEW
114 gcry_handler_secure_check_t     NEW
115 gcry_handle_realloc_t           NEW
116 gcry_handler_free_t             NEW
117 gcry_handler_no_mem_t           NEW
118 gcry_handler_error_t            NEW
119 gcry_handler_log_t              NEW
120 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
121
122 Noteworthy changes in version 1.1.12 (2003-01-20)
123 -------------------------------------------------
124
125  * gcry_pk_sign, gcry_pk_verify and gcry_pk_encrypt can now handle an
126    optional pkcs1 flags parameter in the S-expression.  A similar flag
127    may be passed to gcry_pk_decrypt but it is only syntactically
128    implemented.
129
130  * New convenience macro gcry_md_get_asnoid.
131
132  * There is now some real stuff in the manual.
133
134
135 Noteworthy changes in version 1.1.11 (2002-12-21)
136 -------------------------------------------------
137
138  * Don't export internal symbols anymore (currently only for GNU systems)
139
140  * New algorithm: MD4
141
142  * Implemented ciphertext stealing.
143
144  * Smaller bugs fixes and a few new OIDs.
145
146  * Interface changes relative to the 1.1.8 release:
147 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
148 gcry_cipher_cts                   NEW
149 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
150
151
152 Noteworthy changes in version 1.1.10 (2002-09-20)
153 -------------------------------------------------
154
155  * Fixed shared library builds for i386, PPC and Sparc.
156
157  * Added simple benchmark tool.
158
159  * Replaced the internal mutexes by code which automatically adapts to
160    the used threading library.  Currently Pth and Pthread are
161    supported.  For non-ELF systems the GNU toolchain is now required..
162
163  * Added untested support to build Windows DLLs.
164
165 Noteworthy changes in version 1.1.9 (2002-08-23)
166 ------------------------------------------------
167
168  * Support for plain old DES.
169
170
171 Noteworthy changes in version 1.1.8 (2002-06-25)
172 ------------------------------------------------
173
174  * Minor cleanups and exported a few new functions.
175
176  * Interface changes relative to the 1.1.7 release:
177 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
178 gcry_mpi_div                      NEW
179 gcry_mpi_mod                      NEW
180 gcry_mpi_invm                     NEW
181 gcry_mpi_swap                     NEW
182 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
183
184 Noteworthy changes in version 1.1.7 (2002-05-21)
185 ------------------------------------------------
186
187 * Libgcrypt is now distributed under the terms of the GNU Lesser
188   General Public License; see the README file for details.    
189   
190 * It is possible to use libgcrypt w/o intialized secure memory.
191
192 * Libgcrypt should now be thread safe after the initialization.
193   gcry_control (GCRYCRL_INITIALIZATION_FINISHED,NULL,0) should have
194   been called before creating additional threads.
195
196  * Interface changes relative to the 1.1.6 release:
197 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
198 GCRYCTL_DISABLE_INTERNAL_LOCKING  NEW
199 GCRYCTL_DISABLE_SECMEM            NEW
200 GCRYCTL_INITIALIZATION_FINISHED   NEW
201 GCRYCTL_INITIALIZATION_FINISHED_P NEW
202 GCRYCTL_ANY_INITIALIZATION_P      NEW
203 gcry_strdup                       NEW
204 gcry_sexp_create                  NEW
205 gcry_sexp_new                     NEW
206 gcry_set_progress_handler         NEW
207 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
208
209 Noteworthy changes in version 1.1.6 (2002-02-07)
210 ------------------------------------------------
211
212   * Enhanced the S-expression conversion functions.
213         
214 Noteworthy changes in version 1.1.5 (2001-12-18)
215 ------------------------------------------------
216
217   * gcry_{cipher,md}_map_name are now able to map stringified object IDs.
218
219   * New functions gcry_sexp_canon_len and gcry_cipher_mode_from_oid.
220
221   * Closed some memory leaks.
222
223
224 Noteworthy changes in version 1.1.4 (2001-08-03)
225 ------------------------------------------------
226
227   * Arcfour does now work.                   
228
229   * Some minor fixes.
230
231   * Added a first test program
232
233   * Migrated to autoconf 2.52.
234
235
236 Noteworthy changes in version 1.1.3 (2001-05-31)
237 ------------------------------------------------
238
239   * First release of Libgcrypt which is a result of splitting GnuPG
240     into into libgcrypt and GnuPG.
241
242
243 Copyright 2001, 2002 Free Software Foundation, Inc.
244
245 This file is free software; as a special exception the author gives
246 unlimited permission to copy and/or distribute it, with or without
247 modifications, as long as this notice is preserved.
248
249 This file is distributed in the hope that it will be useful, but
250 WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
251 implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.