By ensuring all underlying types implement encoding.{Marshal,Unmarshal}Binary, we can use the CBOR encoding over all messages that we create. This removes a lot of generated code, and allows us to use cleaner structures.
Use safenum types in structs wherever possible and avoid conversions with big.Int.
Remove gogo reference in README and Makefile.
Make safenum.* hashable.
Clean MtA and move to separate internal package. The MtA struct only holds the necessary randomness now.
Remove message.Verify() and inline the content in Round.VerifyMessage() in preparation for identifiable aborts support.
N() now returns the underlying safenum.Modulus (not copied).
paillier and pedersenNew() methods don't check the validity of the parameters, and expects them to have passed the Validate() method.
By ensuring all underlying types implement
encoding.{Marshal,Unmarshal}Binary
, we can use theCBOR
encoding over all messages that we create. This removes a lot of generated code, and allows us to use cleaner structures.safenum
types in structs wherever possible and avoid conversions withbig.Int
.gogo
reference inREADME
andMakefile
.safenum.*
hashable.MtA
and move to separate internal package. TheMtA
struct only holds the necessary randomness now.message.Verify()
and inline the content inRound.VerifyMessage()
in preparation for identifiable aborts support.N()
now returns the underlyingsafenum.Modulus
(not copied).paillier
andpedersen
New()
methods don't check the validity of the parameters, and expects them to have passed theValidate()
method.