在上一篇文章中,Alice 和 Bob 建立了一個雙向的支付通道。現在,Alice 想要給一個第三方 Carol 支付 1 btc。
一般來說,Alice 和 Carol 需要在彼此之間開設一個支付通道。但實際上并不需要。因為 Bob 和 Carol 之間已經有了一個通道,所以 Alice 可以通過 Bob 給 Carol 支付。
具體來說,Alice 可以給 Bob 支付 1 btc,而 Bob 再支付 1 btc 給 Carol。
但是,Alice 實際上并不信任 Bob,或者 Carol 并不信任 Bob。她擔心把錢給 Bob 之后,Bob 不會給 Carol;又或者,他把錢給了 Carol,但 Carol 謊稱自己壓根沒見到錢,而 Alice 也不知道該找哪個來追責。
華為:幫助巴基斯坦政府官員對區塊鏈等前沿技術領域理解和應用:金色財經報道,為助力巴基斯坦總理伊姆蘭·汗提出的“數字巴基斯坦”愿景,華為已經與巴基斯坦信息技術和通信部達成合作協議,為巴基斯坦1000名政府官員開展信息與通信技術培訓,幫助他們對區塊鏈等前沿技術領域有更深入的理解和應用。(人民網-國際頻道)[2021/9/4 22:59:19]
因此,Alice 希望能保證,僅當 Bob 給了 Carol 1 btc,自己才需要給 Bob 支付 1 btc。
當 Alice 要給 Carol 支付 1 btc 時,她讓 Carol 先生成一個秘密值(一個隨機的數字串)并把對應的哈希值發給她。Alice 也告訴 Carol 可以用這個秘密值跟 Bob 交換 1 btc。
動態 | dotBC與Digimarc合作 結合區塊鏈技術提供版權管理解決方案:據Music Business Worldwide消息,美國版權管理公司dotBC與Digimarc Corporation合作,在dotBC產品中提供數字音頻水印技術Digimarc音頻條碼。Digimarc公司首席執行官Bruce Davis表示,“兩家公司的合作伙伴關系展示了Digimarc音頻條形碼與區塊鏈相結合的強大功能,以確保權利所有權與受版權保護的內容正確且安全地相關聯。”[2019/4/10]
與此同時,Alice 把從 Carol 處得到的哈希值發給 Bob,并告訴 Bob 如果 Bob 能提供對應于這個哈希值的原始值,她就會給 Bob 1 btc(這個原始值當然只有 Carol 擁有)。
聲音 | 嘉楠耘智聯席董事長:研究區塊鏈需借助比特幣來加深理解:嘉楠耘智聯席董事長孔劍平在17日的行業會議上發表演講,表示目前區塊鏈處于探索階段。作為比特幣的底層技術,現階段研究區塊鏈,還需要借助比特幣來加深對其理解。孔劍平同時呼吁,未涉足區塊鏈領域或與之相關領域的投資者理性投資,避免淪為韭菜。[2018/10/17]
所以 Bob 找到 Carol,用 1 btc 換來了 Carol 的初始值。
然后,Bob 找回 Alice,提供這個初始值。Alice 因此知道了 Bob 一定給過錢了,也就是 Carol 肯定已經收到了 1 btc,于是就把錢給了 Bob。
皆大歡喜。
聲音 | 趙余:“彩虹表攻擊”可以簡單理解為“字典攻擊”:EOS LaoMao 的趙余在《寧話區塊鏈》之全球EOS節點答疑的節目中稱 “前兩天發生的’彩虹表攻擊’,是由于有些開發者通過設計的自定義助記詞功能不完善。既沒有過濾空字符串,也沒有強制用戶設置足夠長的助記詞。導致黑客可以通過簡單的窮舉,就能拿到部分賬戶的私鑰。EOS 彩虹表攻擊始末:EOS 官方庫 eosjs-ecc(https://github.com/EOSIO/eosjs-ecc) 提供了一個自定義助記詞生成密鑰的接口。有些開發者使用這個接口,做了一個用戶可以自定義助記詞的密鑰生成工具。但是由于產品設計問題,具體問題是下面兩個:1. 沒有過濾空字符串;2. 沒有強制要求用戶自己填寫的助記詞的長度必須達到足夠安全的長度(比如 12 個獨立的單詞作為助記詞,就可以認為安全性很高了)。導致部分用戶,使用了簡單的字母或單詞作為助記詞生成了自己的私鑰。比如 a, b, c, hello, world 等等。這就導致黑客可以輕而易舉地“窮舉”常見的單詞,字母,以及單詞組合,進而拿到用戶私鑰,最終轉移用戶資產。這個“窮舉”的方法,一般也被稱為“彩虹表”攻擊。對于使用自定義助記詞功能生成私鑰的用戶,建議自查助記詞長度,確保助記詞長度不少于 12 個單詞。”[2018/7/17]
幾乎,啊,幾乎是皆大歡喜。
在這種「過家家」的情形下,中間人 Bob 還是需要新人 Alice 和 Carol。Bob 必須相信 Carol 給他的是一個真正有用的值(不然錢都給了就拿不回來了),而且要相信 Alice 真的會給他 1 btc,假如他能提供對應于哈希值的原像的話。
這時候,我們就需要哈希時間鎖合約(HTLC)啦。
哈希時間鎖可以讓 Alice 和 Bob 用秘密值來交換 btc(當然 Bob 和 Carol 也需要這個,但我們先按下不提)。
為了使用哈希時間鎖,Alice 要將 1 btc 發送至一個新的多簽地址,而非直接發送給 Bob。這個地址中鎖定的 btc 可以通過兩種方式解鎖。
第一種方式是 Bob 將自己的簽名和秘密值一起發送至該地址。
第二種方式是 Alice 將自己的簽名發送至該地址。但是,這個方式存在 CLTV 時間鎖限制:Alice 必須等待一段時間(例如兩周)才能簽署并廣播交易取走這個 btc。
也就是說,Bob 有兩周時間來創建一個包含簽名和秘密值的交易,并廣播該交易,將多簽地址上的 btc 發送給自己。這樣一來,這筆交易就有了保證。只要 Bob 能提供秘密值,他就能取走 Alice 的 btc:在比特幣網絡公開廣播該交易可以讓 Alice 看到它。
如果 Bob 沒有在規定時限內提供秘密值,Alice 就可以取回她的 btc。就這么簡單。
再說回網絡,因為這是哈希時間鎖合約真正發揮作用的地方。
如上文所述,不僅 Alice 和 Bob 之間有哈希時間鎖合約,Bob 和 Carol 之間也有。因此,如果 Carol 向 Bob 索要 btc,Bob 也可以從 Carol 那里取得秘密值。這些在區塊鏈上都是可見的。
因此,如果發生這種情況,Bob 也一定可以從 Alice 那里拿到 1 btc。Bob 可以將從 Carol 那里拿到的秘密值在鏈上公開,發送至他與 Alice 的哈希時間鎖合約,然后取走多簽地址上的 1 btc。這兩個狀態通道有效地關聯了起來。
最后要強調的一點是,Bob 必須在有效期內從 Carol 那里拿到秘密值,否則 Alice 就有可能取回多簽地址上的 1 btc。如果等 Alice 取回 1 btc 之后 Bob 才從 Carol 那里拿到了秘密值,Bob 就會被卡在中間進退兩難。因此,Bob 和 Carol 的哈希時間鎖合約必須比 Alice 和 Bob 的先到期(例如,前者的時限可以設成 10 天,而非兩周)。這就是為什么哈希時間鎖合約需要 CheckLockTimeVerify(絕對時間鎖)而非 CheckSequenceVerify(相對時間鎖)。
最后還有一個問題需要解決:要保證閃電網絡的可用性,所有這些必須在鏈下完成。具體是如何實現的將在本系列第三篇文章中揭曉。
Tags:BOBROLCAROCARNABOBroll幣能出泰沙拉克嗎Meta RicaroGlobal Funeral Care
外媒Bitcoinexchangeguide消息顯示,美國財政部長珍妮特·耶倫 (Janet Yellen) 上周宣布計劃召集總統金融市場工作組 (PWG).
1900/1/1 0:00:007月15日,國際權威數據公司IDC發布了2020年中國BaaS廠商市場份額報告。報告顯示,螞蟻鏈以31.7%的市場占有率位居第一,華為、浪潮分別以12.6%和11.7%的市場占有率位居第二、第三.
1900/1/1 0:00:00六月末,Facebook CEO馬克·扎克伯格向員工介紹了一項雄心勃勃的新計劃。根據這項計劃,該公司的業務范疇將遠遠超出當前的一系列社交應用以及相關的硬件項目.
1900/1/1 0:00:00LUSD具有超額抵押穩定幣里最優秀的機制,雖然上線時間不足3個月,但是其機制的有效性已經完全得到驗證.
1900/1/1 0:00:00隨著客戶對投資加密貨幣的需求增長,已有越來越多投行開始提供加密貨幣服務。然而,面臨監管重壓,華爾街銀行布局加密貨幣仍態度謹慎.
1900/1/1 0:00:00熱點摘要: 1.Capital Group購買MicroStrategy公司12%的股份成為第二大股東;2.網傳蘋果公司買入價值25億美元的比特幣;3.
1900/1/1 0:00:00