FPGA

Monty J. Harder mjharder at gmail.com
Sun Aug 12 13:37:33 CDT 2007


On 8/11/07, Jared <jared at hatwhite.com> wrote:
>
> breasts. Better to stay with the industry-standard term for the
> smallest particle of ternary calculation: "trit."


I didn't know there was an industry.  I thought the whole point of the
discussion was that the industry was strictly binary.


>  So here is something that WILL
> get people interested, once they get over the "No way, that's
> impossible" barrier:

. . .


> The software running inside that "impossible" black box is ternary,
> and uses pattern-based analysis to decrypt. Instead of decrypting a
> small string by using hundreds of thousands of password strings,
> each varying by a single character until you stumble upon the
> correct one, you decrypt by studying the layers of _patterns_
> generated by any encryption process. Once you open the first
> layer, the others become successively easier, because each layer
> gives clues to the next.


Anyone using a password like this isn't really protecting their data from an
attacker with crypto knowledge (or access to common cracking tools).



> The only way to prevent such pattern-based analysis from cracking
> open any binarily-encrypted clump of data, or even a packet stream,
> is to generate TRULY RANDOM keys, which can only be created ... you
> guessed it ... within a ternary pattern-based algorithm. You already
> know that binary algorithms can NEVER create true randomnness, but
> can only emulate it with ever-increasingly fine precision. Like
> approaching infinity; you are always approaching it, but never quite
> get there.



I must call bullshit on this.  Ternary computation does not possess any
magical properties.  A number is a number, and the same algorithm written in
base 2, 3, 8, or 10 can also be done in 16, 256, etc.  The reason why
computers normally can't do randomness is that they aren't designed for it.
They take inputs and perform calculations in such a way that the same inputs
always generate the same outputs.  They are specifically designed to do
things like error correction to prevent producing different outputs from the
same inputs.

If you want to add randomness to computers, you need to design circuits to
produce random data.
Start with something like a Geiger counter.  Every time it records a hit,
take the time of the event (with a clock that can do millisecond or finer
resolution), subtract the previous event time, and throw away all but the
last few bits or trits of the delta.  Take as additional events every valid
SYN-ACK packet received by the TCP stack, keypresses that are at least 3
seconds after the previous keypress (you don't want to use the internal
timings of typing, because a person might have a rhythm that introduces a
bias into the data), and the pixels of webcams aimed at busy intersections.
The idea is to use a lot of different sources for the events, so that an
attacker with access to one source will be unable to know what other events
intervened between those of which he is aware.


>  If you are curious, here's an encrypted hint: "Babble
> code is for babies."


Here's my encrypted answer: "The Falcon flies east in the evening."
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://kclug.org/pipermail/kclug/attachments/20070812/e3d2b192/attachment.htm 


More information about the Kclug mailing list