區塊鏈如何保障安全
A. 區塊鏈使用安全如何來保證呢
區塊鏈本身解決的就是陌生人之間大規模協作問題,即陌生人在不需要彼此信任的情況下就可以相互協作。那麼如何保證陌生人之間的信任來實現彼此的共識機制呢?中心化的系統利用的是可信的第三方背書,比如銀行,銀行在老百姓看來是可靠的值得信任的機構,老百姓可以信賴銀行,由銀行解決現實中的糾紛問題。但是,去中心化的區塊鏈是如何保證信任的呢?
實際上,區塊鏈是利用現代密碼學的基礎原理來確保其安全機制的。密碼學和安全領域所涉及的知識體系十分繁雜,我這里只介紹與區塊鏈相關的密碼學基礎知識,包括Hash演算法、加密演算法、信息摘要和數字簽名、零知識證明、量子密碼學等。您可以通過這節課來了解運用密碼學技術下的區塊鏈如何保證其機密性、完整性、認證性和不可抵賴性。
基礎課程第七課 區塊鏈安全基礎知識
一、哈希演算法(Hash演算法)
哈希函數(Hash),又稱為散列函數。哈希函數:Hash(原始信息) = 摘要信息,哈希函數能將任意長度的二進制明文串映射為較短的(一般是固定長度的)二進制串(Hash值)。
一個好的哈希演算法具備以下4個特點:
1、 一一對應:同樣的明文輸入和哈希演算法,總能得到相同的摘要信息輸出。
2、 輸入敏感:明文輸入哪怕發生任何最微小的變化,新產生的摘要信息都會發生較大變化,與原來的輸出差異巨大。
3、 易於驗證:明文輸入和哈希演算法都是公開的,任何人都可以自行計算,輸出的哈希值是否正確。
4、 不可逆:如果只有輸出的哈希值,由哈希演算法是絕對無法反推出明文的。
5、 沖突避免:很難找到兩段內容不同的明文,而它們的Hash值一致(發生碰撞)。
舉例說明:
Hash(張三借給李四10萬,借期6個月) = 123456789012
賬本上記錄了123456789012這樣一條記錄。
可以看出哈希函數有4個作用:
簡化信息
很好理解,哈希後的信息變短了。
標識信息
可以使用123456789012來標識原始信息,摘要信息也稱為原始信息的id。
隱匿信息
賬本是123456789012這樣一條記錄,原始信息被隱匿。
驗證信息
假如李四在還款時欺騙說,張三隻借給李四5萬,雙方可以用哈希取值後與之前記錄的哈希值123456789012來驗證原始信息
Hash(張三借給李四5萬,借期6個月)=987654321098
987654321098與123456789012完全不同,則證明李四說謊了,則成功的保證了信息的不可篡改性。
常見的Hash演算法包括MD4、MD5、SHA系列演算法,現在主流領域使用的基本都是SHA系列演算法。SHA(Secure Hash Algorithm)並非一個演算法,而是一組hash演算法。最初是SHA-1系列,現在主流應用的是SHA-224、SHA-256、SHA-384、SHA-512演算法(通稱SHA-2),最近也提出了SHA-3相關演算法,如以太坊所使用的KECCAK-256就是屬於這種演算法。
MD5是一個非常經典的Hash演算法,不過可惜的是它和SHA-1演算法都已經被破解,被業內認為其安全性不足以應用於商業場景,一般推薦至少是SHA2-256或者更安全的演算法。
哈希演算法在區塊鏈中得到廣泛使用,例如區塊中,後一個區塊均會包含前一個區塊的哈希值,並且以後一個區塊的內容+前一個區塊的哈希值共同計算後一個區塊的哈希值,保證了鏈的連續性和不可篡改性。
二、加解密演算法
加解密演算法是密碼學的核心技術,從設計理念上可以分為兩大基礎類型:對稱加密演算法與非對稱加密演算法。根據加解密過程中所使用的密鑰是否相同來加以區分,兩種模式適用於不同的需求,恰好形成互補關系,有時也可以組合使用,形成混合加密機制。
對稱加密演算法(symmetric cryptography,又稱公共密鑰加密,common-key cryptography),加解密的密鑰都是相同的,其優勢是計算效率高,加密強度高;其缺點是需要提前共享密鑰,容易泄露丟失密鑰。常見的演算法有DES、3DES、AES等。
非對稱加密演算法(asymmetric cryptography,又稱公鑰加密,public-key cryptography),與加解密的密鑰是不同的,其優勢是無需提前共享密鑰;其缺點在於計算效率低,只能加密篇幅較短的內容。常見的演算法有RSA、SM2、ElGamal和橢圓曲線系列演算法等。 對稱加密演算法,適用於大量數據的加解密過程;不能用於簽名場景:並且往往需要提前分發好密鑰。非對稱加密演算法一般適用於簽名場景或密鑰協商,但是不適於大量數據的加解密。
三、信息摘要和數字簽名
顧名思義,信息摘要是對信息內容進行Hash運算,獲取唯一的摘要值來替代原始完整的信息內容。信息摘要是Hash演算法最重要的一個用途。利用Hash函數的抗碰撞性特點,信息摘要可以解決內容未被篡改過的問題。
數字簽名與在紙質合同上簽名確認合同內容和證明身份類似,數字簽名基於非對稱加密,既可以用於證明某數字內容的完整性,同時又可以確認來源(或不可抵賴)。
我們對數字簽名有兩個特性要求,使其與我們對手寫簽名的預期一致。第一,只有你自己可以製作本人的簽名,但是任何看到它的人都可以驗證其有效性;第二,我們希望簽名只與某一特定文件有關,而不支持其他文件。這些都可以通過我們上面的非對稱加密演算法來實現數字簽名。
在實踐中,我們一般都是對信息的哈希值進行簽名,而不是對信息本身進行簽名,這是由非對稱加密演算法的效率所決定的。相對應於區塊鏈中,則是對哈希指針進行簽名,如果用這種方式,前面的是整個結構,而非僅僅哈希指針本身。
四 、零知識證明(Zero Knowledge proof)
零知識證明是指證明者在不向驗證者提供任何額外信息的前提下,使驗證者相信某個論斷是正確的。
零知識證明一般滿足三個條件:
1、 完整性(Complteness):真實的證明可以讓驗證者成功驗證;
2、 可靠性(Soundness):虛假的證明無法讓驗證者通過驗證;
3、 零知識(Zero-Knowledge):如果得到證明,無法從證明過程中獲知證明信息之外的任何信息。
五、量子密碼學(Quantum cryptography)
隨著量子計算和量子通信的研究受到越來越多的關注,未來量子密碼學將對密碼學信息安全產生巨大沖擊。
量子計算的核心原理就是利用量子比特可以同時處於多個相干疊加態,理論上可以通過少量量子比特來表達大量信息,同時進行處理,大大提高計算速度。
這樣的話,目前的大量加密演算法,從理論上來說都是不可靠的,是可被破解的,那麼使得加密演算法不得不升級換代,否則就會被量子計算所攻破。
眾所周知,量子計算現在還僅停留在理論階段,距離大規模商用還有較遠的距離。不過新一代的加密演算法,都要考慮到這種情況存在的可能性。
B. 區塊鏈安全問題應該怎麼解決
區塊鏈項目(尤其是公有鏈)的一個特點是開源。通過開放源代碼,來提高項目的可信性,也使更多的人可以參與進來。但源代碼的開放也使得攻擊者對於區塊鏈系統的攻擊變得更加容易。近兩年就發生多起黑客攻擊事件,近日就有匿名幣Verge(XVG)再次遭到攻擊,攻擊者鎖定了XVG代碼中的某個漏洞,該漏洞允許惡意礦工在區塊上添加虛假的時間戳,隨後快速挖出新塊,短短的幾個小時內謀取了近價值175萬美元的數字貨幣。雖然隨後攻擊就被成功制止,然而沒人能夠保證未來攻擊者是否會再次出擊。
當然,區塊鏈開發者們也可以採取一些措施
一是使用專業的代碼審計服務,
二是了解安全編碼規范,防患於未然。
密碼演算法的安全性
隨著量子計算機的發展將會給現在使用的密碼體系帶來重大的安全威脅。區塊鏈主要依賴橢圓曲線公鑰加密演算法生成數字簽名來安全地交易,目前最常用的ECDSA、RSA、DSA 等在理論上都不能承受量子攻擊,將會存在較大的風險,越來越多的研究人員開始關注能夠抵抗量子攻擊的密碼演算法。
當然,除了改變演算法,還有一個方法可以提升一定的安全性:
參考比特幣對於公鑰地址的處理方式,降低公鑰泄露所帶來的潛在的風險。作為用戶,尤其是比特幣用戶,每次交易後的余額都採用新的地址進行存儲,確保有比特幣資金存儲的地址的公鑰不外泄。
共識機制的安全性
當前的共識機制有工作量證明(Proof of Work,PoW)、權益證明(Proof of Stake,PoS)、授權權益證明(Delegated Proof of Stake,DPoS)、實用拜占庭容錯(Practical Byzantine Fault Tolerance,PBFT)等。
PoW 面臨51%攻擊問題。由於PoW 依賴於算力,當攻擊者具備算力優勢時,找到新的區塊的概率將會大於其他節點,這時其具備了撤銷已經發生的交易的能力。需要說明的是,即便在這種情況下,攻擊者也只能修改自己的交易而不能修改其他用戶的交易(攻擊者沒有其他用戶的私鑰)。
在PoS 中,攻擊者在持有超過51%的Token 量時才能夠攻擊成功,這相對於PoW 中的51%算力來說,更加困難。
在PBFT 中,惡意節點小於總節點的1/3 時系統是安全的。總的來說,任何共識機制都有其成立的條件,作為攻擊者,還需要考慮的是,一旦攻擊成功,將會造成該系統的價值歸零,這時攻擊者除了破壞之外,並沒有得到其他有價值的回報。
對於區塊鏈項目的設計者而言,應該了解清楚各個共識機制的優劣,從而選擇出合適的共識機制或者根據場景需要,設計新的共識機制。
智能合約的安全性
智能合約具備運行成本低、人為干預風險小等優勢,但如果智能合約的設計存在問題,將有可能帶來較大的損失。2016 年6 月,以太坊最大眾籌項目The DAO 被攻擊,黑客獲得超過350 萬個以太幣,後來導致以太坊分叉為ETH 和ETC。
對此提出的措施有兩個方面:
一是對智能合約進行安全審計,
二是遵循智能合約安全開發原則。
智能合約的安全開發原則有:對可能的錯誤有所准備,確保代碼能夠正確的處理出現的bug 和漏洞;謹慎發布智能合約,做好功能測試與安全測試,充分考慮邊界;保持智能合約的簡潔;關注區塊鏈威脅情報,並及時檢查更新;清楚區塊鏈的特性,如謹慎調用外部合約等。
數字錢包的安全性
數字錢包主要存在三方面的安全隱患:第一,設計缺陷。2014 年底,某簽報因一個嚴重的隨機數問題(R 值重復)造成用戶丟失數百枚數字資產。第二,數字錢包中包含惡意代碼。第三,電腦、手機丟失或損壞導致的丟失資產。
應對措施主要有四個方面:
一是確保私鑰的隨機性;
二是在軟體安裝前進行散列值校驗,確保數字錢包軟體沒有被篡改過;
三是使用冷錢包;
四是對私鑰進行備份。
C. 區塊鏈技術如何保障信息主體隱私和權益
隱私保護手段可以分為三類:
一是對交易信息的隱私保護,對交易的發送者、交易接受者以及交易金額的隱私保護,有混幣、環簽名和機密交易等。
二是對智能合約的隱私保護,針對合約數據的保護方案,包含零知識證明、多方安全計算、同態加密等。
三是對鏈上數據的隱私保護,主要有賬本隔離、私有數據和數據加密授權訪問等解決方案。
拓展資料:
一、區塊鏈加密演算法隔離身份信息與交易數據
1、區塊鏈上的交易數據,包括交易地址、金額、交易時間等,都公開透明可查詢。但是,交易地址對應的所用戶身份,是匿名的。通過區塊鏈加密演算法,實現用戶身份和用戶交易數據的分離。在數據保存到區塊鏈上之前,可以將用戶的身份信息進行哈希計算,得到的哈希值作為該用戶的唯一標識,鏈上保存用戶的哈希值而非真實身份數據信息,用戶的交易數據和哈希值進行捆綁,而不是和用戶身份信息進行捆綁。
2、由此,用戶產生的數據是真實的,而使用這些數據做研究、分析時,由於區塊鏈的不可逆性,所有人不能通過哈希值還原注冊用戶的姓名、電話、郵箱等隱私數據,起到了保護隱私的作用。
二、區塊鏈「加密存儲+分布式存儲」
加密存儲,意味著訪問數據必須提供私鑰,相比於普通密碼,私鑰的安全性更高,幾乎無法被暴力破解。分布式存儲,去中心化的特性在一定程度上降低了數據全部被泄漏的風險,而中心化的資料庫存儲,一旦資料庫被黑客攻擊入侵,數據很容易被全部盜走。通過「加密存儲+分布式存儲」能夠更好地保護用戶的數據隱私。
三、區塊鏈共識機制預防個體風險
共識機制是區塊鏈節點就區塊信息達成全網一致共識的機制,可以保障最新區塊被准確添加至區塊鏈、節點存儲的區塊鏈信息一致不分叉,可以抵禦惡意攻擊。區塊鏈的價值之一在於對數據的共識治理,即所有用戶對於上鏈的數據擁有平等的管理許可權,因此首先從操作上杜絕了個體犯錯的風險。通過區塊鏈的全網共識解決數據去中心化,並且可以利用零知識證明解決驗證的問題,實現在公開的去中心化系統中使用用戶隱私數據的場景,在滿足互聯網平台需求的同時,也使部分數據仍然只掌握在用戶手中。
四、區塊鏈零知識證明
零知識證明指的是證明者能夠在不向驗證者提供任何有用的信息的情況下,使驗證者相信某個論斷是正確的,即證明者既能充分證明自己是某種權益的合法擁有者,又不把有關的信息泄漏出去,即給外界的「知識」為「零」。應用零知識證明技術,可以在密文情況下實現數據的關聯關系驗證,在保障數據隱私的同時實現數據共享。
D. 區塊鏈技術是如何保證數據的安全性的
私有密鑰 ~
E. 易保全如何運用區塊鏈技術,保護數據安全
易保全是國內率先將區塊鏈技術進行電子數據固化存證,並被司法機關認可的電子數據存證保全機構,從2013年就開始致力於區塊鏈的技術研發與創新應用,創新「區塊鏈+司法+應用」模式,打造4大可信區塊鏈基礎應用和聯盟區塊鏈「保全鏈開放平台」。
運用區塊鏈、數字簽名、時間戳、加密演算法、共識演算法等技術,從技術防護、管理運行和應用實踐上,牢築數據安全底座,讓數據存證和交互更安全。
易保全對接國內多家權威CA機構,讓平台與CA系統直連,為用戶提供「可信數字身份服務」,利用「人臉識別、手機號、銀行卡三要素」等多種身份認證方式,為每一個虛擬賬號ID提供數字可信身份證明。
同時結合「簽署密碼、簡訊驗證碼、人臉識別」等多種意願認證方式,確保組織及個人在系統內的所有操作都有真實身份支撐,都出於真實意願,更好地避免了賬號ID泄露、數據泄露、信息冒用等風險,保障每一份數據信息真實可信。
易保全自成立之初,就非常重視對用戶數據安全性、隱私性的管理和保護,上鏈時,易保全採用時間戳、加密演算法、共識演算法等技術,保障數據的完整性和原始性;上鏈後,利用「保全鏈」,將電子數據從產生那刻起,即固化存證到各個司法節點,多方備份證據,確保普通的電子數據升級為司法認可的電子證據,並且可實時在權威機構進行官方查驗,守護上鏈的每一份數據,讓權益不受侵害。
易保全基於安全、合規、隱私等原則,在工信部、網信辦等主管部門的嚴格監管下,為用戶提供符合法律法規要求,且安全可信的區塊鏈電子數據存證保全服務,可以與電子合同、版權保護、司法服務等領域深度融合,保障用戶每一份電子數據全過程可記錄、全流程可追溯、全數據可核驗、全鏈路可信舉證。
在資質認定上,易保全獲得了公安部等保三級認證、ISO27001認證、ISO9001認證,四獲國家網信辦信息服務備案,並且是2018年工信部工業互聯網試點示範項目(唯一區塊鏈入選企業),區塊鏈技術和資質備受國家認可。
F. 區塊鏈的安全法則
區塊鏈的安全法則,即第一法則:
存儲即所有
一個人的財產歸屬及安全性,從根本上來說取決於財產的存儲方式及定義權。在互聯網世界裡,海量的用戶數據存儲在平台方的伺服器上,所以,這些數據的所有權至今都是個迷,一如你我的社交ID歸誰,難有定論,但用戶數據資產卻推高了平台的市值,而作為用戶,並未享受到市值紅利。區塊鏈世界使得存儲介質和方式的變化,讓資產的所有權交付給了個體。
拓展資料
區塊鏈系統面臨的風險不僅來自外部實體的攻擊,也可能有來自內 部參與者的攻擊,以及組件的失效,如軟體故障。因此在實施之前,需 要制定風險模型,認清特殊的安全需求,以確保對風險和應對方案的准 確把握。
1. 區塊鏈技術特有的安全特性
● (1) 寫入數據的安全性
在共識機制的作用下,只有當全網大部分節點(或多個關鍵節點)都 同時認為這個記錄正確時,記錄的真實性才能得到全網認可,記錄數據才 允許被寫入區塊中。
● (2) 讀取數據的安全性
區塊鏈沒有固有的信息讀取安全限制,但可以在一定程度上控制信 息讀取,比如把區塊鏈上某些元素加密,之後把密鑰交給相關參與者。同時,復雜的共識協議確保系統中的任何人看到的賬本都是一樣的,這是防 止雙重支付的重要手段。
● (3) 分布式拒絕服務(DDOS)
攻擊抵抗 區塊鏈的分布式架構賦予其點對點、多冗餘特性,不存在單點失效的問題,因此其應對拒絕服務攻擊的方式比中心化系統要靈活得多。即使一個節點失效,其他節點不受影響,與失效節點連接的用戶無法連入系統, 除非有支持他們連入其他節點的機制。
2. 區塊鏈技術面臨的安全挑戰與應對策略
● (1) 網路公開不設防
對公有鏈網路而言,所有數據都在公網上傳輸,所有加入網路的節點 可以無障礙地連接其他節點和接受其他節點的連接,在網路層沒有做身份驗證以及其他防護。針對該類風險的應對策略是要求更高的私密性並謹慎控制網路連接。對安全性較高的行業,如金融行業,宜採用專線接入區塊鏈網路,對接入的連接進行身份驗證,排除未經授權的節點接入以免數據泄漏,並通過協議棧級別的防火牆安全防護,防止網路攻擊。
● (2) 隱私
公有鏈上交易數據全網可見,公眾可以跟蹤這些交易,任何人可以通過觀察區塊鏈得出關於某事的結論,不利於個人或機構的合法隱私保護。 針對該類風險的應對策略是:
第一,由認證機構代理用戶在區塊鏈上進行 交易,用戶資料和個人行為不進入區塊鏈。
第二,不採用全網廣播方式, 而是將交易數據的傳輸限制在正在進行相關交易的節點之間。
第三,對用 戶數據的訪問採用許可權控制,持有密鑰的訪問者才能解密和訪問數據。
第四,採用例如「零知識證明」等隱私保護演算法,規避隱私暴露。
● (3) 算力
使用工作量證明型的區塊鏈解決方案,都面臨51%算力攻擊問題。隨 著算力的逐漸集中,客觀上確實存在有掌握超過50%算力的組織出現的可 能,在不經改進的情況下,不排除逐漸演變成弱肉強食的叢林法則。針對 該類風險的應對策略是採用演算法和現實約束相結合的方式,例如用資產抵 押、法律和監管手段等進行聯合管控。
G. 區塊鏈以什麼方式保證數據安全
在區塊鏈技術中,數字加密技術是其關鍵之處,一般運用的是非對稱加密演算法,即加密時的密碼與解鎖時的密碼是不一樣的。
簡單來說,就是我們有專屬的私鑰,只要把自己的私鑰保護好,把公鑰給對方,對方用公鑰加密文件生成密文,再將密文傳給你,我們再用私鑰解密得到明文,就能夠保障傳輸內容不被別人看到,這樣子,加密數據就傳輸完畢了。同時,還有數字簽名為我們加多一重保障,用來證明文件發給對方過程中沒有被篡改。
作為底層加密技術,區塊鏈加密技術能夠有效保障數據安全,改變當下數據易泄露、易被利用的現狀,讓個人信息數據得到全面的保護,也有望給物聯網、大數據、信用監管、移動辦公等領域帶來亟需的改變。