2006-07-12 Marcus Brinkmann <marcus@g10code.de>
[libgcrypt.git] / TODO
1 What's left to do                                 -*- outline -*-
2
3 * Add more tests.
4
5 * udiv-qrnbd.o should get build as *.lo [HPUX]
6
7 * Allow operation using RSA keys consisting of the OpenSSL list of
8   parameters and allow for a third form where the private Exponent
9   is not given (saves space).
10
11 * Add a warning to the manual, to check that libgcrypt actually has
12   been compiled with thread support when used by a threaded
13   application.
14
15 * write an autoconf test to check whether the linker supports a
16   version script.
17
18 * Make use of the forthcoming visibility attribute.
19
20 * Add attributes to the MPI functions.
21
22 * Write tests for the progress function
23
24 * In case the ac interface will be more popular than the pk interface,
25   the asymmetric ciphers could be changed for convenient interaction
26   with the ac interface (i.e. by using ac's `data sets') and the pk
27   interface could be changed to be a wrapper for the ac interface.
28
29 * cipher/pubkey.c and pubkey implementaions.
30   Don't rely on the secure memory based wiping function but add an
31   extra wiping.
32   
33 * update/improve documentation
34   - it's outdated for e.g. gcry_pk_algo_info.
35   - document algorithm capabilities
36
37 * Use builtin bit functions of gcc 3.4
38
39 * Consider using a daemon to maintain he random pool
40
41   The down side of this is that we can't assume that the random das
42   has always been stored in "secure memory".  And we rely on that
43   sniffing of Unix domain sockets is not possible.  We can implement
44   this simply by detecting a special prefixed random seed name and
45   divert in this case to the daemon.  There are several benefits with
46   such an approach: We keep the state of the RNG over invocations of
47   libgcrypt based applications, don't need time consuming
48   initialization of the pool and in case the entropy collectros need
49   to run that bunch of Unix utilities we don't waste their precious
50   results.
51
52 * Out of memory handler for secure memory shopuld do proper logging
53
54   There is no shortage of standard memory, so logging is most likely
55   possible.
56
57 * signed vs. unsigned.
58   Sync the code with 1.2 where we have fixed all these issues.
59
60
61