Java Randomness Test Suite

JRandTest at SourceForge

com.fasteasytrade.JRandTest.Algo
Class SkipjackRandom

java.lang.Object
  extended bycom.fasteasytrade.JRandTest.IO.FileRandomStream
      extended bycom.fasteasytrade.JRandTest.IO.FileAlgoRandomStream
          extended bycom.fasteasytrade.JRandTest.Algo.SkipjackRandom
All Implemented Interfaces:
AlgoRandomStream, RandomStream

public class SkipjackRandom
extends FileAlgoRandomStream

Skipjack algorithm as a random stream based on Skipjack encryption algorithm.

Author:
Zur Aougav

Field Summary
(package private)  Skipjack algo
           
(package private)  byte[] inputAlgoBuffer
          inputAlgoBuffer is filled with zeros to Skipjack.
(package private)  byte[] outAlgoBuffer
          The buffer is used as an output to Skipjack.
(package private)  int outAlgoBufferIx
           
 
Fields inherited from class com.fasteasytrade.JRandTest.IO.FileAlgoRandomStream
maxCount, privateKey, privateKeyLength, publicKey, publicKeyLength
 
Fields inherited from class com.fasteasytrade.JRandTest.IO.FileRandomStream
actualSize, buffer, count, countLastRead, filename, open, SIZE
 
Constructor Summary
SkipjackRandom()
           
SkipjackRandom(String keyFileName)
           
 
Method Summary
static void main(String[] args)
           
 boolean openInputStream()
          open the input stream.
 byte readByte()
          read one byte from a file.
 int readInt()
          Processing is similar to readByte.
 long readLong()
          Processing is similar to readByte.
 void setup()
          setup will be implemented by each subclass
 void setupKeys()
          set up length and new arrays to public and private keys will be implemented by each algorithm
 
Methods inherited from class com.fasteasytrade.JRandTest.IO.FileAlgoRandomStream
getFilename, setFilename, setPrivateKey, setPrivateKeyFromFile, setPublicKey, setPublicKeyFromFile
 
Methods inherited from class com.fasteasytrade.JRandTest.IO.FileRandomStream
closeInputStream, finalize, isOpen
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.fasteasytrade.JRandTest.IO.RandomStream
closeInputStream, isOpen
 

Field Detail

algo

Skipjack algo

inputAlgoBuffer

byte[] inputAlgoBuffer
inputAlgoBuffer is filled with zeros to Skipjack.


outAlgoBuffer

byte[] outAlgoBuffer
The buffer is used as an output to Skipjack.


outAlgoBufferIx

int outAlgoBufferIx
Constructor Detail

SkipjackRandom

public SkipjackRandom()

SkipjackRandom

public SkipjackRandom(String keyFileName)
Method Detail

setupKeys

public void setupKeys()
Description copied from interface: AlgoRandomStream
set up length and new arrays to public and private keys

will be implemented by each algorithm

Specified by:
setupKeys in interface AlgoRandomStream
Overrides:
setupKeys in class FileAlgoRandomStream
See Also:
AlgoRandomStream.setupKeys()

setup

public void setup()
Description copied from class: FileAlgoRandomStream
setup will be implemented by each subclass

Specified by:
setup in interface AlgoRandomStream
Overrides:
setup in class FileAlgoRandomStream
See Also:

makes only once a new SHA1 object and an IV vector.


openInputStream

public boolean openInputStream()
                        throws Exception
Description copied from interface: RandomStream
open the input stream.

Specified by:
openInputStream in interface RandomStream
Overrides:
openInputStream in class FileRandomStream
Throws:
Exception
See Also:

if filename exists (not null), we open file and later will encrypt it. Else, algorithm will generate random data (as PRNG).


readByte

public byte readByte()
              throws Exception
Description copied from interface: RandomStream
read one byte from a file.

first time ( if !isOpen() ) open file/stream, and return byte

at end of file close stream and returns -1

Specified by:
readByte in interface RandomStream
Overrides:
readByte in class FileAlgoRandomStream
Throws:
Exception
See Also:
RandomStream.readByte()

readInt

public int readInt()
            throws Exception
Description copied from interface: RandomStream
Processing is similar to readByte.

Specified by:
readInt in interface RandomStream
Overrides:
readInt in class FileAlgoRandomStream
Throws:
Exception
See Also:
RandomStream.readInt()

readLong

public long readLong()
              throws Exception
Description copied from interface: RandomStream
Processing is similar to readByte.

Specified by:
readLong in interface RandomStream
Overrides:
readLong in class FileAlgoRandomStream
Throws:
Exception
See Also:
RandomStream.readLong()

main

public static void main(String[] args)

Java Randomness Test Suite

JRandTest at SourceForge

JRandTest at SourceForge
Copyright © 2005 Zur Aougav. All Rights Reserved.