Module-level declarations

Types

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Properties

Link copied to clipboard
val iccf_op_name: text = "iccf_proof"

Inter-Chain Confirmation Facility (ICCF)

This module intends to make it easier for developers to verify that a proof has been sent as a separate operation in this transaction.

Functions

Link copied to clipboard
function _get_hash_version(block_header: block_header): integer
Link copied to clipboard
function _get_proof(gtx_transaction: gtx_transaction, require_anchored_proof: boolean): (tx_hash: byte_array, confirmation_proof: confirmation_proof, block_header: block_header)?

Returns the confirmation_proof corresponding to the given transaction if there is any present in current transaction. It also returns transaction hash and a decoded version of the block header in the proof.

Link copied to clipboard
function _has_signers(gtx_transaction: gtx_transaction): boolean

Checks whether or not the current transaction is signed by the same signers as the given transaction

Link copied to clipboard
function extract_operation_arg(gtx_transaction: gtx_transaction, op_name: text, arg: integer, verify_signers: boolean, require_anchored_proof: boolean, min_timestamp: integer, max_timestamp: integer, valid_source_blockchain_rids: set<byte_array>?): gtv

Requires the presented transaction to be proved and extracts an argument from the specified operation

Link copied to clipboard
function extract_operation_args(gtx_transaction: gtx_transaction, op_name: text, verify_signers: boolean, require_anchored_proof: boolean, min_timestamp: integer, max_timestamp: integer, valid_source_blockchain_rids: set<byte_array>?): list<gtv>

Requires the presented transaction to be proved and extracts arguments of the specified operation

Link copied to clipboard
function make_transaction_unique(gtx_transaction: gtx_transaction)

Prevents this transaction to be proved multiple times by storing the hash

Link copied to clipboard
function require_and_return_valid_proof(gtx_transaction: gtx_transaction, verify_signers: boolean, require_anchored_proof: boolean, min_timestamp: integer, max_timestamp: integer, valid_source_blockchain_rids: set<byte_array>?): confirmation_proof

Requires the presented transaction to be proved

Link copied to clipboard
function require_operation(gtx_transaction: gtx_transaction, op_name: text, verify_signers: boolean, require_anchored_proof: boolean, min_timestamp: integer, max_timestamp: integer, valid_source_blockchain_rids: set<byte_array>?): gtx_operation

Requires the presented transaction to be proved and extracts the specified operation

Link copied to clipboard
function require_valid_proof(gtx_transaction: gtx_transaction, verify_signers: boolean, require_anchored_proof: boolean, min_timestamp: integer, max_timestamp: integer, valid_source_blockchain_rids: set<byte_array>?): list<gtx_operation>

Requires the presented transaction to be proved