Che cos’è un Atomic swap?
Un atomic swap (in italiano “scambio atomico”) è il trasferimento di criptovaluta da una parte all’altra, senza l’uso di un exchange o altro intermediario.
Tradizionalmente, per acquistare o vendere una criptovaluta, un utente deve utilizzare un crypto exchange centralizzato.
Tutto ciò presenta diversi inconvenienti. Ad esempio, entrambe le parti devono trovare un exchange di cui si fidano, che abbia commissioni abbordabili e che non sia troppo utilizzato (in quel caso, potrebbe essere necessario più tempo per processare la transazione).
Al contrario, uno swap atomico consente lo scambio diretto da wallet a wallet tra due utenti (definiti “peer” o “pari”), utilizzando uno smart contract appositamente progettato per gli exchange decentralizzati.
AtomicDEX, uno dei più popolari crypto exchange decentralizzati (DEX) basati su atomic swap, fornisce un efficiente sistema di scambio peer-to-peer per il trading di criptovalute.
Gli atomic swap si basano su contratti hash timelock (HTLC). Ogni HTLC possiede un hashlock che può essere utilizzato per bloccare e sbloccare la criptovaluta depositata con una chiave disponibile solo per il depositante, e un timelock, che restituisce automaticamente i fondi al depositante se la transazione non viene completata entro un determinato periodo di tempo.
Esempio di Atomic swap
Supponiamo che Utente A e Utente B vogliano scambiare delle criptovalute in loro possesso tramite un atomic swap.
A tal proposito, Utente A crea un indirizzo HTLC e deposita la propria criptovaluta. A questo punto verrà creato un passcode insieme a un hash di quel codice.
Dopodiché, Utente A invia l’hash ad Utente B, che lo utilizza per generare un indirizzo. Utente B deposita la propria criptovaluta con quell’indirizzo. Poiché Utente A ha il passcode utilizzato per generare l’hash, può accedere alle criptovalute depositate da Utente B.
Infine lo smart contract invia il passcode ad Utente B, che lo utilizza per accedere alle monete depositate da Utente A.
Se questo processo non viene completato entro il termine indicato, entrambi i depositi vengono automaticamente restituiti al depositante di riferimento.