Typically a Schnorr group is used. In general, J-PAKE can use any prime order group that is suitable for public key cryptography, including elliptic curve cryptography.
See JPAKEPrimeOrderGroups for convenient standard groups.
NIST publishes many groups that can be used for the desired level of security.
| Modifier and Type | Field and Description |
|---|---|
| private final BigInteger | |
| private final BigInteger | |
| private final BigInteger |
| Access | Constructor and Description |
|---|---|
| public | JPAKEPrimeOrderGroup(BigInteger p, BigInteger q, BigInteger g)
Constructs a new |
| pack-priv | JPAKEPrimeOrderGroup(BigInteger p, BigInteger q, BigInteger g, boolean skipChecks)
Internal package-private constructor used by the pre-approved
groups in |
| Modifier and Type | Method and Description |
|---|---|
| public BigInteger | |
| public BigInteger | |
| public BigInteger |
| g | back to summary |
|---|---|
| private final BigInteger g | |
| p | back to summary |
|---|---|
| private final BigInteger p | |
| q | back to summary |
|---|---|
| private final BigInteger q | |
| JPAKEPrimeOrderGroup | back to summary |
|---|---|
| public JPAKEPrimeOrderGroup(BigInteger p, BigInteger q, BigInteger g) Constructs a new
In general, you should use one of the pre-approved groups from
The following basic checks are performed:
The prime checks are performed using These checks prevent trivial mistakes. However, due to the small uncertainties if p and q are not prime, advanced attacks are not prevented. Use it at your own risk.
| |
| JPAKEPrimeOrderGroup | back to summary |
|---|---|
| pack-priv JPAKEPrimeOrderGroup(BigInteger p, BigInteger q, BigInteger g, boolean skipChecks) Internal package-private constructor used by the pre-approved
groups in | |
| getG | back to summary |
|---|---|
| public BigInteger getG() | |
| getP | back to summary |
|---|---|
| public BigInteger getP() | |
| getQ | back to summary |
|---|---|
| public BigInteger getQ() | |