From: cypher@cyberstation.net
To: cypherpunks@toad.com
Message Hash: 1172307885b665df1c0fb5c6729c0a0f2061fc185bd03ad320cc5ce86297a14b
Message ID: <Pine.BSI.3.95.961030231236.13047M-100000@citrine.cyberstation.net>
Reply To: N/A
UTC Datetime: 1996-10-31 05:14:14 UTC
Raw Date: Wed, 30 Oct 1996 21:14:14 -0800 (PST)
From: cypher@cyberstation.net
Date: Wed, 30 Oct 1996 21:14:14 -0800 (PST)
To: cypherpunks@toad.com
Subject: Re: Q.E.D (fwd)
Message-ID: <Pine.BSI.3.95.961030231236.13047M-100000@citrine.cyberstation.net>
MIME-Version: 1.0
Content-Type: text/plain
The following was sent to an individual in response to a private inquiry.
I am forwarding the response since it seems to be germane to the
subject at hand.
Have you looked at the algorithm. A brief explanation is disclosed
in the other posting being made to you. However, a much more detailed
disclosure and explanation is set out at our web site:
netprivacy.com
The algorithm is at:
netprivacy.com/algo.html
If you know cryptography, you will discover that it produces quite a
remarkable PRNG stream, one that when submitted to any statistical
analysis, including Shannon to a degree, reveals itself to be random,
though we know it is not because it was generated by the algorithm. At
first blush, it may appear as some form of a linear congruential generator.
However, that is a misconception as you can quickly determine. There are
nonlinear congruential generators, somewhere between 49 and 79 separate
ones, of a sort used in the algorithm, but they serve only as a seed,
to every block of 4 or 8 characters, to the main algorithm. The nonlinear
congruential generators are modulo 16384, which produces a staccato stream
of the set 0,..,16383, which in the case of the disclosed algorithm are
further used to make a three dimensional table lookup in the Displacement
Table, the Determinate Table, and finally the Diffusion Table.
The nonlinear congruential generators run at different speeds, that is
in C iterations, they are used only C mod 16384 times, and since all of
them are unique, out of say a message length of 20,000 characters, they
will each be used at a different number of times, and with different
message constituents, that is they cannot be blocked, as seeds to the
table lookup procedures. The three tables are dynamic, undergoing constant
modification, the Diffusion table only at the completion of an 8192 byte
cycle, as the stream is generated. Furthermore, the indexes into the three
lookup tables are accumulative and are being constantly switched so that
they too are always dynamic.
A close examination of this will reveal that the output stream is a
statistical random appearing stream, as a result of the staccato nature
of the seeds combined with the fact that the sum of seeds start
asymptotically approaching an even distribution of the values 0,..,16383.
The Displacement Table and the Diffusion Table, are both tables of the
integers 0 through 4095 respectively and the Diffusion Table is a table of
16 sets of the ASCII decimal values, 0,.., 255. All three tables are
scrambled using a random key generated by the user. The process of doing
that is explained in the aforementioned web page:
netprivacy.com/algo.html
An user may also uniquely customize their own initial Displacement,
Diffusion and Determinate tables, some 10^34000 possibilities.
Also 200 million bytes of raw encryptor stream output are at our web site,
using the same key and other parameters. Can you determine the key? The
algorithm is quite simple to implement for testing purposes, and you can
use the table values set out as the basis for doing your own testing.
You will find that it produces an incredible random like PRNG streams,
each unique, if you look at it.
With kindest regards,
Don Wood,
Return to October 1996
Return to “cypher@cyberstation.net”
1996-10-31 (Wed, 30 Oct 1996 21:14:14 -0800 (PST)) - Re: Q.E.D (fwd) - cypher@cyberstation.net