CatapultServer
v0.5.0.1 (Elephant)
|
Go to the documentation of this file.
24 namespace catapult {
namespace model {
class TransactionRegistry; } }
26 namespace catapult {
namespace extensions {
auto Transactions(EntityContainerErrorPolicy errorPolicy=EntityContainerErrorPolicy::Throw)
Definition: TransactionContainer.h:37
utils::ByteArray< Hash256_Size, Hash256_tag > Hash256
Definition: src/catapult/types.h:47
void SignBlockHeader(const crypto::KeyPair &signer, Block &block)
Definition: BlockUtils.cpp:63
void calculateBlockTransactionsHash(const model::Block &block, Hash256 &blockTransactionsHash) const
Definition: BlockExtensions.cpp:57
void signFullBlock(const crypto::KeyPair &signer, model::Block &block) const
Cryptographically signs a full block with signer.
Definition: BlockExtensions.cpp:68
Hash256 EntityHash
Entity hash.
Definition: Elements.h:66
Block transactions hash is invalid.
catapult::GenerationHash GenerationHash
Generation hash of the block.
Definition: Elements.h:69
Hash256 CalculateMerkleComponentHash(const Transaction &transaction, const Hash256 &transactionHash, const TransactionRegistry &transactionRegistry)
Definition: EntityHasher.cpp:65
const TPlugin * findPlugin(TPluginKey type) const
Finds the plugin corresponding to type or nullptr if none is registered.
Definition: PluginRegistry.h:38
VerifyFullBlockResult verifyFullBlock(const model::Block &block) const
Cryptographically verifies a full block by checking all signatures and hashes.
Definition: BlockExtensions.cpp:76
std::vector< TransactionElement > Transactions
Transaction elements.
Definition: Elements.h:75
A transaction signature is invalid.
Extensions for working with transactions.
Definition: TransactionExtensions.h:27
Builder for creating a merkle hash.
Definition: MerkleHashBuilder.h:28
std::function< Hash256(const model::Transaction &)> m_calculateTransactionEntityHash
Definition: BlockExtensions.h:75
Represents a pair of private key with associated public key.
Definition: KeyPair.h:33
BlockExtensions(const GenerationHash &generationHash)
Definition: BlockExtensions.cpp:32
model::BlockElement convertBlockToBlockElement(const model::Block &block, const GenerationHash &generationHash) const
Definition: BlockExtensions.cpp:97
void update(const Hash256 &hash)
Adds hash to the merkle hash.
Definition: MerkleHashBuilder.cpp:72
Hash256 CalculateHash(LockHashAlgorithm hashAlgorithm, const RawBuffer &data)
Calculates hashAlgorithm hash of data.
Definition: LockHashUtils.cpp:46
GenerationHash m_generationHash
Definition: BlockExtensions.h:74
Processing element for a transaction composed of a transaction and metadata.
Definition: Elements.h:33
Processing element for a block composed of a block and metadata.
Definition: Elements.h:55
std::function< Hash256(const model::Transaction &, const Hash256 &)> m_calculateTransactionMerkleComponentHash
Definition: BlockExtensions.h:76
Binary layout for a block.
Definition: Block.h:69
Block signature is invalid.
Extensions for working with blocks.
Definition: BlockExtensions.h:44
VerifyFullBlockResult
Possible results of verifying a full block.
Definition: BlockExtensions.h:29
Definition: AddressExtractionExtension.cpp:28
A registry of transaction plugins.
Definition: TransactionPlugin.h:98
void updateBlockTransactionsHash(model::Block &block) const
Definition: BlockExtensions.cpp:53
GenerationHash m_generationHash
Definition: HashCalculatorConsumer.cpp:67
bool VerifyBlockHeaderSignature(const Block &block)
Validates signature of block header.
Definition: BlockUtils.cpp:67
bool verify(const model::Transaction &transaction) const
Verifies signature of the transaction.
Definition: TransactionExtensions.cpp:43
void final(Hash256 &hash)
Finalizes the merkle hash into hash.
Definition: MerkleHashBuilder.cpp:76
Binary layout for a transaction.
Definition: Transaction.h:32