OpenCBDC Transaction Processor
Loading...
Searching...
No Matches
transaction.hpp File Reference
#include "crypto/sha256.h"
#include "util/common/hash.hpp"
#include "util/common/keys.hpp"
#include "util/serialization/format.hpp"
#include "util/serialization/util.hpp"
#include <cstdint>
#include <optional>
Include dependency graph for transaction.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  cbdc::transaction::out_point
 The unique identifier of a specific output from a transaction. More...
 
struct  cbdc::transaction::output
 An output of a transaction. More...
 
struct  cbdc::transaction::input
 An input for a new transaction. More...
 
struct  cbdc::transaction::full_tx
 A complete transaction. More...
 
struct  cbdc::transaction::compact_tx
 A condensed, hash-only transaction representation. More...
 
struct  cbdc::transaction::compact_tx_hasher
 

Namespaces

namespace  cbdc
 
namespace  cbdc::transaction
 

Typedefs

using cbdc::transaction::sentinel_attestation = std::pair<pubkey_t, signature_t>
 Sentinel attestation type.
 

Functions

auto cbdc::transaction::tx_id (const full_tx &tx) noexcept -> hash_t
 Calculates the unique hash of a full transaction.
 
auto cbdc::transaction::input_from_output (const full_tx &tx, size_t i, const hash_t &txid) -> std::optional< input >
 Converts the output at the specified index to an input.
 
auto cbdc::transaction::input_from_output (const full_tx &tx, size_t i) -> std::optional< input >
 Calls input_from_output after calculating the TXID.
 
auto cbdc::transaction::uhs_id_from_output (const hash_t &entropy, uint64_t i, const output &output) -> hash_t