hyperledger fabric安全和隱私技術(shù)介紹_第1頁
hyperledger fabric安全和隱私技術(shù)介紹_第2頁
hyperledger fabric安全和隱私技術(shù)介紹_第3頁
hyperledger fabric安全和隱私技術(shù)介紹_第4頁
hyperledger fabric安全和隱私技術(shù)介紹_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

Day

5Hyperledger

Fabric

安全和隱私介紹議程PKI等密碼學技術(shù)基礎(chǔ)區(qū)塊鏈的基本數(shù)據(jù)模型如何保障交易數(shù)據(jù)的不可更改如何保障交易的私密性如何保障交易的可監(jiān)管能力如何保護隱私2使用PKI(Public

Key

Infrastructure)公鑰體系進行加密對稱密碼算法,典型算法:DES,AES,...加解密方共用一個密鑰加解密速度快,但密鑰分發(fā)比較困難哈?;蛏⒘泻瘮?shù)(Hash),典型算法SHA,MD5如果兩個散列值是不相同的,那么這兩個散列值的原始輸入也是不相同的用于信息壓縮,并發(fā)現(xiàn)信息是否發(fā)生變化計算速度快,特定算法其結(jié)果長度統(tǒng)一目前至少使用SHA256非對稱密碼算法(公鑰體系),典型算法:RSA,ECC加解密時,通訊一方有一對密鑰(公鑰和私鑰)公鑰可以公開,分發(fā)給任何人私鑰本人嚴密保存,例如U盾中存放私鑰等公鑰加密,只能用私鑰解密,反之亦然加/解密速度較慢,但無密鑰分發(fā)問題區(qū)塊鏈主要使用ECC橢圓曲線算法公鑰體系與對稱密鑰相結(jié)合的加密方式公鑰體系通常運算性能低,做大量數(shù)據(jù)加解密力不從心通常利用公鑰體系實現(xiàn)對稱密鑰的安全交換BA對稱加密和非對稱加密結(jié)合3PKI---基于公鑰體系的簽名和驗簽機制

–數(shù)字簽名的目的:檢測數(shù)據(jù)的修改,簽名者的身份識別和抗抵賴。AHash運算,獲得原文的摘要4加密摘要信息發(fā)送信息Hash運算,獲得原文摘要信息解密比對摘要Hash的意義:縮小存儲或傳輸?shù)臄?shù)據(jù)量規(guī)避公鑰體系加解密性能低下的問題如果發(fā)送的信息沒有篡改,那么也只有使用A的公鑰才可以通過相應(yīng)的驗簽此驗簽過程,若通過,則表示信息一定是“公鑰A”的持有者制作數(shù)字證書體系也是以此為核心如果“張三有數(shù)字身份”,則:張三有自己的一對公鑰和私鑰數(shù)字身份的發(fā)證機關(guān),證明了這個公鑰對應(yīng)的持有人是張三PKI---數(shù)字證書和CA(認證中心,數(shù)字證書發(fā)證系統(tǒng))數(shù)字證書(Digital

Certificate),又叫“數(shù)字身份證”、“網(wǎng)絡(luò)身份證”,是由認證中心發(fā)放并經(jīng)認證中心數(shù)字簽名的,包含公開密鑰擁有者以及公開密鑰相關(guān)信息的一種電子文件,可以用來證明數(shù)字證書持有者的真實身份。數(shù)字證書采用公鑰體制:數(shù)字證書是“公鑰+證書名稱信息+簽發(fā)機構(gòu)對證書的數(shù)字簽名”、匹配的私鑰數(shù)字證書遵從X.509國際標準每一個用戶有一個各不相同的名稱,一個可信的認證中心CA(Certificate

Authority)給每個用戶分配一個唯一的名稱并簽發(fā)一個包含用戶名稱和公鑰的證書。證書可以存儲在網(wǎng)絡(luò)中的數(shù)據(jù)庫中。用戶可以利用網(wǎng)絡(luò)彼此交換證書。當證書撤銷后,簽發(fā)此證書的CA仍保留此證書的副本,以備日后解決可能引起的糾紛。5區(qū)塊鏈的業(yè)務(wù)安全需求6不可更改的加密交易數(shù)據(jù)(分布式賬本)可追責、不可陷害隱私保護:交易匿名、交易不可關(guān)聯(lián)監(jiān)管和審計支持HyperLedge

Fabric的CA支撐環(huán)境CA是Membership的重要組件之一滿足于Fabric的安全需求,為參與各方實現(xiàn):用戶注冊證書簽發(fā)證書吊銷發(fā)布證書鏈基于RESTful/CLI等多種接口方式,服務(wù)于

Blockchain的各個環(huán)節(jié),包括:T-Cert–TransactionCertificate(交易證書證書),執(zhí)行交易時使用E-Cert–EnrollmentCertificate(注冊證書),攜帶實體信息的證書CSR–證書吊銷列表Enrolling

abootstrap

userRegisteringan

identityRe-enrollingRevokingGet

Cert

Chain7區(qū)塊數(shù)據(jù)的結(jié)構(gòu)---區(qū)塊鏈把一段時間內(nèi)生成的信息(包括數(shù)據(jù)或代碼)打包成一個區(qū)塊,蓋上時間戳,與上一個區(qū)塊銜接在一起,每下一個區(qū)塊的頁首都包含了上一個區(qū)塊的索引數(shù)據(jù),然后再在本頁中寫入新的信息,從而形成新的區(qū)塊,首尾相連,最終形成了區(qū)塊鏈。區(qū)塊主體此區(qū)塊中的所有交易信息父區(qū)塊的哈希:909090890....時間戳:2016-09-03StateHash:23792321323...TransactionHash:

.......

...易信息父時區(qū)塊的哈希:324090890....間戳:2016-09-02StateHash:

23792321322......區(qū)塊主體此區(qū)塊中的所有交易信息父時區(qū)塊的哈希:664490890....間戳:2016-09-01StateHash:

23792321321...TransactionHash:

.......

...TransactionHash:

....

...區(qū)塊主體此區(qū)塊中的所有交要重LedgeBlock

DataWorldWorld

State

-

Merkle

RootHashMerkleHash可以避免添加交易時,需 新計算本區(qū)塊內(nèi)的所有交易的Hash降低交易驗證Hash計算量例如:HK數(shù)據(jù)的改變后,僅需要重新計算“ 藍色虛線”部分的Hash數(shù)據(jù)State8區(qū)塊數(shù)據(jù)的構(gòu)成---事務(wù)(交易)數(shù)據(jù)每個區(qū)塊中包含一系列的事務(wù)數(shù)據(jù)事務(wù)中包含事務(wù)發(fā)起方的數(shù)字簽名(TCert–交易證書)每個Block中包含所有事務(wù)的Hash,用于共識時檢查事務(wù)信息是否與其它節(jié)點一致每個Block中包含World

State的Hash,用于共識時檢查State信息是否與其它節(jié)點一致Block

#NTransaction

#NPKI相關(guān)的密碼學在BlockChain中的應(yīng)用保障單個Peer上數(shù)據(jù)的完整性數(shù)字簽名不可抵賴,防篡改Hash加密事務(wù)隱私保護數(shù)據(jù)訪問控制共識機制及BlockChain數(shù)據(jù)分布化,可以防止某個Peer造假,達到高度自治Transaction

#NTransaction

#N912區(qū)塊數(shù)據(jù)的構(gòu)成---如何做到交易抗抵賴由交易提交方使用自己的“數(shù)字證書”對每個交易做“數(shù)字簽名”來確保交易無法偽造”這筆交易確實是你提交的,別人無法偽造你的交易!既然無法偽造一個交易,所以如果存在一個你的交易,那么你也無法抵賴這里的“你”是指用戶的數(shù)字身份,數(shù)字身份就是“某個數(shù)字證書的持有者”交易信息數(shù)據(jù)Hash數(shù)據(jù)(SHA256)256bits數(shù)據(jù)

3829183921938929....21321數(shù)字簽名(加密結(jié)果)09128309eaf3182a7e9f9d交易信息數(shù)據(jù)0數(shù)字簽名(加密結(jié)果)9128309eaf3182a7e9f9d交易數(shù)據(jù)(無簽名信息)帶簽名的交易數(shù)據(jù)計算Hash加密數(shù)據(jù)交易創(chuàng)建者B#B#B#B#3......B#NT#T#......T#N區(qū)塊數(shù)據(jù)

TCert-Private

Key交易數(shù)據(jù)在PKI/CA體系完備性保障的情況下,數(shù)字簽名保障了我們無法偽造他人的交易。既然無法偽造他人的交易,因此交易的數(shù)字簽名顯示是你做的,那么必定是你做的。如何防止分布式賬本的偽造利用數(shù)字簽名,偽造一個他人的單個交易非常困難,除非能夠獲得他人數(shù)字證書的私鑰另外分布式賬本可以防止如下類型的篡改:刪除歷史交易偽造自己的歷史交易B#0B#1T#0T#1......T#N區(qū)塊數(shù)據(jù)交易數(shù)據(jù)HashHashHashB#3HashB#4Hash篡改:刪除區(qū)塊B#1的T#1交易(某個Peer)N交易數(shù)據(jù)T#0T#1......T#Hash區(qū)塊數(shù)據(jù)B#0HashB#Has1hB#3HashB#4Hash篡改前的正常區(qū)塊數(shù)據(jù)(某個Peer)1

1

重新計算篡改數(shù)據(jù)造成的所有Hash;并重新組裝影響的區(qū)塊數(shù)據(jù)在整個區(qū)塊鏈網(wǎng)絡(luò)中生效篡改需要將篡改后的區(qū)塊數(shù)據(jù)傳播到足夠影響共識的Peer節(jié)點背書、時間戳等的偽造也非常困難注:上述舉例為邏輯層面的示意,交易偽造除了需要篡改交易,可能還需要偽造與之對應(yīng)的

State

Ledge(World

state),并解決相關(guān)篡改在整個區(qū)塊鏈網(wǎng)絡(luò)中的生效,基本原理類似授權(quán)群體的解密數(shù)據(jù)過程如何保障私密確保交易僅僅向有限的全體可見,不對非授權(quán)的全體公開簡單來看,分別使用授權(quán)用戶的“公鑰”加密“數(shù)據(jù)”,只有授權(quán)用戶能夠用自己的“私鑰”解密數(shù)據(jù)實際實現(xiàn),則通過“對稱加密和公鑰加密”相結(jié)合的方式交易信息數(shù)據(jù)交易數(shù)據(jù)帶簽名的交易數(shù)據(jù)使用對稱密鑰加密數(shù)據(jù)的用戶A授權(quán)訪問交易數(shù)據(jù)TCert-Public

Key為交易生成的對稱加密密鑰(AES-GMN)加密的交易數(shù)據(jù)E加密的對稱密鑰

ncryptedBy

UserA

PubKeyE加密的對稱密鑰

ncrypted

By

UserB

PubKey授權(quán)訪問交易數(shù)據(jù)的用戶BTCert-Public

Key解(密對稱加密密鑰

AES-GMN)授權(quán)訪問交易數(shù)據(jù)的用戶ATCert-Private

Key交易信息數(shù)據(jù)交易數(shù)據(jù)2313

加密對稱密鑰2

使用對稱密鑰解密數(shù)據(jù)1加密數(shù)據(jù)過程1

2

如何既保障交易私密,又可以實現(xiàn)監(jiān)管“監(jiān)管”是指無需交易方授權(quán),監(jiān)管者可以解密交易但監(jiān)管不能侵犯“不可抵賴性”,即監(jiān)管者不可以偽造別人的交易采用PKI體系的“雙密鑰對---簽名密鑰對和加密密鑰對”模式來實現(xiàn):證書持有者有一對簽名用途的密鑰對證書持有者有一對加密用途的密鑰對CA簽發(fā)證書時,對加密用途的密鑰對進行備案,交由密鑰管理中心存放特定的情況下,提取某用戶的解密私鑰,解密相關(guān)的交易數(shù)據(jù)簽名用途的密鑰對仍然在用戶端產(chǎn)生,不做備案無私鑰的情況下,無法偽造簽名,因此無法偽造別人的交易從證書申請,到證書生成,常規(guī)意義的CA/RA體系都可以保障簽名密鑰的用戶私密性身份信息用戶數(shù)字證書加密用途公鑰簽名用途公鑰加密用途私鑰簽名用途私鑰簽名密鑰對的管理簽名密鑰對由簽名私鑰和驗證公鑰組成;簽名私鑰是發(fā)送方身份的證明,具有日常生活中公章?私章的效力;簽名私鑰絕對不能夠做備份和存檔,丟失后只需重新生成新的密鑰對;驗證公鑰需要存檔,用于驗證舊的數(shù)字簽名?加密密鑰對的管理加密密鑰對由加密公鑰和解密私鑰組成;為防止密鑰丟失時數(shù)據(jù)無法恢復,解密私鑰應(yīng)該進行備份,同時還可能需要進行存檔,以便能在任何時候解密歷史密文數(shù)據(jù);加密公鑰則無需備份和存檔,加密公鑰丟失時,只需重新生成密鑰對即可?備案存檔,供監(jiān)管方使用不做備案頒發(fā)機構(gòu)簽名信息1

3

如何保護隱私?確保從交易中無法追溯交易創(chuàng)建者的信息問題由于交易中存在簽名信息,而簽名信息攜帶可以關(guān)聯(lián)交易創(chuàng)建者證書的信息證書中包含交易創(chuàng)建者的識別信息如果不做實現(xiàn)特定的機制,交易中將可以追溯交易創(chuàng)建這的信息交易方持有多種類型的證書,交易不同環(huán)節(jié)將使用如下這些類型的證書:E-Cert(Enrollment

Cert)長期持有,攜帶或可以追溯使用者信息用于身份認證T-Cert(Transaction

Cert)每個交易時生成,用于交易的簽名TLS-Cert,長期持有,主要用于SSL/TLS通訊1

4

使用身份管理實現(xiàn)交易隱私Add

certificates

to

transactions

to

implement

a

permissioned”

blockchain

utilizeA

two-level

system:(Relatively)

static

enrollment

certificates

(ECerts),

acquiredvia

registration

with

an

enrollment

certificate

authority

(CA).Transaction

certificates

(TCerts)

that

faithfully

but

pseudonymously

represent

enrolled

users,acquiredvia

atransactionCA.Offer

mechanisms

to

conceal

the

content

of

transactions

to

unauthorized

members

of

the

system.UserEnrollment

Process每個交易使用一個新的TCertTCert中不顯式攜帶交易創(chuàng)建者的信息TCert和ECert的關(guān)系被隱秘保護1

5

1

6

主要加密算法對比非對稱加密算法(公鑰算法)ECC/國

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論