SILC Crypto Toolkit 1.2 Beta1
[crypto.git] / TODO
diff --git a/TODO b/TODO
index f9600f6b31de97cb937e0c40371cad53f3a26575..81a3dcb857ada66d4770c2b130e800c49d96add5 100644 (file)
--- a/TODO
+++ b/TODO
@@ -29,6 +29,8 @@ Crypto Library, lib/silccrypt/
 
  o Global RNG must be changed to use SILC Global API.
 
+ o Global cipher, hash, mac, and pkcs tables must use SILC Global API.
+
  o Add FIPS compliant RNG.
 
  o Implement the defined SilcDH API.  The definition is in
@@ -36,12 +38,16 @@ Crypto Library, lib/silccrypt/
    be accelerated.  Also take into account that it could use elliptic
    curves.
 
+ o Add Elgamal.
+
  o Add ECDSA support.
 
  o Add ECDH support.
 
  o Add PKCS#1 RSAES-OAEP and RSASSA-PSS.
 
+ o Add GCM mode.
+
  o Do GCC vs ICC benchmarks of all key algorithms.
 
  o Add DSA support to SILC public key.
@@ -105,32 +111,16 @@ SKR Library, lib/silcskr/
    file.  Add support for exporting the repository (different formats for
    different key types?).
 
- o Change the entire silc_skr_find API.  Remove SilcSKRFind and just simply
-   add the find constraints as variable argument list to silc_skr_find, eg:
-
-  silc_skr_find(skr, schedule, callback, context,
-               SILC_SKR_FIND_PUBLIC_KEY, public_key,
-               SILC_SKR_FIND_COUNTRY, "FI",
-               SILC_SKR_FIND_USAGE, SILC_SKR_USAGE_AUTH,
-               SILC_SKR_FIND_END);
-
-   NULL argument would be ignored and skipped.
+ o Add find rule AND and OR.  The default is always AND.  Add
+   silc_skr_find_set_rule.
 
- o Add OR logical rule in addition of the current default AND, eg:
+ o Add silc_skr_find_add_search_file that can be used to add a file to
+   search for the public keys.  More than one can be set.  Add support
+   for searching keys from file.
 
-  // Found key(s) MUST have this public key AND this country.
-  silc_skr_find(skr, schedule, callback, context,
-               SILC_SKR_FIND_RULE_AND,
-               SILC_SKR_FIND_PUBLIC_KEY, public_key,
-               SILC_SKR_FIND_COUNTRY, "FI",
-               SILC_SKR_FIND_END);
-
-  // Found key(s) MUST have this public key OR this key context
-  silc_skr_find(skr, schedule, callback, context,
-               SILC_SKR_FIND_RULE_OR,
-               SILC_SKR_FIND_PUBLIC_KEY, public_key,
-               SILC_SKR_FIND_CONTEXT, key_context,
-               SILC_SKR_FIND_END);
+ o Add silc_skr_find_add_search_dir that can be used to add a directory to
+   search for the public keys.  More than one can be set.  Add support
+   for seraching keys from directory.
 
  o SilcStack to SKR API.
 
@@ -138,6 +128,8 @@ SKR Library, lib/silcskr/
 SILC Accelerator Library
 ========================
 
+ o Diffie-Hellman acceleration to SILC Accelerator API.
+
  o Diffie-Hellman software acceleration.
 
  o Hardware acceleration through OCF (OCF-Linux,
@@ -146,6 +138,10 @@ SILC Accelerator Library
  o VIA Padlock support. See http://www.logix.cz/michal/devel/padlock/ and
    Gladman's code.
 
+ o Implement GCM software acceleration.
+
+ o Add hash function acceleration to SILC Accelerator API.
+
  o SILC Accelerator API.  Provides generic way to use different kind of
    accelerators.  Basically implements SILC PKCS API so that SilcPublicKey
    and SilcPrivateKey can be used but they call the accelerators.