PIVX Core  5.6.99
P2P Digital Currency
Public Member Functions | Static Public Member Functions | Friends | List of all members
CBLSSignature Class Reference

#include <bls_wrapper.h>

Inheritance diagram for CBLSSignature:
[legend]
Collaboration diagram for CBLSSignature:
[legend]

Public Member Functions

 CBLSSignature ()
 
 CBLSSignature (const CBLSSignature &)=default
 
CBLSSignatureoperator= (const CBLSSignature &)=default
 
void AggregateInsecure (const CBLSSignature &o)
 
void SubInsecure (const CBLSSignature &o)
 
bool VerifyInsecure (const CBLSPublicKey &pubKey, const uint256 &hash) const
 
bool VerifyInsecureAggregated (const std::vector< CBLSPublicKey > &pubKeys, const std::vector< uint256 > &hashes) const
 
bool VerifySecureAggregated (const std::vector< CBLSPublicKey > &pks, const uint256 &hash) const
 
bool Recover (const std::vector< CBLSSignature > &sigs, const std::vector< CBLSId > &ids)
 
bool operator== (const C &r) const
 
bool operator!= (const C &r) const
 
 CBLSWrapper ()
 
 CBLSWrapper (const std::vector< unsigned char > &vecBytes)
 
 CBLSWrapper (const CBLSWrapper &ref)=default
 
 CBLSWrapper (CBLSWrapper &&ref)
 
- Public Member Functions inherited from CBLSWrapper< bls::G2Element, BLS_CURVE_SIG_SIZE, CBLSSignature >
 CBLSWrapper ()
 
 CBLSWrapper (const std::vector< unsigned char > &vecBytes)
 
 CBLSWrapper (const CBLSWrapper &ref)=default
 
 CBLSWrapper (CBLSWrapper &&ref)
 
CBLSWrapperoperator= (const CBLSWrapper &ref)=default
 
CBLSWrapperoperator= (CBLSWrapper &&ref)
 
bool operator== (const CBLSSignature &r) const
 
bool operator!= (const CBLSSignature &r) const
 
bool IsValid () const
 
void Reset ()
 
void SetByteVector (const std::vector< uint8_t > &vecBytes)
 
std::vector< uint8_t > ToByteVector () const
 
const uint256GetHash () const
 
void Serialize (Stream &s) const
 
void Unserialize (Stream &s, bool checkMalleable=true)
 
bool CheckMalleable (const std::vector< uint8_t > &vecBytes) const
 
std::string ToString () const
 

Static Public Member Functions

static CBLSSignature AggregateInsecure (const std::vector< CBLSSignature > &sigs)
 
static CBLSSignature AggregateSecure (const std::vector< CBLSSignature > &sigs, const std::vector< CBLSPublicKey > &pks, const uint256 &hash)
 

Friends

class CBLSSecretKey
 

Additional Inherited Members

- Static Public Attributes inherited from CBLSWrapper< bls::G2Element, BLS_CURVE_SIG_SIZE, CBLSSignature >
static const size_t SerSize
 
- Protected Member Functions inherited from CBLSWrapper< bls::G2Element, BLS_CURVE_SIG_SIZE, CBLSSignature >
constexpr size_t GetSerSize () const
 
- Protected Attributes inherited from CBLSWrapper< bls::G2Element, BLS_CURVE_SIG_SIZE, CBLSSignature >
bls::G2Element impl
 
bool fValid
 
uint256 cachedHash
 

Detailed Description

Definition at line 242 of file bls_wrapper.h.

Constructor & Destructor Documentation

◆ CBLSSignature() [1/2]

CBLSSignature::CBLSSignature ( )
inline

Definition at line 251 of file bls_wrapper.h.

Here is the caller graph for this function:

◆ CBLSSignature() [2/2]

CBLSSignature::CBLSSignature ( const CBLSSignature )
default

Member Function Documentation

◆ AggregateInsecure() [1/2]

void CBLSSignature::AggregateInsecure ( const CBLSSignature o)

Definition at line 229 of file bls_wrapper.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AggregateInsecure() [2/2]

CBLSSignature CBLSSignature::AggregateInsecure ( const std::vector< CBLSSignature > &  sigs)
static

Definition at line 236 of file bls_wrapper.cpp.

Here is the call graph for this function:

◆ AggregateSecure()

CBLSSignature CBLSSignature::AggregateSecure ( const std::vector< CBLSSignature > &  sigs,
const std::vector< CBLSPublicKey > &  pks,
const uint256 hash 
)
static

Definition at line 255 of file bls_wrapper.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ CBLSWrapper() [1/4]

CBLSWrapper< ImplType, _SerSize, C >::CBLSWrapper
inline

Definition at line 54 of file bls_wrapper.h.

◆ CBLSWrapper() [2/4]

CBLSWrapper< ImplType, _SerSize, C >::CBLSWrapper
inline

Definition at line 64 of file bls_wrapper.h.

◆ CBLSWrapper() [3/4]

CBLSWrapper< ImplType, _SerSize, C >::CBLSWrapper
default

◆ CBLSWrapper() [4/4]

CBLSWrapper< ImplType, _SerSize, C >::CBLSWrapper
inline

Definition at line 57 of file bls_wrapper.h.

◆ operator!=()

bool CBLSWrapper< ImplType, _SerSize, C >::operator!=
inline

Definition at line 82 of file bls_wrapper.h.

◆ operator=()

CBLSSignature& CBLSSignature::operator= ( const CBLSSignature )
default

◆ operator==()

bool CBLSWrapper< ImplType, _SerSize, C >::operator==
inline

Definition at line 78 of file bls_wrapper.h.

◆ Recover()

bool CBLSSignature::Recover ( const std::vector< CBLSSignature > &  sigs,
const std::vector< CBLSId > &  ids 
)

Definition at line 344 of file bls_wrapper.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SubInsecure()

void CBLSSignature::SubInsecure ( const CBLSSignature o)

Definition at line 282 of file bls_wrapper.cpp.

Here is the call graph for this function:

◆ VerifyInsecure()

bool CBLSSignature::VerifyInsecure ( const CBLSPublicKey pubKey,
const uint256 hash 
) const

Definition at line 289 of file bls_wrapper.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VerifyInsecureAggregated()

bool CBLSSignature::VerifyInsecureAggregated ( const std::vector< CBLSPublicKey > &  pubKeys,
const std::vector< uint256 > &  hashes 
) const

Definition at line 302 of file bls_wrapper.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ VerifySecureAggregated()

bool CBLSSignature::VerifySecureAggregated ( const std::vector< CBLSPublicKey > &  pks,
const uint256 hash 
) const

Definition at line 329 of file bls_wrapper.cpp.

Here is the caller graph for this function:

Friends And Related Function Documentation

◆ CBLSSecretKey

friend class CBLSSecretKey
friend

Definition at line 244 of file bls_wrapper.h.


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