本發(fā)明涉及數(shù)據(jù)傳輸技術(shù)領(lǐng)域,特別是涉及一種驗(yàn)證加密數(shù)據(jù)傳輸路徑的方法及裝置。
背景技術(shù):
數(shù)據(jù)傳輸是數(shù)據(jù)從一個(gè)設(shè)備傳送到另一個(gè)設(shè)備的通信過程。在實(shí)際應(yīng)用中,為了保護(hù)數(shù)據(jù)的隱私以及安全,信息發(fā)送設(shè)備在向信息接收設(shè)備發(fā)送信息時(shí),往往先利用信息接收設(shè)備的公鑰對(duì)需要發(fā)送的信息進(jìn)行加密,然后將獲得的密文發(fā)送給信息接收設(shè)備,以便信息接收設(shè)備利用自身的私鑰將密文解開。此外,為了使得信息接收設(shè)備能夠確定信息發(fā)送設(shè)備的身份以及驗(yàn)證所接收信息的正確性,往往還會(huì)通過簽名技術(shù)對(duì)待發(fā)送的信息進(jìn)行簽名。
然而,現(xiàn)有的加密和簽名的方式僅能夠驗(yàn)證信息是否為直接發(fā)送該信息的設(shè)備所發(fā)送的信息,而無法驗(yàn)證該信息在從原始的信息發(fā)送設(shè)備到目前為止是否發(fā)生過改變,從而使得信息的可靠性降低。
技術(shù)實(shí)現(xiàn)要素:
有鑒于此,本發(fā)明提供一種驗(yàn)證加密數(shù)據(jù)傳輸路徑的方法及裝置,能夠獲取并驗(yàn)證加密數(shù)據(jù)經(jīng)過的所有傳輸路徑,從而提高了信息傳輸?shù)目煽啃浴?/p>
本發(fā)明的目的是采用以下技術(shù)方案來實(shí)現(xiàn)的:
第一方面,本發(fā)明提供了一種驗(yàn)證加密數(shù)據(jù)傳輸路徑的方法,所述方法包括:
接收信息發(fā)送設(shè)備發(fā)送的數(shù)據(jù)包,其中,所述數(shù)據(jù)包中包括用于記錄每次信息傳輸路徑的路徑字段、用于記錄密鑰密文的字段、用于記錄信息密文的字段以及用于記錄各個(gè)信息發(fā)送設(shè)備的簽名信息的字段,所述密鑰密文是根據(jù)信息接收設(shè)備的公鑰對(duì)密鑰明文進(jìn)行加密得到的,所述密鑰明文用于加密信息明文,所述簽名信息是根據(jù)信息發(fā)送設(shè)備的私鑰,對(duì)由對(duì)應(yīng)的路徑字段以及所述信息明文組成的數(shù)據(jù)進(jìn)行簽名得到的;
利用所述信息接收設(shè)備的私鑰對(duì)所述數(shù)據(jù)包中的密鑰密文進(jìn)行解密,獲得密鑰明文;
利用解密得到的密鑰明文對(duì)所述數(shù)據(jù)包中的信息密文進(jìn)行解密,獲得信息明文;
根據(jù)所述路徑字段、利用所述密鑰明文解密獲得的信息明文以及發(fā)送過所述信息密文的所有信息發(fā)送設(shè)備的公鑰,對(duì)所述簽名字段中的各個(gè)簽名信息進(jìn)行驗(yàn)證;
若所有簽名信息均驗(yàn)證成功,則保留通過密鑰明文解密得到的信息明文;
若存在簽名信息驗(yàn)證失敗,則丟棄通過密鑰明文解密得到的信息明文。
第二方面,本發(fā)明提供了一種驗(yàn)證加密數(shù)據(jù)傳輸路徑的裝置,所述裝置包括:
接收單元,用于接收信息發(fā)送設(shè)備發(fā)送的數(shù)據(jù)包,其中,所述數(shù)據(jù)包中包括用于記錄每次信息傳輸路徑的路徑字段、用于記錄密鑰密文的字段、用于記錄信息密文的字段以及用于記錄各個(gè)信息發(fā)送設(shè)備的簽名信息的字段,所述密鑰密文是根據(jù)信息接收設(shè)備的公鑰對(duì)密鑰明文進(jìn)行加密得到的,所述密鑰明文用于加密信息明文,所述簽名信息是根據(jù)信息發(fā)送設(shè)備的私鑰,對(duì)由對(duì)應(yīng)的路徑字段以及所述信息明文組成的數(shù)據(jù)進(jìn)行簽名得到的;
解密單元,用于利用所述信息接收設(shè)備的私鑰對(duì)所述接收單元接收的所述數(shù)據(jù)包中的密鑰密文進(jìn)行解密,獲得密鑰明文;
所述解密單元還用于利用解密得到的密鑰明文對(duì)所述數(shù)據(jù)包中的信息密文進(jìn)行解密,獲得信息明文;
驗(yàn)證單元,用于根據(jù)所述路徑字段、所述解密單元利用所述密鑰明文解密獲得的信息明文以及發(fā)送過所述信息密文的所有信息發(fā)送設(shè)備的公鑰,對(duì)所述簽名字段中的各個(gè)簽名信息進(jìn)行驗(yàn)證;
保留單元,用于當(dāng)所述驗(yàn)證單元的驗(yàn)證結(jié)果為所有簽名信息均驗(yàn)證成功時(shí),保留通過密鑰明文解密得到的信息明文;
丟棄單元,用于當(dāng)所述驗(yàn)證單元的驗(yàn)證結(jié)果為存在簽名信息驗(yàn)證失敗時(shí),丟棄通過密鑰明文解密得到的信息明文。
借由上述技術(shù)方案,本發(fā)明提供的驗(yàn)證加密數(shù)據(jù)傳輸路徑的方法及裝置,能夠在信息發(fā)送設(shè)備需要向信息接收設(shè)備發(fā)送信息時(shí),將包括用于記錄每次信息傳輸路徑的路徑字段、用于存儲(chǔ)密鑰密文的字段、用于存儲(chǔ)信息密文的字段以及用于存儲(chǔ)各個(gè)信息發(fā)送設(shè)備的簽名信息的簽名字段的數(shù)據(jù)包發(fā)送給信息接收設(shè)備(其中,簽名信息是關(guān)于傳輸路徑以及信息明文的簽名),由此信息接收設(shè)備接收到該數(shù)據(jù)包后,能夠先根據(jù)自身的私鑰、密鑰密文以及信息密文獲得信息明文,然后根據(jù)路徑字段、信息明文以及曾經(jīng)發(fā)送過該信息密文的各個(gè)信息發(fā)送設(shè)備的公鑰,對(duì)簽名字段中的各個(gè)簽名信息分別進(jìn)行驗(yàn)證,從而實(shí)現(xiàn)對(duì)所有傳輸路徑的驗(yàn)證以及每個(gè)信息發(fā)送設(shè)備所發(fā)信息明文的驗(yàn)證,并在所有簽名信息均驗(yàn)證成功時(shí)才保留信息明文,進(jìn)而提高了信息接收設(shè)備接收信息的可靠性。
上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段,而可依照說明書的內(nèi)容予以實(shí)施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點(diǎn)能夠更明顯易懂,以下特舉本發(fā)明的具體實(shí)施方式。
附圖說明
通過閱讀下文優(yōu)選實(shí)施方式的詳細(xì)描述,各種其他的優(yōu)點(diǎn)和益處對(duì)于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實(shí)施方式的目的,而并不認(rèn)為是對(duì)本發(fā)明的限制。而且在整個(gè)附圖中,用相同的參考符號(hào)表示相同的部件。在附圖中:
圖1示出了本發(fā)明實(shí)施例提供的一種驗(yàn)證加密數(shù)據(jù)傳輸路徑的方法的流程圖;
圖2示出了本發(fā)明實(shí)施例提供的生成可追溯的加密數(shù)據(jù)的方法示例圖;
圖3示出了本發(fā)明實(shí)施例提供的驗(yàn)證加密數(shù)據(jù)傳輸路徑的方法示例圖;
圖4示出了本發(fā)明實(shí)施例提供的另一種驗(yàn)證加密數(shù)據(jù)傳輸路徑的方法的流程圖;
圖5示出了本發(fā)明實(shí)施例提供的一種驗(yàn)證加密數(shù)據(jù)傳輸路徑的裝置的組成框圖;
圖6示出了本發(fā)明實(shí)施例提供的另一種驗(yàn)證加密數(shù)據(jù)傳輸路徑的裝置的組成框圖;
圖7示出了本發(fā)明實(shí)施例提供的另一種驗(yàn)證加密數(shù)據(jù)傳輸路徑的裝置的組成框圖;
圖8示出了本發(fā)明實(shí)施例提供的另一種驗(yàn)證加密數(shù)據(jù)傳輸路徑的裝置的組成框圖;
圖9示出了本發(fā)明實(shí)施例提供的一種驗(yàn)證加密數(shù)據(jù)傳輸路徑的系統(tǒng)的組成框圖。
具體實(shí)施方式
下面將參照附圖更詳細(xì)地描述本公開的示例性實(shí)施例。雖然附圖中顯示了本公開的示例性實(shí)施例,然而應(yīng)當(dāng)理解,可以以各種形式實(shí)現(xiàn)本公開而不應(yīng)被這里闡述的實(shí)施例所限制。相反,提供這些實(shí)施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。
本發(fā)明實(shí)施例提供了一種驗(yàn)證加密數(shù)據(jù)傳輸路徑的方法,所述方法應(yīng)用于信息發(fā)送設(shè)備,如圖1所示,所述方法包括:
101、當(dāng)需要向信息接收設(shè)備發(fā)送信息時(shí),獲取用于加密信息明文的密鑰明文、所述信息明文以及利用所述密鑰明文對(duì)所述信息明文進(jìn)行加密得到的信息密文;
具體的,當(dāng)當(dāng)前的信息發(fā)送設(shè)備是發(fā)送所述信息的原始信息發(fā)送設(shè)備時(shí),可以直接從本地獲取所述密鑰明文以及所述信息明文;而當(dāng)當(dāng)前的信息發(fā)送設(shè)備不是所述原始信息發(fā)送設(shè)備時(shí),可以獲取從上一信息發(fā)送設(shè)備側(cè)接收的數(shù)據(jù)包中解析得到的所述密鑰明文以及所述信息明文。
其中,當(dāng)前的信息發(fā)送設(shè)備從上一信息發(fā)送設(shè)備側(cè)接收到的數(shù)據(jù)包中包括:用于記錄每次信息傳輸路徑的路徑字段、用于記錄密鑰密文的字段、用于記錄信息密文的字段以及用于記錄各個(gè)信息發(fā)送設(shè)備(從原始信息發(fā)送設(shè)備至上一信息發(fā)送設(shè)備)的簽名信息的字段。因此,從上一信息發(fā)送設(shè)備側(cè)接收的數(shù)據(jù)包中解析得到密鑰明文以及信息明文的具體實(shí)現(xiàn)方式可以為:當(dāng)前的信息接收設(shè)備先利用自身的私鑰對(duì)接收到的數(shù)據(jù)包中的密鑰密文進(jìn)行解密,獲得所述密鑰明文;然后利用所述密鑰明文對(duì)所述接收到的數(shù)據(jù)包中的信息密文進(jìn)行解密,獲得所述信息明文。
此外,當(dāng)當(dāng)前的信息發(fā)送設(shè)備是原始信息發(fā)送設(shè)備時(shí),需要在獲取密鑰明文以及信息明文后,利用密鑰密文對(duì)信息明文進(jìn)行加密,才可獲得信息密文;而當(dāng)當(dāng)前的信息發(fā)送設(shè)備不是原始信息發(fā)送設(shè)備時(shí),若需要信息密文,則可以直接從上一信息接收設(shè)備發(fā)送的數(shù)據(jù)包的用于記錄信息密文的字段中提取信息密文。
102、利用信息接收設(shè)備的公鑰對(duì)所述密鑰明文進(jìn)行加密,獲得所述信息接收設(shè)備的公鑰對(duì)應(yīng)的密鑰密文;
其中,由于利用信息接收設(shè)備的公鑰加密得到的密鑰密文只有信息接收設(shè)備的私鑰才能解開,所以利用信息接收設(shè)備的公鑰對(duì)密鑰明文進(jìn)行加密,可以有效地防止密鑰明文外泄。
需要說明的是,本步驟只需在步驟106之前執(zhí)行即可,而其相對(duì)于步驟103-步驟105的執(zhí)行順序不做限定。
103、將用于表征信息從所述信息發(fā)送設(shè)備發(fā)送至所述信息接收設(shè)備的傳輸路徑添加至用于記錄每次信息傳輸路徑的路徑字段中,獲得更新后的路徑字段;
其中,信息發(fā)送設(shè)備記錄本次傳輸路徑時(shí),只會(huì)將本次傳輸路徑添加至路徑字段中,而不會(huì)刪除之前其他信息發(fā)送設(shè)備記錄的傳輸路徑,因此路徑字段中存儲(chǔ)的是從原始信息發(fā)送設(shè)備至當(dāng)前的信息發(fā)送設(shè)備對(duì)應(yīng)的信息接收設(shè)備之間所經(jīng)歷的所有傳輸路徑。
示例性的,若信息從原始信息發(fā)送設(shè)備A依次經(jīng)過設(shè)備B、設(shè)備C到達(dá)當(dāng)前的信息發(fā)送設(shè)備D,并且信息發(fā)送設(shè)備D將要將信息傳輸至信息接收設(shè)備E,則路徑字段中存儲(chǔ)的內(nèi)容可以為“from D to E$from C to D$from B to C$from A to B”。
104、利用所述信息發(fā)送設(shè)備的私鑰,對(duì)由所述更新后的路徑字段以及所述信息明文組成的數(shù)據(jù)進(jìn)行簽名,獲得所述信息發(fā)送設(shè)備的簽名信息;
具體的,所述信息發(fā)送設(shè)備先將路徑字段中的內(nèi)容與信息明文進(jìn)行拼接,然后根據(jù)預(yù)設(shè)算法對(duì)拼接后的數(shù)據(jù)進(jìn)行運(yùn)算,得到拼接后的數(shù)據(jù)的運(yùn)算值,最后使用所述信息發(fā)送設(shè)備的私鑰對(duì)該拼接后的數(shù)據(jù)的運(yùn)算值進(jìn)行加密,得到所述信息發(fā)送設(shè)備的簽名信息。其中,預(yù)設(shè)算法可以為哈希算法,也可以為其他算法。
需要補(bǔ)充的是,在將路徑字段與信息明文進(jìn)行拼接時(shí),可以使路徑字段位于前面,也可以使信息明文位于前面,兩者的相對(duì)位置不做限定。
105、將所述信息發(fā)送設(shè)備的簽名信息添加至用于記錄各個(gè)信息發(fā)送設(shè)備的簽名信息的簽名字段中,獲得更新后的簽名字段;
其中,信息發(fā)送設(shè)備記錄本次簽名信息時(shí),只會(huì)將本次簽名信息添加至簽名字段中,而不會(huì)刪除之前其他信息發(fā)送設(shè)備記錄的簽名信息,因此簽名字段中存儲(chǔ)的是從原始信息發(fā)送設(shè)備至當(dāng)前的信息發(fā)送設(shè)備的所有簽名信息。
示例性的,若信息明文M被加密后,從原始信息發(fā)送設(shè)備A依次經(jīng)過設(shè)備B、設(shè)備C到達(dá)當(dāng)前的信息發(fā)送設(shè)備D,并且信息發(fā)送設(shè)備D將要將信息傳輸至信息接收設(shè)備E,則簽名字段中存儲(chǔ)的內(nèi)容可以為對(duì)“from D to E$from C to D$from B to C$from A to B&mess=M”的簽名。
106、將包括所述更新后的路徑字段、存儲(chǔ)有所述密鑰密文的字段、存儲(chǔ)有所述信息密文的字段以及所述更新后的簽名字段的數(shù)據(jù)包發(fā)送給所述信息接收設(shè)備,以便所述信息接收設(shè)備通過解析所述數(shù)據(jù)包,來獲取并驗(yàn)證所述信息明文以及所述信息明文的傳輸路徑。
其中,信息接收設(shè)備通過解析數(shù)據(jù)包來獲取并驗(yàn)證信息明文以及信息明文的傳輸路徑的方法詳見下述圖4涉及的內(nèi)容。
下面舉例說明本實(shí)施例的方案:
如圖2所示,若信息從原始信息發(fā)送設(shè)備A依次經(jīng)過設(shè)備B、設(shè)備C到達(dá)當(dāng)前的信息發(fā)送設(shè)備D,并且信息發(fā)送設(shè)備D將要將信息傳輸給信息接收設(shè)備E,則信息發(fā)送設(shè)備D生成待發(fā)送數(shù)據(jù)包的過程如下:
(A1)信息發(fā)送設(shè)備D獲取設(shè)備C發(fā)送的包括路徑字段、用于記錄密鑰密文的字段、用于記錄信息密文的字段以及簽名字段的數(shù)據(jù)包1;
其中,所述路徑字段中包括“from C to D”、“from B to C”以及“from A to B”三個(gè)傳輸路徑,用于記錄密鑰密文的字段中包括信息發(fā)送設(shè)備D的公鑰對(duì)應(yīng)的密鑰密文(即利用D的公鑰加密密鑰明文得到的密鑰密文),用于記錄信息密文的字段中包括密鑰明文加密信息明文得到的信息密文,簽名字段中包括C的簽名信息、B的簽名信息以及A的簽名信息。
(A2)信息發(fā)送設(shè)備D利用D的私鑰對(duì)密鑰密文進(jìn)行解密獲得密鑰明文;
(A3)信息發(fā)送設(shè)備D利用E的公鑰對(duì)密鑰明文進(jìn)行加密,獲得E的公鑰對(duì)應(yīng)的密鑰密文,并將E的公鑰對(duì)應(yīng)的密鑰密文替換用于記錄密鑰密文的字段中D的公鑰對(duì)應(yīng)的密鑰密文;
其中,步驟A3只需在步驟A2之后、步驟A7之前執(zhí)行,而其相對(duì)于步驟A4-A6的執(zhí)行順序不做限定。
(A4)信息發(fā)送設(shè)備D利用密鑰明文對(duì)信息密文進(jìn)行解密獲得信息明文;
其中,步驟A4只需在步驟A2之后、步驟A6之前執(zhí)行,而其相對(duì)于步驟A3和步驟A5的執(zhí)行順序在此不做限定。
(A5)信息發(fā)送設(shè)備D將傳輸路徑“from D to E”添加至路徑字段中,獲得更新后的路徑字段;
其中,步驟A5只需在步驟A1之后、步驟A6之前執(zhí)行,而其相對(duì)于步驟A2-A4的執(zhí)行順序在此不做限定。
(A6)信息發(fā)送設(shè)備D將更新后的路徑字段與信息明文進(jìn)行拼接,使得拼接后的內(nèi)容包括“from D to E”、“from C to D”、“fromB to C”、“from A to B”以及“信息明文”,并利用D的私鑰對(duì)拼接后的內(nèi)容進(jìn)行簽名,獲得D的簽名信息;
(A7)信息發(fā)送設(shè)備D將包括更新后的路徑字段、更新后的用于記錄密鑰密文的字段、用于記錄信息密文的字段以及更新后的簽名字段的數(shù)據(jù)包2確定為需要發(fā)給信息接收設(shè)備E的數(shù)據(jù)包。
此外,由圖2可知,用于記錄信息密文的字段沒有發(fā)生變化,因此在傳輸加密數(shù)據(jù)的過程中,只有原始信息發(fā)送設(shè)備對(duì)信息明文進(jìn)行加密操作,而其他信息發(fā)送設(shè)備只需對(duì)加密信息明文的密鑰明文進(jìn)行加密,而無需再對(duì)信息明文進(jìn)行加密,并且由于密鑰明文的數(shù)據(jù)大小往往遠(yuǎn)小于信息明文,所以加密的計(jì)算量減小。
本發(fā)明實(shí)施例提供的驗(yàn)證加密數(shù)據(jù)傳輸路徑的方法,能夠在信息發(fā)送設(shè)備需要向信息接收設(shè)備發(fā)送信息時(shí),將包括用于記錄每次信息傳輸路徑的路徑字段、用于存儲(chǔ)密鑰密文的字段、用于存儲(chǔ)信息密文的字段以及用于存儲(chǔ)各個(gè)信息發(fā)送設(shè)備的簽名信息的簽名字段的數(shù)據(jù)包發(fā)送給信息接收設(shè)備(其中,簽名信息是關(guān)于傳輸路徑以及信息明文的簽名),由此信息接收設(shè)備接收到該數(shù)據(jù)包后,能夠先根據(jù)自身的私鑰、密鑰密文以及信息密文獲得信息明文,然后根據(jù)路徑字段、信息明文以及曾經(jīng)發(fā)送過該信息密文的各個(gè)信息發(fā)送設(shè)備的公鑰,對(duì)簽名字段中的各個(gè)簽名信息分別進(jìn)行驗(yàn)證,從而實(shí)現(xiàn)對(duì)所有傳輸路徑的驗(yàn)證以及每個(gè)信息發(fā)送設(shè)備所發(fā)信息明文的驗(yàn)證,并在所有簽名信息均驗(yàn)證成功時(shí)才保留信息明文,進(jìn)而提高了信息接收設(shè)備接收信息的可靠性。
可選的,當(dāng)當(dāng)前的信息發(fā)送設(shè)備獲取的密鑰明文以及信息明文來自于上一信息發(fā)送設(shè)備發(fā)送的數(shù)據(jù)包時(shí),為了保證發(fā)送給信息接收設(shè)備的信息是可靠且正確的信息,在獲取從上一信息發(fā)送設(shè)備側(cè)接收的數(shù)據(jù)包中解析得到的所述密鑰明文以及所述信息明文之前,當(dāng)前的信息發(fā)送設(shè)備可以先驗(yàn)證從數(shù)據(jù)包中解析的信息明文是否被篡改以及該信息明文是否可靠,當(dāng)該信息明文沒有被篡改且可靠時(shí),才獲取從數(shù)據(jù)包中解析的信息明文,而當(dāng)被篡改或者不可靠時(shí),直接丟棄該信息明文,從而放棄將該信息明文發(fā)送給信息接收設(shè)備。
其中,驗(yàn)證從數(shù)據(jù)包中解析而得的信息明文是否可靠就是:驗(yàn)證用于記錄每次信息傳輸路徑的路徑字段中的傳輸路徑是否正確。
由于簽名字段中的簽名信息是每個(gè)信息發(fā)送設(shè)備對(duì)傳輸路徑以及信息明文的簽名信息,所以通過驗(yàn)證簽名字段中的簽名信息可以驗(yàn)證從數(shù)據(jù)包中解析而得的信息明文是否被篡改以及該信息明文是否可靠。
具體的,驗(yàn)證信息明文是否被篡改以及是否可靠的實(shí)現(xiàn)方式可以為:當(dāng)前的信息發(fā)送設(shè)備可以根據(jù)接收到的數(shù)據(jù)包中的路徑字段、利用所述密鑰明文解密獲得的信息明文以及從所述原始信息發(fā)送設(shè)備至所述上一信息發(fā)送設(shè)備中各個(gè)信息發(fā)送設(shè)備的公鑰,對(duì)所述簽名字段中的各個(gè)簽名信息進(jìn)行驗(yàn)證;若各個(gè)簽名信息均驗(yàn)證成功,則確定信息明文沒有被篡改以及是可靠的(即傳輸路徑正確);若存在簽名信息驗(yàn)證失敗,則說明信息明文被篡改或者信息明文不可靠(即傳輸路徑不正確)。
其中,所述上一信息發(fā)送設(shè)備是與當(dāng)前的信息發(fā)送設(shè)備相鄰的上一信息發(fā)送設(shè)備,即當(dāng)前的信息發(fā)送設(shè)備接收到的數(shù)據(jù)包是由所述上一信息發(fā)送設(shè)備發(fā)送的。例如,若信息從原始信息發(fā)送設(shè)備A依次經(jīng)過設(shè)備B、設(shè)備C到達(dá)設(shè)備D,并且設(shè)備D需要對(duì)設(shè)備C發(fā)送的數(shù)據(jù)包中的簽名信息進(jìn)行驗(yàn)證,則當(dāng)前的信息發(fā)送設(shè)備為設(shè)備D,上一信息發(fā)送設(shè)備為設(shè)備C。
具體的,當(dāng)前的信息接收設(shè)備可以根據(jù)預(yù)設(shè)驗(yàn)證順序,從所述路徑字段中獲取待驗(yàn)證的信息發(fā)送設(shè)備對(duì)應(yīng)的完整傳輸路徑,所述完整傳輸路徑包括從所述原始發(fā)送設(shè)備至所述待驗(yàn)證的信息發(fā)送設(shè)備對(duì)應(yīng)的信息接收設(shè)備所經(jīng)過的所有傳輸路徑;然后根據(jù)所述待驗(yàn)證的信息發(fā)送設(shè)備的公鑰以及由所述完整傳輸路徑與利用所述密鑰明文解密獲得的信息明文組成的數(shù)據(jù),對(duì)所述待驗(yàn)證的信息發(fā)送設(shè)備的簽名信息進(jìn)行驗(yàn)證,直至完成對(duì)所有簽名信息的驗(yàn)證。
其中,待驗(yàn)證的信息發(fā)送設(shè)備為原始信息發(fā)送設(shè)備至上一信息發(fā)送設(shè)備中的任意一個(gè)設(shè)備。預(yù)設(shè)驗(yàn)證順序可以為從原始信息發(fā)送設(shè)備至上一信息發(fā)送設(shè)備依次進(jìn)行驗(yàn)證,也可以為從上一信息發(fā)送設(shè)備至原始信息發(fā)送設(shè)備依次進(jìn)行驗(yàn)證。
此外,“根據(jù)所述待驗(yàn)證的信息發(fā)送設(shè)備的公鑰以及由所述完整傳輸路徑與利用所述密鑰明文解密獲得的信息明文組成的數(shù)據(jù),對(duì)所述待驗(yàn)證的信息發(fā)送設(shè)備的簽名信息進(jìn)行驗(yàn)證”的具體實(shí)現(xiàn)方式可以有多種。其中一種驗(yàn)證簽名的方式為:根據(jù)預(yù)設(shè)算法,計(jì)算由所述完整傳輸路徑與利用所述密鑰明文解密獲得的信息明文組成的數(shù)據(jù)的運(yùn)算值;根據(jù)計(jì)算得到的運(yùn)算值、所述待驗(yàn)證的信息發(fā)送設(shè)備的公鑰,對(duì)所述待驗(yàn)證的信息發(fā)送設(shè)備的簽名信息進(jìn)行驗(yàn)證。
其中,根據(jù)計(jì)算得到的運(yùn)算值、所述待驗(yàn)證的信息發(fā)送設(shè)備的公鑰,對(duì)所述待驗(yàn)證的信息發(fā)送設(shè)備的簽名信息進(jìn)行驗(yàn)證的具體實(shí)現(xiàn)方式可以為:先根據(jù)待驗(yàn)證的信息發(fā)送設(shè)備的公鑰對(duì)對(duì)應(yīng)的簽名信息進(jìn)行解密,獲得解密后的運(yùn)算值,然后將所述計(jì)算得到的運(yùn)算值與所述解密后的運(yùn)算值進(jìn)行比對(duì);若兩者相同,則說明從數(shù)據(jù)包中解析而得的信息明文與被簽名的信息明文相同,以及路徑字段中的傳輸路徑與被簽名的傳輸路徑相同,由此可以確定驗(yàn)證成功;若兩者不同,則說明從數(shù)據(jù)包中解析而得的信息明文與被簽名的信息明文不同,或者路徑字段中的傳輸路徑與被簽名的傳輸路徑不同,由此可以確定驗(yàn)證失敗。
示例性的,如圖3所示,若信息從原始信息發(fā)送設(shè)備A依次經(jīng)過設(shè)備B、設(shè)備C到達(dá)設(shè)備D,則設(shè)備D對(duì)設(shè)備C發(fā)送的數(shù)據(jù)包中的數(shù)據(jù)進(jìn)行驗(yàn)證的過程如下:
(B1)設(shè)備D接收設(shè)備C發(fā)送的包括路徑字段、用于記錄密鑰密文的字段、用于記錄信息密文的字段以及簽名字段的數(shù)據(jù)包;
其中,所述路徑字段中包括“from C to D”、“from B to C”以及“from A to B”三個(gè)傳輸路徑,用于記錄密鑰密文的字段中包括信息發(fā)送設(shè)備D的公鑰對(duì)應(yīng)的密鑰密文,用于記錄信息密文的字段中包括密鑰明文加密信息明文得到的信息密文,簽名字段中包括C的簽名信息、B的簽名信息以及A的簽名信息。
(B2)設(shè)備D利用D的私鑰對(duì)密鑰密文進(jìn)行解密,獲得密鑰明文;
(B3)設(shè)備D利用密鑰明文對(duì)信息密文進(jìn)行解密,獲得信息明文;
在獲得信息明文后,設(shè)備D可以根據(jù)信息明文以及路徑字段中的傳輸路徑,分別對(duì)待驗(yàn)證的設(shè)備(即設(shè)備A至設(shè)備C)的簽名信息進(jìn)行驗(yàn)證,以便確定從數(shù)據(jù)包中解析而得的信息明文是否真實(shí)可靠。具體的,設(shè)備D對(duì)設(shè)備C的簽名信息的驗(yàn)證見下述步驟B4,設(shè)備D對(duì)設(shè)備B的簽名信息的驗(yàn)證見下述步驟B5,設(shè)備D對(duì)設(shè)備A的簽名信息的驗(yàn)證見下述步驟B6。
(B4)設(shè)備D將設(shè)備C對(duì)應(yīng)的完整路徑與信息明文進(jìn)行拼接,使得拼接后的內(nèi)容包括“from C to D”、“from B to C”、“fromA to B”以及“信息明文”,然后根據(jù)C的公鑰、拼接后的內(nèi)容,對(duì)C的簽名信息進(jìn)行驗(yàn)證;
(B5)設(shè)備D將設(shè)備B對(duì)應(yīng)的完整路徑與信息明文進(jìn)行拼接,使得拼接后的內(nèi)容包括“from B to C”、“from A to B”以及“信息明文”,然后根據(jù)B的公鑰、拼接后的內(nèi)容,對(duì)B的簽名信息進(jìn)行驗(yàn)證;
(B6)設(shè)備D將設(shè)備A對(duì)應(yīng)的完整路徑與信息明文進(jìn)行拼接,使得拼接后的內(nèi)容包括“from A to B”以及“信息明文”,然后根據(jù)A的公鑰、拼接后的內(nèi)容,對(duì)A的簽名信息進(jìn)行驗(yàn)證;
(B7)若均驗(yàn)證成功,則確定從數(shù)據(jù)包中解析而得的信息明文是真實(shí)可靠的,反之則不真實(shí)可靠。
進(jìn)一步的,依據(jù)圖1所示的方法,本發(fā)明的另一個(gè)實(shí)施例還提供了一種驗(yàn)證加密數(shù)據(jù)傳輸路徑的方法,所述方法應(yīng)用于信息接收設(shè)備,如圖4所示,所述方法包括:
201、接收信息發(fā)送設(shè)備發(fā)送的數(shù)據(jù)包;
其中,所述數(shù)據(jù)包中包括用于記錄每次信息傳輸路徑的路徑字段、用于記錄密鑰密文的字段、用于記錄信息密文的字段以及用于記錄各個(gè)信息發(fā)送設(shè)備的簽名信息的字段,所述密鑰密文是根據(jù)所述信息接收設(shè)備的公鑰對(duì)密鑰明文進(jìn)行加密得到的,所述密鑰明文用于加密信息明文,所述簽名信息是根據(jù)信息發(fā)送設(shè)備的私鑰,對(duì)由對(duì)應(yīng)的路徑字段以及所述信息明文組成的數(shù)據(jù)進(jìn)行簽名得到的。
此外,關(guān)于路徑字段以及簽名字段的詳細(xì)介紹可以參見信息發(fā)送設(shè)備側(cè)的方法實(shí)施例,在此不再贅述。
202、利用所述信息接收設(shè)備的私鑰對(duì)所述數(shù)據(jù)包中的密鑰密文進(jìn)行解密,獲得密鑰明文;
由于信息發(fā)送設(shè)備在對(duì)密鑰明文進(jìn)行加密時(shí)使用的加密密鑰為信息接收設(shè)備的公鑰,所以信息接收設(shè)備可以使用自身的私鑰對(duì)密鑰密文進(jìn)行成功解密,獲得密鑰明文。
203、利用解密得到的密鑰明文對(duì)所述數(shù)據(jù)包中的信息密文進(jìn)行解密,獲得信息明文;
204、根據(jù)所述路徑字段、利用所述密鑰明文解密獲得的信息明文以及發(fā)送過所述信息密文的所有信息發(fā)送設(shè)備的公鑰,對(duì)所述簽名字段中的各個(gè)簽名信息進(jìn)行驗(yàn)證;
具體的,信息接收設(shè)備可以根據(jù)預(yù)設(shè)驗(yàn)證順序,從所述路徑字段中獲取待驗(yàn)證的信息發(fā)送設(shè)備對(duì)應(yīng)的完整傳輸路徑,所述完整傳輸路徑包括從所述原始發(fā)送設(shè)備至所述待驗(yàn)證的信息發(fā)送設(shè)備對(duì)應(yīng)的信息接收設(shè)備所經(jīng)過的所有傳輸路徑;根據(jù)由所述完整傳輸路徑與利用所述密鑰明文解密獲得的信息明文組成的數(shù)據(jù)以及所述待驗(yàn)證的信息發(fā)送設(shè)備的公鑰,對(duì)所述待驗(yàn)證的信息發(fā)送設(shè)備的簽名信息進(jìn)行驗(yàn)證,直至完成對(duì)所有簽名信息的驗(yàn)證。
其中,“根據(jù)由所述完整傳輸路徑與利用所述密鑰明文解密獲得的信息明文組成的數(shù)據(jù)以及所述待驗(yàn)證的信息發(fā)送設(shè)備的公鑰,對(duì)所述待驗(yàn)證的信息發(fā)送設(shè)備的簽名信息進(jìn)行驗(yàn)證”的具體實(shí)現(xiàn)方式可以為:根據(jù)預(yù)設(shè)算法,計(jì)算由所述完整傳輸路徑與利用所述密鑰明文解密獲得的信息明文組成的數(shù)據(jù)的運(yùn)算值;根據(jù)計(jì)算得到的運(yùn)算值、所述待驗(yàn)證的信息發(fā)送設(shè)備的公鑰,對(duì)所述待驗(yàn)證的信息發(fā)送設(shè)備的簽名信息進(jìn)行驗(yàn)證,直至完成對(duì)所有簽名信息的驗(yàn)證。
其中,驗(yàn)證簽名的具體示例可以參見信息發(fā)送設(shè)備側(cè)的方法實(shí)施例(即圖3的示例),在此不再贅述。
205、若所有簽名信息均驗(yàn)證成功,則保留通過密鑰明文解密得到的信息明文;
當(dāng)所有的簽名信息驗(yàn)證成功時(shí),說明信息從原始信息發(fā)送設(shè)備傳輸至當(dāng)前的信息接收設(shè)備的過程中,信息明文內(nèi)容本身沒有發(fā)生改變,傳輸路徑也均為可靠路徑,并沒有被不可靠的設(shè)備所截獲,因此可以保留得到的信息明文。
206、若存在簽名信息驗(yàn)證失敗,則丟棄通過密鑰明文解密得到的信息明文。
當(dāng)某個(gè)信息發(fā)送設(shè)備的簽名信息驗(yàn)證失敗時(shí),說明得到的信息明文不可靠,因此可以直接丟棄該信息明文,以防止將該不可靠的信息明文傳輸至其他設(shè)備。
本發(fā)明實(shí)施例提供的驗(yàn)證加密數(shù)據(jù)傳輸路徑的方法,能夠在信息發(fā)送設(shè)備需要向信息接收設(shè)備發(fā)送信息時(shí),將包括用于記錄每次信息傳輸路徑的路徑字段、用于存儲(chǔ)密鑰密文的字段、用于存儲(chǔ)信息密文的字段以及用于存儲(chǔ)各個(gè)信息發(fā)送設(shè)備的簽名信息的簽名字段的數(shù)據(jù)包發(fā)送給信息接收設(shè)備(其中,簽名信息是關(guān)于傳輸路徑以及信息明文的簽名),由此信息接收設(shè)備接收到該數(shù)據(jù)包后,能夠先根據(jù)自身的私鑰、密鑰密文以及信息密文獲得信息明文,然后根據(jù)路徑字段、信息明文以及曾經(jīng)發(fā)送過該信息密文的各個(gè)信息發(fā)送設(shè)備的公鑰,對(duì)簽名字段中的各個(gè)簽名信息分別進(jìn)行驗(yàn)證,從而實(shí)現(xiàn)對(duì)所有傳輸路徑的驗(yàn)證以及每個(gè)信息發(fā)送設(shè)備所發(fā)信息明文的驗(yàn)證,并在所有簽名信息均驗(yàn)證成功時(shí)才保留信息明文,進(jìn)而提高了信息接收設(shè)備接收信息的可靠性。
進(jìn)一步的,依據(jù)圖1所示的方法,本發(fā)明的另一個(gè)實(shí)施例還提供了一種一種驗(yàn)證加密數(shù)據(jù)傳輸路徑的裝置,所述裝置應(yīng)用于信息發(fā)送設(shè)備,如圖5所示,所述裝置主要包括:獲取單元31、加密單元32、添加單元33、簽名單元34以及發(fā)送單元35。其中,
獲取單元31,用于當(dāng)需要向信息接收設(shè)備發(fā)送信息時(shí),獲取用于加密信息明文的密鑰明文、所述信息明文以及利用所述密鑰明文對(duì)所述信息明文進(jìn)行加密得到的信息密文;
加密單元32,用于利用信息接收設(shè)備的公鑰對(duì)所述獲取單元31獲取的所述密鑰明文進(jìn)行加密,獲得所述信息接收設(shè)備的公鑰對(duì)應(yīng)的密鑰密文;
添加單元33,用于將用于表征信息從所述信息發(fā)送設(shè)備發(fā)送至所述信息接收設(shè)備的傳輸路徑添加至用于記錄每次信息傳輸路徑的路徑字段中,獲得更新后的路徑字段;
簽名單元34,用于利用所述信息發(fā)送設(shè)備的私鑰,對(duì)由所述添加單元33獲得的所述更新后的路徑字段以及所述獲取單元31獲取的所述信息明文組成的數(shù)據(jù)進(jìn)行簽名,獲得所述信息發(fā)送設(shè)備的簽名信息;
所述添加單元33還用于將所述簽名單元34獲得的所述信息發(fā)送設(shè)備的簽名信息添加至用于記錄各個(gè)信息發(fā)送設(shè)備的簽名信息的簽名字段中,獲得更新后的簽名字段;
發(fā)送單元35,用于將包括所述更新后的路徑字段、存儲(chǔ)有所述密鑰密文的字段、存儲(chǔ)有所述信息密文的字段以及所述更新后的簽名字段的數(shù)據(jù)包發(fā)送給所述信息接收設(shè)備,以便所述信息接收設(shè)備通過解析所述數(shù)據(jù)包,來獲取并驗(yàn)證所述信息明文以及所述信息明文的傳輸路徑。
可選的,如圖6所示,所述獲取單元31包括:
第一獲取模塊311,用于當(dāng)所述信息發(fā)送設(shè)備是發(fā)送所述信息的原始信息發(fā)送設(shè)備時(shí),直接從本地獲取所述密鑰明文以及所述信息明文;
第二獲取模塊312,用于當(dāng)所述信息發(fā)送設(shè)備不是所述原始信息發(fā)送設(shè)備時(shí),獲取從上一信息發(fā)送設(shè)備側(cè)接收的數(shù)據(jù)包中解析得到的所述密鑰明文以及所述信息明文。
可選的,如圖6所示,所述裝置還包括:
解析單元36,用于從所述上一信息發(fā)送設(shè)備側(cè)接收的數(shù)據(jù)包中解析得到所述密鑰明文以及所述信息明文;
所述解析單元36用于利用當(dāng)前的信息發(fā)送設(shè)備的私鑰對(duì)接收到的數(shù)據(jù)包中的密鑰密文進(jìn)行解密,獲得所述密鑰明文;利用所述密鑰明文對(duì)所述接收到的數(shù)據(jù)包中的信息密文進(jìn)行解密,獲得所述信息明文。
可選的,如圖6所示,所述裝置還包括:
驗(yàn)證單元37,用于在所述獲取單元31獲取從上一信息發(fā)送設(shè)備側(cè)接收的數(shù)據(jù)包中解析得到的所述密鑰明文以及所述信息明文之前,根據(jù)所述接收到的數(shù)據(jù)包中的路徑字段、利用所述密鑰明文解密獲得的信息明文以及從所述原始信息發(fā)送設(shè)備至所述上一信息發(fā)送設(shè)備中各個(gè)信息發(fā)送設(shè)備的公鑰,對(duì)所述簽名字段中的各個(gè)簽名信息進(jìn)行驗(yàn)證;
所述獲取單元31用于當(dāng)所述驗(yàn)證單元37的驗(yàn)證結(jié)果為所有簽名信息均驗(yàn)證成功時(shí),獲取從上一信息發(fā)送設(shè)備側(cè)接收的數(shù)據(jù)包中解析得到的所述密鑰明文以及所述信息明文。
可選的,如圖6所示,所述驗(yàn)證單元37包括:
第三獲取模塊371,用于根據(jù)預(yù)設(shè)驗(yàn)證順序,從所述路徑字段中獲取待驗(yàn)證的信息發(fā)送設(shè)備對(duì)應(yīng)的完整傳輸路徑,所述完整傳輸路徑包括從所述原始發(fā)送設(shè)備至所述待驗(yàn)證的信息發(fā)送設(shè)備對(duì)應(yīng)的信息接收設(shè)備所經(jīng)過的所有傳輸路徑;
驗(yàn)證模塊372,用于根據(jù)由所述完整傳輸路徑與利用所述密鑰明文解密獲得的信息明文組成的數(shù)據(jù)以及所述待驗(yàn)證的信息發(fā)送設(shè)備的公鑰,對(duì)所述待驗(yàn)證的信息發(fā)送設(shè)備的簽名信息進(jìn)行驗(yàn)證,直至完成對(duì)所有簽名信息的驗(yàn)證。
可選的,所述驗(yàn)證模塊372用于根據(jù)預(yù)設(shè)算法,計(jì)算由所述完整傳輸路徑與利用所述密鑰明文解密獲得的信息明文組成的數(shù)據(jù)的運(yùn)算值;根據(jù)計(jì)算得到的運(yùn)算值、所述待驗(yàn)證的信息發(fā)送設(shè)備的公鑰,對(duì)所述待驗(yàn)證的信息發(fā)送設(shè)備的簽名信息進(jìn)行驗(yàn)證。
可選的,如圖6所示,所述裝置還包括:
丟棄單元38,用于當(dāng)所述驗(yàn)證單元37的驗(yàn)證結(jié)果為存在簽名信息驗(yàn)證失敗時(shí),丟棄利用所述密鑰明文解密獲得的信息明文。
本發(fā)明實(shí)施例提供的驗(yàn)證加密數(shù)據(jù)傳輸路徑的裝置,能夠在信息發(fā)送設(shè)備需要向信息接收設(shè)備發(fā)送信息時(shí),將包括用于記錄每次信息傳輸路徑的路徑字段、用于存儲(chǔ)密鑰密文的字段、用于存儲(chǔ)信息密文的字段以及用于存儲(chǔ)各個(gè)信息發(fā)送設(shè)備的簽名信息的簽名字段的數(shù)據(jù)包發(fā)送給信息接收設(shè)備(其中,簽名信息是關(guān)于傳輸路徑以及信息明文的簽名),由此信息接收設(shè)備接收到該數(shù)據(jù)包后,能夠先根據(jù)自身的私鑰、密鑰密文以及信息密文獲得信息明文,然后根據(jù)路徑字段、信息明文以及曾經(jīng)發(fā)送過該信息密文的各個(gè)信息發(fā)送設(shè)備的公鑰,對(duì)簽名字段中的各個(gè)簽名信息分別進(jìn)行驗(yàn)證,從而實(shí)現(xiàn)對(duì)所有傳輸路徑的驗(yàn)證以及每個(gè)信息發(fā)送設(shè)備所發(fā)信息明文的驗(yàn)證,并在所有簽名信息均驗(yàn)證成功時(shí)才保留信息明文,進(jìn)而提高了信息接收設(shè)備接收信息的可靠性。
進(jìn)一步的,依據(jù)圖4所示的方法,本發(fā)明的另一個(gè)實(shí)施例還提供了一種驗(yàn)證加密數(shù)據(jù)傳輸路徑的裝置,所述裝置應(yīng)用于信息接收設(shè)備,如圖7所示,所述裝置主要包括:接收單元41、解密單元42、驗(yàn)證單元43、保留單元44以及丟棄單元45。其中,
接收單元41,用于接收信息發(fā)送設(shè)備發(fā)送的數(shù)據(jù)包,其中,所述數(shù)據(jù)包中包括用于記錄每次信息傳輸路徑的路徑字段、用于記錄密鑰密文的字段、用于記錄信息密文的字段以及用于記錄各個(gè)信息發(fā)送設(shè)備的簽名信息的字段,所述密鑰密文是根據(jù)信息接收設(shè)備的公鑰對(duì)密鑰明文進(jìn)行加密得到的,所述密鑰明文用于加密信息明文,所述簽名信息是根據(jù)信息發(fā)送設(shè)備的私鑰,對(duì)由對(duì)應(yīng)的路徑字段以及所述信息明文組成的數(shù)據(jù)進(jìn)行簽名得到的;
解密單元42,用于利用所述信息接收設(shè)備的私鑰對(duì)所述接收單元41接收的所述數(shù)據(jù)包中的密鑰密文進(jìn)行解密,獲得密鑰明文;
所述解密單元42還用于利用解密得到的密鑰明文對(duì)所述數(shù)據(jù)包中的信息密文進(jìn)行解密,獲得信息明文;
驗(yàn)證單元43,用于根據(jù)所述路徑字段、所述解密單元42利用所述密鑰明文解密獲得的信息明文以及發(fā)送過所述信息密文的所有信息發(fā)送設(shè)備的公鑰,對(duì)所述簽名字段中的各個(gè)簽名信息進(jìn)行驗(yàn)證;
保留單元44,用于當(dāng)所述驗(yàn)證單元43的驗(yàn)證結(jié)果為所有簽名信息均驗(yàn)證成功時(shí),保留通過密鑰明文解密得到的信息明文;
丟棄單元45,用于當(dāng)所述驗(yàn)證單元43的驗(yàn)證結(jié)果為存在簽名信息驗(yàn)證失敗時(shí),丟棄通過密鑰明文解密得到的信息明文。
可選的,如圖8所示,所述驗(yàn)證單元43包括:
獲取模塊431,用于根據(jù)預(yù)設(shè)驗(yàn)證順序,從所述路徑字段中獲取待驗(yàn)證的信息發(fā)送設(shè)備對(duì)應(yīng)的完整傳輸路徑,所述完整傳輸路徑包括從所述原始發(fā)送設(shè)備至所述待驗(yàn)證的信息發(fā)送設(shè)備對(duì)應(yīng)的信息接收設(shè)備所經(jīng)過的所有傳輸路徑;
驗(yàn)證模塊432,用于根據(jù)由所述完整傳輸路徑與利用所述密鑰明文解密獲得的信息明文組成的數(shù)據(jù)以及所述待驗(yàn)證的信息發(fā)送設(shè)備的公鑰,對(duì)所述待驗(yàn)證的信息發(fā)送設(shè)備的簽名信息進(jìn)行驗(yàn)證,直至完成對(duì)所有簽名信息的驗(yàn)證。
可選的,所述驗(yàn)證模塊432用于根據(jù)預(yù)設(shè)算法,計(jì)算由所述完整傳輸路徑與利用所述密鑰明文解密獲得的信息明文組成的數(shù)據(jù)的運(yùn)算值;根據(jù)計(jì)算得到的運(yùn)算值、所述待驗(yàn)證的信息發(fā)送設(shè)備的公鑰,對(duì)所述待驗(yàn)證的信息發(fā)送設(shè)備的簽名信息進(jìn)行驗(yàn)證。
本發(fā)明實(shí)施例提供的驗(yàn)證加密數(shù)據(jù)傳輸路徑的裝置,能夠在信息發(fā)送設(shè)備需要向信息接收設(shè)備發(fā)送信息時(shí),將包括用于記錄每次信息傳輸路徑的路徑字段、用于存儲(chǔ)密鑰密文的字段、用于存儲(chǔ)信息密文的字段以及用于存儲(chǔ)各個(gè)信息發(fā)送設(shè)備的簽名信息的簽名字段的數(shù)據(jù)包發(fā)送給信息接收設(shè)備(其中,簽名信息是關(guān)于傳輸路徑以及信息明文的簽名),由此信息接收設(shè)備接收到該數(shù)據(jù)包后,能夠先根據(jù)自身的私鑰、密鑰密文以及信息密文獲得信息明文,然后根據(jù)路徑字段、信息明文以及曾經(jīng)發(fā)送過該信息密文的各個(gè)信息發(fā)送設(shè)備的公鑰,對(duì)簽名字段中的各個(gè)簽名信息分別進(jìn)行驗(yàn)證,從而實(shí)現(xiàn)對(duì)所有傳輸路徑的驗(yàn)證以及每個(gè)信息發(fā)送設(shè)備所發(fā)信息明文的驗(yàn)證,并在所有簽名信息均驗(yàn)證成功時(shí)才保留信息明文,進(jìn)而提高了信息接收設(shè)備接收信息的可靠性。
進(jìn)一步的,依據(jù)上述裝置實(shí)施例,本發(fā)明的另一個(gè)實(shí)施例還提供了一種驗(yàn)證加密數(shù)據(jù)傳輸路徑的系統(tǒng),如圖9所示,所述系統(tǒng)包括:信息發(fā)送設(shè)備51以及信息接收設(shè)備52;其中,所述信息發(fā)送設(shè)備51包括如圖5或6所述的裝置;所述信息接收設(shè)備52包括如圖7或8所述的裝置。
本發(fā)明實(shí)施例提供的驗(yàn)證加密數(shù)據(jù)傳輸路徑的系統(tǒng),能夠在信息發(fā)送設(shè)備需要向信息接收設(shè)備發(fā)送信息時(shí),將包括用于記錄每次信息傳輸路徑的路徑字段、用于存儲(chǔ)密鑰密文的字段、用于存儲(chǔ)信息密文的字段以及用于存儲(chǔ)各個(gè)信息發(fā)送設(shè)備的簽名信息的簽名字段的數(shù)據(jù)包發(fā)送給信息接收設(shè)備(其中,簽名信息是關(guān)于傳輸路徑以及信息明文的簽名),由此信息接收設(shè)備接收到該數(shù)據(jù)包后,能夠先根據(jù)自身的私鑰、密鑰密文以及信息密文獲得信息明文,然后根據(jù)路徑字段、信息明文以及曾經(jīng)發(fā)送過該信息密文的各個(gè)信息發(fā)送設(shè)備的公鑰,對(duì)簽名字段中的各個(gè)簽名信息分別進(jìn)行驗(yàn)證,從而實(shí)現(xiàn)對(duì)所有傳輸路徑的驗(yàn)證以及每個(gè)信息發(fā)送設(shè)備所發(fā)信息明文的驗(yàn)證,并在所有簽名信息均驗(yàn)證成功時(shí)才保留信息明文,進(jìn)而提高了信息接收設(shè)備接收信息的可靠性。
在上述實(shí)施例中,對(duì)各個(gè)實(shí)施例的描述都各有側(cè)重,某個(gè)實(shí)施例中沒有詳述的部分,可以參見其他實(shí)施例的相關(guān)描述。
可以理解的是,上述方法及裝置中的相關(guān)特征可以相互參考。另外,上述實(shí)施例中的“第一”、“第二”等是用于區(qū)分各實(shí)施例,而并不代表各實(shí)施例的優(yōu)劣。
所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為描述的方便和簡(jiǎn)潔,上述描述的系統(tǒng),裝置和單元的具體工作過程,可以參考前述方法實(shí)施例中的對(duì)應(yīng)過程,在此不再贅述。
在此提供的算法和顯示不與任何特定計(jì)算機(jī)、虛擬系統(tǒng)或者其它設(shè)備固有相關(guān)。各種通用系統(tǒng)也可以與基于在此的示教一起使用。根據(jù)上面的描述,構(gòu)造這類系統(tǒng)所要求的結(jié)構(gòu)是顯而易見的。此外,本發(fā)明也不針對(duì)任何特定編程語(yǔ)言。應(yīng)當(dāng)明白,可以利用各種編程語(yǔ)言實(shí)現(xiàn)在此描述的本發(fā)明的內(nèi)容,并且上面對(duì)特定語(yǔ)言所做的描述是為了披露本發(fā)明的最佳實(shí)施方式。
在此處所提供的說明書中,說明了大量具體細(xì)節(jié)。然而,能夠理解,本發(fā)明的實(shí)施例可以在沒有這些具體細(xì)節(jié)的情況下實(shí)踐。在一些實(shí)例中,并未詳細(xì)示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對(duì)本說明書的理解。
類似地,應(yīng)當(dāng)理解,為了精簡(jiǎn)本公開并幫助理解各個(gè)發(fā)明方面中的一個(gè)或多個(gè),在上面對(duì)本發(fā)明的示例性實(shí)施例的描述中,本發(fā)明的各個(gè)特征有時(shí)被一起分組到單個(gè)實(shí)施例、圖、或者對(duì)其的描述中。然而,并不應(yīng)將該公開的方法解釋成反映如下意圖:即所要求保護(hù)的本發(fā)明要求比在每個(gè)權(quán)利要求中所明確記載的特征更多的特征。更確切地說,如下面的權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個(gè)實(shí)施例的所有特征。因此,遵循具體實(shí)施方式的權(quán)利要求書由此明確地并入該具體實(shí)施方式,其中每個(gè)權(quán)利要求本身都作為本發(fā)明的單獨(dú)實(shí)施例。
本領(lǐng)域那些技術(shù)人員可以理解,可以對(duì)實(shí)施例中的設(shè)備中的模塊進(jìn)行自適應(yīng)性地改變并且把它們?cè)O(shè)置在與該實(shí)施例不同的一個(gè)或多個(gè)設(shè)備中??梢园褜?shí)施例中的模塊或單元或組件組合成一個(gè)模塊或單元或組件,以及此外可以把它們分成多個(gè)子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對(duì)本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設(shè)備的所有過程或單元進(jìn)行組合。除非另外明確陳述,本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的每個(gè)特征可以由提供相同、等同或相似目的的替代特征來代替。
此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實(shí)施例包括其它實(shí)施例中所包括的某些特征而不是其它特征,但是不同實(shí)施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實(shí)施例。例如,在下面的權(quán)利要求書中,所要求保護(hù)的實(shí)施例的任意之一都可以以任意的組合方式來使用。
本發(fā)明的各個(gè)部件實(shí)施例可以以硬件實(shí)現(xiàn),或者以在一個(gè)或者多個(gè)處理器上運(yùn)行的軟件模塊實(shí)現(xiàn),或者以它們的組合實(shí)現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在實(shí)踐中使用微處理器或者數(shù)字信號(hào)處理器(DSP)來實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例的驗(yàn)證加密數(shù)據(jù)傳輸路徑的方法及裝置中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實(shí)現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設(shè)備或者裝置程序(例如,計(jì)算機(jī)程序和計(jì)算機(jī)程序產(chǎn)品)。這樣的實(shí)現(xiàn)本發(fā)明的程序可以存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)上,或者可以具有一個(gè)或者多個(gè)信號(hào)的形式。這樣的信號(hào)可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號(hào)上提供,或者以任何其他形式提供。
應(yīng)該注意的是上述實(shí)施例對(duì)本發(fā)明進(jìn)行說明而不是對(duì)本發(fā)明進(jìn)行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計(jì)出替換實(shí)施例。在權(quán)利要求中,不應(yīng)將位于括號(hào)之間的任何參考符號(hào)構(gòu)造成對(duì)權(quán)利要求的限制。單詞“包含”不排除存在未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞“一”或“一個(gè)”不排除存在多個(gè)這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當(dāng)編程的計(jì)算機(jī)來實(shí)現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個(gè)可以是通過同一個(gè)硬件項(xiàng)來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序??蓪⑦@些單詞解釋為名稱。