View Javadoc
1   package civitas.crypto.parameters;
2   
3   import java.util.HashMap;
4   import java.util.List;
5   import java.util.Map;
6   
7   import civitas.common.VoteChoice;
8   import civitas.util.CivitasBigInteger;
9   import civitas.util.CivitasBigIntegerFactory;
10  
11  public class SetUpDecodeMap {
12  
13  	public Map<CivitasBigInteger, VoteChoice> apply(final List<VoteChoice> choices, final ElGamalParameters params) {
14  		Map<CivitasBigInteger, VoteChoice> map = new HashMap<>();
15  		choices.forEach(
16  				x -> map.put(CivitasBigIntegerFactory.obtain(x.ordinal()).modMultiply(params.g, params.p), x));
17  		return map;
18  	}
19  }