迅雷鏈技術(shù)專家深度剖析:區(qū)塊鏈信任之源的秘密

在12月22日舉行的迅雷鏈技術(shù)沙龍成都站上,迅雷鏈底層研發(fā)工程師張驍就區(qū)塊鏈安全問題和密碼學(xué)的關(guān)系做了主題分享,受到了現(xiàn)場開發(fā)者的踴躍提問。大家普遍對密碼學(xué)及信任體系的架構(gòu)表現(xiàn)出了濃厚的興趣。張驍表示,區(qū)塊鏈之所以能夠解決人與人之間的信任問題,是因為它的不可篡改性,而這種特性本質(zhì)上又是基于密碼學(xué)算法來實現(xiàn)的。因此密碼學(xué)在區(qū)塊鏈中的地位很關(guān)鍵,區(qū)塊鏈是信任的基石,密碼學(xué)則是區(qū)塊鏈的基石。
密碼學(xué)核心技術(shù)特點
張驍首先解釋從密碼學(xué)的角度分析“安全”的含義,他將其總結(jié)為三個方面。
1.機密性。信息數(shù)據(jù)在傳輸?shù)臅r候,會進行加密處理。如果信息被未獲授權(quán)或者不擁有相應(yīng)密鑰的人拿到時,也無法讀取信息的原文,這就是信息的加密性。
2.完整性。即所傳輸?shù)男畔⒁WC是完整狀態(tài),不能夠在中間被惡意篡改或者增添、刪除一些信息。比如一張欠條,其中的金額數(shù)字、歸還日期以及欠款人等關(guān)鍵信息,不能夠被涂改,否則就被認為是完整性遭到破壞,直接作廢,這就是最常見的一種對信息完整性的要求。
3.可用性。指相應(yīng)的密碼學(xué)的信息,在任何一個時間下都應(yīng)該可以被外界所用。如前文所述的欠條,它應(yīng)該保證在任何時候都能被拿出來、被展示出來,而不應(yīng)該遺失、損毀。這就是信息安全中的可用性,也是信息安全保護的重要范疇。
不可篡改是密碼學(xué)的本質(zhì)
張驍表示,區(qū)塊鏈的特點是因其能夠保證不可篡改,本質(zhì)上能夠在原本互相不信任的人群或者不信任的機構(gòu)之間,通過密碼學(xué)的算法來傳遞一種信任。
不可篡改的特性是通過3方面來實現(xiàn)的,分別是數(shù)字簽名、時間戳和集體維護。
數(shù)字簽名表達的是對信息的確權(quán),保證了信息的完整性以及發(fā)送方的授權(quán)關(guān)系,發(fā)送方確認信息是由他發(fā)送,接收方確認消息來自相應(yīng)的發(fā)送方,并且沒有被篡改過,也沒有被惡意攻擊過。
時間戳是在區(qū)塊鏈的縱向保證數(shù)據(jù)的完整性,借助Hash鏈式的關(guān)系來保證前后的信息沒有被篡改過。
集體維護保證數(shù)據(jù)可用性,區(qū)塊鏈是基于分布式系統(tǒng),特點就是能夠更有效的提供對外服務(wù),中心化系統(tǒng)一旦宕機就無法運行,但分布式系統(tǒng)即便部分節(jié)點失效,其它節(jié)點一樣可以繼續(xù)提供服務(wù)。
區(qū)塊鏈中用到哪些密碼學(xué)技術(shù)?
在區(qū)塊鏈中使用的密碼學(xué)算法主要是Hash算法,它是指對一個任意長度的輸入,經(jīng)過此算法映射成有固定長度、且有一定隨機性輸出的方法。
它的安全性基于以下這三個基本的性質(zhì)。
1.單向性,單向性是指通過一個輸入X,通過哈希算法可以很容易地得到輸出結(jié)果Y,但是如果只擁有Y,則無法通過此算法找到原文X。
2.弱抗碰撞性,當(dāng)X通過算法得出結(jié)果Y時,如果能找到一個不等于X的數(shù)據(jù)X’它的輸出結(jié)果和X的結(jié)果同樣都等于Y,這就叫數(shù)據(jù)的抗弱碰撞性。弱抗碰撞性就是指很難找到這樣的本身不同、但輸出結(jié)果相同的數(shù)據(jù)。
3.強抗碰撞性,指通過任何手段都無法有效的找到一對不相等的數(shù)據(jù)X和X’,使其滿足兩個數(shù)據(jù)的哈希輸出結(jié)果都等于一個相同的值Y時,這樣的哈希算法就滿足強抗碰撞性。
區(qū)塊鏈中還利用到了基于Hash算法的默克爾樹,它主要是保證一定數(shù)量的數(shù)據(jù)的完整性不被攻破,可以輕易地驗證出數(shù)據(jù)有沒有被篡改過。
數(shù)字簽名本身也可以視為一種密碼學(xué)算法的應(yīng)用,它是公鑰密碼學(xué)以及Hash算法的結(jié)合。消息發(fā)送方先將待簽名的原文通過哈希算法映射成一段哈希值,然后對這段哈希值使用簽名者的私鑰進行簽名,最后把簽名和原文發(fā)送給相應(yīng)接收者。接收者通過簽名驗證算法使用發(fā)送者的公鑰解出簽名消息的哈希值,然后對比原文的哈希值看是否匹配,如果匹配,則簽名有效,反之則可認為簽名是偽造。
迅雷鏈中如何與密碼學(xué)的算法相結(jié)合?
首先是要通過高性能,確保能夠高效地實現(xiàn)這些密碼學(xué)算法。
其次不同的開發(fā)者用戶對算法有不同的要求,為滿足這些需求,迅雷鏈將密碼學(xué)算法進行了抽象處理,方便用戶在實際使用中,根據(jù)配置方式自由選擇需要使用的算法,由此可以幫助開發(fā)者和企業(yè),把迅雷鏈應(yīng)用到更多的場景中。
張驍最后還展望了密碼學(xué)的發(fā)展前景,他指出同態(tài)密碼、零知識證明和量子密碼都是未來可能的重要發(fā)展方向,不過相關(guān)技術(shù)目前還處于非常早期的階段,離投入實際商用還有較遠距離。但他相信,未來區(qū)塊鏈的發(fā)展與密碼學(xué)在安全領(lǐng)域上的提升是密不可分的,所以迅雷鏈也會緊密地去關(guān)注密碼學(xué)未來的發(fā)展。
相關(guān)文章
- 迅雷鏈開放平臺研發(fā)負責(zé)人張慧勇對區(qū)塊鏈安全問題的特點做了詳細解釋,介紹了目前區(qū)塊鏈所面臨的安全問題現(xiàn)狀、區(qū)塊鏈安全問題的特點,以及迅雷鏈是如何做安全的底層設(shè)計的2018-12-26