summaryrefslogtreecommitdiff
path: root/beecrypt/docs/api.html
diff options
context:
space:
mode:
Diffstat (limited to 'beecrypt/docs/api.html')
-rw-r--r--beecrypt/docs/api.html133
1 files changed, 0 insertions, 133 deletions
diff --git a/beecrypt/docs/api.html b/beecrypt/docs/api.html
deleted file mode 100644
index 2a9f24216..000000000
--- a/beecrypt/docs/api.html
+++ /dev/null
@@ -1,133 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-
-<HTML>
-<HEAD>
-<LINK REL=StyleSheet HREF="manual.css" TYPE="text/css">
-<TITLE>The BeeCrypt API</TITLE>
-</HEAD>
-<BODY>
-<DL>
-<DT><B>Entropy Sources</B></DT>
-<DD>
-<BR>
-<HR>
-</DD>
-<DT><B>Random Generators</B></DT>
-<DD>
-<P>The following structure is used to hold information describing a
-specific random generator implementation:
-<BR><A NAME="randomGenerator"></A><PRE><CODE CLASS=c>
-typedef struct
-{
- const char* name;
- const unsigned int paramsize;
- const randomGeneratorSetup setup;
- const randomGeneratorSeed seed;
- const randomGeneratorNext next;
- const randomGeneratorCleanup cleanup;
-} randomGenerator;
-</CODE></PRE>
-<P>The following structure is used to work with a specific random
-generator implementation:
-<BR><A NAME="randomGeneratorContext"></A><PRE><CODE CLASS=c>
-typedef struct
-{
- const randomGenerator* rng;
- randomGeneratorparam* param;
-} randomGeneratorContext;
-</CODE></PRE>
-<P>The following functions will operate on this structure:
-<DL>
-<DT><A NAME="randomGeneratorContextInit"></A><CODE CLASS=c>
-void randomGeneratorContextInit(<A HREF="#randomGeneratorContext">randomGeneratorContext</A>* ctxt, const <A HREF="#randomGenerator">randomGenerator</A>* rng);
-</CODE></DT>
-<DD>This function initializes <CODE>ctxt</CODE> by allocating and
-initializing parameters appropriate for <CODE>rng</CODE>.
-</DD>
-<DT><A NAME="randomGeneratorContextFree"></A><CODE CLASS=c>
-void randomGeneratorContextFree(<A HREF="#randomGeneratorContext">randomGeneratorContext</A>* ctxt);
-</CODE></DT>
-<DD>This function cleans up <CODE>ctxt</CODE> and frees its
-allocated parameters.
-</DL>
-<BR>
-<HR>
-</DD>
-<DT><B>Hash Functions</B></DT>
-<DD>
-<BR>
-<HR>
-</DD>
-<DT><B>Keyed Hash Functions</B></DT>
-<DD>
-<BR>
-<HR>
-</DD>
-<DT><B>Block Ciphers</B></DT>
-<DD>
-<BR>
-<HR>
-</DD>
-<DT><B>Multi-Precision Integer routines</B></DT>
-<DD>
-<P>The following structure is used to hold a multi-precision integer:
-<BR><A NAME="mp32number"></A><PRE><CODE CLASS=c>
-typedef struct
-{
- uint32 size;
- uint32* data;
-} mp32number;
-</CODE></PRE>
-<P>The following structure is used for barrett modular reduction operations on multi-precision integers:
-<BR><A NAME="mp32barrett"></A><PRE><CODE CLASS=c>
-typedef struct
-{
- uint32 size;
- uint32* modl;
- uint32* mu;
-} mp32barrett;
-</CODE></PRE>
-<BR>
-<HR>
-</DD>
-<DT><B>Discrete Logarithm Public Key Primitives</B></DT>
-<DD>
-<P>Discrete logarithm operations can be performed in a variety of fields. This API implements discrete logarithms over a prime field, conform with IEEE P1363.
-<P>You can find the exact mathematics in:
-<BLOCKQUOTE>
-<EM>"Handbook of Applied Cryptography"</EM><BR>
-Alfred J. Menezes, Paul C. van Oorschot, Scott A. Vanstone<BR>
-CRC Press
-</BLOCKQUOTE>
-<P>The domain parameters are defined by a prime P, a prime factor Q of (P-1), and a group generator G.
-<P>The following struct is used to hold the discrete logarithm domain parameters:
-<BR><A NAME="dldp_p"></A><PRE><CODE CLASS=c>
-typedef struct
-{
- <A HREF="#mp32barrett">mp32barrett</A> p;
- <A HREF="#mp32barrett">mp32barrett</A> q;
- <A HREF="#mp32number">mp32number</A> r;
- <A HREF="#mp32number">mp32number</A> g;
- <A HREF="#mp32barrett">mp32barrett</A> n;
-} dldp_p;
-</CODE></PRE>
-<P>The struct holds more than the three domain parameters required by IEEE P1363. Some discrete logarithm operations call for a reduction modulo (P-1). Hence we've defined N as (P-1). R is the cofactor of (P-1), so that P-1=N=Q*R, where P and Q are (probable) primes.
-<P>If you save the domain parameters, you don't need to save N, and R, since they can be trivially recomputed.
-<P>The following functions will operate on this structure:
-<DL>
-<DT><A NAME="dldp_pInit"></A><CODE CLASS=c>
-void <A NAME="dldp_pInit">dldp_pInit</A>(<A HREF="#dldp_p">dldp_p</A>* domain);
-</CODE></DT>
-<DT><A NAME="dldp_pFree"></A><CODE>
-void <A NAME="dldp_pFree">dldp_pFree</A>(<A HREF="#dldp_p">dldp_p</A>* domain);
-</CODE></DT>
-<DT><A NAME="dldp_pCopy"></A><CODE>
-void <A NAME="dldp_pCopy">dldp_pCopy</A>(<A HREF="#dldp_p">dldp_p</A>* dest, const <A HREF="#dldp_p">dldp_p</A>* source);
-</CODE></DT>
-</DL>
-<BR>
-<HR>
-</DD>
-</DL>
-</BODY>
-</HTML>