Fee

Commissione

Difficoltà: base

Argomento: tecnologia


DEFINIZIONE

Con questo termine nel caso delle criptovalute ci si riferisce ad una commissione che viene pagata per effettuare una transazione.

Fee per le transazioni on-chain

Le transazioni on chain sono quelle che vengono confermate all'interno di un blocco della blockchain bitcoin. Per queste, è l'utente che crea la transazione che decide quale importo vuole pagare per inserire la sua transazione on-chain. La fee viene incassata dal miner che inserisce la transazione nel blocco da lui minato, e costituisce quindi un incentivo ai miner per validare la transazione inserendola nel blocco della blockchain.

Le fee per confermare velocemente on-chain una transazione possono variare dal corrispondente di pochi centesimi a centinaia di dollari, a seconda dei livelli di congestione della mempool, e delle dimensioni delle transazioni. Le commissioni di transazione sono espresse in satoshis per unità di dati, abbreviato in sats/vByte).

Il protocollo bitcoin non definisce una fee di base obbligatoria, ma la maggior parte dei nodi della rete non trasmetterà le transazioni con una tariffa inferiore alla minRelayTxFee (generalmente 1 satoshi per vByte. Inoltre, la maggior parte dei miner non include le transazioni al di sotto della minRelayTxFee nei propri blocchi.

Molti wallet software possono avere impostate delle regole per impostare le fee, ad esempio delle soglie minime.

La tariffa minima necessaria per la conferma di una transazione varia nel tempo e deriva dall'intersezione della domanda e dell'offerta nel libero mercato dei blocchi della blockchain Bitcoin. Per quanto riguarda la dimensione dell'offerta, Bitcoin ha una block size, la dimensione massima del blocco (attualmente un milione di vbyte) che limita la quantità massima di dati di transazione che possono essere aggiunti a un blocco.

Le fee on-chain non sono condizionate dall'importo della transazione, ovvero non è necessario pagare fee più alte se l'importo della transazione è più alto, ma possono essere condizionate dal peso ovvero dalla dimensione della transazione; per il miner, che può decidere in base alle fee quali transazioni inserire nel blocco che sta minando, è assolutamente ininfluente l'importo della transazione; è invece importante quale sia il peso della transazione ovvero lo spazio che occupa la transazione nel blocco. Una transazione che ha molti input in ingresso e molti output in uscita, sarà ad esempio più pesante rispetto ad una transazione che ha un solo input in ingresso e uno o due in uscita, a prescindere dagli importi in bitcoin delle transazioni, e quindi per essere confermata prima diventa opportuno attribuirgli delle fee più alte.

I miner nel confezionare un blocco scelgono dalla mempool, l'area di transito delle transazioni in attesa di essere confermate, quelle transazioni che gli consentono di massimizzare il MEV, miner extractable value o maximal extractable value; se la mempool è particolarmente congestionata, ovvero ci sono molte transazioni in attesa, diventa necessario impostare fee più alte per vedere la propria transazione confermata.

Una volta creata una transazione e trasmessa alla rete, se la transazione tarda ad essere confermata, l'utente che l'ha creata può, grazie alla funzionalità RBF, Replace By Fee, aumentare l'importo della fee per accelerarne la conferma.

Fee su Lightning Network

Nel contesto Lightning Network, sono i nodi che gestiscono i canali attraverso i quali passano i pagamenti, i routing node, che addebitano le commissioni di instradamento per l'inoltro dei pagamenti di altri utenti.

Bisogna anche considerare che un pagamento su Lightning Network può attraversare diversi canali: sia perché non è detto che esista un canale che collega direttamente il nodo al quale è collegato chi paga, e chi riceve, e anche perché i canali possono non avere sufficiente liquidità e quindi può essere necessario frazionare il pagamento su diversi canali. Questo fa in modo che le fee totali saranno uguali alla somma delle fee dei singoli canali. I routing node possono addebitare una commissione per il ruolo di intermediario, anche se non sono obbligati a farlo e possono scegliere di instradare i pagamenti gratuitamente.

I singoli nodi possono stabilire le proprie politiche tariffarie, che possono farlo sulla base del calcolo come somma di una tariffa di base base_fee fissa e di una tariffa fee_rate dipendente dall'importo del pagamento.

base_fee

La base_fee è una somma fissa che viene addebitata per ogni inoltro, in genere 1 satoshi. È anche possibile impostare una tariffa base più alta o pari a 0, o addebitare qualsiasi importo di millisatoshi. Poiché ogni inoltro costa in termini di potenza di calcolo e di memoria, la base_fee ha lo scopo di compensare gli sforzi compiuti per inoltrare un pagamento.

Ad esempio, per ogni nuovo stato del canale il nodo deve tenere in archivio una nuova chiave di revoca. Se si utilizza una watchtower, queste informazioni devono essere inviate e memorizzate anche sulla watchtower.

Tali informazioni devono essere conservate fino alla chiusura del canale, il che può essere costoso.

Per migliorare le prestazioni di Lightning Network esiste una iniziativa chiamata Zero Base Fee

fee_rate

Il fee_rate è una percentuale del pagamento che viene inoltrato, generalmente misurata in ppm, parti per milione. Ha lo scopo di compensare il capitale impegnato nei canali Lightning.

Fee negli exchange

Nel caso degli exchange, la fee può essere un importo proporzionale impostato dall'exchange per effettuare lo scambio.


aggiornato il 2022-10-19