// GenerateKeyPair takes a schnorr group and constructs a pair of secret and public key for
// pseudonym system scheme.
GenerateKeyPair takes a schnorr group and constructs a pair of secret and public key for
pseudonym system scheme.
// GenerateKeyPair takes a schnorr group and constructs a pair of secret and public key for // pseudonym system scheme .
func GenerateKeyPair(group *groups.SchnorrGroup) (*SecKey, *PubKey) {
	s1 := common.GetRandomInt(group.Q)
	s2 := common.GetRandomInt(group.Q)
	h1 := group.Exp(group.G, s1)
	h2 := group.Exp(group.G, s2)
	return NewSecKey(s1, s2), NewPubKey(h1, h2)
}
func GenerateKeyPair ( group * groups . SchnorrGroup ) ( * SecKey , * PubKey ) { s1 := common . GetRandomInt ( group . Q ) s2 := common . GetRandomInt ( group . Q ) h1 := group . Exp ( group . G , s1 ) h2 := group . Exp ( group . G , s2 ) return NewSecKey ( s1 , s2 ) , NewPubKey ( h1 , h2 ) }
GenerateKeyPair takes a schnorr group and constructs a pair of secret and public key for
pseudonym system scheme.
GenerateKeyPair takes a schnorr group and constructs a pair of secret and public key for pseudonym system scheme .