diff options
Diffstat (limited to 'core/src/main/java/org/bouncycastle/crypto/agreement/jpake/JPAKERound3Payload.java')
-rw-r--r-- | core/src/main/java/org/bouncycastle/crypto/agreement/jpake/JPAKERound3Payload.java | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/core/src/main/java/org/bouncycastle/crypto/agreement/jpake/JPAKERound3Payload.java b/core/src/main/java/org/bouncycastle/crypto/agreement/jpake/JPAKERound3Payload.java new file mode 100644 index 00000000..c1255df6 --- /dev/null +++ b/core/src/main/java/org/bouncycastle/crypto/agreement/jpake/JPAKERound3Payload.java @@ -0,0 +1,52 @@ +package org.bouncycastle.crypto.agreement.jpake; + +import java.math.BigInteger; + +/** + * The payload sent/received during the optional third round of a J-PAKE exchange, + * which is for explicit key confirmation. + * <p/> + * <p/> + * Each {@link JPAKEParticipant} creates and sends an instance + * of this payload to the other {@link JPAKEParticipant}. + * The payload to send should be created via + * {@link JPAKEParticipant#createRound3PayloadToSend(BigInteger)} + * <p/> + * <p/> + * Each {@link JPAKEParticipant} must also validate the payload + * received from the other {@link JPAKEParticipant}. + * The received payload should be validated via + * {@link JPAKEParticipant#validateRound3PayloadReceived(JPAKERound3Payload, BigInteger)} + * <p/> + */ +public class JPAKERound3Payload +{ + /** + * The id of the {@link JPAKEParticipant} who created/sent this payload. + */ + private final String participantId; + + /** + * The value of MacTag, as computed by round 3. + * + * @see JPAKEUtil#calculateMacTag(String, String, BigInteger, BigInteger, BigInteger, BigInteger, BigInteger, org.bouncycastle.crypto.Digest) + */ + private final BigInteger macTag; + + public JPAKERound3Payload(String participantId, BigInteger magTag) + { + this.participantId = participantId; + this.macTag = magTag; + } + + public String getParticipantId() + { + return participantId; + } + + public BigInteger getMacTag() + { + return macTag; + } + +} |