gnu-crypto-discuss
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [GNU Crypto] Documentation


From: Raif S. Naffah
Subject: Re: [GNU Crypto] Documentation
Date: Mon, 26 May 2003 06:59:57 +1000
User-agent: KMail/1.5.1

-----BEGIN PGP SIGNED MESSAGE-----
Hash: RIPEMD160

hello Barry,

On Mon, 26 May 2003 05:23 am, baz wrote:
> Hi,
>
> Thanks for the replies. The documentation that exists certainly goes
> some way towards filling in the blanks from what I've gleaned from
> the source code.
>
> Actually, I know there are some gaps, but what documentation there is
> excellent as it is brief and to the point. How about putting a link
> to it on the home page?

hopefully this will be part of the next release.  so is updating the 
home page itself to reflect the addition of new algorithms (ie. Tiger) 
and the new APIs.


> Also I like the idea behind the assembly stuff, as that's exactly
> what I started doing when I first downloaded the library. I think
> what any software designer wants is a very easy to use layer to
> specify any number of transformations and an equally easy way to turn
> this into a ready to use cipher.
>
> How about renaming 'Stage.getInstace'?  :-)

to what?  once the Cacscade and Assembly are documented, it should 
become easy(ier) to have a clear mental image of what the building 
blocks are --and the names then would make more sense.  (this is the 
theory at least :-)


> Lastly, there is nothing in the library for generating keys. Correct
> me if I'm wrong but I thought that not all encryption schemes use an
> entirely random sequence of bits for their keys. Don't some require a
> certain parity?

true.  certain algorithms exhibit certain "weakness" with some specific 
key values (i.e. weak and semi-weak keys); e.g. DES.  currently, the 
library does not ensure/enforce such constraints.  this will be 
addressed in future versions.

other (currently) missing features are:

* encryption/decryption API for asymetric key block ciphers,
* encryption/decryption API for stream ciphers.


> Many thanks once again,
> barry


you're welcome + cheers;
rsn


> ----- Original Message -----
> From: "Raif S. Naffah" <address@hidden>
> To: "Casey Marshall" <address@hidden>; "baz"
> <address@hidden>
> Cc: "GNU Crypto" <address@hidden>
> Sent: Sunday, May 25, 2003 2:29 AM
> Subject: Re: [GNU Crypto] Documentation
>
> On Sat, 24 May 2003 01:41 pm, Casey Marshall wrote:
> > On Fri, May 23, 2003 at 10:27:28PM +0100, baz wrote:
> > > ...
> > > Can someone tell me if there exists some basic design
> > > documentation for gnu-crypto?...
> > >
> > > Documentation is limited to the source code/javadoc and the
> > > references on the home page to the details of the algorithms, but
> > > nothing on the basics of going about using the library.
> >
> > See
> > <http://metastatic.org/text/Documentation/gnu-crypto/manual.html>,
> > or
> > <http://metastatic.org/text/Documentation/gnu-crypto/manual.pdf>.
> >
> > This documentation is not complete, and really isn't official yet,
> > but may still give some insight even as a rough draft. I haven't
> > had time to work on it lately, but may try to get working on it
> > again soon.
> >
> > The basic usage of GNU Crypto objects is typically:
> >
> >    1. Create an object with a factory method.
> >    2. Initialize the object with an attributes Map.
> >    3. Use the object.
> >    4. Reset the object and go to step 2.
> >
> > Also note that many algorithms are low-level, e.g. with block
> > ciphers it is up to you to break the input data into block-sized
> > chunks before you feed them to the {en,de}cryptBlock methods...
>
> it is worth adding at this point, that with the recent additions to
> the library of the gnu.crypto.assembly packages, you can do things
> similar to what the JCE allows you to by using an
> "cipher/mod/padding" name construction, and more.  have a look at the
> two test (example) classes:
>
> gnu.testlet.gnu.crypto.assembly.TestOfAssembly, and
> gnu.testlet.gnu.crypto.assembly.TestOfCascade.
>
> the first one demonstrates how one can build a 3-des cipher from 3
> separate des ciphers, while the second demonstrates how to build a
> construction that (a) encrypts/decrypts, (b) in a given mode, (c)
> with padding/unpadding, and (d) with compression/decompression.
>
>
> cheers;
> rsn
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.7 (GNU/Linux)
Comment: Que du magnifique

iD8DBQE+0S7N+e1AKnsTRiERAyyLAJ4j0dW8BWTPMex6/3rygXXFLnxQNwCeP6LG
FygbpujeQ/Ia2EENAHyAz3Y=
=xpCB
-----END PGP SIGNATURE-----





reply via email to

[Prev in Thread] Current Thread [Next in Thread]