/* -*-c-*-
*
- * $Id: gfshare.h,v 1.1 2000/06/17 10:56:30 mdw Exp $
+ * $Id: gfshare.h,v 1.2 2000/06/17 11:05:27 mdw Exp $
*
* Secret sharing over %$\gf(2^8)$%
*
/*----- Revision history --------------------------------------------------*
*
* $Log: gfshare.h,v $
+ * Revision 1.2 2000/06/17 11:05:27 mdw
+ * Add a commentary on the system.
+ *
* Revision 1.1 2000/06/17 10:56:30 mdw
* Fast but nonstandard secret sharing system.
*
*/
+/*----- Notes on the system -----------------------------------------------*
+ *
+ * This uses a variant of Shamir's secret sharing system. Shamir's original
+ * system used polynomials modulo a large prime. This implementation instead
+ * uses the field %$\gf(2^8)$%, represented by
+ *
+ * %$\gf(2)[x]/(x^8 + x^4 + x^3 + x^2 + 1)$%
+ *
+ * and shares each byte of the secret independently. It is therefore limited
+ * to 255 players, although this probably isn't a serious limitation in
+ * practice.
+ *
+ * Share creation and reconstruction is extremely efficient. Contrast the
+ * performance of the straightforward implementation based on multiprecision
+ * arithmetic.
+ */
+
#ifndef CATACOMB_GFSHARE_H
#define CATACOMB_GFSHARE_H