您好,登錄后才能下訂單哦!
這篇文章主要講解了“區(qū)塊鏈中的密碼技術怎么應用”,文中的講解內(nèi)容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“區(qū)塊鏈中的密碼技術怎么應用”吧!
一、布隆過濾器
布隆過濾器是一種基于 Hash 的高效查找結(jié)構(gòu),能夠快速判斷某個元素是否在一個集合內(nèi)。假如給定一個內(nèi)容和存儲數(shù)組,通過構(gòu)造Hash函數(shù),使Hash值總量不超過數(shù)組的大小,就可以實現(xiàn)快速的基于內(nèi)容的查找。如 “算法改變?nèi)松?的 Hash 值如果是 “1000”,則存放到數(shù)組的第 1000 個單元上去。如果需要快速查找任意內(nèi)容,如 “算法改變?nèi)松?字符串是否在存儲系統(tǒng)中,只需要計算 Hash 值,并用 Hash 值查看系統(tǒng)中對應元素即可。
布隆過濾器采用了多個 Hash 函數(shù)來提高空間利用率。對同一個給定輸入來說,多個 Hash 函數(shù)計算出多個地址,分別在對應的這些地址上標記為 1。進行查找時,進行同樣的計算過程,并查看對應元素,如果都為 1,則說明較大概率是存在該輸入。布隆過濾器相對單個 Hash 算法查找,大大提高了空間利用率,可以使用較少的空間來表示較大集合的存在關系。 上面講的Hash查找和布隆過濾器,基本思想都是基于內(nèi)容的編址。
二、同態(tài)加密
這是一種可以對密文直接進行處理,跟對明文進行處理后再對處理結(jié)果加密,得到的結(jié)果相同。同態(tài)加密可以保證實現(xiàn)處理者無法訪問到數(shù)據(jù)自身的信息。什么是同態(tài)呢?它來自代數(shù)領域,包括四種類型:加法同態(tài)、乘法同態(tài)、減法同態(tài)和除法同態(tài)。同時滿足加法同態(tài)和乘法同態(tài),則意味著是代數(shù)同態(tài),即全同態(tài)。同時滿足四種同態(tài)性,則被稱為算數(shù)同態(tài)。在計算機中如果實現(xiàn)了全同態(tài)意味著對于所有處理都可以實現(xiàn)同態(tài)性。只能實現(xiàn)部分特定操作的同態(tài)性,被稱為特定同態(tài)。
區(qū)塊鏈中的應用:使用同態(tài)加密技術,運行在區(qū)塊鏈上的智能合約可以處理密文,而無法獲知真實數(shù)據(jù),極大的提高了隱私安全性。雖然同態(tài)加密的優(yōu)勢很明顯,并且已經(jīng)實現(xiàn),但是存在的問題就是需要較高的計算時間或存儲成本,相比傳統(tǒng)加密算法的性能和強度還有差距。
三、數(shù)字簽名
數(shù)字簽名可以證實某數(shù)字內(nèi)容的完整性和確認其來源,也就是不可抵賴性。理論上所有的非對稱加密算法都可以用來實現(xiàn)數(shù)字簽名,常用算法包括 DSA(Digital Signature Algorithm,基于 ElGamal 算法)和 ECSDA(Elliptic Curve Digital Signature Algorithm,基于橢圓曲線算法)等。針對一些特定的安全需求,產(chǎn)生了一些特殊數(shù)字簽名技術:
1、盲簽名:簽名者需要在無法看到原始內(nèi)容的前提下對信息進行簽名。實現(xiàn)對所簽名內(nèi)容的保護,防止簽名者看到原始內(nèi)容;同時實現(xiàn)防止追蹤,簽名者無法將簽名內(nèi)容和簽名結(jié)果進行對應。
2、多重簽名:當x 個簽名者中,收集到至少 y 個(x >= y >= 1)的簽名,即認為合法。x 是提供的公鑰個數(shù),y 是需要匹配公鑰的最少的簽名個數(shù)。它可以有效地被應用在多人投票共同決策的場景中。比特幣交易中就支持多重簽名,可以實現(xiàn)多個人共同管理某個賬戶的比特幣交易。
3、群簽名:群組內(nèi)某一個成員可以代表群組進行匿名簽名。簽名可以驗證來自于該群組,卻無法準確追蹤到簽名的是哪個成員。同樣存在一些問題,就是群簽名需要存在一個群管理員來添加新的群成員,因此存在群管理員可能追蹤到簽名成員身份的風險。
4、環(huán)簽名:簽名者首先選定一個包括簽名者自身的臨時簽名者集合。用自己的私鑰和簽名集合中其他人的公鑰就可以獨立的產(chǎn)生簽名,而無需他人的幫助。簽名者集合中的其他成員可能并不知道自己被包含在最終的簽名中。環(huán)簽名的主要用途在保護匿名性,屬于一種簡化的群簽名。
四、數(shù)字證書
數(shù)字證書分為兩類:加密數(shù)字證書和簽名驗證數(shù)字證書,前者用于保護用于加密用途的公鑰,后者保護用于簽名用途的公鑰。兩種類型的公鑰也可以同時放在同一證書中。同時證書需要由證書認證機構(gòu)CA來進行簽發(fā)和背書。權威的商業(yè)證書認證機構(gòu)包括 DigiCert、GlobalSign等。用戶也可以自行搭建CA 系統(tǒng),在私有網(wǎng)絡中進行使用。一個數(shù)字證書內(nèi)容可能包括證書域(證書的版本、序列號、簽名算法類型、簽發(fā)者信息、有效期、被簽發(fā)主體、簽發(fā)的公開密鑰)、CA 對證書的簽名算法和簽名值等。證書的頒發(fā)者還需要對證書內(nèi)容利用自己的私鑰進行簽名,以防止他人篡改證書內(nèi)容。
五、PKI體系
PKI的全稱是Public Key Infrastructure公鑰基礎設施,是建立在公私鑰基礎上實現(xiàn)安全可靠傳遞消息和身份確認的一個通用框架。包含3個核心組件:
CA:全稱Certification Authority,負責證書的頒發(fā)和吊銷,接收來自 RA 的請求;
RA:全稱Registration Authority,對用戶身份進行驗證,校驗數(shù)據(jù)合法性,負責登記,審核過了就發(fā)給 CA;
證書數(shù)據(jù)庫:存放證書,多采用 X.500 系列標準格式??梢耘浜螸DAP 目錄服務管理用戶信息。
CA 是最核心的組件,負責完成對證書信息的維護。通常的操作流程為:用戶通過 RA 登記申請證書,提供身份和認證信息等 = > CA 審核后完成證書的制造,頒發(fā)給用戶 = > 用戶如果需要撤銷證書則需要再次向 CA 發(fā)出申請。
感謝各位的閱讀,以上就是“區(qū)塊鏈中的密碼技術怎么應用”的內(nèi)容了,經(jīng)過本文的學習后,相信大家對區(qū)塊鏈中的密碼技術怎么應用這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。