Package shacham implements efficient Shacham-Waters ring signatures. This
scheme was published by Shacham and Waters in "Efficient Ring Signatures
without Random Oracles". It provides full-key disclosure anonymity and
insider corruption unforgeability while also being provably secure in the
standard model. In this implementation, it relies on three complexity
assumptions: integer factorization, computational Diffie-Hellman in prime
order cyclic subgroups of elliptic curves, and subgroup decision in
composite elliptic curves.
Dependencies
This package makes use of the PBC Go wrapper. Installation of the PBC Go wrapper
is non-trivial. For instructions, see https://godoc.org/github.com/Nik-U/pbc.
Package shacham implements efficient Shacham-Waters ring signatures. This
scheme was published by Shacham and Waters in "Efficient Ring Signatures
without Random Oracles". It provides full-key disclosure anonymity and
insider corruption unforgeability while also being provably secure in the
standard model. In this implementation, it relies on three complexity
assumptions: integer factorization, computational Diffie-Hellman in prime
order cyclic subgroups of elliptic curves, and subgroup decision in
composite elliptic curves.
New creates a new Shacham-Waters ring signature scheme. Rings can be
arbitrarily large. The scheme is secure in the standard model, with
reasonable performance.
Several levels of security are provided, based on the securityFactor
parameter. Valid values are 1 to 3, inclusive, with 1 being the least secure,
and 3 being the most secure. Level 1 is roughly equivalent to 80 bits of
security, which is now widely considered to be weak. Levels 2 and 3 are
roughly equivalent to 160 and 240 bits of security, respectively.