本發(fā)明涉及信息安全,尤其涉及一種基于安全代理的可信計(jì)算方法和裝置。
背景技術(shù):
1、可信計(jì)算(trusted?computing,tc)?是一種基于硬件和軟件協(xié)同工作的計(jì)算機(jī)安全技術(shù),旨在提高計(jì)算機(jī)系統(tǒng)在安全性、隱私保護(hù)、數(shù)據(jù)完整性等方面的可信度。它通過引入可信平臺(tái)模塊(tpm,trusted?platform?module)和相關(guān)技術(shù),確保計(jì)算機(jī)系統(tǒng)的操作和存儲(chǔ)過程符合安全標(biāo)準(zhǔn),防止惡意軟件和攻擊行為的影響。
2、現(xiàn)有的可信計(jì)算方法主要包括tpm(可信平臺(tái)模塊)、受控啟動(dòng)(secure?boot)、遠(yuǎn)程證明(remote?attestation)、數(shù)字版權(quán)管理(drm)以及可信計(jì)算與云計(jì)算結(jié)合等。其中,tpm是一種硬件安全模塊,用于存儲(chǔ)加密密鑰并確保系統(tǒng)啟動(dòng)過程的安全,提供硬件級(jí)安全性,但缺點(diǎn)是存在兼容性和安全漏洞問題;受控啟動(dòng)可以確保只有經(jīng)過認(rèn)證的軟件在啟動(dòng)時(shí)運(yùn)行,防止惡意軟件感染系統(tǒng),它可以保護(hù)啟動(dòng)過程,但可能限制用戶自由,且對(duì)老舊設(shè)備兼容性差;遠(yuǎn)程證明允許設(shè)備向遠(yuǎn)程服務(wù)器證明其可信狀態(tài),廣泛應(yīng)用于云計(jì)算中,它能增強(qiáng)系統(tǒng)安全性,但可能導(dǎo)致隱私泄露,且信任依賴于遠(yuǎn)程服務(wù)器的安全;數(shù)字版權(quán)管理通過結(jié)合硬件和軟件來保護(hù)數(shù)字內(nèi)容的版權(quán),防止非法復(fù)制和分發(fā),雖然有效保護(hù)版權(quán),但可能限制用戶的合法使用,且易受破解攻擊;可信計(jì)算與云計(jì)算結(jié)合可以確保云平臺(tái)和用戶之間的交互是安全的,能夠驗(yàn)證云平臺(tái)的安全性,然而,數(shù)據(jù)隱私問題、實(shí)現(xiàn)復(fù)雜性和成本是其主要挑戰(zhàn)。
3、基于此,需要一種新的解決方案。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明的主要目的在于提供一種基于安全代理的可信計(jì)算方法和系統(tǒng)。
2、為實(shí)現(xiàn)上述目的,本發(fā)明提供一種基于安全代理的可信計(jì)算方法,包括以下步驟:
3、由服務(wù)器對(duì)待連接的終端進(jìn)行身份驗(yàn)證和終端硬件信息驗(yàn)證;
4、在驗(yàn)證通過后,在終端與服務(wù)器之間建立基于安全通信協(xié)議的加密通信通道;
5、基于建立的所述加密通信通道,所述終端與所述服務(wù)器進(jìn)行加密通信并對(duì)所述終端的安全代理程序和硬件信息定時(shí)進(jìn)行完整性校驗(yàn)。
6、在本發(fā)明提供的基于安全代理的可信計(jì)算方法中,服務(wù)器對(duì)終端用戶進(jìn)行身份驗(yàn)證的步驟包括:
7、在檢測(cè)到終端插入智能密碼鑰匙后,服務(wù)器向終端發(fā)起身份認(rèn)證請(qǐng)求,并生成隨機(jī)挑戰(zhàn)碼發(fā)送給終端;
8、終端使用所述智能密碼鑰匙中存儲(chǔ)的私鑰對(duì)所述隨機(jī)挑戰(zhàn)碼進(jìn)行簽名,并將簽名結(jié)果返回服務(wù)器;
9、服務(wù)器使用服務(wù)器密碼機(jī)中預(yù)存的公鑰對(duì)所述簽名結(jié)果進(jìn)行驗(yàn)證。
10、在本發(fā)明提供的基于安全代理的可信計(jì)算方法中,服務(wù)器對(duì)終端進(jìn)行終端硬件信息驗(yàn)證包括:
11、服務(wù)器自動(dòng)提取終端的ip、網(wǎng)卡mac地址,并與已保存的信息進(jìn)行對(duì)比,匹配成功則驗(yàn)證通過,不匹配則拒絕終端連接;
12、終端通過指定方式向服務(wù)器上報(bào)終端磁盤序列號(hào)、操作系統(tǒng)版本、安全代理程序的hash值,服務(wù)器收到信息由與已保存的信息比對(duì),如果匹配則驗(yàn)證通過,不匹配則拒絕連接。
13、在本發(fā)明提供的基于安全代理的可信計(jì)算方法中,在驗(yàn)證通過后,在終端與服務(wù)器之間建立基于安全通信協(xié)議的加密通信通道的步驟包括:
14、對(duì)所述終端和所述服務(wù)器之間的加密通信通道進(jìn)行初始化連接;
15、在建立初始化連接后,通過wireguard協(xié)議在所述終端與所述服務(wù)器之間進(jìn)行挑戰(zhàn)應(yīng)答驗(yàn)證。
16、在本發(fā)明提供的基于安全代理的可信計(jì)算方法中,對(duì)所述終端和所述服務(wù)器之間的加密通信通道進(jìn)行初始化連接的步驟包括:
17、由所述終端和所述服務(wù)器分別生成wireguard公私鑰對(duì),建立wireguard隧道;
18、所述終端向所述服務(wù)器發(fā)起連接請(qǐng)求,所述連接請(qǐng)求包括通過智能密碼鑰匙讀取的國(guó)密證書和wireguard私鑰;
19、所述服務(wù)器收到所述連接請(qǐng)求后,驗(yàn)證所述國(guó)密證書是否合法并通過sm2算法和wireguard公鑰對(duì)所述wireguard私鑰進(jìn)行身份認(rèn)證。
20、在本發(fā)明提供的基于安全代理的可信計(jì)算方法中,在基于建立的所述加密通信通道,所述終端與所述服務(wù)器進(jìn)行加密通信在所述加密通信過程中,所述終端與所述服務(wù)器使用sm4算法加密通信數(shù)據(jù)并通過使用sm3算法生成數(shù)據(jù)摘要以對(duì)通信數(shù)據(jù)進(jìn)行數(shù)據(jù)完整性校驗(yàn)。
21、在本發(fā)明提供的基于安全代理的可信計(jì)算方法中,對(duì)所述終端的安全代理程序進(jìn)行完整性校驗(yàn)的步驟包括:
22、在收到所述終端的安全代理自身完整性校驗(yàn)請(qǐng)求后,所述服務(wù)器生成指定長(zhǎng)度的隨機(jī)數(shù)并對(duì)所述隨機(jī)數(shù)通過sm2算法進(jìn)行加密得到第一加密信息;
23、在所述終端收到所述第一加密信息后,對(duì)所述第一加密信息進(jìn)行驗(yàn)簽解密得到所述隨機(jī)數(shù);
24、求解所述終端的安全代理程序的第一摘要值,并對(duì)所述第一摘要值與所述隨機(jī)數(shù)再求摘要,得到第二摘要值;
25、對(duì)所述第二摘要值通過sm2算法進(jìn)行加密得到第二加密信息;
26、在所述服務(wù)器收到所述第二加密信息后,對(duì)所述第二加密信息進(jìn)行驗(yàn)簽解密得到所述第二摘要值;
27、對(duì)存儲(chǔ)在所述服務(wù)器中的安全代理程序的摘要值與所述第二摘要值進(jìn)行匹配,匹配成功,則判定所述安全代理程序通過所述完整性校驗(yàn)。
28、在本發(fā)明提供的基于安全代理的可信計(jì)算方法中,對(duì)所述終端的硬件信息進(jìn)行完整性校驗(yàn)的步驟包括:
29、在所述安全代理程序通過所述完整性校驗(yàn)后,將所述安全代理程序采集的所述終端的信息和操作日志上報(bào)給所述服務(wù)器,所述信息包括終端計(jì)算機(jī)ip、磁盤序列號(hào)、網(wǎng)卡mac、操作系統(tǒng)版本、監(jiān)控程序的校驗(yàn)值、監(jiān)控程序的版本、終端cpu的使用情況、內(nèi)存的使用情況、磁盤的使用情況中的一種或多種;
30、所述服務(wù)器采用深度優(yōu)先搜索對(duì)上報(bào)的所述信息依次進(jìn)行完整性校驗(yàn)并對(duì)所有操作日志進(jìn)行審計(jì),在發(fā)現(xiàn)異常時(shí),則斷開與所述終端的連接。
31、本發(fā)明還提供一種基于安全代理的可信計(jì)算裝置,包括處理器和存儲(chǔ)器,所述存儲(chǔ)器存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如上所述的基于安全代理的可信計(jì)算方法的步驟。
32、本發(fā)明還提供一種存儲(chǔ)介質(zhì),所述存儲(chǔ)介質(zhì)存儲(chǔ)有一個(gè)或者多個(gè)程序,所述一個(gè)或者多個(gè)程序可被一個(gè)或者多個(gè)處理器執(zhí)行,以實(shí)現(xiàn)如上所述的基于安全代理的可信計(jì)算方法的步驟。
33、本發(fā)明提供的基于安全代理的可信計(jì)算系統(tǒng)和方法具有以下有益效果:本發(fā)明提供的基于安全代理的可信計(jì)算方法,使用ukey和數(shù)字證書等手段對(duì)終端設(shè)備進(jìn)行認(rèn)證,確保只有合法用戶可以接入;通過sm2、sm4和sm3等國(guó)密算法加密通信數(shù)據(jù),保證傳輸過程中的數(shù)據(jù)安全性和完整性;對(duì)終端設(shè)備的硬件和軟件進(jìn)行靜態(tài)驗(yàn)證和持續(xù)完整性校驗(yàn),防止設(shè)備被篡改或被惡意攻擊;采用wireguard協(xié)議建立加密隧道,確保信息傳輸過程的安全,且支持會(huì)話日志記錄和審計(jì)。通過多重身份驗(yàn)證和加密算法有效防止身份偽造和數(shù)據(jù)泄露;終端設(shè)備和軟件的完整性檢查保證了設(shè)備和數(shù)據(jù)的安全性,防止設(shè)備被惡意篡改;使用強(qiáng)加密手段和哈希算法,確保數(shù)據(jù)在傳輸過程中的機(jī)密性和完整性。由此,通過身份驗(yàn)證、加密通信、數(shù)據(jù)完整性校驗(yàn)、以及硬件和軟件完整性檢查等技術(shù)手段,構(gòu)建了一個(gè)高安全性的通信框架,防止未授權(quán)訪問、數(shù)據(jù)篡改和泄露。