1995-09-12 - Elliptic Curve Public Key Crypto available

Header Data

From: Mike Rosing <cryptech@Mars.mcs.com>
To: cypherpunks@toad.com
Message Hash: 9eb84f763e05546402fe03990edb76fa0981b4de02ebb96baac7f51e9c0d2930
Message ID: <Pine.3.89.9509112204.A25037-0100000@Mars.mcs.com>
Reply To: N/A
UTC Datetime: 1995-09-12 04:14:45 UTC
Raw Date: Mon, 11 Sep 95 21:14:45 PDT

Raw message

From: Mike Rosing <cryptech@Mars.mcs.com>
Date: Mon, 11 Sep 95 21:14:45 PDT
To: cypherpunks@toad.com
Subject: Elliptic Curve Public Key Crypto available
Message-ID: <Pine.3.89.9509112204.A25037-0100000@Mars.mcs.com>
MIME-Version: 1.0
Content-Type: text/plain


in the cypherpunks ftp site /pub/cypherpunks/ciphers are 2 ascii files.  
One contains code and the other contains documentation: eliptic.src and 
elliptic.doc.  The code portion is a cat'ed block of files: headers,
C sources and a set of prime numbers.  The documentation attempts to
explain the math, but it does help if you already know number theory.  It 
hopefully isn't necessary.

The code is a specific implementation of one particular type of math.  
It violates no known patents.  It appears to work.  The academics claim 
that elliptic curves over Galois Fields are really secure.  Preliminary 
testing bears this out, changing one bit of input gives uniformly 
distributed "random" output.

Previous to the availabilty of 100 MHz processors this method of public 
key crypto was ridculously slow.  The only versions were laboratory 
curiosities implemented in ASIC hardware.  Code, if it exists, is not in 
the public domain.

The code is based on several papers (some 15 references are listed in the 
doc file, 6 are more directly important) and a couple of books.  It 
includes optimal normal basis math, elliptic curve math, and public key 
secret sharing.  With 128 bit symmetric encryption, a 226 bit field is 
more than sufficient to hide it.

I believe it is really strong crypto.  I did not invent anything.  I just 
implemented a few textbook examples that nobody else has.  Since it's 
from public domain sources, and it's now public domain software, it can 
be freely used.  You get what you pay for.  

Code is a living thing.  It takes lots of people lots of time to make any 
code useful.  The purpose of this code is to show that there is more than 
one way to create public key cryptosystems and to bring academic 
discussion into the everyday realm of real world problems.  I suggest you 
get a copy to work with before it becomes illegal ;-)

Patience, persistence, truth,
Dr. mike






Thread