本發(fā)明涉及一種區(qū)塊鏈賦能的社區(qū)檢測加密方法,屬于隱私保護(hù)和身份信息管理。
背景技術(shù):
1、數(shù)字身份是一種重要的通信手段,為網(wǎng)絡(luò)環(huán)境中的在線實體提供了明確的表征。個人數(shù)字身份,通常是通過個人屬性信息的組合來建立的,以系統(tǒng)或平臺中獨一無二的獨特賬戶的形式?;谏矸莸纳缃痪W(wǎng)絡(luò)的出現(xiàn),進(jìn)一步使用戶之間通過各種在線活動建立了相互聯(lián)系,如創(chuàng)建虛擬檔案和內(nèi)容共享,以及通過網(wǎng)絡(luò)連接映射建立相互關(guān)系。
2、傳統(tǒng)上,數(shù)字身份是以集中的方式構(gòu)建的,這使得用戶在社交網(wǎng)絡(luò)中身份的可信度、治理和互操作性帶來了諸多挑戰(zhàn)。當(dāng)服務(wù)在不可信的節(jié)點或參與者之間提供時,在平臺之間建立互信就變得尤其具有挑戰(zhàn)性。以往的研究試圖通過加入額外的安全模塊來提高可信度,但這種方法往往需要在資源需求方面付出更高的代價。
3、分布式身份識別(did)的出現(xiàn),是消除集中式設(shè)置帶來的危害的一種選擇。分布式身份識別(did)的去中心化設(shè)置,提供了一些不同于中心化設(shè)置的理想功能,如避免對中心化權(quán)威的依賴。分布式數(shù)字身份記錄了個體的基本信息、社交關(guān)系、活動記錄等,這些數(shù)據(jù)均可以作為社區(qū)建模和分析的重要輸入依據(jù)。個體在社區(qū)中的角色、影響力等屬性,可以從數(shù)字身份中提取出來,用于社區(qū)特征分析。這些數(shù)字身份數(shù)據(jù)為社區(qū)檢測方法提供了必要的基礎(chǔ)信息。
4、然而,傳統(tǒng)的身份管理方式無法適應(yīng)復(fù)雜的社交關(guān)系和角色變化。在大規(guī)模的分布式系統(tǒng)中,用戶身份信息呈現(xiàn)高度動態(tài)和碎片化的特點,用戶在不同場景下扮演的角色和權(quán)限也不盡相同。這給傳統(tǒng)的集中式身份管理系統(tǒng)帶來了巨大挑戰(zhàn),單一的身份管理方式很難應(yīng)對這種復(fù)雜性。在分布式系統(tǒng)中,用戶的隱私數(shù)據(jù)廣泛分散在各個節(jié)點,如何有效管控數(shù)據(jù)的訪問權(quán)限和使用范圍是一大挑戰(zhàn)。由于數(shù)據(jù)高度分散,很難建立統(tǒng)一的訪問控制機(jī)制,不同節(jié)點可能會采取不同的隱私保護(hù)策略,缺乏全局視角。一旦出現(xiàn)數(shù)據(jù)泄露或被濫用的情況,很難迅速定位問題并采取補(bǔ)救措施。用戶希望對自己的身份信息擁有更多的控制權(quán)和決策權(quán)。如何在保護(hù)用戶隱私和保證系統(tǒng)安全性之間尋求平衡,成為亟待解決的技術(shù)問題。
5、此外,在分布式環(huán)境下,用戶可能擁有多個身份標(biāo)識,如何根據(jù)不同身份授予差異化的權(quán)限成為一大難題。在缺乏可信認(rèn)證機(jī)制的情況下,很容易出現(xiàn)惡意用戶冒充合法身份進(jìn)行非法操作。這不僅會威脅到系統(tǒng)的安全性,也會破壞整個生態(tài)圈的信任基礎(chǔ)。意味著在進(jìn)行授權(quán)前,需要考慮到數(shù)據(jù)擁有者不可靠的問題。惡意的社區(qū)數(shù)據(jù)擁有者通過更改上傳數(shù)據(jù)中的社區(qū)信息,將導(dǎo)致數(shù)據(jù)用戶無法得到正確的社區(qū)分類結(jié)果,浪費算力,甚至通過修改數(shù)據(jù)來加大某一用戶分得更多權(quán)限的可能。在缺乏中心化管理的去中心化環(huán)境中,如何建立可靠的身份認(rèn)證和授權(quán)機(jī)制也是一個重要的挑戰(zhàn)。如果信任機(jī)制不健全,很容易導(dǎo)致惡意用戶冒充身份,危及整個系統(tǒng)的安全。
技術(shù)實現(xiàn)思路
1、本發(fā)明的目的是針對現(xiàn)有的分布式數(shù)字身份管理系統(tǒng)缺少動態(tài)性、存在篡改和隱私泄漏風(fēng)險,創(chuàng)造性地提出一種區(qū)塊鏈賦能的社區(qū)檢測加密方法。
2、本方法,在對社區(qū)檢測中數(shù)據(jù)擁有者的行為進(jìn)行約束的同時保護(hù)了用戶數(shù)字身份信息的安全,建立了新的去中心化的信任機(jī)制。首先利用區(qū)塊鏈技術(shù)實現(xiàn)分布式身份認(rèn)證,借助智能合約實現(xiàn)動態(tài)授權(quán)。在數(shù)據(jù)方面,引入向量承諾技術(shù)對數(shù)據(jù)擁有者上傳的數(shù)據(jù)進(jìn)行約束,同時將承諾后的數(shù)據(jù)放在區(qū)塊鏈上實現(xiàn)可驗證性與可溯源性。通過構(gòu)建起可靠的信任基礎(chǔ),確保了身份管理系統(tǒng)的安全性和可靠性。此外,通過結(jié)合社區(qū)搜索算法,根據(jù)用戶在社區(qū)中的地位和角色,實現(xiàn)了差異化的身份權(quán)限管理,大大提高管理的精準(zhǔn)性和效率。
3、本方法能夠更好地理解用戶在社區(qū)中的關(guān)系和行為模式,從而制定更加合理的隱私策略。根據(jù)用戶在社區(qū)中的地位和角色,實現(xiàn)差異化的身份權(quán)限管理,大大提高了管理的精準(zhǔn)性和效率。比如,對于核心社區(qū)成員可以適當(dāng)放寬隱私權(quán)限,對于邊緣成員可以采取更嚴(yán)格的隱私保護(hù)措施。同時,社區(qū)搜索算法可以幫助更準(zhǔn)確地評估用戶的社區(qū)地位和影響力,結(jié)合用戶的數(shù)字身份信息,實現(xiàn)更加智能化的信任評估和管理。
4、通過挖掘數(shù)字身份中的社交網(wǎng)絡(luò)數(shù)據(jù),可以更準(zhǔn)確地發(fā)現(xiàn)隸屬于同一社區(qū)的個體。同時,數(shù)字身份中記錄的個體活動信息,也可以進(jìn)一步豐富社區(qū)特征的分析,反過來優(yōu)化社區(qū)檢測算法的性能。比如,基于社區(qū)角色的身份特征可以幫助更準(zhǔn)確地劃分社區(qū),提高檢測結(jié)果的準(zhǔn)確性。除了為社區(qū)分析提供數(shù)據(jù)支撐,社區(qū)檢測和搜索算法本身也可以反過來優(yōu)化數(shù)字身份的管理。社區(qū)檢測算法可以發(fā)現(xiàn)具有強(qiáng)關(guān)聯(lián)性的個體群體,這有助于對數(shù)字身份進(jìn)行更合理的組織和權(quán)限管理。例如,可以針對不同社區(qū)給予個體差異化的數(shù)字身份權(quán)限和隱私策略。這樣不僅可以提高數(shù)字身份管理的效率,也能夠更好地保護(hù)個體隱私。
5、為了達(dá)到上述目的,本發(fā)明采取如下技術(shù)方案。
6、首先,對本發(fā)明方法涉及的有關(guān)概念或定義進(jìn)行說明。
7、(1)數(shù)據(jù)擁有者。負(fù)責(zé)提供需要進(jìn)行權(quán)限管理的用戶的信息。這些信息可能包括用戶的工作單位、職位、信任度、交流頻率等,是系統(tǒng)進(jìn)行權(quán)限分配的重要依據(jù)。數(shù)據(jù)擁有者首先要收集和整理相關(guān)用戶的信息,并且數(shù)據(jù)擁有者要確保信息的準(zhǔn)確性和及時性。當(dāng)收集到用戶信息后,數(shù)據(jù)擁有者要計算整個數(shù)據(jù)的承諾值并將其上傳到區(qū)塊鏈網(wǎng)絡(luò),成為一種可驗證的數(shù)字記錄,目的是為了確保用戶信息的完整性和不可篡改性,防止在傳輸或存儲過程中被惡意修改。此外,數(shù)據(jù)擁有者要定期更新用戶信息,及時反映員工的變動情況,如入職、離職、職位調(diào)整等。這些信息更新同樣需要計算承諾值并上傳到區(qū)塊鏈網(wǎng)絡(luò),確保權(quán)限管理系統(tǒng)始終掌握最新的用戶信息。
8、(2)區(qū)塊鏈。區(qū)塊鏈在分布式權(quán)限管理方案中擔(dān)任著關(guān)鍵角色。它為用戶提供did標(biāo)識和私鑰的生成服務(wù),存儲用戶的屬性承諾以及數(shù)據(jù)擁有者提供的用戶信息。首先,區(qū)塊鏈為用戶生成唯一的did標(biāo)識和私鑰,讓用戶自主管理和控制自己的數(shù)字身份信息。其次,區(qū)塊鏈存儲用戶和屬于擁有者提交的屬性承諾。當(dāng)用戶計算出自己屬性信息的承諾值并上傳到區(qū)塊鏈網(wǎng)絡(luò)時,區(qū)塊鏈會將這些屬性承諾記錄下來。這些屬性承諾將在后續(xù)的權(quán)限驗證過程中發(fā)揮關(guān)鍵作用。
9、(3)社區(qū)檢測系統(tǒng)。社區(qū)檢測系統(tǒng)是分布式權(quán)限管理中的一個關(guān)鍵模塊,它負(fù)責(zé)根據(jù)用戶的屬性信息對用戶進(jìn)行社區(qū)劃分。該社區(qū)劃分的結(jié)果將成為權(quán)限管理系統(tǒng)分配訪問權(quán)限的重要依據(jù)。社區(qū)檢測系統(tǒng)首先從數(shù)據(jù)擁有者提供的數(shù)據(jù)中獲取用戶的屬性信息,這些屬性信息將作為輸入,被社區(qū)檢測算法進(jìn)行處理和分析。社區(qū)檢測算法采用的是改進(jìn)后的louvain算法,它會根據(jù)用戶之間的屬性相似度,將他們劃分到不同的社區(qū)中。屬性相似度越高的用戶,越容易被劃分到同一個社區(qū)。目的是識別出具有共同特征的用戶群體。例如,一個社區(qū)可能包含了某公司的所有管理層人員,他們具有類似的工作職責(zé)和權(quán)限需求。另一個社區(qū)則可能包含了公司內(nèi)部的研發(fā)人員,他們需要訪問不同于管理層的技術(shù)資源。社區(qū)檢測系統(tǒng)需要定期運行這個社區(qū)檢測算法,動態(tài)地調(diào)整用戶的社區(qū)歸屬,及時反映用戶屬性的變化,確保權(quán)限分配始終與用戶的實際需求相匹配。
10、(4)承諾驗證模塊。用于對用戶提出的權(quán)限訪問請求進(jìn)行驗證,確保該請求符合事先制定的承諾和策略。當(dāng)用戶向資源提供者發(fā)起訪問請求時,資源提供者會將該請求轉(zhuǎn)發(fā)到承諾驗證模塊進(jìn)行審核。
11、承諾驗證模塊會檢查以下幾個方面:請求用戶的身份是否經(jīng)過可信的did認(rèn)證;該用戶是否具有被劃分到訪問該資源權(quán)限的社區(qū)中的屬性;數(shù)據(jù)擁有者提供的數(shù)據(jù)是否真實。如果上述條件都滿足,則承諾驗證模塊會向資源提供者發(fā)送一個授權(quán)票據(jù),表明該請求已經(jīng)通過驗證,可以被允許訪問。反之,如果任何一個條件不滿足,則承諾驗證模塊就會拒絕該訪問請求,并通知資源提供者拒絕訪問。
12、一種區(qū)塊鏈賦能的社區(qū)檢測加密方法,包括用戶獲取可驗證憑證、用戶屬性生成承諾、數(shù)據(jù)擁有者提供部分用戶信息、社區(qū)檢測、承諾一致性檢查、權(quán)限分配、權(quán)限動態(tài)調(diào)整。
13、步驟1:用戶注冊申請,獲取可驗證憑證,并上傳至區(qū)塊鏈中。
14、具體地,包括以下步驟:
15、步驟1.1:用戶通過區(qū)塊鏈上的did服務(wù)生成自己的did標(biāo)識和私鑰;
16、步驟1.2:用戶通過did服務(wù)申請并獲取包含自己屬性信息的可驗證憑證。
17、步驟2:用戶屬性生成承諾并上傳至區(qū)塊鏈。
18、具體地,包括以下步驟:
19、步驟2.1:用戶將自己的屬性信息通過向量承諾技術(shù)計算出承諾值,得到屬性承諾;
20、步驟2.2:用戶將屬性承諾上傳到區(qū)塊鏈上進(jìn)行存儲,并使用自己的did私鑰進(jìn)行數(shù)字簽名。
21、步驟3:數(shù)據(jù)擁有者提供部分用戶信息。
22、具體地,包括以下步驟:
23、步驟3.1:數(shù)據(jù)擁有者提供的數(shù)據(jù),通過向量承諾技術(shù)計算向量值,得到信息摘要;
24、步驟3.2:數(shù)據(jù)擁有者將信息摘要上傳至區(qū)塊鏈上進(jìn)行存儲,并使用自己的數(shù)字簽名進(jìn)行認(rèn)證。
25、步驟4:對用戶進(jìn)行聚類分析(可以采用louvain算法等),識別出用戶之間的關(guān)聯(lián)模式,并將用戶劃分到不同的社區(qū)中。每個社區(qū)代表了一個相對獨立的用戶群體,作為權(quán)限分配的基礎(chǔ)。
26、具體地,包括以下步驟:
27、步驟4.1:初始化。
28、首先將每一個點看作一個社區(qū),然后對模塊度進(jìn)行優(yōu)化。不斷遍歷所有節(jié)點,每次遍歷保存模塊度增益為正的社區(qū),再遍歷相鄰的節(jié)點記錄模塊度的變化,然后將節(jié)點的社區(qū)編號變成獲得最大增益的社區(qū)編號。將該節(jié)點移出當(dāng)前所屬的社區(qū),并在新社區(qū)內(nèi)添加該節(jié)點。記錄下每個節(jié)點的模塊度貢獻(xiàn)。
29、步驟4.2:迭代合并。
30、通過遍歷社區(qū)和社區(qū)內(nèi)的節(jié)點,獲取節(jié)點的權(quán)重和編號。然后遍歷所有不為空的社區(qū),獲取社區(qū)之間的權(quán)重,之后對社區(qū)進(jìn)行更新。
31、步驟5:對承諾進(jìn)行一致性檢查。
32、具體地,包括以下步驟:
33、步驟5.1:系統(tǒng)首先驗證用戶的數(shù)字身份憑證。
34、用戶使用自己的did私鑰對請求進(jìn)行數(shù)字簽名。系統(tǒng)驗證簽名的有效性,確認(rèn)用戶屬性承諾是否與區(qū)塊鏈上存儲的一致,是否滿足社區(qū)檢測策略。
35、步驟5.2:系統(tǒng)檢查數(shù)據(jù)擁有者提供的用戶信息摘要是否與區(qū)塊鏈上存儲的一致。
36、步驟6:對數(shù)據(jù)擁有者進(jìn)行權(quán)限分配。
37、具體地,包括以下步驟:
38、步驟6.1:檢測前面的身份驗證和承諾一致性檢查是否都通過;
39、步驟6.2:系統(tǒng)根據(jù)用戶所屬的社區(qū),為其分配相應(yīng)的訪問權(quán)限。
40、步驟7.數(shù)據(jù)擁有者權(quán)限動態(tài)調(diào)整。
41、具體地,包括以下步驟:
42、步驟7.1:數(shù)據(jù)擁有者的屬性和社交關(guān)系發(fā)生變化;
43、步驟7.2:系統(tǒng)定期重新進(jìn)行社區(qū)檢測,并根據(jù)檢測結(jié)果動態(tài)調(diào)整用戶的權(quán)限。
44、有益效果
45、本發(fā)明方法,與現(xiàn)有技術(shù)相比,具有如下優(yōu)點:
46、1.本方法利用區(qū)塊鏈的去中心化、不可篡改等特性,實現(xiàn)了身份認(rèn)證的分布式管理,避免了單點故障和中心化授權(quán)的問題。通過在區(qū)塊鏈上部署智能合約,實現(xiàn)了身份的動態(tài)授權(quán)和撤銷,為身份管理引入了靈活性和可控性。區(qū)塊鏈的共識機(jī)制確保了身份認(rèn)證信息的可靠性和一致性,增強(qiáng)了系統(tǒng)的安全性。
47、2.本方法將數(shù)據(jù)擁有者上傳的數(shù)據(jù)通過向量承諾技術(shù)進(jìn)行約束,然后將承諾數(shù)據(jù)存儲在區(qū)塊鏈上,保護(hù)了數(shù)據(jù)擁有者的隱私,又實現(xiàn)了數(shù)據(jù)的可驗證性和可溯源性,為后續(xù)的社區(qū)分析和管理提供了可靠的數(shù)據(jù)基礎(chǔ)。
48、3.本方法結(jié)合社區(qū)搜索算法,充分挖掘數(shù)字身份中記錄的個體活動信息,豐富社區(qū)特征的分析維度,更準(zhǔn)確地劃分社區(qū),提高社區(qū)檢測結(jié)果的準(zhǔn)確性。同時根據(jù)用戶在社區(qū)中的地位和角色,實現(xiàn)了差異化的身份權(quán)限管理。