本發(fā)明實施例涉及通信技術(shù)領(lǐng)域,尤其涉及一種安全信任處理方法及裝置。
背景技術(shù):
公鑰加密,也叫非對稱(密鑰)加密(publickeyencryption),屬于通信科技下的網(wǎng)絡(luò)安全二級學(xué)科,指的是由對應(yīng)的一對唯一性密鑰(即公開密鑰和私有密鑰)組成的加密方法。它解決了密鑰的發(fā)布和管理問題,是目前商業(yè)密碼的核心。在公鑰加密體制中,沒有公開的是私鑰,公開的是公鑰。
公鑰加密體系一定程度上解決了這個問題。每個用戶自己生成一對密鑰:公鑰和私鑰。當(dāng)要和另一方進(jìn)行通信的時候,將自己的公鑰發(fā)送給對方。為了表明自己的身份,首先用自己私鑰對發(fā)過來的信息進(jìn)行簽名,簽名后發(fā)給對方。對方收到這段簽名后用對應(yīng)的公鑰進(jìn)行驗證,如果驗證通過則可以認(rèn)可對方。但是這個機(jī)制依賴于公鑰發(fā)給對方的時候不被攻擊者冒充,否則容易受到中間人攻擊。
為此,安全行業(yè)提出第三方信任ca認(rèn)證體系。為每一個用戶發(fā)放一個有可信第三方簽名的證書,任何一方可以從任何渠道獲得任何人的證書,只要用ca認(rèn)證中心的公鑰進(jìn)行簽名認(rèn)證就可以認(rèn)可該公鑰的正確性?;舅悸啡缦拢?/p>
用戶a生成一個密碼對,公鑰pk和私鑰sk。將自己的pk發(fā)送到ca中心,ca采用自己的私鑰對用戶的pk包括用戶的標(biāo)識進(jìn)行簽名,然后發(fā)送給用戶a或者保存到任何地方。這樣,任何一個人拿到別人的包含公鑰的證書以后,首先用ca中心的公鑰進(jìn)行驗證,確保該證書是經(jīng)過ca簽發(fā)的就可以確認(rèn)該公鑰不是被攻擊者冒充的。
ca認(rèn)證實際上也是依賴于可信第三方即ca中心的。一旦ca中心的公鑰被冒充,或者ca中心的私鑰丟失,則整個認(rèn)證體系將崩潰。
技術(shù)實現(xiàn)要素:
本發(fā)明實施例提供一種安全信任處理方法及裝置,以提高互聯(lián)網(wǎng)服務(wù)的安全性。
本發(fā)明實施例的一個方面是提供一種安全信任處理方法,包括:
對等網(wǎng)絡(luò)中的節(jié)點根據(jù)所述對等網(wǎng)絡(luò)中傳輸?shù)南?、第一隨機(jī)數(shù)和歷史哈希值計算第一哈希值;
若所述第一哈希值小于閾值,則所述節(jié)點將所述第一隨機(jī)數(shù)、所述第一哈希值、以及第一時間戳發(fā)送給所述對等網(wǎng)絡(luò)中的其他節(jié)點,所述第一時間戳表示所述節(jié)點的發(fā)送時刻;
所述節(jié)點存儲所述對等網(wǎng)絡(luò)中傳輸?shù)南ⅰ?/p>
本發(fā)明實施例的另一個方面是提供一種安全信任處理裝置,包括:
計算模塊,用于根據(jù)所述對等網(wǎng)絡(luò)中傳輸?shù)南ⅰ⒌谝浑S機(jī)數(shù)和歷史哈希值計算第一哈希值;
發(fā)送模塊,用于當(dāng)所述第一哈希值小于閾值時,將所述第一隨機(jī)數(shù)、所述第一哈希值、以及第一時間戳發(fā)送給所述對等網(wǎng)絡(luò)中的其他節(jié)點,所述第一時間戳表示所述節(jié)點的發(fā)送時刻;
存儲模塊,用于存儲所述對等網(wǎng)絡(luò)中傳輸?shù)南ⅰ?/p>
本發(fā)明實施例提供的安全信任處理方法及裝置,實現(xiàn)了一種全新的去中心化的互聯(lián)網(wǎng)安全機(jī)制,采用去中心分布式記錄的方式來分發(fā)公鑰,基于此分發(fā)公鑰的方式來構(gòu)建一個新的互聯(lián)網(wǎng)的安全信任機(jī)制,不依賴于任何的第三方機(jī)構(gòu)或個人,用以解決現(xiàn)有的互聯(lián)網(wǎng)中安全信任機(jī)制的安全性不夠的問題,為用戶提供安全可靠的互聯(lián)網(wǎng)服務(wù)。
附圖說明
圖1為本發(fā)明實施例提供的安全信任處理方法流程圖;
圖2為本發(fā)明實施例提供的安全信任處理方法適用的網(wǎng)絡(luò)架構(gòu)圖;
圖3為本發(fā)明另一實施例提供的安全信任處理方法流程圖;
圖4為本發(fā)明實施例提供的安全信任處理裝置的結(jié)構(gòu)圖;
圖5為本發(fā)明另一實施例提供的安全信任處理裝置的結(jié)構(gòu)圖。
具體實施方式
圖1為本發(fā)明實施例提供的安全信任處理方法流程圖;圖2為本發(fā)明實施例提供的安全信任處理方法適用的網(wǎng)絡(luò)架構(gòu)圖。具體的安全信任處理方法步驟如下:
步驟s101、對等網(wǎng)絡(luò)中的節(jié)點根據(jù)所述對等網(wǎng)絡(luò)中傳輸?shù)南ⅰ⒌谝浑S機(jī)數(shù)和歷史哈希值計算第一哈希值。
如圖2所示,第一節(jié)點、第二節(jié)點、第三節(jié)點、第四節(jié)點構(gòu)成對等網(wǎng)絡(luò)(peertopeer,p2p),此處只是示意性說明,并不限定對等網(wǎng)絡(luò)的具體形式,也不限定對等網(wǎng)絡(luò)中的節(jié)點的個數(shù)。每個節(jié)點在對等網(wǎng)絡(luò)中是對等的,各自的消息是可以同步的,每個節(jié)點具體可以是用戶終端、服務(wù)器、服務(wù)器集群等設(shè)備。每個節(jié)點上安裝有互聯(lián)網(wǎng)安全信任p2p代理模塊,該代理模塊首次啟動,彈出一個界面,要求用戶輸入用戶名,并根據(jù)預(yù)先約定的算法生成該用戶名對應(yīng)的公鑰和私鑰。該公鑰同時可以作為該用戶的用戶標(biāo)識用以區(qū)分其他的用戶。然后該用戶終端可以加入到信任的p2p網(wǎng)絡(luò)中,加入信任的p2p網(wǎng)絡(luò)的時候,可以通過找到p2p相鄰節(jié)點的方式加入,也可以通過與p2p根節(jié)點建立連接的方式加入,如圖2所示,假設(shè)第五節(jié)點原來不是p2p網(wǎng)絡(luò)中的節(jié)點,現(xiàn)在可通過與其相鄰節(jié)點即第三節(jié)點建立連接的方式加入該p2p網(wǎng)絡(luò)中,也可以通過與p2p根節(jié)點建立連接的方式加入該p2p網(wǎng)絡(luò)中。
用戶終端將自己的用戶名和公鑰,增加本地時間戳后發(fā)布到p2p網(wǎng)絡(luò)中。p2p網(wǎng)絡(luò)中的任何一個節(jié)點收到該消息后,提取該報文中的用戶名,如果該用戶名在歷史記錄中沒出現(xiàn)過,則執(zhí)行本實施例所述的方法步驟,如果該用戶名在歷史記錄中出現(xiàn)過,則忽略該信息。因此,本實施例的執(zhí)行主體可以是p2p網(wǎng)絡(luò)中的任何一個節(jié)點。
具體的,所述節(jié)點對所述對等網(wǎng)絡(luò)中傳輸?shù)亩鄺l消息進(jìn)行排序;可選的,所述節(jié)點根據(jù)所述多條消息各自攜帶的時間戳,對所述對等網(wǎng)絡(luò)中傳輸?shù)亩鄺l消息進(jìn)行排序。所述節(jié)點在排序后的多條消息中加入所述第一隨機(jī)數(shù);所述節(jié)點對加入所述第一隨機(jī)數(shù)且排序后的多條消息,以及所述歷史哈希值進(jìn)行哈希運(yùn)算,得到所述第一哈希值。
例如,p2p網(wǎng)絡(luò)中的任何一個節(jié)點統(tǒng)計所述p2p網(wǎng)絡(luò)中多個用戶發(fā)布的n個消息,該n個消息是所述節(jié)點未經(jīng)過哈希運(yùn)算的消息,n可以是預(yù)先固定的一個數(shù)量,該n個消息可以分別攜帶有時間戳,該節(jié)點例如第一節(jié)點按照該n個消息分別攜帶的時間戳的大小對該n個消息進(jìn)行排序,并在排序后的n個消息組成的報文的任意一個隨機(jī)位置加一個隨機(jī)數(shù),該隨機(jī)數(shù)記為第一隨機(jī)數(shù),并對排序后的n個消息、該隨機(jī)數(shù)和歷史哈希值記為hashp進(jìn)行哈希運(yùn)算,得到第一哈希值記為hashn。其中,歷史哈希值hashp可以是hashn-1,表示p2p網(wǎng)絡(luò)中經(jīng)過哈希運(yùn)算后發(fā)布的最后一個哈希值,具體可以是上一次p2p網(wǎng)絡(luò)中經(jīng)過哈希運(yùn)算后發(fā)布的小于閾值的哈希值。
步驟s102、若所述第一哈希值小于閾值,則所述節(jié)點將所述第一隨機(jī)數(shù)、所述第一哈希值、以及第一時間戳發(fā)送給所述對等網(wǎng)絡(luò)中的其他節(jié)點,所述第一時間戳表示所述節(jié)點的發(fā)送時刻。
當(dāng)?shù)谝还V礹ashn小于閾值時,該節(jié)點例如第一節(jié)點將第一隨機(jī)數(shù)、第一哈希值hashn、以及第一時間戳發(fā)送給對等網(wǎng)絡(luò)中的其他節(jié)點例如第二節(jié)點、第三節(jié)點、第四節(jié)點,其中,第一時間戳表示該節(jié)點例如第一節(jié)點的發(fā)送時刻,即發(fā)送第一隨機(jī)數(shù)、第一哈希值hashn、以及第一時間戳的時刻。
其他節(jié)點例如第二節(jié)點收到該節(jié)點例如第一節(jié)點發(fā)送的第一隨機(jī)數(shù)、第一哈希值hashn、以及第一時間戳后,對第一隨機(jī)數(shù)、第一哈希值hashn、以及第一時間戳進(jìn)行計算驗證,如果第一哈希值hashn小于閾值,則停止第二節(jié)點本地當(dāng)前進(jìn)行的對第一哈希值hashn的計算,然后第二節(jié)點以第一時間戳為起點,繼續(xù)統(tǒng)計該對等網(wǎng)絡(luò)中的消息,并根據(jù)第一時間戳之后該對等網(wǎng)絡(luò)中的消息、選擇另一個隨機(jī)數(shù)例如第二隨機(jī)數(shù)、以及第一哈希值hashn進(jìn)行哈希運(yùn)算得到第二哈希值hashn+1,如果第二哈希值hashn+1小于閾值,則第二節(jié)點將第二隨機(jī)數(shù)、第二哈希值hashn+1、第二時間戳發(fā)送給所述對等網(wǎng)絡(luò)中的其他節(jié)點例如第一節(jié)點、第三節(jié)點、第四節(jié)點,所述第二時間戳表示第二節(jié)點的發(fā)送時刻。
步驟s103、所述節(jié)點存儲所述對等網(wǎng)絡(luò)中傳輸?shù)南ⅰ?/p>
另外,該節(jié)點例如第一節(jié)點將第一隨機(jī)數(shù)、第一哈希值hashn、以及第一時間戳發(fā)送給對等網(wǎng)絡(luò)中的其他節(jié)點之后,將對等網(wǎng)絡(luò)中傳輸?shù)南⒂涗浽诒镜亍?/p>
需要說明的是,本實施例中的消息可以是任何一個即將加入該對等網(wǎng)絡(luò)中的節(jié)點發(fā)布的自己的用戶名、公鑰和時間戳,也可以是已經(jīng)在對等網(wǎng)絡(luò)中的節(jié)點發(fā)布的賬本消息。
步驟s104、若所述第一哈希值大于閾值,則所述節(jié)點更新所述第一隨機(jī)數(shù),并根據(jù)所述對等網(wǎng)絡(luò)中傳輸?shù)南?、更新后的第一隨機(jī)數(shù)和歷史哈希值重新計算所述第一哈希值。
另外,當(dāng)?shù)谝还V礹ashn大于閾值時,該節(jié)點例如第一節(jié)點可以更新該第一隨機(jī)數(shù),并根據(jù)所述對等網(wǎng)絡(luò)中傳輸?shù)南?、更新后的第一隨機(jī)數(shù)和歷史哈希值hashp重新計算所述第一哈希值hashn。
本發(fā)明實施例實現(xiàn)了一種全新的去中心化的互聯(lián)網(wǎng)安全機(jī)制,采用去中心分布式記錄的方式來分發(fā)公鑰,基于此分發(fā)公鑰的方式來構(gòu)建一個新的互聯(lián)網(wǎng)的安全信任機(jī)制,不依賴于任何的第三方機(jī)構(gòu)或個人,用以解決現(xiàn)有的互聯(lián)網(wǎng)中安全信任機(jī)制的安全性不夠的問題,為用戶提供安全可靠的互聯(lián)網(wǎng)服務(wù)。
圖3為本發(fā)明另一實施例提供的安全信任處理方法流程圖。在上述實施例的基礎(chǔ)上,還包括步驟如下:
步驟s301、所述節(jié)點接收其他節(jié)點發(fā)送的第二隨機(jī)數(shù)、第二哈希值、以及第二時間戳,所述第二時間戳表示所述其他節(jié)點的發(fā)送時刻。
步驟s302、若所述第二哈希值小于閾值,則所述節(jié)點停止計算所述第二哈希值。
步驟s303、所述節(jié)點將所述第二哈希值作為所述歷史哈希值,并根據(jù)所述第二時間戳之后所述對等網(wǎng)絡(luò)中傳輸?shù)南ⅰ⒌谌S機(jī)數(shù)和所述第二哈希值計算第三哈希值。
如圖2所示,當(dāng)?shù)谝还?jié)點接收到第二節(jié)點發(fā)送的第二隨機(jī)數(shù)、第二哈希值hashn+1、第二時間戳?xí)r,其中,所述第二時間戳表示第二節(jié)點的發(fā)送時刻,對第二隨機(jī)數(shù)、第二哈希值hashn+1、第二時間戳進(jìn)行計算驗證,如果第二哈希值hashn+1小于閾值,則停止第一節(jié)點本地當(dāng)前進(jìn)行的對第二哈希值hashn+1的計算,然后第一節(jié)點以第二時間戳為起點,繼續(xù)統(tǒng)計該對等網(wǎng)絡(luò)中的消息,并根據(jù)第二時間戳之后該對等網(wǎng)絡(luò)中的消息、選擇另一個隨機(jī)數(shù)例如第三隨機(jī)數(shù)、以及第二哈希值hashn+1進(jìn)行哈希運(yùn)算得到第三哈希值hashn+2,如果第三哈希值hashn+2小于閾值,則第一節(jié)點將第三隨機(jī)數(shù)、第三哈希值hashn+2、第三時間戳發(fā)送給所述對等網(wǎng)絡(luò)中的其他節(jié)點例如第二節(jié)點、第三節(jié)點、第四節(jié)點,所述第三時間戳表示第一節(jié)點發(fā)送第三隨機(jī)數(shù)、第三哈希值hashn+2、第三時間戳的時刻。如此,不斷重復(fù)進(jìn)行。
本實施例由于以上過程全部全p2p網(wǎng)絡(luò)公開化,并且全網(wǎng)的節(jié)點經(jīng)過計算來確定哪個節(jié)點擁有以上n條信息的記賬權(quán),其他節(jié)點也記錄有該此發(fā)布的消息和隨機(jī)數(shù),以及hashp,hashn值,因此任何人都不可以對該n條信息進(jìn)行偽造,這就使得信息的安全性得到了保障。
圖4為本發(fā)明實施例提供的安全信任處理裝置的結(jié)構(gòu)圖。本發(fā)明實施例提供的安全信任處理裝置可以執(zhí)行安全信任處理方法實施例提供的處理流程,如圖4所示,安全信任處理裝置40包括計算模塊41、發(fā)送模塊42、存儲模塊43,其中,計算模塊41用于根據(jù)所述對等網(wǎng)絡(luò)中傳輸?shù)南?、第一隨機(jī)數(shù)和歷史哈希值計算第一哈希值;發(fā)送模塊42用于當(dāng)所述第一哈希值小于閾值時,將所述第一隨機(jī)數(shù)、所述第一哈希值、以及第一時間戳發(fā)送給所述對等網(wǎng)絡(luò)中的其他節(jié)點,所述第一時間戳表示所述節(jié)點的發(fā)送時刻;存儲模塊43用于存儲所述對等網(wǎng)絡(luò)中傳輸?shù)南ⅰ?/p>
本發(fā)明實施例實現(xiàn)了一種全新的去中心化的互聯(lián)網(wǎng)安全機(jī)制,采用去中心分布式記錄的方式來分發(fā)公鑰,基于此分發(fā)公鑰的方式來構(gòu)建一個新的互聯(lián)網(wǎng)的安全信任機(jī)制,不依賴于任何的第三方機(jī)構(gòu)或個人,用以解決現(xiàn)有的互聯(lián)網(wǎng)中安全信任機(jī)制的安全性不夠的問題,為用戶提供安全可靠的互聯(lián)網(wǎng)服務(wù)。
圖5為本發(fā)明另一實施例提供的安全信任處理裝置的結(jié)構(gòu)圖。在上述實施例的基礎(chǔ)上,計算模塊41包括:排序單元411、隨機(jī)數(shù)插入單元412、計算單元413,其中,排序單元411用于對所述對等網(wǎng)絡(luò)中傳輸?shù)亩鄺l消息進(jìn)行排序;隨機(jī)數(shù)插入單元412用于在排序后的多條消息中加入所述第一隨機(jī)數(shù);計算單元413用于對加入所述第一隨機(jī)數(shù)且排序后的多條消息,以及所述歷史哈希值進(jìn)行哈希運(yùn)算,得到所述第一哈希值。
排序單元411具體用于根據(jù)所述多條消息各自攜帶的時間戳,對所述對等網(wǎng)絡(luò)中傳輸?shù)亩鄺l消息進(jìn)行排序。
另外,安全信任處理裝置40還包括:接收模塊44,用于接收其他節(jié)點發(fā)送的第二隨機(jī)數(shù)、第二哈希值、以及第二時間戳,所述第二時間戳表示所述其他節(jié)點的發(fā)送時刻;當(dāng)所述第二哈希值小于閾值時,計算模塊41停止計算所述第二哈希值,將所述第二哈希值作為所述歷史哈希值,并根據(jù)所述第二時間戳之后所述對等網(wǎng)絡(luò)中傳輸?shù)南?、第三隨機(jī)數(shù)和所述第二哈希值計算第三哈希值。
此外,安全信任處理裝置40還包括:更新模塊45,用于當(dāng)所述第一哈希值大于閾值時,更新所述第一隨機(jī)數(shù);計算模塊41用于根據(jù)所述對等網(wǎng)絡(luò)中傳輸?shù)南?、更新后的第一隨機(jī)數(shù)和歷史哈希值重新計算所述第一哈希值。
本發(fā)明實施例提供的安全信任處理裝置可以具體用于執(zhí)行上述圖1所提供的方法實施例,具體功能此處不再贅述。
本發(fā)明實施例由于以上過程全部全p2p網(wǎng)絡(luò)公開化,并且全網(wǎng)的節(jié)點經(jīng)過計算來確定哪個節(jié)點擁有以上n條信息的記賬權(quán),其他節(jié)點也記錄有該此發(fā)布的消息和隨機(jī)數(shù),以及hashp,hashn值,因此任何人都不可以對該n條信息進(jìn)行偽造,這就使得信息的安全性得到了保障。
綜上所述,本發(fā)明實施例實現(xiàn)了一種全新的去中心化的互聯(lián)網(wǎng)安全機(jī)制,采用去中心分布式記錄的方式來分發(fā)公鑰,基于此分發(fā)公鑰的方式來構(gòu)建一個新的互聯(lián)網(wǎng)的安全信任機(jī)制,不依賴于任何的第三方機(jī)構(gòu)或個人,用以解決現(xiàn)有的互聯(lián)網(wǎng)中安全信任機(jī)制的安全性不夠的問題,為用戶提供安全可靠的互聯(lián)網(wǎng)服務(wù);由于以上過程全部全p2p網(wǎng)絡(luò)公開化,并且全網(wǎng)的節(jié)點經(jīng)過計算來確定哪個節(jié)點擁有以上n條信息的記賬權(quán),其他節(jié)點也記錄有該此發(fā)布的消息和隨機(jī)數(shù),以及hashp,hashn值,因此任何人都不可以對該n條信息進(jìn)行偽造,這就使得信息的安全性得到了保障。
在本發(fā)明所提供的幾個實施例中,應(yīng)該理解到,所揭露的裝置和方法,可以通過其它的方式實現(xiàn)。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,例如多個單元或組件可以結(jié)合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機(jī)械或其它的形式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部單元來實現(xiàn)本實施例方案的目的。
另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現(xiàn),也可以采用硬件加軟件功能單元的形式實現(xiàn)。
上述以軟件功能單元的形式實現(xiàn)的集成的單元,可以存儲在一個計算機(jī)可讀取存儲介質(zhì)中。上述軟件功能單元存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機(jī)設(shè)備(可以是個人計算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)或處理器(processor)執(zhí)行本發(fā)明各個實施例所述方法的部分步驟。而前述的存儲介質(zhì)包括:u盤、移動硬盤、只讀存儲器(read-onlymemory,rom)、隨機(jī)存取存儲器(randomaccessmemory,ram)、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
本領(lǐng)域技術(shù)人員可以清楚地了解到,為描述的方便和簡潔,僅以上述各功能模塊的劃分進(jìn)行舉例說明,實際應(yīng)用中,可以根據(jù)需要而將上述功能分配由不同的功能模塊完成,即將裝置的內(nèi)部結(jié)構(gòu)劃分成不同的功能模塊,以完成以上描述的全部或者部分功能。上述描述的裝置的具體工作過程,可以參考前述方法實施例中的對應(yīng)過程,在此不再贅述。
最后應(yīng)說明的是:以上各實施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述各實施例對本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對前述各實施例所記載的技術(shù)方案進(jìn)行修改,或者對其中部分或者全部技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實施例技術(shù)方案的范圍。