All Packages Class Hierarchy This Package Previous Next Index
java.lang.Object
|
+----cryptix.util.math.BigRegister
|
+----cryptix.util.math.TrinomialLFSR
|
+----cryptix.provider.rpk.Generator
Generator in the RPK scheme is an LFSR with
a connection trinomial (TrinomialLFSR) modified
to make its clocking state-dependent.
When such a generator is clocked, and its state bits matching a specified mask are all zeroes, the next stutter bits are discarded. This effectively provides a non-linear output bit stream.
References:
Copyright © 1997
Systemics Ltd on behalf of the
Cryptix Development Team.
All rights reserved.
$Revision: 1.6 $
Generator object using default
values for stuttering and stutter mask.
Generator object given all
its characteristics.
this.
this object.
count bits of
this LFSR and clock it by as many ticks.
public Generator(int l,
int k,
int m,
int s)
Generator object given all
its characteristics.
public Generator(int l,
int k)
Generator object using default
values for stuttering and stutter mask.
public Object clone()
this.
protected void engineClock(int ticks)
The bits tested against the mask are the 32
leftmost ones in the FSR.
slice is guaranteed by:stutter
at instantiation time, and
ticks and stutter
together.public long next(int count)
count bits of
this LFSR and clock it by as many ticks.
public byte[] getEncoded()
this object. The
semantics of the return byte sequence is as follows:
Byte Length
offset (bytes) Meaning
0 2 The value of the Generator's size, MSB first;
2 2 The value of the Generator's mid-tap, MSB first;
4 2 The length of the byte array containing this
Generator's register/state, MSB first;
6 ?? The Generator's register contents.
this object as a byte array
or null if an error occured.
All Packages Class Hierarchy This Package Previous Next Index