Client

離線比特幣支付

  • August 27, 2013

通過藍牙或 NFC 進行離線比特幣交易或支付的安全性和時間效率如何?通過您的手機(離線)付款和接收方檢查交易的場景。

以及如何確認我的付款(發件人),因為我只是離線設備。線上是接收者。

如果您通過手機付款,您的應用很可能會根據您地址可用的未使用輸入創建並簽署交易。然後將其傳遞給將其發佈到區塊鏈的接收者。此交易無法修改,只能發佈到網路以證明付款。因此,從您的角度來看,通過藍牙、NFC 甚至通過 QR 碼共享交易進行支付是安全的。

不幸的是,由於比特幣是基於網路的,除非您可以 [通過網際網路] 連接到網路,否則您無法確認任何內容,但作為交易的發送者,您實際上並不需要。您可以/應該只假設輸入已花費,因為一旦創建了該交易,它就可以隨時發佈為有效(前提是它的輸入尚未花費)。

當您確實可以訪問網際網路以確認您的輸入已用完時,您仍然可以在將來的任何時候檢查區塊鏈。如果不是,您可以繼續將它們用於另一筆交易。當原始交易在這個新交易之後進入區塊鏈時,它被拒絕,因為它的輸入已經被花費。因此,盡快發佈區塊鏈並確認付款實際上符合接收方的利益。這對發件人來說並不重要。

如果接收方線上,則與完全線上交易一樣好。接收方可以像任何其他交易一樣檢查有效性和雙花。事實上,如果已知發送者離線,它們會更快、更安全,因為發送者不能同時雙花。

作為發件人,您的客戶端軟體應該能夠確認您已發送發送交易。但是,如果不線上,您不知道交易是否傳播成功。收款人可能會試圖欺騙您,讓您相信付款從未收到,同時秘密收取資金。

如果接收器也離線,它會變得更加複雜。如果雙方之前都線上並在他們之間建立了支付渠道,它就可以工作。或者,如果硬幣足夠舊,接收方之前線上並且相信發送方不會竭盡全力進行雙花,他可以離線接收硬幣。

引用自:https://bitcoin.stackexchange.com/questions/12959