On Thursday 15 May 2008 17:01, Daniel Cheng wrote:
> On Thu, May 15, 2008 at 10:30 PM, Matthew Toseland
> <toad at amphibian.dyndns.org> wrote:
> > On Tuesday 13 May 2008 17:10, j16sdiz at freenetproject.org wrote:
> >> Author: j16sdiz
> >> Date: 2008-05-13 16:10:32 +0000 (Tue, 13 May 2008)
> >> New Revision: 19912
> >>
> >> Modified:
> >>    trunk/freenet/src/freenet/crypt/ciphers/Rijndael.java
> >> Log:
> >> No Monte Carlo test for Rijndael
> >
> > Huh?
> 
> The test output the monte carlo test result, it is supposed to be compared
> with ecb_e_m.txt in the FIPS standard.
> 
> Our implementation is the original Rijndael (not the one in FIPS standard),
> the output does not match ecb_e_m.txt.

Is that bad? Presumably changes during the standardisation process were to 
improve security?
> 
> >> Modified: trunk/freenet/src/freenet/crypt/ciphers/Rijndael.java
> >> ===================================================================
> >> --- trunk/freenet/src/freenet/crypt/ciphers/Rijndael.java     2008-05-13
> > 12:11:24 UTC (rev 19911)
> >> +++ trunk/freenet/src/freenet/crypt/ciphers/Rijndael.java     2008-05-13
> > 16:10:32 UTC (rev 19912)
> >> @@ -102,65 +102,6 @@
> >>                       throw new IllegalArgumentException();
> >>               Rijndael_Algorithm.blockDecrypt(block, result, 0, 
sessionKey,
> > blocksize/8);
> >>       }
> >> -
> >> -     public static void main(String[] args) throws 
UnsupportedCipherException {
> >> -             // Perform the Monte Carlo test
> >> -
> >> -             System.out.println("KEYSIZE=128\n");
> >> -             monteCarlo(128);
> >> -             System.out.println("=========================\n");
> >> -             System.out.println("KEYSIZE=192\n");
> >> -             monteCarlo(192);
> >> -             System.out.println("=========================\n");
> >> -             System.out.println("KEYSIZE=256\n");
> >> -             monteCarlo(256);
> >> -     }
> >> -
> >> -     static void monteCarlo(int keySize) throws 
UnsupportedCipherException {
> >> -             Rijndael ctx=new Rijndael(keySize);
> >> -             int kb=keySize/8;
> >> -             byte[] P=new byte[16], C=new byte[16],
> >> -             CL=new byte[16], KEY=new byte[kb];
> >> -
> >> -             for (int i=0; i<400; i++) {
> >> -                     System.out.println("I="+i);
> >> -                     
System.out.println("KEY="+HexUtil.bytesToHex(KEY,0,kb));
> >> -
> >> -                     
System.out.println("PT="+HexUtil.bytesToHex(P,0,16));
> >> -
> >> -                     ctx.initialize(KEY);
> >> -                     for (int j=0; j<10000; j++) {
> >> -                             System.arraycopy(C, 0, CL, 0, C.length);
> >> -                             ctx.encipher(P, C);
> >> -                             System.arraycopy(C, 0, P, 0, P.length);
> >> -                     }
> >> -                     
System.out.println("CT="+HexUtil.bytesToHex(C,0,16));
> >> -
> >> -
> >> -                     for (int x=0; x<kb; x++) {
> >> -                             if (keySize==192)
> >> -                                     if (x<8)
> >> -                                             KEY[x]^=CL[8+x];
> >> -                                     else
> >> -                                             KEY[x]^=C[x-8];
> >> -                             else if (keySize==256)
> >> -                                     if (x<16)
> >> -                                             KEY[x]^=CL[x];
> >> -                                     else
> >> -                                             KEY[x]^=C[x-16];
> >> -                             else KEY[x]^=C[x];
> >> -                     }
> >> -
> >> -                     if (keySize==192)
> >> -                             for (int x=0; x<8; x++)
> >> -                                     KEY[x+16]^=CL[x+8];
> >> -                     else if (keySize==256)
> >> -                             for (int x=0; x<16; x++)
> >> -                                     KEY[x+16]^=CL[x];
> >> -
> >> -                     System.out.println();
> >> -             }
> >> -     }
> >>  }
> >>
> >>
> >>
> >> _______________________________________________
> >> cvs mailing list
> >> cvs at freenetproject.org
> >> http://emu.freenetproject.org/cgi-bin/mailman/listinfo/cvs
> >>
> >>
> >
> > _______________________________________________
> > Devl mailing list
> > Devl at freenetproject.org
> > http://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl
> >
> _______________________________________________
> Devl mailing list
> Devl at freenetproject.org
> http://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl
> 
> 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: 
<https://emu.freenetproject.org/pipermail/devl/attachments/20080515/c0c8f147/attachment.pgp>

Reply via email to