TWI715708B - 設備身份認證的方法、裝置和系統 - Google Patents

設備身份認證的方法、裝置和系統 Download PDF

Info

Publication number
TWI715708B
TWI715708B TW106102223A TW106102223A TWI715708B TW I715708 B TWI715708 B TW I715708B TW 106102223 A TW106102223 A TW 106102223A TW 106102223 A TW106102223 A TW 106102223A TW I715708 B TWI715708 B TW I715708B
Authority
TW
Taiwan
Prior art keywords
data
authentication
key
authenticated
random number
Prior art date
Application number
TW106102223A
Other languages
English (en)
Other versions
TW201828644A (zh
Inventor
董侃
劉敦俊
Original Assignee
香港商斑馬智行網絡(香港)有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 香港商斑馬智行網絡(香港)有限公司 filed Critical 香港商斑馬智行網絡(香港)有限公司
Priority to TW106102223A priority Critical patent/TWI715708B/zh
Publication of TW201828644A publication Critical patent/TW201828644A/zh
Application granted granted Critical
Publication of TWI715708B publication Critical patent/TWI715708B/zh

Links

Images

Landscapes

  • Lock And Its Accessories (AREA)

Abstract

本發明提供了一種設備身份認證的方法、裝置和系統,其中方法包括:被認證設備獲取預先寫入被認證設備的設備密鑰,其中設備密鑰由認證設備和被認證設備預先約定;利用設備密鑰對第一資料進行簽名及/或加密,得到第二資料,其中第一資料包含被認證設備與認證設備約定的隨機數;利用第二資料和被認證設備的身份標識,生成認證碼並發送給認證設備。認證設備利用與被認證設備的身份標識對應的設備密鑰,對認證碼包含的第二資料進行簽名驗證及/或解密;利用簽名驗證及/或解密得到的隨機數,對被認證設備進行認證。本發明能夠解決在認證過程中設備身份標識極易被偽造和篡改所帶來的身份認證問題。

Description

設備身份認證的方法、裝置和系統
本發明關於電腦應用技術領域,特別關於一種設備身份認證的方法、裝置和系統。
IMEI(International Mobile Equipment Identity,移動設備國際身份碼)是在硬體出廠時固化在設備中的,不可更改和擦除,但由於任何人都能夠獲取到IMEI號,也就是說,IMEI號對外是明文存在的,所以只能解決銷售過程中的設備身份問題。當設備入網後,由於IMEI號容易被應用獲取,因此在進行網路身份認證時,IMEI號極易被偽造和篡改,無法滿足網路上對設備的身份認證需求。
有鑑於此,本發明提供了一種設備身份認證的方法、裝置和系統,解決在認證過程中設備身份標識極易被偽造和篡改所帶來的身份認證問題。
具體技術方案如下:本發明提供了一種設備身份認證的方法,該方法包 括:被認證設備獲取預先寫入所述被認證設備的設備密鑰,其中所述設備密鑰由所述認證設備和所述被認證設備預先約定;利用所述設備密鑰對第一資料進行簽名及/或加密,得到第二資料,其中所述第一資料包含所述被認證設備與認證設備約定的隨機數;利用所述第二資料和所述被認證設備的身份標識,生成認證碼並發送給所述認證設備。
根據本發明一較佳實施方式,所述被認證設備獲取預先寫入所述被認證設備的設備密鑰包括:所述被認證設備從自身的安全儲存中獲取預先寫入的設備密鑰;或者,從自身的安全儲存中獲取預先寫入的設備密鑰和身份標識。
根據本發明一較佳實施方式,該方法還包括:所述被認證設備確定與認證設備約定的隨機數。
根據本發明一較佳實施方式,所述被認證設備確定與認證設備約定的隨機數包括:所述被認證設備向所述認證設備請求隨機數;接收所述認證設備返回的隨機數。
根據本發明一較佳實施方式,接收所述認證設備返回的隨機數包括:利用服務端密鑰對所述認證設備返回的加密後的隨機 數進行解密,其中所述服務端密鑰由所述認證設備與所述被認證設備預先約定。
根據本發明一較佳實施方式,所述被認證設備確定與認證設備約定的隨機數包括:所述被認證設備獲取預先與所述認證設備約定的隨機數種子;基於所述隨機數種子,採用預先與所述認證設備約定的演算法生成隨機數。
根據本發明一較佳實施方式,所述隨機數種子包括:所述被認證設備與認證設備預先約定的密鑰資訊;預先與所述認證設備約定的演算法包括:基於時間的一次性密碼演算法TOTP。
根據本發明一較佳實施方式,利用所述設備密鑰對第一資料進行簽名及/或加密包括:利用所述設備密鑰對所述第一資料進行簽名,得到第二資料;或者,利用所述設備密鑰對所述第一資料進行加密,得到第二資料;或者,利用服務端密鑰對所述第一資料進行加密,得到密文資料,利用所述設備密鑰對所述密文資料進行簽名,得到第二資料;或者,利用所述設備密鑰對所述第一資料進行簽名,得到簽名資料,利用服務端密鑰對簽名資料進行加密,得到第二資料; 其中,所述服務端密鑰由所述認證設備和所述被認證設備預先約定。
根據本發明一較佳實施方式,所述被認證設備的身份標識由所述認證設備生成並預先提供給所述被認證設備。
根據本發明一較佳實施方式,所述獲取預先寫入所述被認證設備的設備密鑰,利用所述設備密鑰對第一資料進行簽名及/或加密,以及利用所述第二資料和所述被認證設備的身份標識,生成認證碼的步驟在可信執行環境下執行。
根據本發明一較佳實施方式,所述設備密鑰為設備私鑰,所述認證設備保存有與所述設備私鑰對應的設備公鑰。
根據本發明一較佳實施方式,所述服務端密鑰為服務端公鑰,所述認證設備保存有與所述服務端公鑰對應的服務端私鑰。
本發明還提供了一種設備身份認證的方法,該方法包括:認證設備接收被認證設備發送的認證碼;利用與所述被認證設備的身份標識對應的設備密鑰,對所述認證碼包含的第二資料進行簽名驗證及/或解密,其中所述設備密鑰由認證設備和被認證設備預先約定;利用所述簽名驗證及/或解密得到的隨機數,對所述被認證設備進行認證。
根據本發明一較佳實施方式,該方法還包括: 所述認證設備從所述認證碼中解析得到所述被認證設備的身份標識;利用預先儲存的所述被認證設備的身份標識與設備密鑰之間的對應關係,確定所述被認證設備的身份標識對應的設備密鑰。
根據本發明一較佳實施方式,利用與所述被認證設備的身份標識對應的設備密鑰,對所述認證碼包含的第二資料進行簽名驗證及/或解密包括:利用所述設備密鑰對所述第二資料包含的第一資料進行簽名,將得到的簽名資料與所述第二資料包含的簽名資料進行比對,如果一致,則確定簽名驗證通過,從所述第一資料中獲取隨機數,否則確定簽名驗證失敗;或者,利用所述設備密鑰對所述第二資料進行解密,得到第一資料,從所述第一資料中獲取隨機數;或者,利用所述設備密鑰對所述第二資料包含的密文資料進行簽名,將得到的簽名資料與所述第二資料包含的簽名資料進行比對,如果一致,則確定簽名驗證通過,利用服務端密鑰對所述密文資料進行解密,得到隨機數,否則確定簽名驗證失敗;或者,利用服務端密鑰對所述第二資料進行解密,得到簽名資料和第一資料,利用所述設備密鑰對所述第一資料進行簽名,將簽名得到的簽名資料與解密得到的簽名資料進行比對,如果一致,則確定簽名驗證通過,從所述第一資料中獲取隨機數,否則確定簽名驗證失敗。
根據本發明一較佳實施方式,利用所述簽名驗證及/或解密得到的隨機數,對所述被認證設備進行認證包括:將所述認證設備與所述被認證設備約定的隨機數與所述得到的隨機數進行比對,如果一致,則確定對所述被認證設備的認證通過,否則確定對所述被認證設備的認證失敗。
根據本發明一較佳實施方式,該方法還包括:所述認證設備確定與所述被認證設備約定的隨機數。
根據本發明一較佳實施方式,所述認證設備確定與所述被認證設備約定的隨機數包括:所述認證設備接收所述被認證設備獲取隨機數的請求;向所述被認證設備返回隨機數。
根據本發明一較佳實施方式,向所述被認證設備返回隨機數包括:利用服務端密鑰對所述隨機數進行加密,將加密後的隨機數返回給所述被認證設備,所述服務端密鑰由所述認證設備和所述被認證設備預先約定。
根據本發明一較佳實施方式,所述認證設備確定與所述被認證設備約定的隨機數包括:所述認證設備獲取預先與所述被認證設備約定的隨機數種子;基於所述隨機數種子,採用預先與所述被認證設備約定的演算法生成隨機數。
根據本發明一較佳實施方式,所述隨機數種子包括:所述認證設備與所述被認證設備預先約定的密鑰資訊;預先與所述被認證設備約定的演算法包括:基於時間的一次性密碼演算法TOTP。
根據本發明一較佳實施方式,該方法還包括:所述認證設備預先針對所述被認證設備生成身份標識,並將所述被認證設備的身份標識提供給所述被認證設備。
根據本發明一較佳實施方式,所述設備密鑰為設備公鑰,在所述被認證設備中預先寫入有與所述設備公鑰對應的設備私鑰。
根據本發明一較佳實施方式,所述服務端密鑰為服務端私鑰,在所述被認證設備中保存有與所述服務端私鑰對應的服務端公鑰。
本發明還提供了一種設備身份認證的裝置,該裝置設置於被認證設備,該裝置包括:密鑰獲取單元,用於獲取預先寫入所述被認證設備的設備密鑰,其中所述設備密鑰由所述認證設備和所述被認證設備預先約定;認證碼生成單元,用於利用所述設備密鑰對第一資料進行簽名及/或加密,得到第二資料,其中所述第一資料包含所述被認證設備與認證設備約定的隨機數;利用所述第二資料和所述被認證設備的身份標識,生成認證碼;認證請求單元,用於將所述認證碼發送給所述認證設 備。
根據本發明一較佳實施方式,所述密鑰獲取單元,具體用於在所述認證請求單元的觸發下,從所述被認證設備的安全儲存中獲取預先寫入的設備密鑰。
根據本發明一較佳實施方式,該裝置還包括:標識獲取單元,用於在所述認證請求單元的觸發下,從所述被認證設備的安全儲存中獲取預先寫入的身份標識,並提供給所述認證碼生成單元。
根據本發明一較佳實施方式,所述認證碼生成單元,還用於確定所述被認證設備與所述認證設備約定的隨機數。
根據本發明一較佳實施方式,所述認證碼生成單元在確定所述被認證設備與所述認證設備約定的隨機數時,具體執行:向所述認證設備請求隨機數;接收所述認證設備返回的隨機數。
根據本發明一較佳實施方式,所述認證碼生成單元在接收所述認證設備返回的隨機數時,具體用於利用服務端密鑰對所述認證設備返回的加密後的隨機數進行解密,其中所述服務端密鑰由所述認證設備與所述被認證設備預先約定。
根據本發明一較佳實施方式,所述認證碼生成單元在確定所述被認證設備與所述認證設備約定的隨機數時,具體執行: 獲取預先與所述認證設備約定的隨機數種子;基於所述隨機數種子,採用預先與所述認證設備約定的演算法生成隨機數。
根據本發明一較佳實施方式,所述隨機數種子包括:所述被認證設備與認證設備預先約定的密鑰資訊;預先與所述認證設備約定的演算法包括:基於時間的一次性密碼演算法TOTP。
根據本發明一較佳實施方式,所述認證碼生成單元在利用所述設備密鑰對第一資料進行簽名及/或加密時,具體執行:利用所述設備密鑰對所述第一資料進行簽名,得到第二資料;或者,利用所述設備密鑰對所述第一資料進行加密,得到第二資料;或者,利用服務端密鑰對所述第一資料進行加密,得到密文資料,利用所述設備密鑰對所述密文資料進行簽名,得到第二資料;或者,利用所述設備密鑰對所述第一資料進行簽名,得到簽名資料,利用服務端密鑰對簽名資料進行加密,得到第二資料;其中,所述服務端密鑰由所述認證設備與所述被認證設備預先約定。
根據本發明一較佳實施方式,所述被認證設備的身份標識由所述認證設備生成並預先提供給所述被認證設備。
根據本發明一較佳實施方式,所述密鑰獲取單元和所述認證碼生成單元設置於可信執行環境。
根據本發明一較佳實施方式,所述設備密鑰為設備私鑰,所述認證設備保存有與所述設備私鑰對應的設備公鑰。
根據本發明一較佳實施方式,所述服務端密鑰為服務端公鑰,所述認證設備保存有與所述服務端公鑰對應的服務端私鑰。
本發明還提供了一種設備身份認證的裝置,該裝置設置於認證設備,該裝置包括:接收單元,用於接收被認證設備發送的認證碼;處理單元,用於利用與所述被認證設備的身份標識對應的設備密鑰,對所述認證碼包含的第二資料進行簽名驗證及/或解密,其中所述設備密鑰由認證設備和被認證設備預先約定;認證單元,用於利用所述處理單元進行簽名驗證及/或解密得到的隨機數,對所述被認證設備進行認證。
根據本發明一較佳實施方式,所述處理單元,還用於從所述認證碼中解析得到所述被認證設備的身份標識,利用預先儲存的所述被認證設備的身份標識與設備密鑰之間的對應關係,確定所述被認證設備的身份標識對應的設備密鑰。
根據本發明一較佳實施方式,所述處理單元,具體用於: 利用所述設備密鑰對所述第二資料包含的第一資料進行簽名,將得到的簽名資料與所述第二資料包含的簽名資料進行比對,如果一致,則確定簽名驗證通過,從所述第一資料中獲取隨機數,否則確定簽名驗證失敗;或者,利用所述設備密鑰對所述第二資料進行解密,得到第一資料,從所述第一資料中獲取隨機數;或者,利用所述設備密鑰對所述第二資料包含的密文資料進行簽名,將得到的簽名資料與所述第二資料包含的簽名資料進行比對,如果一致,則確定簽名驗證通過,利用服務端密鑰對所述密文資料進行解密,得到隨機數,否則確定簽名驗證失敗;或者,利用服務端密鑰對所述第二資料進行解密,得到簽名資料和第一資料,利用所述設備密鑰對所述第一資料進行簽名,將簽名得到的簽名資料與解密得到的簽名資料進行比對,如果一致,則確定簽名驗證通過,從所述第一資料中獲取隨機數,否則確定簽名驗證失敗。
根據本發明一較佳實施方式,所述認證單元具體用於:將所述認證設備與所述被認證設備約定的隨機數與所述處理單元得到的隨機數進行比對,如果一致,則確定對所述被認證設備的認證通過,否則確定對所述被認證設備的認證失敗。
根據本發明一較佳實施方式,該裝置還包括:隨機數確定單元,用於確定所述認證設備與所述被認證設備約定 的隨機數。
根據本發明一較佳實施方式,所述隨機數確定單元,具體用於:接收所述被認證設備獲取隨機數的請求;向所述被認證設備返回隨機數。
根據本發明一較佳實施方式,所述隨機數確定單元在向所述被認證設備返回隨機數時,具體執行:利用服務端密鑰對所述隨機數進行加密,將加密後的隨機數返回給所述被認證設備,所述服務端密鑰由所述認證設備和所述被認證設備預先約定。
根據本發明一較佳實施方式,所述隨機數確定單元,具體用於:獲取預先與所述被認證設備約定的隨機數種子;基於所述隨機數種子,採用預先與所述被認證設備約定的演算法生成隨機數。
根據本發明一較佳實施方式,所述隨機數種子包括:所述認證設備與所述被認證設備預先約定的密鑰資訊;預先與所述被認證設備約定的演算法包括:基於時間的一次性密碼演算法TOTP。
根據本發明一較佳實施方式,該裝置還包括:標識生成單元,用於預先針對所述被認證設備生成身份標識,並將所述被認證設備的身份標識提供給所述被認證設備。
根據本發明一較佳實施方式,所述設備密鑰為設備公 鑰,在所述被認證設備中預先寫入有與所述設備公鑰對應的設備私鑰。
根據本發明一較佳實施方式,所述服務端密鑰為服務端私鑰,在所述被認證設備中保存有與所述服務端私鑰對應的服務端公鑰。
本發明還提供了一種設備身份認證的系統,該系統包括被認證設備和認證設備。
由以上技術方案可以看出,本發明中被認證設備使用預先寫入被認證設備的設備密鑰對包含隨機數的資料進行簽名及/或加密的方式形成認證碼,使用該認證碼進行被認證設備的身份認證,即便被認證設備的身份標識被篡改和洩露,但由於設備密鑰和隨機數只有被認證設備與認證設備之間約定,具有唯一性,因此能夠滿足對被認證設備的身份認證需求。
01‧‧‧密鑰獲取單元
02‧‧‧認證碼生成單元
03‧‧‧認證請求單元
04‧‧‧標識獲取單元
11‧‧‧接收單元
12‧‧‧處理單元
13‧‧‧認證單元
14‧‧‧隨機數確定單元
15‧‧‧標識生成單元
圖1為本發明實施例提供的系統結構圖;圖2為本發明實施例提供的被認證設備執行的第一種方法流程圖;圖3為本發明實施例提供的認證設備執行的第一種方法流程圖;圖4為本發明實施例提供的被認證設備執行的第二種方法流程圖;圖5為本發明實施例提供的認證設備執行的第二種方 法流程圖;圖6為本發明實施例提供的被認證設備執行的第三種方法流程圖;圖7為本發明實施例提供的認證設備執行的第三種方法流程圖;圖8為本發明實施例提供的一種裝置結構圖;圖9為本發明實施例提供的另一種裝置結構圖。
為了使本發明的目的、技術方案和優點更加清楚,下面結合附圖和具體實施例對本發明進行詳細描述。
本發明所基於的系統可以如圖1中所示,主要包括被認證設備和認證設備。其中被認證設備可以是任意的物理設備,可以包括但不限於:手機、電腦、網路設備、智能家居設備、可穿戴設備、智能醫療器械等。其中電腦可以包括但不限於PC、筆記型電腦、平板電腦等。網路設備可以包括但不限於路由器、交換機、網卡、集線器等。智能家居設備可以包括但不限於智能電視、智能空調、智能加濕器、智能熱水器、智能廚電設備、智能門窗、智能空氣淨化器等。可穿戴設備可以包括但不限於:智能手環、智能手錶、智能眼鏡等等。智能醫療器械可以包括但不限於:智能血壓計、智能體重計、智能血糖儀、智能按摩椅等。認證設備可以是服務端的設備或設備集群,例如伺服器或伺服器集群的形式。
在本發明實施例中,預先在被認證設備中寫入被認證設備的設備密鑰,如果在本發明實施例中,採用對稱式加/解密方式,那麼在認證設備中保存有同樣的設備密鑰,該設備密鑰由被認證設備和認證設備預先約定,且只有認證設備和被認證設備獲知,其他設備無法得到。如果在本發明實施例中採用非對稱式加/解密方式,那麼寫入被認證設備的設備密鑰可以是設備私鑰,那麼在認證設備中保存有與該被認證設備的設備私鑰對應的設備公鑰,該設備私鑰和設備公鑰構成一組密鑰對。該設備私鑰只有被認證設備和認證設備獲知,其他設備無法得到。該設備密鑰主要用於生成認證碼發送給認證設備,以進行被認證設備的身份認證。
被認證設備端開始進行身份認證時,可以執行如圖2中所示的流程。圖2為本發明實施例提供的被認證設備執行的第一種方法流程圖,在本實施例中以非對稱式加解密方式為例進行描述,如圖2中所示,該方法可以包括以下步驟:在201中,被認證設備獲取預先寫入被認證設備的設備私鑰。
觸發被認證設備開始進行身份認證的時機有很多,可以根據實際的業務需求進行定制,例如被認證設備第一次開機時,在設備啟動過程中需要進行身份認證;再例如被認證設備中某應用要請求對應的服務時,可以觸發身份認證,只有身份認證通過的被認證設備才能夠獲取到對應的 服務,等等。
當被認證設備被觸發進行身份認證時,可以獲取預先被寫入的設備私鑰。在本發明實施例中,為了保證設備私鑰的安全性,可以在安全儲存中保存設備私鑰。安全儲存可以是利用諸如ARM TrustZone或Secure Element或TI M-Shield等機制在硬體上隔離出的安全區域,也可以是利用虛擬化機制隔離出一個獨立的安全環境,安全儲存保證了存入的設備私鑰不可篡改和擦除。無論採用哪種方式,目的是為了提供一個可信執行環境來進行私鑰的獲取和認證碼的生成,可信執行環境保證了設備私鑰的私密性。
在本發明實施例中,為了實現身份認證可以預先在被認證設備中寫入以下資訊:
1)設備私鑰。
2)被認證設備的身份標識。
3)服務端公鑰。
其中設備私鑰和被認證設備的身份標識是必須的資訊,服務端公鑰是可選的資訊。如上面已經提及的,設備私鑰由認證設備與被認證設備預先約定,並在被認證設備端預先寫入安全儲存,同時認證設備端保存有與設備私鑰對應的設備公鑰。被認證設備的身份標識用於唯一標識被認證設備,可以採用但不限於:被認證設備的IMEI、MAC地址等等。作為一種較佳的實施方式,被認證設備的身份標識可以由認證設備生成,並提供給被認證設備,例如提供給標識寫入設備,由標識寫入設備將被認證設備 的身份標識寫入被認證設備。其中,被認證設備的身份標識和服務端公鑰也可以儲存於安全儲存。
上述的服務端公鑰也是以非對稱加解密方式為例,相應地,在認證設備端保存有對應的服務端私鑰。如果採用對稱加解密方式,那麼在認證設備和被認證設備都保存有相同的服務端密鑰。
本發明實施例中涉及的“寫入”可以採用但不限於燒錄至設備晶片的方式。設備私鑰和設備公鑰對可以預先由認證設備生成,並在被認證設備出廠時將其中的設備私鑰提供給被認證設備;也可以由被認證設備在出廠時生成設備私鑰和設備公鑰對,然後將其中的設備公鑰提供給認證設備。服務端私鑰和服務端私鑰同樣可以由認證設備生成,並在被認證設備出廠時將其中的服務端公鑰提供給被認證設備;也可以由被認證設備在出廠時生成服務端私鑰和服務端公鑰對,然後將其中的服務端私鑰提供給認證設備。
在202中,利用設備私鑰對第一資料進行簽名,得到第二資料,其中第一資料包含被認證設備與認證設備約定的隨機數。
被認證設備除了獲取設備私鑰之外,在生成認證碼時,還需要確定與認證設備約定的隨機數。在本發明實施例中,隨機數的確定可以採用但不限於以下兩種方式:
第一種方式為實時請求的方式,即被認證設備向認證設備請求隨機數,由認證設備針對該被認證設備生成一個隨機數,並返回給被認證設備。為了保證隨機數的安全 性,認證設備在返回隨機數時,可以採用服務端私鑰對隨機數進行加密,被認證設備利用服務端公鑰對隨機數進行解密。
其中,服務端公鑰可以由認證設備預先提供給被認證設備。例如,認證設備可以預先生成一組密鑰對,即服務端公鑰和服務端私鑰,將其中的服務端公鑰提供給被認證設備。
第二種方式為兩端採用同步生成隨機數的方式。即被認證設備獲取與認證設備預先約定的隨機數種子,基於該隨機數種子,採用預先與認證設備約定的演算法生成隨機數。相應地,在認證設備端也可以採用相同的隨機數種子和演算法生成相同的隨機數。
其中,上述隨機數種子可以是被認證設備與認證設備預先約定的密鑰資訊,上述生成隨機數的演算法可以採用諸如TOTP(Time-based One Time Password Algorithm,基於時間的一次性密碼演算法)。TOTP演算法透過在認證設備和被認證設備之間約定一個起始時間戳T0,以及間隔時間TS;把當前時間戳減去T0,用得到的時間差除以TS並取整,可以得到整數TC;然後利用TC和約定的密鑰資訊K進行雜湊運算,就可以得到隨機數password。在此不對TOTP進行詳細說明,當然除了TOTP演算法之外,也可以採用其他演算法,只要保證認證設備和被認證設備能夠生成同樣的隨機數即可。
上述第一資料除了包含隨機數之外,還可以包含其他 資料,例如設備的廠商資訊、身份標識等等其他設備相關資訊。
在本步驟中利用設備私鑰對第一資料進行簽名,例如利用設備私鑰對第一資料進行雜湊運算,得到簽名資料,該簽名資料只有利用與該設備私鑰對應的設備公鑰才能夠進行簽名驗證。再由第一資料和簽名資料構成第二資料,其中第一資料為明文資料,簽名資料為密文資料。
在203中,利用第二資料和被認證設備的身份標識,生成認證碼並發送給認證設備。
在本實施例中,發送給認證設備的認證碼包含利用設備私鑰對隨機數進行簽名之後的第二資料以及被認證設備的身份標識。
對應於圖2所示的實施例,認證設備端執行的認證流程可以如圖3中所示。圖3為本發明實施例提供的認證設備執行的第一種方法流程圖,如圖3中所示,可以包括以下步驟:在301中,認證設備接收被認證設備發送的認證碼。
認證設備從該認證碼中可以解析得到第二資料和被認證設備的身份標識。
在302中,利用與被認證設備的身份標識對應的設備公鑰,對認證碼包含的第二資料進行簽名驗證。
在認證設備端保存有被認證設備的身份標識與設備公鑰之間的對應關係,利用該對應關係可以確定出被認證設備的身份標識對應的設備公鑰。
在利用設備公鑰進行簽名驗證時,可以利用設備公鑰對第二資料包含的第一資料進行簽名,將得到的簽名資料與第二資料包含的簽名資料進行比對。也就是說,提取出第二資料中的明文資料,利用設備公鑰對明文資料進行簽名後,得到密文的簽名資料,將自己得到的簽名資料與第二資料本身包含的簽名資料進行比對。如果一致,則確定簽名驗證通過,從第一資料中獲取隨機數;否則確定簽名驗證失敗,可以返回簽名驗證失敗的資訊。
在303中,利用簽名驗證得到的隨機數,對被認證設備進行認證。
在本步驟中,認證設備需要確定與被認證設備約定的隨機數,確定的方式可以包括但不限於以下兩種:
第一種方式:認證設備接收到被認證設備獲取隨機數的請求後,生成隨機數並返回給被認證設備,這裡確定的隨機數就是生成的該隨機數。其中,在返回隨機數給被認證設備時,為了保證隨機數的安全性,可以利用服務端私鑰對隨機數進行加密,將加密後的隨機數返回給被認證設備,這樣被認證設備需要利用服務端公鑰對隨機數進行解密。
第二種方式:認證設備獲取預先與被認證設備約定的隨機數種子,基於該隨機數種子,採用預先與被認證設備預定的演算法生成隨機數。其中隨機數種子可以包括認證設備與被認證設備預先約定的密鑰資訊,生成隨機數採用的演算法可以採用諸如TOTP演算法。
具體採用哪種方式,認證設備和被認證設備可以預先約定,從而保證兩端確定的隨機數相同。
本步驟在進行認證時,可以將認證設備確定的隨機數與從第一資料中獲取的隨機數進行比對,如果一致,則確定被認證設備的身份認證通過,否則認證失敗。可以進一步返回認證結果。
圖4為本發明實施例提供的被認證設備執行的第二種方法流程圖,在本實施例中仍以非對稱式加解密方式為例進行描述,如圖4中所示,該方法可以包括以下步驟:
步驟401同步驟201,具體參見步驟201中的相關描述。
在步驟402中,利用設備私鑰對第一資料進行加密,得到第二資料,其中第一資料包含被認證設備與認證設備約定的隨機數。
本步驟中確定與認證設備約定的隨機數的方式可以參見步驟202中的相關描述,不再贅述。
與圖2所示實施例不同的是,本步驟中是利用設備私鑰對包含隨機數的第一資料進行加密,得到密文資料,即第二資料。
步驟403同步驟203,具體參見步驟203中的相關描述。本實施例中發送給認證設備的認證碼包含利用設備私鑰對隨機數進行加密後的第二資料以及被認證設備的身份標識。
對應於圖4所示的實施例,認證設備端執行的認證流 程可以如圖5中所示。圖5為本發明實施例提供的認證設備執行的第二種方法流程圖,如圖5中所示,該方法可以包括以下步驟:
步驟501同步驟301,具體參見步驟301中的相關描述。
在步驟502中,認證設備利用與被認證設備的身份標識對應的設備公鑰,對認證碼包含的第二資料進行解密。
與圖3所示實施例不同的是,本步驟中認證設備利用被認證設備的身份標識對應的設備公鑰對第二資料進行解密,得到明文的第一資料,並從第一資料中可以獲取隨機數。
在步驟503中,利用解密得到的隨機數,對被認證設備進行認證。認證的方式可以參見步驟303中的描述,不再贅述。
圖6為本發明實施例提供的被認證設備執行的第三種方法流程圖,如圖6中所示,該方法可以包括以下步驟:
步驟601同步驟201,具體參見步驟201中的相關描述。
在602中,利用服務端公鑰對第一資料進行加密,得到密文資料,其中第一資料包含被認證設備與認證設備約定的隨機數。
本步驟中,確定與認證設備約定的隨機數的方式可以參見步驟202中的相關描述,在此不再贅述。
在603中,利用設備私鑰對密文資料進行簽名,得到 第二資料。
本實施例是先對包含隨機數的第一資料進行加密,然後再對得到的密文資料進行簽名。得到的第二資料包含密文資料以及對該密文資料進行簽名得到的簽名資料。
除了這種方式之外,還可以先利用設備私鑰對第一資料進行簽名,得到簽名資料,然後對第一資料和簽名資料進行加密得到第二資料。
步驟604同步驟203,具體參見步驟203的相關描述。
對應於圖6所示的實施例,認證設備端執行的認證流程可以如圖7中所示。圖7為本發明實施例提供的認證設備執行的第三種方法流程圖,如圖7中所示,可以包括以下步驟:
步驟701同步驟301,具體參見步驟301的相關描述。
在702中,利用與被認證設備的身份標識對應的設備公鑰,對認證碼包含的第二資料進行簽名驗證。
具體地,由於第二資料中包含密文資料以及該密文資料對應的簽名資料,認證設備可以利用設備公鑰對密文資料進行簽名,將得到的簽名資料與第二資料中包含的簽名資料進行比對,如果一致,則簽名驗證通過,繼續執行步驟703,否則簽名驗證失敗,可以返回簽名驗證失敗的資訊,結束本流程。
在703中,利用服務端私鑰對第二資料中包含的密文 資料進行解密,得到第一資料,並從第一資料中獲取隨機數。
如果被認證設備採用先利用設備私鑰對第一資料進行簽名,得到簽名資料後,然後利用服務端公鑰對第一資料和簽名資料進行加密得到的第二資料的方式,那麼相應地,認證設備先利用服務端私鑰對第二資料進行解密,得到第一資料和簽名資料。然後利用設備公鑰對第一資料進行簽名,得到簽名資料,將得到的簽名資料與解密得到的簽名資料進行比對,如果一致,則驗證通過,否則驗證失敗。如果驗證通過,則從第一資料中獲取隨機數。
在704中,利用解密得到的隨機數,對被認證設備進行認證。認證的方式可以參見步驟303中的相關描述,不再贅述。
以上是對本發明所提供方法進行的詳細描述,下面對本發明所提供的裝置進行詳細描述。
圖8為本發明實施例提供的一種裝置結構圖,該裝置可以設置於被認證設備,如圖8中所示,該裝置可以包括:密鑰獲取單元01、認證碼生成單元02和認證請求單元03,還可以進一步包括標識獲取單元04。
密鑰獲取單元01負責獲取預先寫入被認證設備的設備密鑰,其中設備密鑰由認證設備和被認證設備預先約定。其中,密鑰獲取單元01可以在認證請求單元03有設備的身份認證需求時,被認證請求單元03觸發獲取預先寫入被認證設備的設備密鑰。例如,當被具體的業務觸發 後,認證請求單元03需要將認證碼發送給認證設備,這時就觸發密鑰獲取單元01獲取設備密鑰。
另外,為了保證安全性,密鑰獲取單元01可以從被認證設備的安全儲存中獲取預先寫入的設備密鑰。
認證碼生成單元02負責利用設備密鑰對第一資料進行簽名及/或加密,得到第二資料,其中第一資料包含被認證設備與認證設備約定的隨機數;利用第二資料和被認證設備的身份標識,生成認證碼。
由認證請求單元03將認證碼發送給認證設備。
標識獲取單元04負責在認證請求單元03的觸發下,從被認證設備的安全儲存中獲取預先寫入的身份標識,並提供給認證碼生成單元02。在本發明實施例中,為了保證設備密鑰的安全性,將其預先儲存於安全儲存中。安全儲存可以是利用諸如ARM TrustZone或TI M-Shield等機制在硬體上隔離出的安全區域,也可以是利用虛擬化機制隔離出一個獨立的安全環境,無論採用哪種方式,目的是為了提供一個可信執行環境來進行私鑰的獲取和認證碼的生成。也就是說,本實施例中涉及的密鑰獲取單元01和認證碼生成單元02設置於可信執行環境。
認證碼生成單元02需要首先確定被認證設備與認證設備約定的隨機數。具體可以採用但不限於以下兩種方式:
第一種方式:實時地向認證設備請求隨機數,並接收認證設備返回的隨機數。其中,為了保證安全性,認證單 元在返回隨機數時,可以利用服務端密鑰對隨機數進行加密。相應地,認證碼生成單元02在接收認證設備返回的隨機數時,利用服務端密鑰對認證設備返回的加密後的隨機數進行解密,其中服務端密鑰由認證設備與被認證設備預先約定。
第二種方式:獲取預先與認證設備約定的隨機數種子,基於隨機數種子,採用預先與認證設備約定的演算法生成隨機數。其中,上述的隨機數種子可以包括:被認證設備與認證設備預先約定的密鑰資訊。預先與認證設備約定的演算法可以採用諸如TOTP演算法。其中隨機數種子也可以預先儲存於安全儲存,由認證碼生成單元02從安全儲存中獲取。
具體地,認證碼生成單元02在利用設備密鑰對第一資料進行簽名及/或加密時,可以採用但不限於以下幾種方式:
第一種方式:利用設備密鑰對第一資料進行簽名,得到第二資料。
第二種方式:利用設備密鑰對第一資料進行加密,得到第二資料。
第三種方式:利用服務端密鑰對第一資料進行加密,得到密文資料,利用設備密鑰對密文資料進行簽名,得到第二資料。
第四種方式:利用設備密鑰對第一資料進行簽名,得到簽名資料,利用服務端密鑰對第一資料和簽名資料進行 加密,得到第二資料。
在本發明實施例中,被認證設備的身份標識可以由認證設備生成並預先提供給被認證設備。具體地,認證設備可以在接收到廠商管理設備的請求後,為待分配標識的設備生成設備標識,並將設備標識提供給標識寫入設備,由標識寫入設備在設備出廠時寫入設備。
在本發明實施例中,如果採用非對稱式的加解密方式,那麼上述的設備密鑰為設備私鑰,認證設備保存有與設備私鑰對應的設備公鑰。該設備私鑰和設備公鑰對可以由認證設備生成,然後將其中的設備私鑰提供給被認證設備。也可以由被認證設備生成,由被認證設備將其中的設備公鑰提供給認證設備。
另外,上述的服務端密鑰為服務端公鑰,認證設備保存有與服務端公鑰對應的服務端私鑰。該服務端公鑰和服務端私鑰對可以由認證設備生成,然後將其中的服務端公鑰提供給被認證設備。也可以由被認證設備生成,由被認證設備將其中的服務端私鑰提供給認證設備。
圖9為本發明實施例提供的另一種裝置結構圖,該裝置設置於認證設備,如圖9中所示,該裝置可以包括:接收單元11、處理單元12和認證單元13,還可以進一步包括隨機數確定單元14和標識生成單元15。各組成單元的主要功能如下:接收單元11負責接收被認證設備發送的認證碼。
處理單元12負責利用與被認證設備的身份標識對應 的設備密鑰,對認證碼包含的第二資料進行簽名驗證及/或解密,其中設備密鑰由認證設備和被認證設備預先約定。
認證單元13負責利用處理單元12進行簽名驗證及/或解密得到的隨機數,對被認證設備進行認證。
其中,處理單元12可以從認證碼中解析得到被認證設備的身份標識,利用預先儲存的被認證設備的身份標識與設備密鑰之間的對應關係,確定被認證設備的身份標識對應的設備密鑰。
具體地,處理單元12可以採用但不限於以下方式進行處理:
第一種方式:利用設備密鑰對第二資料包含的第一資料進行簽名,將得到的簽名資料與第二資料包含的簽名資料進行比對,如果一致,則確定簽名驗證通過,從第一資料中獲取隨機數,否則確定簽名驗證失敗。
第二種方式:利用設備密鑰對第二資料進行解密,得到第一資料,從第一資料中獲取隨機數。
第三種方式:利用設備密鑰對第二資料包含的密文資料進行簽名,將得到的簽名資料與第二資料包含的簽名資料進行比對,如果一致,則確定簽名驗證通過,利用服務端密鑰對密文資料進行解密,得到隨機數,否則確定簽名驗證失敗。
第四種方式:利用服務端密鑰對第二資料進行解密,得到簽名資料和第一資料,利用設備密鑰對第一資料進行 簽名,將簽名得到的簽名資料與解密得到的簽名資料進行比對,如果一致,則確定簽名驗證通過,從第一資料中獲取隨機數,否則確定簽名驗證失敗。
認證單元13在進行認證時,可以將認證設備與被認證設備約定的隨機數與處理單元12得到的隨機數進行比對,如果一致,則確定對被認證設備的認證通過,否則確定對被認證設備的認證失敗。
其中,隨機數確定單元14負責確定認證設備與被認證設備約定的隨機數。具體可以採用但不限於以下兩種方式:
第一種方式:接收被認證設備獲取隨機數的請求,向被認證設備返回隨機數。即應被認證設備的請求實時為其生成隨機數。其中為了保證隨機數的安全性,隨機數確定單元14可以在向被認證設備返回隨機數時,利用服務端密鑰對隨機數進行加密,將加密後的隨機數返回給被認證設備,服務端密鑰由認證設備和被認證設備預先約定。
第二種方式:獲取預先與被認證設備約定的隨機數種子,基於隨機數種子,採用預先與被認證設備約定的演算法生成隨機數。其中,隨機數種子可以包括:認證設備與被認證設備預先約定的密鑰資訊。預先與被認證設備約定的演算法可以採用諸如TOTP演算法。
上述被認證設備的身份標識可以由認證設備生成,即標識生成單元15預先針對被認證設備生成身份標識,並將被認證設備的身份標識提供給被認證設備。
在本實施例中,上述的設備密鑰可以為設備公鑰,在被認證設備中預先寫入有與設備公鑰對應的設備私鑰。該設備私鑰和設備公鑰對可以由認證設備生成,然後將其中的設備私鑰提供給被認證設備。也可以由被認證設備生成,由被認證設備將其中的設備公鑰提供給認證設備。
上述的服務端密鑰為服務端私鑰,在被認證設備中保存有與服務端私鑰對應的服務端公鑰。該服務端公鑰和服務端私鑰對可以由認證設備生成,然後將其中的服務端公鑰提供給被認證設備。也可以由被認證設備生成,由被認證設備將其中的服務端私鑰提供給認證設備。
本發明實施例提供的上述身份認證的方法、裝置和系統可以應用於多種身份認證場景,包括但不限於:在網路業務中對設備的身份認證,例如當設備需要在網路中請求某業務時,可以在請求中攜帶本發明實施例中所述的認證碼,只有服務端的認證設備利用該認證碼進行認證通過後,才允許相應業務下發給被認證的設備。
對設備進行流量統計過程中的身份認證。在對設備進行流量統計時,往往會出現有的設備為了躲避流量統計,篡改、偽造設備標識,那麼透過在流量統計過程中攜帶認證碼,用認證碼來檢驗設備的真實身份。
在本發明所提供的幾個實施例中,應該理解到,所揭露的系統,裝置和方法,可以透過其它的方式實現。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可 以有另外的劃分方式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位於一個地方,或者也可以分佈到多個網路單元上。可以根據實際的需要選擇其中的部分或者全部單元來實現本實施例方案的目的。
另外,在本發明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以採用硬體的形式實現,也可以採用硬體加軟體功能單元的形式實現。
上述以軟體功能單元的形式實現的集成的單元,可以儲存在一個電腦可讀取儲存媒體中。上述軟體功能單元儲存在一個儲存媒體中,包括若干指令用以使得一台電腦設備(可以是個人電腦,服務器,或者網路設備等)或處理器(processor)執行本發明各個實施例所述方法的部分步驟。而前述的儲存媒體包括:USB隨身碟、移動硬碟、唯讀記憶體(Read-Only Memory,ROM)、隨機存取記憶體(Random Access Memory,RAM)、磁碟或者光碟等各種可以儲存程式代碼的媒體。
以上所述僅為本發明的較佳實施例而已,並不用以限制本發明,凡在本發明的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本發明保護的範圍之內。

Claims (42)

  1. 一種設備身份認證的方法,其特徵在於,該方法包括:被認證設備獲取預先寫入該被認證設備的設備密鑰,其中該設備密鑰由認證設備和該被認證設備預先約定;利用該設備密鑰對第一資料進行簽名及/或加密,得到第二資料,其中該第一資料包含該被認證設備與認證設備約定的隨機數;利用該第二資料和該被認證設備的身份標識,生成認證碼並發送給該認證設備,其中,該方法還包括:該被認證設備確定與認證設備約定的隨機數,其中,該被認證設備確定與認證設備約定的隨機數包括:該被認證設備獲取預先與該認證設備約定的隨機數種子;基於該隨機數種子,採用預先與該認證設備約定的演算法生成隨機數。
  2. 根據申請專利範圍第1項所述的方法,其中,該被認證設備獲取預先寫入該被認證設備的設備密鑰包括:該被認證設備從自身的安全儲存中獲取預先寫入的設備密鑰;或者,從自身的安全儲存中獲取預先寫入的設備密鑰和身份標識。
  3. 根據申請專利範圍第1項所述的方法,其中,該被認證設備確定與認證設備約定的隨機數包括:該被認證設備向該認證設備請求隨機數;接收該認證設備返回的隨機數。
  4. 根據申請專利範圍第3項所述的方法,其中,接收該認證設備返回的隨機數包括:利用服務端密鑰對該認證設備返回的加密後的隨機數進行解密,其中該服務端密鑰由該認證設備與該被認證設備預先約定。
  5. 根據申請專利範圍第1項所述的方法,其中,該隨機數種子包括:該被認證設備與認證設備預先約定的密鑰資訊;預先與該認證設備約定的演算法包括:基於時間的一次性密碼演算法TOTP。
  6. 根據申請專利範圍第1項所述的方法,其中,利用該設備密鑰對第一資料進行簽名及/或加密包括:利用該設備密鑰對該第一資料進行簽名,得到第二資料;或者,利用該設備密鑰對該第一資料進行加密,得到第二資料;或者,利用服務端密鑰對該第一資料進行加密,得到密文資料,利用該設備密鑰對該密文資料進行簽名,得到第二資料;或者,利用該設備密鑰對該第一資料進行簽名,得到簽名資 料,利用服務端密鑰對該簽名資料進行加密,得到第二資料;其中,該服務端密鑰由該認證設備和該被認證設備預先約定。
  7. 根據申請專利範圍第1項所述的方法,其中,該被認證設備的身份標識由該認證設備生成並預先提供給該被認證設備。
  8. 根據申請專利範圍第1項所述的方法,其中,所述獲取預先寫入該被認證設備的設備密鑰,利用該設備密鑰對第一資料進行簽名及/或加密,以及利用該第二資料和該被認證設備的身份標識,生成認證碼的步驟係在將該設備密鑰預先儲存於安全儲存中的可信執行環境下執行。
  9. 根據申請專利範圍第1項所述的方法,其中,該設備密鑰為設備私鑰,該認證設備保存有與該設備私鑰對應的設備公鑰。
  10. 根據申請專利範圍第4或6項所述的方法,其中,該服務端密鑰為服務端公鑰,該認證設備保存有與該服務端公鑰對應的服務端私鑰。
  11. 一種設備身份認證的方法,其特徵在於,該方法包括:認證設備接收被認證設備發送的認證碼;利用與該被認證設備的身份標識對應的設備密鑰,對該認證碼包含的第二資料進行簽名驗證及/或解密,其中該設備密鑰由認證設備和被認證設備預先約定; 利用該簽名驗證及/或解密得到的隨機數,對該被認證設備進行認證,其中,該方法還包括:該認證設備確定與該被認證設備約定的隨機數,其中,該認證設備確定與該被認證設備約定的隨機數包括:該認證設備獲取預先與該被認證設備約定的隨機數種子;基於該隨機數種子,採用預先與該被認證設備約定的演算法生成隨機數。
  12. 根據申請專利範圍第11項所述的方法,其中,該方法還包括:該認證設備從該認證碼中解析得到該被認證設備的身份標識;利用預先儲存的該被認證設備的身份標識與設備密鑰之間的對應關係,確定該被認證設備的身份標識對應的設備密鑰。
  13. 根據申請專利範圍第11項所述的方法,其中,利用與該被認證設備的身份標識對應的設備密鑰,對該認證碼包含的第二資料進行簽名驗證及/或解密包括:利用該設備密鑰對該第二資料包含的第一資料進行簽名,將得到的簽名資料與該第二資料包含的簽名資料進行比對,如果一致,則確定簽名驗證通過,從該第一資料中獲取隨機數,否則確定簽名驗證失敗;或者,利用該設備密鑰對該第二資料進行解密,得到第一資 料,從該第一資料中獲取隨機數;或者,利用該設備密鑰對該第二資料包含的密文資料進行簽名,將得到的簽名資料與該第二資料包含的簽名資料進行比對,如果一致,則確定簽名驗證通過,利用服務端密鑰對該密文資料進行解密,得到隨機數,否則確定簽名驗證失敗;或者,利用服務端密鑰對該第二資料進行解密,得到簽名資料和第一資料,利用該設備密鑰對該第一資料進行簽名,將簽名得到的簽名資料與解密得到的簽名資料進行比對,如果一致,則確定簽名驗證通過,從該第一資料中獲取隨機數,否則確定簽名驗證失敗。
  14. 根據申請專利範圍第11項所述的方法,其中,利用該簽名驗證及/或解密得到的隨機數,對該被認證設備進行認證包括:將該認證設備與該被認證設備約定的隨機數與該得到的隨機數進行比對,如果一致,則確定對該被認證設備的認證通過,否則確定對該被認證設備的認證失敗。
  15. 根據申請專利範圍第11項所述的方法,其中,該認證設備確定與該被認證設備約定的隨機數包括:該認證設備接收該被認證設備獲取隨機數的請求;向該被認證設備返回隨機數。
  16. 根據申請專利範圍第15項所述的方法,其中,向該被認證設備返回隨機數包括:利用服務端密鑰對該隨機數進行加密,將加密後的隨 機數返回給該被認證設備,該服務端密鑰由該認證設備和該被認證設備預先約定。
  17. 根據申請專利範圍第11項所述的方法,其中,該隨機數種子包括:該認證設備與該被認證設備預先約定的密鑰資訊;預先與該被認證設備約定的演算法包括:基於時間的一次性密碼演算法TOTP。
  18. 根據申請專利範圍第11項所述的方法,其中,該方法還包括:該認證設備預先針對該被認證設備生成身份標識,並將該被認證設備的身份標識提供給該被認證設備。
  19. 根據申請專利範圍第11項所述的方法,其中,該設備密鑰為設備公鑰,在該被認證設備中預先寫入有與該設備公鑰對應的設備私鑰。
  20. 根據申請專利範圍第13或16項所述的方法,其中,該服務端密鑰為服務端私鑰,在該被認證設備中保存有與該服務端私鑰對應的服務端公鑰。
  21. 一種設備身份認證的裝置,該裝置設置於被認證設備,其中,該裝置包括:密鑰獲取單元,用於獲取預先寫入該被認證設備的設備密鑰,其中該設備密鑰由該認證設備和該被認證設備預先約定;認證碼生成單元,用於利用該設備密鑰對第一資料進行簽名及/或加密,得到第二資料,其中該第一資料包含 該被認證設備與認證設備約定的隨機數;利用該第二資料和該被認證設備的身份標識,生成認證碼;認證請求單元,用於將該認證碼發送給該認證設備,其中,該認證碼生成單元,還用於確定該被認證設備與該認證設備約定的隨機數,其中,該認證碼生成單元在確定該被認證設備與該認證設備約定的隨機數時,具體執行:獲取預先與該認證設備約定的隨機數種子;基於該隨機數種子,採用預先與該認證設備約定的演算法生成隨機數。
  22. 根據申請專利範圍第21項所述的裝置,其中,該密鑰獲取單元,具體用於在該認證請求單元的觸發下,從該被認證設備的安全儲存中獲取預先寫入的設備密鑰。
  23. 根據申請專利範圍第21項所述的裝置,其中,該裝置還包括:標識獲取單元,用於在該認證請求單元的觸發下,從該被認證設備的安全儲存中獲取預先寫入的身份標識,並提供給該認證碼生成單元。
  24. 根據申請專利範圍第21項所述的裝置,其中,該認證碼生成單元在確定該被認證設備與該認證設備約定的隨機數時,具體執行:向該認證設備請求隨機數;接收該認證設備返回的隨機數。
  25. 根據申請專利範圍第24項所述的裝置,其中,該 認證碼生成單元在接收該認證設備返回的隨機數時,具體用於利用服務端密鑰對該認證設備返回的加密後的隨機數進行解密,其中該服務端密鑰由該認證設備與該被認證設備預先約定。
  26. 根據申請專利範圍第21項所述的裝置,其中,該隨機數種子包括:該被認證設備與認證設備預先約定的密鑰資訊;預先與該認證設備約定的演算法包括:基於時間的一次性密碼演算法TOTP。
  27. 根據申請專利範圍第21項所述的裝置,其中,該認證碼生成單元在利用該設備密鑰對第一資料進行簽名及/或加密時,具體執行:利用該設備密鑰對該第一資料進行簽名,得到第二資料;或者,利用該設備密鑰對該第一資料進行加密,得到第二資料;或者,利用服務端密鑰對該第一資料進行加密,得到密文資料,利用該設備密鑰對該密文資料進行簽名,得到第二資料;或者,利用該設備密鑰對該第一資料進行簽名,得到簽名資料,利用服務端密鑰對該簽名資料進行加密,得到第二資料;其中,該服務端密鑰由該認證設備與該被認證設備預先約定。
  28. 根據申請專利範圍第21項所述的裝置,其中,該被認證設備的身份標識由該認證設備生成並預先提供給該被認證設備。
  29. 根據申請專利範圍第21項所述的裝置,其中,該密鑰獲取單元和該認證碼生成單元設置於將該設備密鑰預先儲存於安全儲存中的可信執行環境。
  30. 根據申請專利範圍第21項所述的裝置,其中,該設備密鑰為設備私鑰,該認證設備保存有與該設備私鑰對應的設備公鑰。
  31. 根據申請專利範圍第25或27項所述的裝置,其中,該服務端密鑰為服務端公鑰,該認證設備保存有與該服務端公鑰對應的服務端私鑰。
  32. 一種設備身份認證的裝置,該裝置設置於認證設備,其特徵在於,該裝置包括:接收單元,用於接收被認證設備發送的認證碼;處理單元,用於利用與該被認證設備的身份標識對應的設備密鑰,對該認證碼包含的第二資料進行簽名驗證及/或解密,其中該設備密鑰由認證設備和被認證設備預先約定;認證單元,用於利用該處理單元進行簽名驗證及/或解密得到的隨機數,對該被認證設備進行認證,其中,該裝置還包括:隨機數確定單元,用於確定該認證設備與該被認證設備約定的隨機數,其中,該隨機數確定單元,具體用於: 獲取預先與該被認證設備約定的隨機數種子;基於該隨機數種子,採用預先與該被認證設備約定的演算法生成隨機數。
  33. 根據申請專利範圍第32項所述的裝置,其中,該處理單元,還用於從該認證碼中解析得到該被認證設備的身份標識,利用預先儲存的該被認證設備的身份標識與設備密鑰之間的對應關係,確定該被認證設備的身份標識對應的設備密鑰。
  34. 根據申請專利範圍第32項所述的裝置,其中,該處理單元,具體用於:利用該設備密鑰對該第二資料包含的第一資料進行簽名,將得到的簽名資料與該第二資料包含的簽名資料進行比對,如果一致,則確定簽名驗證通過,從該第一資料中獲取隨機數,否則確定簽名驗證失敗;或者,利用該設備密鑰對該第二資料進行解密,得到第一資料,從該第一資料中獲取隨機數;或者,利用該設備密鑰對該第二資料包含的密文資料進行簽名,將得到的簽名資料與該第二資料包含的簽名資料進行比對,如果一致,則確定簽名驗證通過,利用服務端密鑰對該密文資料進行解密,得到隨機數,否則確定簽名驗證失敗;或者,利用服務端密鑰對該第二資料進行解密,得到簽名資料和第一資料,利用該設備密鑰對該第一資料進行簽名,將簽名得到的簽名資料與解密得到的簽名資料進行比對, 如果一致,則確定簽名驗證通過,從該第一資料中獲取隨機數,否則確定簽名驗證失敗。
  35. 根據申請專利範圍第32項所述的裝置,其中,該認證單元具體用於:將該認證設備與該被認證設備約定的隨機數與該處理單元得到的隨機數進行比對,如果一致,則確定對該被認證設備的認證通過,否則確定對該被認證設備的認證失敗。
  36. 根據申請專利範圍第32項所述的裝置,其中,該隨機數確定單元,具體用於:接收該被認證設備獲取隨機數的請求;向該被認證設備返回隨機數。
  37. 根據申請專利範圍第36項所述的裝置,其中,該隨機數確定單元在向該被認證設備返回隨機數時,具體執行:利用服務端密鑰對該隨機數進行加密,將加密後的隨機數返回給該被認證設備,該服務端密鑰由該認證設備和該被認證設備預先約定。
  38. 根據申請專利範圍第32項所述的裝置,其中,該隨機數種子包括:該認證設備與該被認證設備預先約定的密鑰資訊;預先與該被認證設備約定的演算法包括:基於時間的一次性密碼演算法TOTP。
  39. 根據申請專利範圍第32項所述的裝置,其中,該 裝置還包括:標識生成單元,用於預先針對該被認證設備生成身份標識,並將該被認證設備的身份標識提供給該被認證設備。
  40. 根據申請專利範圍第32項所述的裝置,其中,該設備密鑰為設備公鑰,在該被認證設備中預先寫入有與該設備公鑰對應的設備私鑰。
  41. 根據申請專利範圍第32項所述的裝置,其中,該服務端密鑰為服務端私鑰,在該被認證設備中保存有與該服務端私鑰對應的服務端公鑰。
  42. 一種設備身份認證的系統,其特徵在於,該系統包括被認證設備和認證設備;該被認證設備包括如申請專利範圍第21項所述的裝置;該認證設備包括如申請專利範圍第32項所述的裝置。
TW106102223A 2017-01-20 2017-01-20 設備身份認證的方法、裝置和系統 TWI715708B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW106102223A TWI715708B (zh) 2017-01-20 2017-01-20 設備身份認證的方法、裝置和系統

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW106102223A TWI715708B (zh) 2017-01-20 2017-01-20 設備身份認證的方法、裝置和系統

Publications (2)

Publication Number Publication Date
TW201828644A TW201828644A (zh) 2018-08-01
TWI715708B true TWI715708B (zh) 2021-01-11

Family

ID=63960550

Family Applications (1)

Application Number Title Priority Date Filing Date
TW106102223A TWI715708B (zh) 2017-01-20 2017-01-20 設備身份認證的方法、裝置和系統

Country Status (1)

Country Link
TW (1) TWI715708B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111478774B (zh) * 2020-04-09 2022-07-22 确信信息股份有限公司 一种基于语音鉴别的密钥授权方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI242704B (en) * 2001-06-27 2005-11-01 Microsoft Corp Secure video card in computing device having digital rights management (DRM) system
US20190005470A1 (en) * 2015-10-16 2019-01-03 Coinplug, Inc. Accredited certificate issuance system based on block chain and accredited certificate issuance method based on block chain using same, and accredited certificate authentication system based on block chain and accredited certificate authentication method based on block chain using same

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI242704B (en) * 2001-06-27 2005-11-01 Microsoft Corp Secure video card in computing device having digital rights management (DRM) system
US20190005470A1 (en) * 2015-10-16 2019-01-03 Coinplug, Inc. Accredited certificate issuance system based on block chain and accredited certificate issuance method based on block chain using same, and accredited certificate authentication system based on block chain and accredited certificate authentication method based on block chain using same

Also Published As

Publication number Publication date
TW201828644A (zh) 2018-08-01

Similar Documents

Publication Publication Date Title
WO2017063534A1 (zh) 一种设备身份认证的方法、装置和系统
CN110677418B (zh) 可信声纹认证方法、装置、电子设备及存储介质
CN110519260B (zh) 一种信息处理方法及信息处理装置
CN106797311B (zh) 用于安全密码生成的系统、方法和存储介质
US9722794B2 (en) System and method for remote access, remote digital signature
WO2017097041A1 (zh) 数据传输方法和装置
CN109639427B (zh) 一种数据发送的方法及设备
WO2018182890A1 (en) Method and system for protecting data keys in trusted computing
CN111512608B (zh) 基于可信执行环境的认证协议
CN107579817A (zh) 基于区块链的用户身份验证方法、装置及系统
US20160330029A1 (en) Authenticator device facilitating file security
US6988198B1 (en) System and method for initializing operation for an information security operation
CN106603461A (zh) 一种业务认证的方法、装置和系统
BR112017014632B1 (pt) Método implementado por computador, sistema de computador, e, mídia legível de computador
CN104639516A (zh) 身份认证方法、设备及系统
CN103684766A (zh) 一种终端用户的私钥保护方法和系统
CN103929306A (zh) 智能密钥设备和智能密钥设备的信息管理方法
KR20180013710A (ko) 공개키 기반의 서비스 인증 방법 및 시스템
US20210328799A1 (en) Automated authentication of a new network element
WO2019120038A1 (zh) 数据加密存储
CN110740116B (zh) 一种多应用身份认证的系统及方法
US9917694B1 (en) Key provisioning method and apparatus for authentication tokens
WO2017050152A1 (zh) 用于移动设备的密码安全系统及其密码安全输入方法
CN107409043B (zh) 基于中央加密的存储数据对产品的分布式处理
Sinnhofer et al. Patterns to establish a secure communication channel

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees