Bouncy Castle Cryptography Library 1.85

org.bouncycastle.crypto.agreement.owl
Class OwlAuthenticationServerResponse

java.lang.Object
  extended byorg.bouncycastle.crypto.agreement.owl.OwlAuthenticationServerResponse

public class OwlAuthenticationServerResponse
extends java.lang.Object

The payload sent by the server during the second pass of an Owl exchange.

Each OwlServer creates and sends an instance of this payload to the OwlClient. The payload to send should be created via OwlServer.authenticationServerResponse(OwlAuthenticationInitiate, OwlFinishRegistration).

Each OwlServer must also validate the payload received from the OwlClient which comes in the form of OwlAuthenticationInitiate. The OwlServer must retrieve the OwlFinishRegistration from 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
OwlAuthenticationServerResponse(java.lang.String serverId, ECPoint gx3, ECPoint gx4, ECSchnorrZKP knowledgeProofForX3, ECSchnorrZKP knowledgeProofForX4, ECPoint beta, ECSchnorrZKP knowledgeProofForBeta)
          Constructor for OwlAuthenticationServerResponse
 
Method Summary
 ECPoint getBeta()
          Get the public key beta = (x4 x pi) * [X1 + X2 + X3]
 ECPoint getGx3()
          Get the public key X3 = x3 * [G]
 ECPoint getGx4()
          Get the public key X4 = x4 * [G]
 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]
 ECSchnorrZKP getKnowledgeProofForX3()
          Get the zero-knowledge proof for the knowledge of x3 for X3 = x3 * [G]
 ECSchnorrZKP getKnowledgeProofForX4()
          Get the zero-knowledge proof for the knowledge of x4 for X4 = x4 * [G]
 java.lang.String getServerId()
          Get the server's identity
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

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 identity
gx3 - The public key X3 = x3 * [G]
gx4 - The public key X4 = x4 * [G]
knowledgeProofForX3 - The zero-knowledge proof for the knowledge of x3
knowledgeProofForX4 - The zero-knowledge proof for the knowledge of x4
beta - 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

Bouncy Castle Cryptography Library 1.85