本發(fā)明涉及區(qū)塊鏈上云數(shù)據(jù)管理技術(shù)領(lǐng)域,具體涉及一種基于區(qū)塊鏈的云數(shù)據(jù)管理方法。
背景技術(shù):
目前,云存儲(chǔ)服務(wù)器是規(guī)?;娣艛?shù)據(jù)的極佳平臺(tái),這得益于其集群化的運(yùn)營(yíng)和維護(hù)。然而,阻礙云存儲(chǔ)發(fā)展的最大障礙是安全問題。日益頻發(fā)的數(shù)據(jù)泄露或破壞事件不僅讓用戶和服務(wù)商蒙受巨大經(jīng)濟(jì)損失,也在政治上帶來了惡劣的負(fù)面效應(yīng)。此外,在用戶數(shù)據(jù)被惡意的篡改、刪除或者竊取的事件中,云服務(wù)器無法高效的檢測(cè)是哪一個(gè)環(huán)節(jié)出現(xiàn)了問題,這讓用戶對(duì)數(shù)據(jù)丟失問題感到既“束手無策”又“莫名其妙”。這側(cè)方面的反映了當(dāng)前云服務(wù)器在數(shù)據(jù)管理方面的低效。
區(qū)塊鏈?zhǔn)钱?dāng)前受到廣泛發(fā)關(guān)注和高度重視的技術(shù)。它是用于實(shí)現(xiàn)全民共識(shí)、共治和共享的新型基礎(chǔ)設(shè)施,其具有:分布式數(shù)據(jù)存儲(chǔ)、去中心化、不可篡改、可追溯、可信任等特征。總之,區(qū)塊鏈?zhǔn)翘岣呷珔^(qū)安全性和可追溯性的良好工具。
此外,為了更好的管理云數(shù)據(jù),我們認(rèn)為需要明確用戶對(duì)云數(shù)據(jù)的合法所有權(quán),因此我們引入一個(gè)已有的概念:持有權(quán)證明(proofofownership)。
技術(shù)實(shí)現(xiàn)要素:
針對(duì)上述現(xiàn)有技術(shù),本發(fā)明目的在于提供一種基于區(qū)塊鏈的云數(shù)據(jù)管理方法,解決現(xiàn)有技術(shù)存在缺乏不可篡改的合法所有權(quán)機(jī)制和解決如何高效地完成共識(shí)網(wǎng)絡(luò)中持有權(quán)驗(yàn)證的技術(shù)問題。
為達(dá)到上述目的,本發(fā)明采用的技術(shù)方案如下:
一種基于區(qū)塊鏈的云數(shù)據(jù)管理方法,包括
在共識(shí)網(wǎng)絡(luò)中進(jìn)行包含初始化、上傳數(shù)據(jù)、持有權(quán)驗(yàn)證和/或操作數(shù)據(jù)的分布式數(shù)據(jù)管理操作。
上述方法中,具體包括以下步驟:
步驟1、設(shè)置可信服務(wù)器、云服務(wù)器接入同一區(qū)塊鏈,利用可信服務(wù)器生成公開參數(shù)并為用戶和云服務(wù)器頒發(fā)身份標(biāo)識(shí),接著生成初始區(qū)塊,再將可信服務(wù)器的登記信息作為初始信息寫入初始區(qū)塊;
步驟2、由用戶將待上傳文件劃分為不同文件塊,根據(jù)公開參數(shù)對(duì)不同文件塊進(jìn)行編碼和元數(shù)據(jù)計(jì)算,獲得元數(shù)據(jù)和不同的數(shù)據(jù)文件,然后將數(shù)據(jù)文件和元數(shù)據(jù)上傳至云服務(wù)器,在云服務(wù)器上獲得元數(shù)據(jù)、數(shù)據(jù)文件和上傳信息,由云服務(wù)器通過身份標(biāo)識(shí)對(duì)上傳信息簽名后發(fā)往可信服務(wù)器并進(jìn)行身份標(biāo)識(shí)驗(yàn)證,再由可信服務(wù)器根據(jù)該身份標(biāo)識(shí)驗(yàn)證結(jié)果選擇地在區(qū)塊鏈上記錄上傳信息或返回失敗標(biāo)識(shí)符至云服務(wù)器;
步驟3、由云服務(wù)器通過元數(shù)據(jù)對(duì)數(shù)據(jù)文件進(jìn)行持有權(quán)驗(yàn)證,獲得持有權(quán)信息,由云服務(wù)器通過身份標(biāo)識(shí)對(duì)持有權(quán)信息簽名后發(fā)往可信服務(wù)器并進(jìn)行身份標(biāo)識(shí)驗(yàn)證,再由可信服務(wù)器根據(jù)該身份標(biāo)識(shí)驗(yàn)證結(jié)果選擇地在區(qū)塊鏈上記錄持有權(quán)信息或返回失敗標(biāo)識(shí)符至云服務(wù)器。
上述方法中,還包括
步驟4、由用戶發(fā)出具有其身份標(biāo)識(shí)的操作請(qǐng)求至云服務(wù)器,由云服務(wù)器進(jìn)行該身份標(biāo)識(shí)驗(yàn)證,在身份標(biāo)識(shí)驗(yàn)證通過時(shí)執(zhí)行操作,并生成操作憑證,接著由云服務(wù)器通過其身份標(biāo)識(shí)對(duì)操作憑證簽名后發(fā)往可信服務(wù)器并進(jìn)行身份標(biāo)識(shí)驗(yàn)證,再由可信服務(wù)器根據(jù)該身份標(biāo)識(shí)驗(yàn)證結(jié)果選擇地在區(qū)塊鏈上記錄此操作或返回失敗標(biāo)識(shí)符至云服務(wù)器。
上述方法中,所述的步驟3,進(jìn)行持有權(quán)驗(yàn)證包括以下步驟:
①、將云服務(wù)器所收到的每個(gè)數(shù)據(jù)文件進(jìn)行哈希值計(jì)算并將該當(dāng)前數(shù)據(jù)文件作為葉節(jié)點(diǎn);
②、通過莫科爾哈希樹算法計(jì)算所有葉節(jié)點(diǎn),在最后生成根節(jié)點(diǎn);
③、將步驟②根節(jié)點(diǎn)值與用戶上傳文件的根節(jié)點(diǎn)值進(jìn)行比對(duì)驗(yàn)證,根據(jù)比對(duì)驗(yàn)證結(jié)果選擇地判定此用戶為上傳文件的合法擁有者或返回失敗標(biāo)識(shí)符至云服務(wù)器。
與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果:
通過對(duì)用戶文件進(jìn)行持有權(quán)的證明,能夠確認(rèn)每一個(gè)用戶對(duì)文件數(shù)據(jù)的合法持有,從而避免惡意用戶對(duì)數(shù)據(jù)的竊取;
更重要的是,將區(qū)塊鏈技術(shù)和持有權(quán)證明結(jié)合使用,從而系統(tǒng)的提高云服務(wù)器的安全性,最終實(shí)現(xiàn)云數(shù)據(jù)全生命周期(從數(shù)據(jù)上傳、保存、操作,到最終數(shù)據(jù)被刪除)的安全監(jiān)測(cè)和管理;
此外,本發(fā)明能夠通過查詢區(qū)塊鏈記錄,來高效的追溯數(shù)據(jù)錯(cuò)誤的根源,極大的提高了現(xiàn)有云服務(wù)器的管理效率。
附圖說明
圖1為本發(fā)明的流程示意圖。
具體實(shí)施方式
本說明書中公開的所有特征,或公開的所有方法或過程中的步驟,除了互相排斥的特征和/或步驟以外,均可以以任何方式組合。
下面結(jié)合附圖對(duì)本發(fā)明做進(jìn)一步說明:
實(shí)施例1
步驟一、初始化:
首先生成可信服務(wù)器的公鑰和私鑰,接著,可信服務(wù)器生成公開參數(shù)(包括公開的哈希函數(shù),劃分文件所采用的編碼等等),并為用戶和云服務(wù)器頒發(fā)公鑰私鑰,然后產(chǎn)生第一區(qū)塊,并將可信服務(wù)器的登記信息作為初始信息寫入該區(qū)塊;
步驟二、上傳數(shù)據(jù):
用戶將文件劃分成多個(gè)塊,并根據(jù)公開參數(shù)進(jìn)行編碼,同時(shí)計(jì)算出元數(shù)據(jù)(包括文件的哈希值,莫科爾樹根節(jié)點(diǎn),文件的標(biāo)簽信息,若文件涉及到加密,還會(huì)產(chǎn)生密鑰信息),然后將數(shù)據(jù)文件和元數(shù)據(jù)一起上傳到云服務(wù)器,云服務(wù)器在收到數(shù)據(jù)之后,將數(shù)據(jù)的上傳信息(包括文件大小,上傳者的身份信息等)用自己的私鑰簽名后,發(fā)送給可信服務(wù)器,可信服務(wù)器用云服務(wù)器的公鑰進(jìn)行驗(yàn)證,若通過,則在區(qū)塊鏈上記錄數(shù)據(jù)上傳的信息,否則返回失敗標(biāo)識(shí)符;
步驟三、持有權(quán)驗(yàn)證:
云服務(wù)器收到用戶的文件和元數(shù)據(jù)后,首先使用元數(shù)據(jù)對(duì)用戶文件數(shù)據(jù)進(jìn)行持有權(quán)證明,持有權(quán)證明的過程具體為:將收到的每一個(gè)文件塊計(jì)算哈希值并作為葉節(jié)點(diǎn),采用莫科爾哈希樹算法,將所有葉節(jié)點(diǎn)參與計(jì)算并最終生成根節(jié)點(diǎn),將得到的根節(jié)點(diǎn)與用戶上傳的根節(jié)點(diǎn)值進(jìn)行比對(duì),若驗(yàn)證通過,則認(rèn)為用戶是文件的合法擁有者,否則返回失敗標(biāo)識(shí)符,云服務(wù)器用自己的私鑰對(duì)持有權(quán)信息進(jìn)行簽名后發(fā)送給可信服務(wù)器,可信服務(wù)器用云服務(wù)器的公鑰驗(yàn)證簽名的正確性,若通過,則在區(qū)塊鏈上記錄數(shù)據(jù)的持有權(quán)信息,否則,返回失敗標(biāo)識(shí)符;
步驟四、操作數(shù)據(jù);
用戶將操作請(qǐng)求(包括數(shù)據(jù)塊的添加、刪除、修改,文件持有權(quán)轉(zhuǎn)移或者文件共享,刪除文件等)用私鑰簽名后送給云服務(wù)器,云服務(wù)器對(duì)用戶簽名的正確性進(jìn)行驗(yàn)證,若通過,則執(zhí)行操作并且將操作憑證用云服務(wù)器的私鑰簽名后發(fā)送給可信服務(wù)器(文件變更的證據(jù),體現(xiàn)了文件目前的最新狀態(tài)),否則,返回失敗標(biāo)識(shí)符,可信服務(wù)器用云服務(wù)器的公鑰驗(yàn)證操作憑證的正確性,若通過,則在區(qū)塊鏈上記錄數(shù)據(jù)操作信息,否則,返回失敗標(biāo)識(shí)符。
為了便于理解,步驟四可以簡(jiǎn)單的認(rèn)為是一個(gè)具有公開可驗(yàn)證性的數(shù)據(jù)動(dòng)態(tài)修改方案,其動(dòng)態(tài)修改內(nèi)容范圍包括:數(shù)據(jù)塊的添加、刪除、修改,文件的共享和刪除等。可信服務(wù)器在這里的角色可以視作一個(gè)可信第三方。在此基礎(chǔ)之上,我們額外引入了區(qū)塊鏈技術(shù)來實(shí)時(shí)記錄這一過程,從而實(shí)現(xiàn)數(shù)據(jù)管控的安全性和高效性。
當(dāng)云數(shù)據(jù)發(fā)生錯(cuò)誤時(shí)(數(shù)據(jù)泄露、破壞等等),任何一方可以通過檢測(cè)區(qū)塊鏈上的記錄,從而快速的追溯到問題的源頭,由于區(qū)塊鏈記錄的不可篡改性,該檢測(cè)方法安全和可靠。
以上所述,僅為本發(fā)明的具體實(shí)施方式,但本發(fā)明的保護(hù)范圍并不局限于此,任何屬于本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。