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

下載本文檔

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

文檔簡(jiǎn)介

Day

5Hyperledger

Fabric

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

Key

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

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

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

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

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

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

abootstrap

userRegisteringan

identityRe-enrollingRevokingGet

Cert

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

.......

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

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

23792321321...TransactionHash:

.......

...TransactionHash:

....

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

DataWorldWorld

State

-

Merkle

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

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

#NTransaction

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

#NTransaction

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

3829183921938929....21321數(shù)字簽名(加密結(jié)果)09128309eaf3182a7e9f9d交易信息數(shù)據(jù)0數(shù)字簽名(加密結(jié)果)9128309eaf3182a7e9f9d交易數(shù)據(jù)(無(wú)簽名信息)帶簽名的交易數(shù)據(jù)計(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ù)字簽名保障了我們無(wú)法偽造他人的交易。既然無(wú)法偽造他人的交易,因此交易的數(shù)字簽名顯示是你做的,那么必定是你做的。如何防止分布式賬本的偽造利用數(shù)字簽名,偽造一個(gè)他人的單個(gè)交易非常困難,除非能夠獲得他人數(shù)字證書(shū)的私鑰另外分布式賬本可以防止如下類(lèi)型的篡改:刪除歷史交易偽造自己的歷史交易B#0B#1T#0T#1......T#N區(qū)塊數(shù)據(jù)交易數(shù)據(jù)HashHashHashB#3HashB#4Hash篡改:刪除區(qū)塊B#1的T#1交易(某個(gè)Peer)N交易數(shù)據(jù)T#0T#1......T#Hash區(qū)塊數(shù)據(jù)B#0HashB#Has1hB#3HashB#4Hash篡改前的正常區(qū)塊數(shù)據(jù)(某個(gè)Peer)1

1

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

State

Ledge(World

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

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

ncryptedBy

UserA

PubKeyE加密的對(duì)稱(chēng)密鑰

ncrypted

By

UserB

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

Key解(密對(duì)稱(chēng)加密密鑰

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

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

加密對(duì)稱(chēng)密鑰2

使用對(duì)稱(chēng)密鑰解密數(shù)據(jù)1加密數(shù)據(jù)過(guò)程1

2

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

3

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

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

Cert)每個(gè)交易時(shí)生成,用于交易的簽名TLS-Cert,長(zhǎng)期持有,主要用于SSL/TLS通訊1

4

使用身份管理實(shí)現(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每個(gè)交易使用一個(gè)新的TCertTCert中不顯式攜帶交易創(chuàng)建者的信息TCert和ECert的關(guān)系被隱秘保護(hù)1

5

1

6

主要加密算法對(duì)比非對(duì)稱(chēng)加密算法(公鑰算法)ECC/國(guó)

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論