ds
Class Server

java.lang.Object
  extended byds.Server

public class Server
extends java.lang.Object

This is the class for decryption servers with the main functions for checking proofs on votes as well as share-decrypting votes.

Author:
bent

Constructor Summary
Server(int id, KeyShare ks, ElectionProperties ep, java.util.Random r, PublicKey pk)
          Constructs a DecryptionServer to decrypt the results using the servers secret KeyShare
Server(int id, KeyShare ks, ElectionProperties ep, java.util.Random r, PublicKey pk, BulletinBoard bb)
          Constructs a DecryptionServer to decrypt the results using the servers secret KeyShare
 
Method Summary
 void postShare()
          Initiates the process of share decrypting the results of the election.
 DecryptedShare shareDecrypt(BinaryVote[] votes)
          The method for decrypting the results of the election with the secret KeyShare
 DecryptedShare[] shareDecrypt(MultipleBinaryVotes[] votes)
          The method for decrypting the results of the election with the secret KeyShare
 DecryptedShare[] shareDecrypt(MultipleVotes[] votes)
          The method for decrypting the results of the election with the secret KeyShare
 DecryptedShare shareDecrypt(Vote[] votes)
          The method for decrypting the results of the election with the secret KeyShare
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Server

public Server(int id,
              KeyShare ks,
              ElectionProperties ep,
              java.util.Random r,
              PublicKey pk,
              BulletinBoard bb)
Constructs a DecryptionServer to decrypt the results using the servers secret KeyShare

Parameters:
id - The DecryptionServer id
ks - The secret KeyShare
ep - The ElectionProperties for this election
r - The random-number generator
pk - The PublicKey for the election

Server

public Server(int id,
              KeyShare ks,
              ElectionProperties ep,
              java.util.Random r,
              PublicKey pk)
Constructs a DecryptionServer to decrypt the results using the servers secret KeyShare

Parameters:
id - The DecryptionServer id
ks - The secret KeyShare
ep - The ElectionProperties for this election
r - The random-number generator
pk - The PublicKey for the election
Method Detail

postShare

public void postShare()
               throws java.rmi.RemoteException,
                      NoValidVotesException
Initiates the process of share decrypting the results of the election.

Throws:
java.rmi.RemoteException
NoValidVotesException

shareDecrypt

public DecryptedShare[] shareDecrypt(MultipleVotes[] votes)
                              throws NoValidVotesException
The method for decrypting the results of the election with the secret KeyShare

Parameters:
votes - The votes from the election
Throws:
NoValidVotesException

shareDecrypt

public DecryptedShare shareDecrypt(Vote[] votes)
                            throws NoValidVotesException
The method for decrypting the results of the election with the secret KeyShare

Parameters:
votes - The votes from the election
Throws:
NoValidVotesException

shareDecrypt

public DecryptedShare[] shareDecrypt(MultipleBinaryVotes[] votes)
                              throws NoValidVotesException
The method for decrypting the results of the election with the secret KeyShare

Parameters:
votes - The votes from the election
Throws:
NoValidVotesException

shareDecrypt

public DecryptedShare shareDecrypt(BinaryVote[] votes)
                            throws NoValidVotesException
The method for decrypting the results of the election with the secret KeyShare

Parameters:
votes - The votes from the election
Throws:
NoValidVotesException