org.bouncycastle.crypto.agreement.srp

## Class SRP6Util

- java.lang.Object
- - org.bouncycastle.crypto.agreement.srp.SRP6Util

    public class SRP6Util
    extends java.lang.Object

### Constructor Summary

Constructors
Constructor and Description
`SRP6Util()`

### Method Summary

Methods
`static java.math.BigInteger` `calculateK(Digest digest, java.math.BigInteger N, java.math.BigInteger g)`
`static java.math.BigInteger` `calculateU(Digest digest, java.math.BigInteger N, java.math.BigInteger A, java.math.BigInteger B)`
`static java.math.BigInteger` `calculateX(Digest digest, java.math.BigInteger N, byte[] salt, byte[] identity, byte[] password)`
`static java.math.BigInteger` `generatePrivateValue(Digest digest, java.math.BigInteger N, java.math.BigInteger g, java.security.SecureRandom random)`
`static java.math.BigInteger` `validatePublicValue(java.math.BigInteger N, java.math.BigInteger val)`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### SRP6Util

    public SRP6Util()

### Method Detail

#### calculateK

    public static java.math.BigInteger calculateK(Digest digest,
                                  java.math.BigInteger N,
                                  java.math.BigInteger g)

#### calculateU

    public static java.math.BigInteger calculateU(Digest digest,
                                  java.math.BigInteger N,
                                  java.math.BigInteger A,
                                  java.math.BigInteger B)

#### calculateX

    public static java.math.BigInteger calculateX(Digest digest,
                                  java.math.BigInteger N,
                                  byte[] salt,
                                  byte[] identity,
                                  byte[] password)

#### generatePrivateValue

    public static java.math.BigInteger generatePrivateValue(Digest digest,
                                            java.math.BigInteger N,
                                            java.math.BigInteger g,
                                            java.security.SecureRandom random)

#### validatePublicValue

    public static java.math.BigInteger validatePublicValue(java.math.BigInteger N,
                                           java.math.BigInteger val)
                                                    throws CryptoException

Throws:
  `CryptoException`