Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- data TrusteePublicKey c = TrusteePublicKey {
- trustee_PublicKey :: !(PublicKey c)
- trustee_SecretKeyProof :: !(Proof c)
- data ErrorTrusteePublicKey = ErrorTrusteePublicKey_WrongProof
- proveIndispensableTrusteePublicKey :: Reifies c FFC => Monad m => RandomGen r => SecretKey c -> StateT r m (TrusteePublicKey c)
- verifyIndispensableTrusteePublicKey :: Reifies c FFC => Monad m => TrusteePublicKey c -> ExceptT ErrorTrusteePublicKey m ()
- indispensableTrusteePublicKeyStatement :: PublicKey c -> ByteString
- combineIndispensableTrusteePublicKeys :: Reifies c FFC => [TrusteePublicKey c] -> PublicKey c
- verifyIndispensableDecryptionShareByTrustee :: Reifies c FFC => Monad m => EncryptedTally c -> [PublicKey c] -> [DecryptionShare c] -> ExceptT ErrorTally m ()
- combineIndispensableDecryptionShares :: Reifies c FFC => [PublicKey c] -> DecryptionShareCombinator c
Type TrusteePublicKey
data TrusteePublicKey c Source #
TrusteePublicKey | |
|
Instances
Type ErrorTrusteePublicKey
data ErrorTrusteePublicKey Source #
ErrorTrusteePublicKey_WrongProof | The |
Instances
Eq ErrorTrusteePublicKey Source # | |
Defined in Voting.Protocol.Trustee.Indispensable (==) :: ErrorTrusteePublicKey -> ErrorTrusteePublicKey -> Bool # (/=) :: ErrorTrusteePublicKey -> ErrorTrusteePublicKey -> Bool # | |
Show ErrorTrusteePublicKey Source # | |
Defined in Voting.Protocol.Trustee.Indispensable showsPrec :: Int -> ErrorTrusteePublicKey -> ShowS # show :: ErrorTrusteePublicKey -> String # showList :: [ErrorTrusteePublicKey] -> ShowS # |
proveIndispensableTrusteePublicKey :: Reifies c FFC => Monad m => RandomGen r => SecretKey c -> StateT r m (TrusteePublicKey c) Source #
(
returns the proveIndispensableTrusteePublicKey
trustSecKey)PublicKey
associated to trustSecKey
and a Proof
of its knowledge.
verifyIndispensableTrusteePublicKey :: Reifies c FFC => Monad m => TrusteePublicKey c -> ExceptT ErrorTrusteePublicKey m () Source #
(
returns verifyIndispensableTrusteePublicKey
trustPubKey)True
iif. the given trustee_SecretKeyProof
does prove
that the SecretKey
associated with
the given trustee_PublicKey
is known by the trustee.
Hashing
Election'
s PublicKey
combineIndispensableTrusteePublicKeys :: Reifies c FFC => [TrusteePublicKey c] -> PublicKey c Source #
verifyIndispensableDecryptionShareByTrustee :: Reifies c FFC => Monad m => EncryptedTally c -> [PublicKey c] -> [DecryptionShare c] -> ExceptT ErrorTally m () Source #
combineIndispensableDecryptionShares :: Reifies c FFC => [PublicKey c] -> DecryptionShareCombinator c Source #
(
returns the combineDecryptionShares
pubKeyByTrustee decShareByTrustee)DecryptionFactor
s by choice by Question