﻿---
title: "Atomic swap"
description: "Un atomic swap coordina riscatti condizionati e successivi recuperi su due blockchain, ma non rende simultanee le conferme e non elimina commissioni, rischio di prezzo, monitoraggio e rischio di scadenza."
image: "https://wiki.fcontext.com/og.png"
---

> Documentation Index
> Fetch the complete documentation index at: https://wiki.fcontext.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Atomic swap

> Solo a scopo educativo; non costituisce consulenza né raccomandazione d’investimento. Gli investimenti possono comportare perdite.

<a id="answer"></a>

## Risposta diretta

Un atomic swap è un protocollo asincrono per scambiare asset senza affidare a un unico custode il controllo di entrambe le gambe. Nel modello classico con contratto hashlock e timelock (`HTLC`), una sola preimage autorizza entrambi i riscatti e scadenze differenti preservano i successivi percorsi di recupero. L'atomicità è condizionata: una parte onesta non dovrebbe perdere il capitale a favore della controparte solo perché lo scambio viene interrotto. Non significa conferme simultanee, rimborsi automatici o gratuiti, un prezzo di mercato equo, liquidità continua o anonimato.

Ogni implementazione deve vincolare blockchain o rete, asset e contratto, importo in unità grezze e decimali, chiavi di riscatto e recupero, costruzione dell'hash, byte esatti della preimage, script o bytecode e semantica del timelock. Due sistemi che espongono entrambi un hash e un orologio non sono automaticamente compatibili. I blocchi assoluti e relativi di Bitcoin, i timestamp EVM e la finalità di un'altra blockchain possono seguire regole sostanzialmente diverse.

Gli swap `HTLC` classici concedono inoltre una certa opzionalità di prezzo alla parte che agisce per ultima: può ritardare mentre decide se l'esecuzione sia ancora favorevole. Le firme adattatrici e altri protocolli scriptless modificano l'impronta on-chain e le ipotesi, ma non eliminano la necessità di verificare identità, orologi, commissioni, operatività e recupero.

<a id="mechanism"></a>

## Come funziona

1. Fissare entrambe le reti, gli asset, gli importi, il tasso di cambio, le chiavi, la codifica di hash e preimage, i byte di contratto o script, le unità temporali, il soggetto che paga le commissioni e le politiche di conferma o finalità.
2. Generare un segreto monouso ad alta entropia `x`, calcolare offline `h = H(x)` e fare in modo che entrambe le implementazioni riproducano il digest dagli stessi byte grezzi.
3. L'iniziatore finanzia la gamba con scadenza più lunga. Il partecipante ne verifica blockchain, asset, importo, chiavi, hash, codice e scadenza, quindi attende la profondità di sicurezza concordata.
4. Il partecipante finanzia la gamba con scadenza più breve. L'iniziatore ripete gli stessi controlli e attende le conferme o la finalità richieste.
5. Prima di un limite operativo anticipato, l'iniziatore riscatta la gamba breve con `x`, esponendo la preimage esatta nei dati canonici della transazione.
6. Il partecipante osserva il riscatto, verifica `H(x) = h` e riscatta la gamba lunga con tempo sufficiente per costruzione, trasmissione, adeguamento delle commissioni e finalità.
7. Se un controllo fallisce, interrompere ogni ulteriore esposizione. Dopo la maturazione di ciascun timelock applicabile, costruire o trasmettere attivamente il relativo recupero e riconciliare capitale, commissioni, durata del blocco e prove on-chain.

Il margine temporale essenziale è `T_long - T_short >= observation + construction + broadcast + confirmation/finality + reorg/operations buffer`. Valori nominali come 48 e 24 ore sono esempi, non parametri universalmente sicuri. Un timelock abilita soltanto un percorso di recupero; non trasmette la transazione né ne paga la commissione.

<a id="example"></a>

## Esempio

- **Byte dell'hash.** Solo a fini didattici, `abc` in UTF-8 corrisponde ai byte grezzi `0x616263`; `SHA-256(0x616263) = ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad`. Applicare l'hash al testo visualizzato `0x616263` produce un digest diverso. In produzione i segreti richiedono entropia crittografica e non devono essere riutilizzati.
- **Margine delle scadenze.** Si assuma che il recupero lungo maturi a `48.0 h` e quello breve a `24.0 h`. Se il riscatto breve viene trasmesso a `22.0 h`, l'osservazione richiede `0.5 h`, costruzione e trasmissione `0.5 h` e la conferma sulla blockchain lunga `1.5 h`, il completamento atteso avviene a `24.5 h`. Il margine residuo modellizzato della gamba lunga è `48.0 - 24.5 = 23.5 h`; non è una garanzia sulla produzione dei blocchi.
- **Opzionalità di prezzo.** Al momento dell'accordo, `1 BTC` a `$60,000` equivale a `20 ETH` a `$3,000`. Al riscatto BTC vale `$63,000` ed ETH `$2,800`; Alice consegna `$63,000` e riceve `20 x $2,800 = $56,000`, una differenza di `-$7,000` rispetto al mercato corrente, prima delle commissioni. L'atomicità del protocollo non fissa il valore economico.
- **Registro dell'interruzione.** Alice paga `0.00020 BTC` per finanziare e `0.00025 BTC` per recuperare, per un totale di `0.00045 BTC`, ossia `$27` a `$60,000/BTC`. Bob paga `0.006 ETH` per finanziare e `0.004 ETH` per recuperare, per un totale di `0.010 ETH`, ossia `$30` a `$3,000/ETH`. Il capitale ritorna in seguito, ma il costo di rete complessivo non rimborsabile è `$57`, oltre al costo opportunità.

<a id="risks"></a>

## Rischi

- Blockchain o dominio di rete errato.
- Asset nativo, contratto del token o decimali errati.
- Importo, chiave di riscatto o chiave di recupero errati.
- Algoritmo di hash o codifica dei byte incompatibili.
- Segreto a bassa entropia, riutilizzato o esposto prematuramente.
- Percorso di riscatto, script o bytecode difettoso.
- Percorso di recupero non valido, non disponibile o non firmato.
- Ordine delle scadenze invertito o margine inadeguato.
- Interpretazione errata di altezza, median time, timestamp o blocco relativo.
- Concorrenza tra riscatto e recupero della gamba breve in prossimità della scadenza.
- Una riorganizzazione elimina finanziamento, rivelazione o riscatto.
- Politica di conferma o finalità insufficiente.
- Aumento delle commissioni, espulsione dal mempool, censura o impossibilità di adeguare la commissione.
- Guasto di monitoraggio, RPC, indicizzatore, wallet o chiave.
- Ritardo o ostruzionismo della controparte e opzionalità sul capitale bloccato.
- Variazione di tasso di cambio, base e liquidità eseguibile.
- Difetto di chiamata EVM, reentrancy, gas, proxy o aggiornamento.
- Comportamento di emittente, bridge, hook, rebase o commissione di trasferimento di wrapped asset o token.
- Collegamento tra blockchain tramite hash, importo e tempistica riutilizzati.
- Errori fiscali, sanzionatori, legali, documentali o di disaster recovery.

<a id="misconceptions"></a>

## Errori comuni

- **Atomico significa simultaneo.** Le due blockchain procedono indipendentemente attraverso una macchina a stati ordinata e asincrona.
- **Un'interruzione rimborsa tutto automaticamente.** Di norma una parte deve attendere, inviare una transazione e pagare una commissione; problemi di monitoraggio o commissioni possono prolungare il blocco.
- **Due blockchain qualsiasi con hash e timelock sono interoperabili.** Algoritmi, codifiche, orologi, script, contratti e finalità devono realmente coincidere.
- **Non-custodial significa nessun rischio di controparte o di prezzo.** Restano ostruzionismo, opzionalità, volatilità e dipendenza operativa.
- **Gli atomic swap offrono liquidità e privacy.** Coordinano le condizioni di regolamento; non creano quotazioni, profondità, controparti o attività non collegabili.

<a id="related"></a>

## Argomenti correlati

- [HTLC](/it/crypto/htlc/)
- [Bridge cross-chain](/it/crypto/cross-chain-bridge/)
- [DEX](/it/crypto/dex/)

<a id="sources"></a>

## Fonti

- [Atomic Cross-Chain Swaps](https://doi.org/10.1145/3212734.3212736) - Association for Computing Machinery (consultato: 2026-08-13)
- [On the optionality and fairness of Atomic Swaps](https://doi.org/10.1145/3318041.3355460) - Association for Computing Machinery (consultato: 2026-08-13)
- [BIP 65: OP_CHECKLOCKTIMEVERIFY](https://bips.dev/65/) - Bitcoin Improvement Proposals (consultato: 2026-08-13)
- [BIP 112: CHECKSEQUENCEVERIFY](https://bips.dev/112/) - Bitcoin Improvement Proposals (consultato: 2026-08-13)
- [Contracts](https://developer.bitcoin.org/devguide/contracts.html) - Bitcoin Developer Documentation (consultato: 2026-08-13)
- [Transactions](https://developer.bitcoin.org/devguide/transactions.html) - Bitcoin Developer Documentation (consultato: 2026-08-13)
- [Atomic Swaps](https://docs.decred.org/advanced/atomic-swap/) - Decred Documentation (consultato: 2026-08-13)
- [Proof-of-stake (PoS)](https://ethereum.org/developers/docs/consensus-mechanisms/pos/) - Ethereum.org (consultato: 2026-08-13)

Source: https://wiki.fcontext.com/it/crypto/atomic-swap/index.mdx
