[crypto] OAEP AONT (gnu/javax/crypto/mode/OAE.java)

Raif S. Naffah raif at swiftdsl.com.au
Thu Jun 15 20:55:57 UTC 2006


hello John,

On Friday 16 June 2006 00:57, John Pritchard wrote:
> dear reader,
>
> attached is an OAEP AONT, ready for your comments or cvs

thanks for your contribution!

i do have some comments:

* it would be very helpful to include in the class documentation web 
references (HREFs) to cited documents and works the implementation is 
based on.  i believe all three cited references are available on the 
net.

* why not specify a default cipher, similar to H and R?  a 0-arguments 
constructor can then call the non-trivial constructor with the default 
block size of the _default_ cipher.

* is there other implementations of this scheme with published test 
vectors?  if not i think you should generate one such value and test 
for it in the self-test method.  a self-test relying solely on 
symmetric operation, especially with this type of mode is meaningless.

* property names, all (to my knowledge) start with "gnu.crypto" whatever 
package the classes using them, live in.  so INIT_H should read:

   gnu.crypto...

furthermore for property names, the lower-case, dotted form is generally 
preferred, unless it references a parameter described in the reference 
paper(s) of the algorithm;  hence acceptable names of INIT_H could be:

   gnu.crypto.oae.H
or
   gnu.crypto.oae.hash.name

(see the TMMH16 mac).

* InitHash, InitRand, and InitGenerator do not exist (anymore) --i 
suspect you had separate methods so named, and called from the init() 
method in a previous incarnation of this code.

* JavaDoc does not like OAE$Generator, Registry.SHA160_HASH.  
OAE.Generator and Registry#SHA160_HASH are ok.

* we don't qualify classes from the java.lang package, so for example 
writing String instead of java.lang.String is better.

* some other style inconsistencies which can be ironed out by using an 
Eclipse IDE (with the GNU style formatter if it does not already use it 
by default), or at least the Eclipse Formatter for Java 
(<http://www.bagu.org/eclipse/efj/>).


cheers;
rsn



More information about the Classpath mailing list