[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. --