原子的な交換(atomic swap)

ブロック鎖1で(十分な量の)貨幣/資産を所有している甲及びブロック鎖2で(十分な量の)貨幣/資産を所有している乙が夫々の所有する貨幣/資産を交換することが可能である。
夫々の貨幣/資産は同種であっても、異種であっても良い。夫々の貨幣/資産の量も如何様であっても良い。結局、両者に合意があれば良いだけということである。

1.甲は秘密値aを生成する。
2.甲は自身が所有する貨幣/資産を取引出力O1に移動する取引を作成する。取引出力O1は次の何れかの値があれば使用することができる。甲は当該取引をまだ公開しないでおく。
  a.秘密値a及び乙の署名
  b.甲及び乙の署名
3.甲は取引出力O1の貨幣/資産を自身の口座に移動する取引を作成する。この取引のlocktimeは48時間とする(48時間経過するまでは有効な取引とならない)。甲は当該取引を乙に送付し、署名してもらう。乙が当該取引に署名して甲に返付した場合には、甲は安全に2の取引を公開することができる。
4.甲は2の取引を公開する。
5.乙は自身が所有する貨幣/資産を取引出力O2に移動する取引を作成する。取引出力O2は次の何れかの値があれば使用することができる。乙は当該取引をまだ公開しないでおく。
  a.秘密値a及び甲の署名
  b.甲及び乙の署名
6.乙は取引出力O2の貨幣/資産を自身の口座に移動する取引を作成する。この取引のlocatimeは24時間とする(24時間経過するまでは有効な取引とならない)。乙は当該取引を甲に送付し、署名してもらう。甲が当該取引に署名して乙に返付した場合には、乙は安全に5の取引を公開することができる。
7.甲は秘密値aを知っているため、取引出力O2を使用することができる。甲が取引出力O2を使用した場合には、秘密値aが公開され、乙は取引出力O1を使用することができる。即ち、甲及び乙が夫々所有する貨幣/資産を交換することができる。甲が取引出力O2を使用しない場合には、24時間経過後乙は6の取引を使って取引出力O2の貨幣/資産を自身の口座に移動することができる。48時間経過後甲は3の取引を使って取引出力O1の貨幣/資産を自身の口座に移動することができる。即ち、甲が何もしないで24時間経過すると交換が行われないまま一連の取引の執行の完了となる。