Regole di Consenso vs Politica di Relay Ci sono molte persone nuove che discutono su X riguardo alla politica di relay in questi giorni (e alcune persone anziane che sono improvvisamente tornate). Vedo molta confusione e mescolanza tra Regole di Consenso e Politica. Ecco una breve spiegazione di ciascuna 🧵
Le regole di consenso sono regole che i nodi completi applicano per determinare quali transazioni sono valide. In altre parole, se il tuo nodo riceve un blocco contenente transazioni che violano le regole di consenso, il tuo nodo rifiuterà il blocco.
Supponiamo che il tuo nodo abbia una blockchain di lunghezza 100. Riceve un nuovo blocco che si basa sul 100° blocco. Ma contiene una transazione che viola alcune regole di consenso. Il tuo nodo scarterà quel blocco e continuerà ad aspettare l'arrivo di un 101° blocco.
Alcuni esempi di regole di consenso: - il sussidio del blocco attualmente è di 3,125 BTC. Se un miner prova a stampare di più, è invalido - le transazioni possono spendere solo monete non spese (niente doppia spesa) - gli script di blocco devono essere soddisfatti (che comportano le proprie regole) - Limite della dimensione del blocco
La Politica di Relay o Politica di Mempool controlla quali transazioni non confermate il tuo nodo relayerà ad altri nodi. I nodi Bitcoin formano una rete peer-to-peer con altri nodi. Quando un nodo trasmette una transazione, essa viene inviata a tutti i suoi peer, che la inviano a tutti i loro peer, e così via.
Alla fine, la transazione raggiunge un nodo che inserisce la transazione in un blocco. Nota che i miner possono inserire qualsiasi transazione vogliano in un blocco, comprese nessuna e comprese le transazioni che ricevono attraverso qualche altro meccanismo (vedi Mara Slipstream o Rebarlabs shield)
Una volta che una transazione è in un blocco, il tuo nodo la memorizzerà e la trasmetterà indipendentemente dalla politica, ma fino a quando non è confermata, il tuo nodo applica la politica per decidere se passarla o meno sulla rete p2p.
Ecco alcuni esempi di politiche: - la catena più lunga di transazioni padre/figlio non confermate (25) - il pacchetto di tx non confermati più grande - transazioni che utilizzano gli opcodes OP_SUCCESS - dimensione/conteggio massimo di op_return - numero massimo di elementi nello stack dei testimoni - modelli di scriptpubkey
Si noti che la politica è un SOTTOSETTO delle transazioni valide per il consenso. Questo è importante: potrebbe esserci una transazione che il tuo nodo NON rilancerà sulla rete P2P, ma una volta in un blocco il tuo nodo la accetterà volentieri. Questo è importante per gli aggiornamenti softfork, la resistenza alla censura, ecc.
Spero che questo sia d'aiuto!
18,99K