Serguei Popov, matematico e membo del consiglio di amministrazione della IOTA Foundation ci parla dell’idea di libertà dei nodi del Tangle.

Chi controlla il comportamento del nodo?

Come tutti voi sapete, dice Serguei, fin dall’inizio volevamo costruire un sistema crittografico senza costi di transazione. Come spiegato più volte (ad esempio qui), per sbarazzarsi delle commissioni bisogna sbarazzarsi dei minatori. I minatori sono quegli individui che hanno qualche risorsa (potere di hashing, stake, ecc.) che altri non hanno. Questo significa che avendo investito qualcosa per averla ed è naturale sentire il desiderio di trarre profitto facendo pagare delle commissioni.

L’implicazione è che, senza minatori, il sistema deve essere collaborativo: gli utenti dovrebbero aiutarsi controllando le transazioni altrui. Come per qualsiasi sistema di questo tipo, esiste una possibile esistenza di free riders : individui che vogliono usare il sistema, ma non vogliono contribuire ad esso.

Permettetemi di ricordarvi che chiamiamo tips le transazioni che non hanno ancora alcuna approvazione; per definizione, tutte le transazioni in entrata iniziano come tips. Approvando una transazione, si approvano indirettamente anche tutti i tips “predecessori”. Intuitivamente, è chiaro che per aiutare l’avanzamento del sistema, le transazioni in entrata devono approvare i tips perché questo aggiunge nuove informazioni al sistema. Purtroppo, le informazioni non si propagano immediatamente attraverso la rete; a volte ci sono ritardi. Pertanto, non è davvero possibile imporre una condizione che le transazioni in entrata approvino solo i tips: come si fa a sapere che una transazione che si potrebbe credere un tip, non ha ricevuto l’approvazione di qualcun altro una frazione di secondo fa?

Nel 2015, insieme a CfB (Come from Beyond a.k.a. Sergey Ivancheglo), abbiamo passato molto tempo a cercare di capire come costringere i nodi a comportarsi in un certo modo (ad esempio, per approvare solo i tips). Abbiamo considerato alcune regole complicate e bizzarre che i nodi avrebbero dovuto seguire per far accettare le loro transazioni dal sistema. Tuttavia, nulla di tutto ciò avrebbe potuto funzionare. Queste regole complicate, non solo avrebbero portato difficoltà ai nodi onesti a far accettare le loro transazioni, ma avrebbero anche aperto agli aggressori la possibilità di interferire con il sistema. Poi, infine, abbiamo deciso di attenersi a una sola regola assoluta: ogni transazione approva due transazioni precedenti. Lo stesso protocollo IOTA non richiede di selezionare due transazioni particolari da approvare, e non richiede di approvarle secondo una serie di regole da seguire. IOTA in questo senso è veramente aperto perché si è liberi di accettare qualsiasi transazione, e lo stesso vale per qualsiasi attore della rete.

Quello che a quel punto non ci siamo resi conto completamente, è che questo ha reso il sistema essenzialmente libero. A causa del piccolo numero di regole “dure”, gli attori considerano di comportarsi in modo “naturale”. Il nostro ruolo si limitava allora a proporre un insieme di “leggi” (come l’algoritmo di selezione dei tip MCMC, in inglese n.d.t.) che sono accettate volontariamente dai nodi e che fanno funzionare ragionevolmente bene la “società” dei nodi IOTA. In un certo senso, siamo consiglieri benevoli, niente di più.

Allora, quali sono questi comportamenti “naturali” dei nodi? Elaboreremo ulteriormente in una serie di blog post. Ad esempio, se avete un vicino di casa che vi maltratta ripetutamente (e.g. inviando molto spam o transazioni “cattive”), è naturale tagliare le connessioni con questo vicino, vero? Se, per qualche motivo, vi fidate di una certa entità, è abbastanza ragionevole per voi dare più peso anche alle transazioni che arrivano da lì. Inoltre, ricordate l’idea dei modificatori locali: i nodi della rete possono interagire con il registro distribuito in modi diversi, a seconda delle informazioni a loro disposizione localmente. Perché lo farebbero? Nuovamente, perché è ragionevole: se vedi che qualcosa di sospetto è stato improvvisamente inserito nel registro distribuito, non sei obbligato a collaborare con esso, dato che può essere uno dei tanti attacchi del tipo “fai qualcosa di nascosto e poi trasmetti”.

Ora mi fermo qui; presto arriveranno ulteriori dettagli. Vorrei solo fare un’osservazione conclusiva. IOTA funziona bene e funzionerà ancora meglio proprio grazie a questa libertà. Proprio come la società umana si adatta alle mutevoli circostanze (e, in ultima analisi, questo generalmente funziona bene), i nodi della rete adotterebbero volontariamente nuove regole ragionevoli che permettono al sistema di funzionare e difendersi dagli aggressori e dai free riders.


Il testo originale in lingua inglese si trova qui: https://blog.iota.org/iota-and-freedom-bfc76770cd77


Da oggi è possibile dare il vostro supporto su Patreon https://www.patreon.com/antonionardella

Per ulteriori informazioni in italiano o tedesco trovate i miei contatti a questa pagina.
Se avete trovato utile la mia libera traduzione, accetto volentieri delle donazioni 😉

IOTA:
QOQJDKYIZYKWASNNILZHDCTWDM9RZXZV9DUJFDRFWKRYPRMTYPEXDIVMHVRCNXRSBIJCJYMJ9EZ9USHHWKEVEOSOZB
BTC:
1BFgqtMC2nfRxPRge5Db3gkYK7kDwWRF79

Non garantisco nulla e mi libero da ogni responsabilità.


Also published on Medium.