TrinityCore
Trinity::Crypto::SRP::BnetSRP6v2< CryptoHash > Class Template Referencefinal

#include <SRP6.h>

+ Inheritance diagram for Trinity::Crypto::SRP::BnetSRP6v2< CryptoHash >:

Public Member Functions

 BnetSRP6v2 (std::string const &username, Salt const &salt, Verifier const &verifier)
 
 BnetSRP6v2 (ForRegistrationTag t)
 
- Public Member Functions inherited from Trinity::Crypto::SRP::BnetSRP6v2Base
 BnetSRP6v2Base (std::string const &username, Salt const &salt, Verifier const &verifier, BigNumber const &k)
 
 BnetSRP6v2Base (ForRegistrationTag t)
 
BigNumber const & GetN () const final
 
BigNumber const & Getg () const final
 
uint8 GetVersion () const final
 
uint32 GetXIterations () const final
 
- Public Member Functions inherited from Trinity::Crypto::SRP::BnetSRP6Base
 BnetSRP6Base (BigNumber const &i, Salt const &salt, Verifier const &verifier, BigNumber const &N, BigNumber const &g, BigNumber const &k)
 
 BnetSRP6Base (ForRegistrationTag t)
 
BigNumber CalculateServerEvidence (BigNumber const &A, BigNumber const &clientM1, BigNumber const &K) const final
 
virtual uint8 GetVersion () const =0
 
virtual uint32 GetXIterations () const =0
 
- Public Member Functions inherited from Trinity::Crypto::SRP::SRP6
 SRP6 (BigNumber const &i, Salt const &salt, Verifier const &verifier, BigNumber const &N, BigNumber const &g, BigNumber const &k)
 
 SRP6 (ForRegistrationTag)
 
 SRP6 (SRP6 const &)=delete
 
 SRP6 (SRP6 &&)=delete
 
SRP6operator= (SRP6 const &)=delete
 
SRP6operator= (SRP6 &&)=delete
 
virtual ~SRP6 ()=default
 
virtual BigNumber const & GetN () const =0
 
virtual BigNumber const & Getg () const =0
 
Optional< BigNumberVerifyClientEvidence (BigNumber const &A, BigNumber const &clientM1)
 
virtual BigNumber CalculateServerEvidence (BigNumber const &A, BigNumber const &clientM1, BigNumber const &K) const =0
 
bool CheckCredentials (std::string const &username, std::string const &password) const
 

Protected Member Functions

BigNumber CalculateU (BigNumber const &A) const override
 
BigNumber DoCalculateEvidence (std::span< BigNumber const * > bns) const override
 
- Protected Member Functions inherited from Trinity::Crypto::SRP::BnetSRP6v2Base
BigNumber CalculateX (std::string const &username, std::string const &password, Salt const &salt) const final
 
- Protected Member Functions inherited from Trinity::Crypto::SRP::BnetSRP6Base
Optional< BigNumberDoVerifyClientEvidence (BigNumber const &A, BigNumber const &clientM1) final
 
virtual BigNumber CalculateU (BigNumber const &A) const =0
 
virtual BigNumber DoCalculateEvidence (std::span< BigNumber const * > bns) const =0
 
template<typename CryptoHash >
BigNumber DoCalculateEvidence (std::span< BigNumber const * > bns) const
 
- Protected Member Functions inherited from Trinity::Crypto::SRP::SRP6
BigNumber CalculatePublicB (BigNumber const &N, BigNumber const &g, BigNumber const &k) const
 
virtual BigNumber CalculateX (std::string const &username, std::string const &password, Salt const &salt) const =0
 
Verifier CalculateVerifier (std::string const &username, std::string const &password, Salt const &salt) const
 
virtual Optional< BigNumberDoVerifyClientEvidence (BigNumber const &A, BigNumber const &clientM1)=0
 

Additional Inherited Members

- Static Public Member Functions inherited from Trinity::Crypto::SRP::SRP6
template<typename Impl >
static std::pair< Salt, VerifierMakeRegistrationData (std::string const &username, std::string const &password)
 
- Public Attributes inherited from Trinity::Crypto::SRP::SRP6
Salt const s
 
BigNumber const B
 
- Static Public Attributes inherited from Trinity::Crypto::SRP::BnetSRP6v2Base
static BigNumber const N = "AC6BDB41324A9A9BF166DE5E1389582FAF72B6651987EE07FC3192943DB56050A37329CBB4A099ED8193E0757767A13DD52312AB4B03310DCD7F48A9DA04FD50E8083969EDB767B0CF6095179A163AB3661A05FBD5FAAAE82918A9962F0B93B855F97993EC975EEAA80D740ADBF4FF747359D041D5C33EA71D281E446B14773BCA97B43A23FB801676BD207A436C6481F1D2B9078717461A5B9D32E688F87748544523B524B0D57D5EA77A2775D2ECFA032CFBDBF52FB3786160279004E57AE6AF874E7303CE53299CCC041C7BC308D82A5698F3A8D0C38271AE35F8E9DBFBB694B5C803D89F7AE435DE236D525F54759B65E372FCD68EF20FA7111F9E4AFF73"s
 
static BigNumber const g = 2
 
- Static Protected Member Functions inherited from Trinity::Crypto::SRP::BnetSRP6Base
static std::vector< uint8GetBrokenEvidenceVector (BigNumber const &bn)
 
- Static Protected Member Functions inherited from Trinity::Crypto::SRP::SRP6
static BigNumber CalculatePrivateB (BigNumber const &N)
 
- Protected Attributes inherited from Trinity::Crypto::SRP::SRP6
BigNumber const I
 
BigNumber const b
 
BigNumber const v
 

Detailed Description

template<typename CryptoHash>
class Trinity::Crypto::SRP::BnetSRP6v2< CryptoHash >

Definition at line 215 of file SRP6.h.

Constructor & Destructor Documentation

◆ BnetSRP6v2() [1/2]

template<typename CryptoHash >
Trinity::Crypto::SRP::BnetSRP6v2< CryptoHash >::BnetSRP6v2 ( std::string const &  username,
Salt const &  salt,
Verifier const &  verifier 
)
inline

Definition at line 218 of file SRP6.h.

◆ BnetSRP6v2() [2/2]

template<typename CryptoHash >
Trinity::Crypto::SRP::BnetSRP6v2< CryptoHash >::BnetSRP6v2 ( ForRegistrationTag  t)
inlineexplicit

Definition at line 223 of file SRP6.h.

Member Function Documentation

◆ CalculateU()

template<typename CryptoHash >
BigNumber Trinity::Crypto::SRP::BnetSRP6v2< CryptoHash >::CalculateU ( BigNumber const &  A) const
inlineoverrideprotectedvirtual

Implements Trinity::Crypto::SRP::BnetSRP6Base.

Definition at line 226 of file SRP6.h.

+ Here is the call graph for this function:

◆ DoCalculateEvidence()

template<typename CryptoHash >
BigNumber Trinity::Crypto::SRP::BnetSRP6v2< CryptoHash >::DoCalculateEvidence ( std::span< BigNumber const * >  bns) const
inlineoverrideprotectedvirtual

Implements Trinity::Crypto::SRP::BnetSRP6Base.

Definition at line 231 of file SRP6.h.


The documentation for this class was generated from the following file: