[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Cryptosplit 2.0




  On Colin Plumb's suggestion, I rewrote my first Shamir secret sharing
program to work over GF(2^8). I didn't do this the first time because
I thought writing all the low level GF math routines would be a pain --
so I opted out by using G++'s Integer class to work over Z_p. Imagine
my surprise when it turned out the math code over GF is easier. The 
hard part was actually generating the tables for x=g^n and n=lg x (g=primitive
element), but I got maple to do it for me after I read the docs. Multiplication
is simply the macro A*B=g^(lg A + lg B) (3 table lookups) and
addition is, of course, XOR. And x^-1 is just two table lookups unlike
the euclidean algorithm I needed to work over Z_p. (p being huge)

  Since I'm working over GF(2^8), I adapted my program to work on arbitrary
length binary files instead of integers. Now you can take any file and split
it up into m pieces, k being needed for reconstruction. The program is much
more usable now.  It's also written in C now, not G++.

  As before, if you want it, e-mail me.

-Ray

-- Ray Cromwell        |    Engineering is the implementation of science;    --
-- [email protected]  |       politics is the implementation of faith.      --