| BigInteger CalculateK(IDigest digest, BigInteger N, BigInteger g) | PublicStatic | — | 0x08 |
| BigInteger CalculateU(IDigest digest, BigInteger N, BigInteger A, BigInteger B) | PublicStatic | — | 0x08 |
| BigInteger CalculateX(IDigest digest, BigInteger N, const byte[]& salt, const byte[]& identity, const byte[]& password) | PublicStatic | — | 0x08 |
| BigInteger CalculateX(IDigest digest, BigInteger N, const ReadOnlySpan<System.Byte>& salt, const ReadOnlySpan<System.Byte>& identity, const ReadOnlySpan<System.Byte>& password) | PublicStatic | — | 0x10 |
| BigInteger GeneratePrivateValue(IDigest digest, BigInteger N, BigInteger g, SecureRandom random) | PublicStatic | — | 0x08 |
| BigInteger ValidatePublicValue(BigInteger N, BigInteger val) | PublicStatic | — | 0x08 |
| BigInteger CalculateM1(IDigest digest, BigInteger N, BigInteger A, BigInteger B, BigInteger S) | PublicStatic | — | 0x08 |
| BigInteger CalculateM2(IDigest digest, BigInteger N, BigInteger A, BigInteger M1, BigInteger S) | PublicStatic | | 0x08 |
| BigInteger CalculateKey(IDigest digest, BigInteger N, BigInteger S) | PublicStatic | | 0x08 |
| BigInteger HashPaddedTriplet(IDigest digest, BigInteger N, BigInteger n1, BigInteger n2, BigInteger n3) | PrivateStatic | | 0x08 |
| BigInteger HashPaddedPair(IDigest digest, BigInteger N, BigInteger n1, BigInteger n2) | PrivateStatic | | 0x08 |
| void .ctor() | Public+1 flags | | 0x00 |