Class OwlAuthenticationFinish
java.lang.Object
org.bouncycastle.crypto.agreement.owl.OwlAuthenticationFinish
The payload sent by the client during the third pass of an Owl exchange.
Each OwlClient creates and sends an instance
of this payload to the OwlServer after validating the previous payload
OwlAuthenticationServerResponse.
The payload to send should be created via
OwlClient.authenticationFinish(OwlAuthenticationServerResponse).
Each OwlClient must also validate the payload
received from the OwlServer, which is done by the same function
OwlClient.authenticationFinish(OwlAuthenticationServerResponse).
-
Constructor Summary
ConstructorsConstructorDescriptionOwlAuthenticationFinish(String clientId, ECPoint alpha, ECSchnorrZKP knowledgeProofForAlpha, BigInteger r) Constructor of OwlAuthenticationFinish -
Method Summary
Modifier and TypeMethodDescriptiongetAlpha()Get the public key alpha = (x2 x pi) * [X1 + X3 + X4]. sent by the client in the third passGet the client's identity (also known as username)Get the Schnorr zero-knowledge proof for the knowledge of the private key (x2 x pi) for the public key alphagetR()Get the response r as part of the zero-knowledge proof for proving the knowledge of t, r = x1 - t.h mod n where x1 is the ephemeral private key for the public key X1 sent in the first pass of Owl
-
Constructor Details
-
OwlAuthenticationFinish
public OwlAuthenticationFinish(String clientId, ECPoint alpha, ECSchnorrZKP knowledgeProofForAlpha, BigInteger r) Constructor of OwlAuthenticationFinish- Parameters:
clientId- Client's identityalpha- The public key alpha sent by the client in the third passknowledgeProofForAlpha- The zero-knowledge proof for the knowledge of the private key for alphar- The response r for proving the knowledge of t=H(usrname||password) mod n.
-
-
Method Details
-
getClientId
Get the client's identity (also known as username)- Returns:
- The client's identity
-
getAlpha
Get the public key alpha = (x2 x pi) * [X1 + X3 + X4]. sent by the client in the third pass- Returns:
- The public key alpha
-
getR
Get the response r as part of the zero-knowledge proof for proving the knowledge of t, r = x1 - t.h mod n where x1 is the ephemeral private key for the public key X1 sent in the first pass of Owl- Returns:
- The response r sent by the client in the third pass
-
getKnowledgeProofForAlpha
Get the Schnorr zero-knowledge proof for the knowledge of the private key (x2 x pi) for the public key alpha- Returns:
ECSchnorrZKP
-