nl.warper.skein
Class SkeinMain

java.lang.Object
  extended by nl.warper.skein.SkeinMain

public class SkeinMain
extends java.lang.Object

SkeinMain is used to test the SimpleSkein, UBI64 and Threefish implementations and to see that the test vectors, including initial chaining vectors are correct. The output of the main() method has been used to successfully confirm the old and new chaining values as created by the Skein team.

The initial implementation incorrectly used the blocksize as size of the configuration encoding instead of the real size of the configuration encoding. You can simulate this incorrect behaviour by simply setting the private USE_BLOCK_SIZE constant to true.

The Threefish part of the protocol is of course the most difficult part of the algorithm to implement. To test the intermediate values of your own implementation, just change the logger settings below. For full logging to the console, just set the logging level to Level.FINEST instead of Level.OFF.

Since:
5 nov 2008
Version:
$Revision: $
Author:
maartenb, $Author: $

Constructor Summary
SkeinMain()
           
 
Method Summary
static byte[] doSimpleSkein(int blockSize, byte[] message, int outputSize)
           
static void main(java.lang.String... args)
           
static void showConfigurationInit(int blockSize, int outputSize)
           
static void testThreefish(int blockSize, int rounds)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SkeinMain

public SkeinMain()
Method Detail

testThreefish

public static void testThreefish(int blockSize,
                                 int rounds)

doSimpleSkein

public static byte[] doSimpleSkein(int blockSize,
                                   byte[] message,
                                   int outputSize)

showConfigurationInit

public static void showConfigurationInit(int blockSize,
                                         int outputSize)

main

public static void main(java.lang.String... args)
Parameters:
args - JAVADOC .