Blockchain Transaction Lifecycle Security Standard Audit Framework

previous: Mitigate Timing Attacks | Contents | next: Apply Transaction Policies to Generation

Verify Transaction Sets

Statement of Requirement

Producers that construct a related set of transactions SHOULD expose the complete set together, in a form sufficient to verify it performs exactly the intended actions with no missing and no extra steps.

See it in the specification

Applicability

Purpose

Ensure that multiple transactions are appropriately linked without performing unnecessary steps or skipping important safeguards.

Audit Procedure

Verify that the Producer exposes multiple transactions as a set

See also Simulate Transactions, Mitigate Timing Attacks

Success Criteria

The Producer exposes sufficient information about the relationship between a set of transactions created together to verify the overall behaviour of a set of transactions

Best Practice

If the Producer has a user interface, it allows users to simulate the impacts of a set of transactions including failures in a specific transaction within the set, specific timing attacks, various network configurations, and concurrent deployment of other transactions by third parties.

The Producer exposes the simulated results of deploying a set of transactions created together, including such eventualities as one transaction in the set failing, Timing Attacks, or other circumstances that mean deploying the set of transactions has an outcome that does not match the intent.

Failure Criteria

There is no mechanism to review a set of transactions beyond simple atomic simulation per Simulate Transactions

Justifiable Exceptions

This is a useful feature. However, its absence is justifiable on the grounds of keeping code or interfaces simple. Justification for not meeting this requirement does not need to be explicit.

Key Evidence

previous: Mitigate Timing Attacks | Contents | next: Apply Transaction Policies to Generation