View Javadoc
1   package civitas.crypto.keypairshare;
2   
3   import static org.junit.jupiter.api.Assertions.assertEquals;
4   
5   import org.junit.jupiter.api.DisplayName;
6   import org.junit.jupiter.api.Test;
7   import org.mockito.InjectMocks;
8   
9   import civitas.common.RandomAwareTestBase;
10  import civitas.crypto.parameters.ElGamalParametersTestData;
11  
12  class GenerateKeyPairShareTest extends RandomAwareTestBase implements ElGamalParametersTestData {
13  
14  	@InjectMocks
15  	GenerateKeyPairShare generateKeyPairShare;
16  
17  	@Test
18  	@DisplayName("generateKeyPairShare works as expected"
19  			+ "x := random, h:=g^x (mod p). x is the private, h is the public key")
20  	void generateKeyPairShareTest() {
21  
22  		ElGamalKeyPairShare keyPair = generateKeyPairShare.apply(EL_GAMAL_PARAMETERS);
23  
24  		assertEquals(RANDOMS_0, keyPair.privKey().x());
25  		assertEquals(RANDOMS_0_PUBLISHED, keyPair.pubKey().y);
26  	}
27  }