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