classpath
[Top][All Lists]
Advanced

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

RFC: GNU Crypto and Jessie (again)


From: Casey Marshall
Subject: RFC: GNU Crypto and Jessie (again)
Date: Sat, 21 Jan 2006 19:06:09 -0800

Hi,

I've finished splitting GNU Crypto along "weak" and "strong" lines, reformatted the code in GNU Crypto, and added the correct copyright headers to all the files. The resulting patch, and zip file of new files is here:

  <http://metastatic.org/source/gnu-crypto-jessie-2.patch.txt>
  <http://metastatic.org/source/gnu-crypto-jessie-2.zip>

You need both files; the patch is against a recent Classpath CVS snapshot, and does contain a few miscellaneous fixes outside of supporting GNU Crypto and Jessie, to make sure SSL connections actually work. The zip file can be unpacked in the toplevel Classpath directory. There are no changes to the build system (I don't know if the GCJ support needs changing at all; I don't use it, so I can't tell).

The weak/strong split breaks out ciphers, MACs, key exchanges, and classes depending on those into `gnu/javax/crypto,' which can be removed almost entirely (you'll need to keep only `gnu/javax/crypto/ GnuDHPrivateKey.java,' though maybe that class should be moved), and removing `gnu/javax/net/ssl' will remove all strong crypto.

This should not break anything existing in Classpath; instead, it should just add functionality mostly "behind the scenes," so I think it's safe to just check this in. I will, however, wait for some discussion and testing, to make sure something obvious isn't missing.

I used `efj,' the Eclipse source formatter, to reformat the code. It doesn't always do the right thing, so there may be some formatting inconsistencies scattered around (mostly when breaking long lines). There is still some code duplication here and there, say when two different implementations (like RSA encryption and signatures) use their own Key classes. The duplication isn't major, however, and we can sort it out later on. Some things, like Diffie Hellman, are duplicated, but not in a clean way --- Classpath's DH implementation is written to the JCE API, while GNU Crypto's is not (and, the latter is used by Jessie). Again, I hope these issues aren't blockers, because I'd like to get this merged as soon as possible, lest my schedule block me from finally doing it.

Thanks.




reply via email to

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