Dash Core Source Documentation (0.16.0.1)
Find detailed information regarding the Dash Core source code.
#include <bls_ies.h>
Public Types | |
typedef std::vector< unsigned char > | Blob |
typedef std::vector< Blob > | BlobVector |
Public Member Functions | |
bool | Encrypt (const std::vector< CBLSPublicKey > &recipients, const BlobVector &_blobs) |
void | InitEncrypt (size_t count) |
bool | Encrypt (size_t idx, const CBLSPublicKey &recipient, const Blob &blob) |
bool | Decrypt (size_t idx, const CBLSSecretKey &sk, Blob &blobRet) const |
template<typename Stream , typename Operation > | |
ADD_SERIALIZE_METHODS void | SerializationOp (Stream &s, Operation ser_action) |
Public Attributes | |
CBLSPublicKey | ephemeralPubKey |
uint256 | ivSeed |
BlobVector | blobs |
CBLSSecretKey | ephemeralSecretKey |
std::vector< uint256 > | ivVector |
Detailed Description
Member Typedef Documentation
◆ Blob
typedef std::vector<unsigned char> CBLSIESMultiRecipientBlobs::Blob |
◆ BlobVector
typedef std::vector<Blob> CBLSIESMultiRecipientBlobs::BlobVector |
Member Function Documentation
◆ Decrypt()
bool CBLSIESMultiRecipientBlobs::Decrypt | ( | size_t | idx, |
const CBLSSecretKey & | sk, | ||
Blob & | blobRet | ||
) | const |
Definition at line 115 of file bls_ies.cpp.
References base_blob< BITS >::begin(), blobs, DecryptBlob(), CBLSPublicKey::DHKeyExchange(), ephemeralPubKey, CBLSWrapper< ImplType, _SerSize, C >::GetBuf(), ivSeed, and SerializeHash().
Referenced by CBLSIESMultiRecipientObjects< Object >::Decrypt().
◆ Encrypt() [1/2]
bool CBLSIESMultiRecipientBlobs::Encrypt | ( | const std::vector< CBLSPublicKey > & | recipients, |
const BlobVector & | _blobs | ||
) |
Definition at line 67 of file bls_ies.cpp.
References InitEncrypt().
Referenced by CBLSIESMultiRecipientObjects< Object >::Encrypt().
◆ Encrypt() [2/2]
bool CBLSIESMultiRecipientBlobs::Encrypt | ( | size_t | idx, |
const CBLSPublicKey & | recipient, | ||
const Blob & | blob | ||
) |
Definition at line 99 of file bls_ies.cpp.
References blobs, EncryptBlob(), ephemeralSecretKey, CBLSWrapper< ImplType, _SerSize, C >::GetBuf(), and ivVector.
◆ InitEncrypt()
void CBLSIESMultiRecipientBlobs::InitEncrypt | ( | size_t | count | ) |
Definition at line 84 of file bls_ies.cpp.
References base_blob< BITS >::begin(), blobs, count, ephemeralPubKey, ephemeralSecretKey, CBLSSecretKey::GetPublicKey(), GetStrongRandBytes(), ivSeed, ivVector, CBLSSecretKey::MakeNewKey(), SerializeHash(), and base_blob< BITS >::size().
Referenced by Encrypt().
◆ SerializationOp()
|
inline |
Member Data Documentation
◆ blobs
BlobVector CBLSIESMultiRecipientBlobs::blobs |
Definition at line 87 of file bls_ies.h.
Referenced by Decrypt(), Encrypt(), CBLSIESMultiRecipientObjects< Object >::Encrypt(), InitEncrypt(), and SerializationOp().
◆ ephemeralPubKey
CBLSPublicKey CBLSIESMultiRecipientBlobs::ephemeralPubKey |
Definition at line 85 of file bls_ies.h.
Referenced by Decrypt(), InitEncrypt(), and SerializationOp().
◆ ephemeralSecretKey
CBLSSecretKey CBLSIESMultiRecipientBlobs::ephemeralSecretKey |
Definition at line 90 of file bls_ies.h.
Referenced by Encrypt(), and InitEncrypt().
◆ ivSeed
uint256 CBLSIESMultiRecipientBlobs::ivSeed |
Definition at line 86 of file bls_ies.h.
Referenced by Decrypt(), InitEncrypt(), and SerializationOp().
◆ ivVector
std::vector<uint256> CBLSIESMultiRecipientBlobs::ivVector |
Definition at line 91 of file bls_ies.h.
Referenced by Encrypt(), and InitEncrypt().
The documentation for this class was generated from the following files:
- src/bls/bls_ies.h
- src/bls/bls_ies.cpp