archethic-foundation / archethic-foundation/archethic-node

Adds a beacon summary's proof transaction

Open
#1,644 0 comments 0 reactions 0 assignees View on GitHub
beacon chain feature self repair
Dominant language
Elixir
Stars
82
Forks
24
PR merge metrics
No merged PRs in 30d

Description

### Is your feature request related to a problem?

Currently, there is no guarantee a transaction is included in a beacon summary aggregate -- which list of the transactions of the day.
To avoid malicious actor to inject a new transaction in the past, we should provide some proof about sealing of a beacon aggregate and ensure a transaction cannot be injected in a previous transaction listing.

### Describe the solution you'd like

All the nodes are doing the self-repair, during this phase, the nodes are forging a beacon aggregate to accumulate and create aggregation of all the transactions for all the subsets (0-256 beacon). Hence, we have a complete view of the transactions to seal.

At this point, a node can forge a transaction's beacon summary, including a Merkel tree proof, from the list of transactions hashes for the given aggregate.
For the validation of the transaction, because all the nodes have the access of the beacon aggregate, the nodes are capable to check if the Merkel root is valid.

Later on, to check if a transaction is part of the beacon summary, the nodes could generate a Merkel verification path to ensure the transaction is part or not part of the list, and accept the transaction or not.

### Additional context

_No response_

### Epic

_No response_

Contributor guide

Open the contributing guide

Research direction

No files, tests, or entry points are named. Start by locating the beacon aggregate self-repair and transaction-validation paths, then trace how transaction hashes are represented and sealed. Completion should cover generating and validating a Merkle proof that establishes whether a transaction belongs in the aggregate without allowing prior-list injection.

Written by the indexing model from the issue text.

Assessment

Tech stack
elixir
Domain
blockchain
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.