雙花的複雜

2019/05/16閱讀時間約 1 分鐘
網路上有許多解釋雙花(double-spending)攻擊的文章
可是個人認為都不夠全面 , 所以來談談這問題各個面向

雙花的過程

假設有賣家 A , B
攻擊者 C
  1. 攻擊者 C 先向賣家 A 買東西
  2. 等共識機制讓 C 轉帳 A 的交易確認後
  3. 攻擊者 C 發動攻擊 , 讓 C 轉帳 A 的交易無效
  4. 攻擊者 C 在攻擊後 , 跟賣家 B 買東西
從上可以注意到幾個關鍵的地方
  1. 攻擊者 C 會是消費者
  2. 兩位賣家 A , B , 先賣的那位最終會收不到錢
  3. 交易的確認條件 , 會是個關鍵
  4. 購買東西的價值 , 或在市場上能賣出的價格

經濟的分析

雙花最終會不會有人做 , 取決於攻擊的成本與購買的標的
看幾個新聞就知道了
可以看到 , 都攻擊交易所居多
因為交易所可以直接換成法幣
以上面的過程來說 , 賣家 A 就是交易所
攻擊者買的是法幣
本質上 , 雙花要討論攻擊成本與攻擊後的收益
所以如果幣可以買房子 , 那雙花幾乎會出現
只要攻擊的成本低於房子的售價

賣家的策略

注意到交易確認的條件
實際上攻擊的過程中 , 是假設賣家只看是否確認
但事實上 , 賣家可以額外加入條件來決定要不要交貨
例如提高確認所需的區塊數
或交易確認後 , 一週後才發貨
當然這些方法還需要討論 , 但可以注意到攻擊成功難度是會上升的

後語

原則上雙花是各種公鏈都有的問題 , 隨著不同的共識機制有不同的攻擊手法
基本上共識機制就是處理雙花用的 , 沒有雙花不需要共識機制
3會員
10內容數
留言0
查看全部
發表第一個留言支持創作者!