Bign is a digital signature system developed in 2010 and standardized a year
later in Belarus. The official standard STB 34.101.45 informally inherits the
name Bign while the core signature system tends to be called bign-sign
.
The bign-sign
system follows the
Schnorr signature scheme.
By truncating the hash part of the signatures, bign-sign
makes them quite short:
48, 72, or 96 octets depending on the security level.
Additionally to bign-sign
, the first edition of STB 34.101.45 defines the
following cryptographic mechanisms:
bign-curves
— elliptic curves as a cryptographic platform: selection strategy, validation, standard curves for 3 security levels;bign-keytransport
— key transport: public key encryption of symmetric keys.
Bign-curves
are conventional Weierstrass curves over large prime finite fields.
These curves are used outside of Bign to build protocols of the Diffie-Hellman
type.
Bign allows using the same pair of private and public keys both in
bign-sign
and bign-keytransport
. Thus, a single public key certificate
can serve both authenticity and confidentiality of the holder.
The second version of STB 34.101.45, released in 2013, additionally defines:
bign-genk
— an algorithm for generating ephemeral keys during signature creation to makebign-sign
fully deterministic;bign-ibs
— a Galindo-Garcia-like identity-based signature system;PBKDF2
andPBES2
— password-based mechanisms to protect Bign private keys.
In this repo, we process comments on the current version of Bign, discuss future versions, provide additional supporting material.
The latest releases of Bign can be found at Releases.
Comments and proposals are processed at Issues.