Class OwlAuthenticationServerResponse
- java.lang.Object
-
- org.bouncycastle.crypto.agreement.owl.OwlAuthenticationServerResponse
-
public class OwlAuthenticationServerResponse extends java.lang.ObjectThe payload sent by the server during the second pass of an Owl exchange.Each
OwlServercreates and sends an instance of this payload to theOwlClient. The payload to send should be created viaOwlServer.authenticationServerResponse(OwlAuthenticationInitiate, OwlFinishRegistration).Each
OwlServermust also validate the payload received from theOwlClientwhich comes in the form ofOwlAuthenticationInitiate. TheOwlServermust retrieve theOwlFinishRegistrationfrom wherever the server securely stored the initial login information. The received payload should be validated via the same function (in the same call).
-
-
Constructor Summary
Constructors Constructor Description OwlAuthenticationServerResponse(java.lang.String serverId, ECPoint gx3, ECPoint gx4, ECSchnorrZKP knowledgeProofForX3, ECSchnorrZKP knowledgeProofForX4, ECPoint beta, ECSchnorrZKP knowledgeProofForBeta)Constructor for OwlAuthenticationServerResponse
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ECPointgetBeta()Get the public key beta = (x4 x pi) * [X1 + X2 + X3]ECPointgetGx3()Get the public key X3 = x3 * [G]ECPointgetGx4()Get the public key X4 = x4 * [G]ECSchnorrZKPgetKnowledgeProofForBeta()Get the zero-knowledge proof for the knowledge of (x4 x pi) for the public key beta = (x4 x pi) * [X1 + X2 + X3]ECSchnorrZKPgetKnowledgeProofForX3()Get the zero-knowledge proof for the knowledge of x3 for X3 = x3 * [G]ECSchnorrZKPgetKnowledgeProofForX4()Get the zero-knowledge proof for the knowledge of x4 for X4 = x4 * [G]java.lang.StringgetServerId()Get the server's identity
-
-
-
Constructor Detail
-
OwlAuthenticationServerResponse
public OwlAuthenticationServerResponse(java.lang.String serverId, ECPoint gx3, ECPoint gx4, ECSchnorrZKP knowledgeProofForX3, ECSchnorrZKP knowledgeProofForX4, ECPoint beta, ECSchnorrZKP knowledgeProofForBeta)Constructor for OwlAuthenticationServerResponse- Parameters:
serverId- The server's identitygx3- The public key X3 = x3 * [G]gx4- The public key X4 = x4 * [G]knowledgeProofForX3- The zero-knowledge proof for the knowledge of x3knowledgeProofForX4- The zero-knowledge proof for the knowledge of x4beta- The public key beta = (x4 x pi) * [X1 + X2 + X3]knowledgeProofForBeta- The zero-knowledge proof for the knowledge of (x4 x pi) for beta
-
-
Method Detail
-
getServerId
public java.lang.String getServerId()
Get the server's identity- Returns:
- The server's identity
-
getGx3
public ECPoint getGx3()
Get the public key X3 = x3 * [G]- Returns:
- The public key X3
-
getGx4
public ECPoint getGx4()
Get the public key X4 = x4 * [G]- Returns:
- The public key X4
-
getKnowledgeProofForX3
public ECSchnorrZKP getKnowledgeProofForX3()
Get the zero-knowledge proof for the knowledge of x3 for X3 = x3 * [G]- Returns:
ECSchnorrZKP
-
getKnowledgeProofForX4
public ECSchnorrZKP getKnowledgeProofForX4()
Get the zero-knowledge proof for the knowledge of x4 for X4 = x4 * [G]- Returns:
ECSchnorrZKP
-
getBeta
public ECPoint getBeta()
Get the public key beta = (x4 x pi) * [X1 + X2 + X3]- Returns:
- The public key beta
-
getKnowledgeProofForBeta
public ECSchnorrZKP getKnowledgeProofForBeta()
Get the zero-knowledge proof for the knowledge of (x4 x pi) for the public key beta = (x4 x pi) * [X1 + X2 + X3]- Returns:
ECSchnorrZKP
-
-