專利名稱:信息管理儀器、信息管理方法和程序的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及信息管理儀器、信息管理方法和程序。更具體地說,本發(fā)明涉及能夠響應(yīng)于來自一個服務(wù)器的請求而產(chǎn)生對應(yīng)于多個不同類型IC芯片的命令的信息管理儀器、與其一起使用的信息管理方法以及與其一起使用的程序。
背景技術(shù):
近年來,將電子貨幣充入(存入)非接觸IC芯片諸如信用卡或嵌入便攜式電話中的FeliCa(注冊商標(biāo))并在購買商品時使用充入的電子貨幣付費正變得日益普遍。
在付費時,只需用手拿著用戶的信用卡或便攜式電話走到放在商店中的終端(讀卡器/寫卡器)。由此,用戶就可以快速付費。
例如,如圖1中所示,配置了這種電子貨幣系統(tǒng)。
電子貨幣系統(tǒng)的服務(wù)器端包括服務(wù)器設(shè)備1和SAM(安全應(yīng)用模塊)2。電子貨幣系統(tǒng)的客戶端包括客戶設(shè)備3和R/W(讀卡器/寫卡器)4。服務(wù)器設(shè)備1和客戶設(shè)備3通過網(wǎng)絡(luò)5彼此連接。
在圖1示例中,包含有非接觸IC芯片13的便攜式電話6被放在靠近客戶端上的R/W 4,并且便攜式電話6通過使用電磁感應(yīng)的短距離通信連接到客戶設(shè)備3。
在服務(wù)器設(shè)備1中實現(xiàn)的服務(wù)器應(yīng)用11執(zhí)行與在客戶設(shè)備3中實現(xiàn)的客戶應(yīng)用12的通信,并將響應(yīng)于來自客戶應(yīng)用12的請求產(chǎn)生的命令(由非接觸IC芯片13執(zhí)行的命令)輸出到SAM 2。當(dāng)從SAM 2提供執(zhí)行加密的命令時,服務(wù)器應(yīng)用11經(jīng)網(wǎng)絡(luò)5將該命令傳送到客戶設(shè)備3的客戶應(yīng)用12。
SAM 2是防篡改設(shè)備,并管理加密處理和用在加密處理中的密鑰。SAM 2對從服務(wù)器應(yīng)用11提供的命令進(jìn)行加密,并將加密的命令輸出到服務(wù)器應(yīng)用11。SAM 2和非接觸IC芯片13中的每一個都具有公共密鑰,并通過使用該密鑰傳送和接收加密的信息來在SAM 2和非接觸IC芯片13之間實現(xiàn)加密通信。
客戶設(shè)備3的客戶應(yīng)用12將預(yù)定請求傳送到服務(wù)器設(shè)備1的服務(wù)器應(yīng)用11。同樣,在從服務(wù)器應(yīng)用11傳送命令時,客戶應(yīng)用12經(jīng)R/W 4將命令傳送到非接觸IC芯片13,以便由非接觸IC芯片13執(zhí)行該命令。
非接觸IC芯片13將對從SAM 2經(jīng)R/W 4等傳送的命令執(zhí)行的加密進(jìn)行解密,并執(zhí)行該命令。當(dāng)命令的內(nèi)容是重寫電子貨幣時,該命令包含例如要重寫的錢數(shù)的信息。
例如,在具有這種配置的電子貨幣系統(tǒng)中,當(dāng)便攜式電話6的用戶通過使用存儲在非接觸IC芯片13中的電子貨幣來支付購買商品的價錢時,客戶設(shè)備3的客戶應(yīng)用12將支付商品價錢的請求傳送到服務(wù)器設(shè)備1的服務(wù)器應(yīng)用11。接收請求的服務(wù)器應(yīng)用11產(chǎn)生一個命令(讀命令),以請求非接觸IC芯片13讀取電子貨幣的余額。
服務(wù)器應(yīng)用11產(chǎn)生的讀命令受到SAM 2的加密,并且其后經(jīng)服務(wù)器設(shè)備1的服務(wù)器應(yīng)用11、網(wǎng)絡(luò)5、客戶設(shè)備3的客戶應(yīng)用12以及R/W 4將該讀命令傳送到非接觸IC芯片13。在該讀命令被非接觸IC芯片13解密之后,執(zhí)行該命令。作為正在執(zhí)行讀命令的結(jié)果所讀取的余額,受到非接觸IC芯片13的加密。其后,經(jīng)R/W 4、客戶設(shè)備3的客戶應(yīng)用12、網(wǎng)絡(luò)5以及服務(wù)器設(shè)備1的服務(wù)器應(yīng)用11,將作為對服務(wù)器應(yīng)用11的響應(yīng)的余額傳送到SAM 2。在SAM 2中,將對從非接觸IC芯片13傳送的余額執(zhí)行的加密進(jìn)行解密,并且解密的余額被傳送到服務(wù)器應(yīng)用11。
結(jié)果,服務(wù)器應(yīng)用11能夠確認(rèn)電子貨幣的當(dāng)前余額,該余額存儲在非接觸IC芯片13中。
當(dāng)確認(rèn)了余額時,服務(wù)器設(shè)備1的服務(wù)器應(yīng)用11產(chǎn)生一個命令(寫命令),用以請求非接觸IC芯片13重寫電子貨幣余額(重寫減去了商品價錢數(shù)的余額)。
與先前傳送的讀命令類似,服務(wù)器應(yīng)用11產(chǎn)生的寫命令受到SAM2的加密。其后,經(jīng)服務(wù)器設(shè)備1的服務(wù)器應(yīng)用11、網(wǎng)絡(luò)5、客戶設(shè)備3的客戶應(yīng)用12以及R/W 4,該寫命令被傳送到非接觸IC芯片13。在非接觸IC芯片13中解密該寫命令,然后執(zhí)行該寫命令。該寫命令還包含指示余額應(yīng)為多少的信息。結(jié)果,存儲在非接觸IC芯片13中的電子貨幣余額減去商品的價錢數(shù)。
例如,執(zhí)行處理從非接觸IC芯片13傳送到服務(wù)器應(yīng)用11的諸如報告完成了減去余額的消息,并完成一系列處理。這一系列處理使得可以實現(xiàn)商品價錢的支付。
除上述商品價錢的支付以外,具有這種配置的服務(wù)器/客戶系統(tǒng)使得可以實現(xiàn)例如商店發(fā)行的積分的管理,以及客戶設(shè)備3被設(shè)置為火車站剪票口時的車費支付。對于積分管理和車費支付,基本上由圖1的各設(shè)備執(zhí)行與上述價錢支付情況類似的處理。
在日本未經(jīng)審查的專利申請公布號為2003-141063中,公開了具有圖1中所示配置的服務(wù)器/客戶系統(tǒng)。
發(fā)明內(nèi)容
在相關(guān)技術(shù)的圖1中所示的服務(wù)器/客戶系統(tǒng)中,需要為要在服務(wù)器設(shè)備1中控制的各類型非接觸IC芯片提供不同的服務(wù)器應(yīng)用。
例如,在客戶設(shè)備3是放在商店中的終端并且要控制的非接觸IC芯片包含在便攜式電話中(拿著該電話走到商店的終端R/W)的情況與客戶設(shè)備3是個人計算機并且要控制的非接觸IC芯片嵌入在卡中(該卡放在個人計算機的R/W中)的情況之間,非接觸IC芯片所放的位置以及類型有所不同。因此,當(dāng)要提供相同的服務(wù)時,需在服務(wù)器設(shè)備1中提供各種不同的服務(wù)器應(yīng)用。
因此,當(dāng)從服務(wù)提供方考慮時,需要為要控制的每種非接觸IC芯片類型提供服務(wù)器應(yīng)用,而這成為很大的負(fù)擔(dān)。
本發(fā)明是正是鑒于這種情況而生的。本發(fā)明希望能夠響應(yīng)于來自一個服務(wù)器的請求而產(chǎn)生對應(yīng)于多個不同類型IC芯片的命令。
根據(jù)本發(fā)明的實施例,提供了一種信息管理儀器,所述信息管理儀器響應(yīng)來自服務(wù)器的向要控制的集成電路芯片傳送命令的請求來產(chǎn)生命令,該信息管理儀器包括用于管理與將由集成電路芯片執(zhí)行的命令類型有關(guān)的集成電路芯片類型的裝置;用于獲取有關(guān)要控制的集成電路芯片類型的信息的裝置;以及用于產(chǎn)生對應(yīng)于要控制的集成電路芯片類型的類型命令的裝置,集成電路芯片的類型是由獲取裝置從對應(yīng)于從服務(wù)器請求的命令的多個不同命令類型中獲取的,并且該裝置用于將產(chǎn)生的命令傳送到服務(wù)器。
可在要控制的集成電路芯片和通信路徑中的服務(wù)器之間提供獲取裝置,并且該獲取裝置可配置為基于從客戶傳送的使集成電路芯片可被控制以執(zhí)行預(yù)定命令的信息,來獲取關(guān)于要控制的集成電路芯片類型的信息。
所述信息管理儀器可管理集成電路芯片的類型,這與認(rèn)證集成電路芯片的方法和/或?qū)σ獋魉偷郊呻娐沸酒臄?shù)據(jù)進(jìn)行加密的方法有關(guān)。
該數(shù)據(jù)可以是將由集成電路芯片執(zhí)行的命令。
根據(jù)本發(fā)明的另一實施例,提供了一種信息管理方法,該方法用于響應(yīng)來自服務(wù)器的向要控制的集成電路芯片傳送命令的請求來產(chǎn)生命令,所述信息管理方法包括如下步驟管理與將由集成電路芯片執(zhí)行的命令類型有關(guān)的集成電路芯片類型;獲取關(guān)于要控制的集成電路芯片類型的信息;以及產(chǎn)生對應(yīng)于要控制的集成電路芯片類型的類型命令,集成電路芯片類型是在獲取步驟中從對應(yīng)于從服務(wù)器請求的命令的多個不同命令類型中獲取的,并將產(chǎn)生的命令傳送到服務(wù)器。
根據(jù)本發(fā)明的另一實施例,提供了一種使計算機能夠進(jìn)行如下處理的程序管理與將由集成電路芯片執(zhí)行的命令類型有關(guān)的集成電路芯片類型,并響應(yīng)來自服務(wù)器的向要控制的集成電路芯片傳送命令的請求來產(chǎn)生命令,所述程序包括如下步驟獲取關(guān)于要控制的集成電路芯片類型的信息;以及產(chǎn)生對應(yīng)于要控制的集成電路芯片類型的類型命令,該集成電路芯片類型是在獲取步驟中從對應(yīng)于從服務(wù)器請求的命令的多個不同命令類型中獲取的,并將產(chǎn)生的命令傳送到服務(wù)器。
在信息管理儀器、信息管理方法以及根據(jù)本發(fā)明實施例的程序中,獲取要控制的IC芯片的類型,從對應(yīng)于從服務(wù)器請求的命令的多個不同命令類型中產(chǎn)生對應(yīng)于要控制的IC芯片類型的類型命令,并將產(chǎn)生的命令傳送到服務(wù)器。
根據(jù)本發(fā)明的實施例,有可能產(chǎn)生對應(yīng)于多個不同類型IC芯片的命令。
圖1是示出相關(guān)技術(shù)的電子貨幣系統(tǒng)的配置示例的框圖;圖2是示出本發(fā)明實施例所應(yīng)用到的服務(wù)器/客戶系統(tǒng)的配置示例的框圖;圖3是示出圖2客戶端設(shè)備和服務(wù)器端設(shè)備配置示例的框圖;圖4是客戶端設(shè)備和服務(wù)器端設(shè)備硬件配置具體示例的框圖;圖5是示出客戶端設(shè)備和服務(wù)器端設(shè)備硬件配置的另一具體示例的框圖;圖6是示出圖4PC的硬件配置示例的框圖;圖7是示出圖4計算機的硬件配置示例的框圖;
圖8是示出圖3安全芯片的硬件配置示例的框圖;圖9示出了安全芯片的目錄結(jié)構(gòu)的示例;圖10是示出圖3安全服務(wù)器詳細(xì)配置的示例的框圖;圖11示出了由安全芯片管理器模塊管理的對應(yīng)表格的示例;圖12示出了命令和加密處理虛擬化的具體示例;以及圖13是說明客戶端設(shè)備和服務(wù)器端設(shè)備操作的流程圖。
具體實施例方式
現(xiàn)在將在下文中描述本發(fā)明的實施例。下面將作為例子描述在本說明書中描述的本發(fā)明各方面與本發(fā)明實施例之間的對應(yīng)關(guān)系。該描述將確認(rèn)在本說明書中描述了支持本發(fā)明的實施例。因此,即使存在沒在此描述為對應(yīng)于本發(fā)明的實施例(雖然在本發(fā)明實施例中描述了),但該事實并不意味著這些實施例不對應(yīng)于本發(fā)明。相反,即使這些實施例在此描述為對應(yīng)于本發(fā)明某些方面的實施例,但該事實并不意味著這些實施例不對應(yīng)于本發(fā)明的其它方面。
此外,該描述并不意味著本說明書中描述的本發(fā)明的所有方面。換言之,該描述是關(guān)于在本說明書中描述的本發(fā)明,并且并不否認(rèn)在本申請中沒有聲明的本發(fā)明另一方面的存在,也就是說,分案申請將提交的或?qū)硇薷膶⑻砑拥谋景l(fā)明另一方面的存在。
根據(jù)本發(fā)明實施例的信息管理儀器是這樣的信息管理儀器(例如圖4的計算機63)管理集成電路芯片的類型以及將由集成電路芯片以彼此對應(yīng)的方式執(zhí)行的命令的類型,并響應(yīng)來自服務(wù)器(例如圖4的服務(wù)器應(yīng)用51)的向要控制的集成電路芯片(例如圖4的安全芯片41)傳送命令的請求來產(chǎn)生命令。該信息管理儀器包括獲取裝置(例如用于執(zhí)行圖13的步驟S111過程的安全芯片管理器模塊132),用于獲取要控制的集成電路芯片的類型;以及命令產(chǎn)生裝置(例如用于執(zhí)行圖13的步驟S76過程的安全芯片命令模塊131),用于產(chǎn)生對應(yīng)于要控制的集成電路芯片類型的類型命令,該類型是獲取裝置從對應(yīng)于從服務(wù)器請求的命令的多個不同命令類型中獲取的,并用于將產(chǎn)生的命令傳送到服務(wù)器。
根據(jù)本發(fā)明實施例的信息管理儀器的獲取裝置設(shè)置在要控制的IC芯片與通信路徑中的服務(wù)器之間,并基于從客戶傳送的允許控制IC芯片以執(zhí)行預(yù)定命令的信息(例如在圖13的步驟S23中傳送的初始信息)來獲取要控制的IC芯片的類型。
根據(jù)本發(fā)明實施例的信息管理方法是這樣的信息管理方法以彼此對應(yīng)的方式管理IC芯片的類型和將由IC芯片執(zhí)行的命令類型,并響應(yīng)于來自服務(wù)器(例如圖10的服務(wù)器應(yīng)用51)的向要控制的IC芯片(例如圖4的安全芯片41)傳送命令的請求來產(chǎn)生命令。該信息管理方法包括如下步驟獲取(例如圖13的步驟S111)要控制的IC芯片的類型;并產(chǎn)生(例如圖13的步驟S76)對應(yīng)于要控制的IC芯片類型的類型命令,IC芯片類型是在上述獲取步驟中從對應(yīng)于從服務(wù)器請求的命令的多個不同命令類型中獲取的,并將產(chǎn)生的命令傳送到服務(wù)器。
同樣,在根據(jù)本發(fā)明實施例的程序中,各步驟對應(yīng)的實施例(一個例子)與在本發(fā)明實施例中描述的信息管理方法的實施例相同。
現(xiàn)在將在下文中參考附圖描述本發(fā)明的優(yōu)選實施例。
圖2示出了本發(fā)明實施例所應(yīng)用到的服務(wù)器/客戶系統(tǒng)(該系統(tǒng)指定多臺設(shè)備的邏輯集合。這些設(shè)備放在同一外殼中并不重要)的配置示例。
圖2的服務(wù)器/客戶系統(tǒng)以如下方式構(gòu)造各客戶端設(shè)備31(所謂的客戶)和服務(wù)器端設(shè)備32(所謂的服務(wù)器)例如經(jīng)網(wǎng)絡(luò)33(諸如因特網(wǎng))彼此連接,并根據(jù)需要例如還經(jīng)網(wǎng)絡(luò)34(諸如移動通信網(wǎng))彼此連接。
客戶端設(shè)備31含有安全芯片。該安全芯片是具有防篡改功能的安全I(xiàn)C芯片,并設(shè)計為能夠以接觸或非接觸方式與其它設(shè)備交換數(shù)據(jù)。
客戶端設(shè)備31的例子包括諸如便攜式電話和PDA(個人數(shù)字助理)、PC、POS(銷售點)記錄器(用于POS系統(tǒng)的記錄器)、自動售貨機以及手持式終端的便攜式終端。包含在客戶端設(shè)備31中的安全芯片的例子包括在用作電子往返通行證的Suica(注冊商標(biāo))中采用的FeliCa(注冊商標(biāo))。
服務(wù)器端設(shè)備32經(jīng)由網(wǎng)絡(luò)33、必要時還經(jīng)由網(wǎng)絡(luò)34與客戶端設(shè)備31交換數(shù)據(jù),從而提供各種服務(wù)。更具體地說,例如,當(dāng)電子貨幣存儲在客戶端設(shè)備31的安全芯片中時,服務(wù)器端設(shè)備32控制從客戶端設(shè)備31的電子貨幣中減去商品價錢以及更新客戶端設(shè)備31的電子貨幣的處理,以便在相減之后變成錢數(shù),從而服務(wù)器端設(shè)備32提供電子貨幣服務(wù)。
客戶端設(shè)備31加密并傳送要傳送到服務(wù)器端設(shè)備32的數(shù)據(jù),并且服務(wù)器端設(shè)備32還加密并傳送要傳送到客戶端設(shè)備31的數(shù)據(jù)。
在防篡改安全芯片中執(zhí)行加密處理,諸如客戶端設(shè)備31中的加密以及加密數(shù)據(jù)的解密。存在這樣的情況服務(wù)器端設(shè)備32中的加密處理在HSM(硬件安全模塊)(其是具有防篡改功能的專用硬件)中執(zhí)行,并在不使用這種防篡改HSM的情況下,由用于實現(xiàn)服務(wù)器端設(shè)備32的軟件執(zhí)行。
存在兩種類型加密過程要求特別高保密性的加密過程,以及除此以外的加密過程。當(dāng)服務(wù)器端設(shè)備32包括HSM時,只有要求特別高保密性的加密過程可在HSM中執(zhí)行,而其他加密過程可由用于實現(xiàn)服務(wù)器端設(shè)備32的軟件執(zhí)行。
圖3是示出客戶端設(shè)備31和服務(wù)器端設(shè)備32的功能配置的示例的框圖。
客戶端設(shè)備31包括安全芯片41、客戶應(yīng)用42以及根據(jù)需要的R/W 43。
安全芯片41是防篡改的安全I(xiàn)C芯片,并以接觸或非接觸方式與其他設(shè)備交換數(shù)據(jù)。
更具體地說,安全芯片41直接或經(jīng)由R/W 43與客戶應(yīng)用42通信,并例如根據(jù)通過通信從客戶應(yīng)用42傳送的命令來執(zhí)行處理。處理之后,安全芯片41直接或經(jīng)由R/W 43將作為對上述命令的響應(yīng)的響應(yīng)數(shù)據(jù)傳送到客戶應(yīng)用42。安全芯片41還對要傳送和接收的數(shù)據(jù)進(jìn)行加密處理,以確保安全性。
客戶應(yīng)用42例如是由是硬件的計算機執(zhí)行的軟件,并用作服務(wù)器端設(shè)備32的服務(wù)器應(yīng)用51的客戶(將隨后描述)。由于客戶應(yīng)用42用作服務(wù)器應(yīng)用51的客戶,并且例如將命令傳送到安全芯片41,因此在安全芯片41和通信路徑中的服務(wù)器應(yīng)用51之間存在客戶應(yīng)用42。
客戶應(yīng)用42通過與服務(wù)器應(yīng)用51交換數(shù)據(jù)(包括命令)并還通過直接或經(jīng)由R/W 43例如將命令傳送到安全芯片41來從安全芯片41讀數(shù)據(jù),或向安全芯片41寫數(shù)據(jù),從而實現(xiàn)各種服務(wù)。
更具體地說,例如,當(dāng)客戶應(yīng)用42和服務(wù)器應(yīng)用51是用于提供電子貨幣服務(wù)的軟件、并且電子貨幣服務(wù)的存儲區(qū)域分配在安全芯片41中時,在客戶應(yīng)用42和服務(wù)器應(yīng)用51之間執(zhí)行處理電子貨幣服務(wù)所需的數(shù)據(jù)(包括命令)交換,諸如從存儲在安全芯片41中的電子貨幣中減去商品的價錢,以及更新存儲在安全芯片41中的電子貨幣數(shù)以變成相減后的錢數(shù)。
客戶應(yīng)用42包括用于在必要時控制與服務(wù)器應(yīng)用51通信的模塊。
R/W 43執(zhí)行與安全芯片41的非接觸或接觸通信,傳送從客戶應(yīng)用42向安全芯片41提供的命令等,接收從安全芯片12傳送的數(shù)據(jù)等,并將該數(shù)據(jù)提供給客戶應(yīng)用42。
服務(wù)器應(yīng)用51例如是由計算機(其是硬件)執(zhí)行的軟件,并用作客戶端設(shè)備31的客戶應(yīng)用42的服務(wù)器。服務(wù)器應(yīng)用51通過與客戶應(yīng)用42交換數(shù)據(jù)(包括命令)來實現(xiàn)上述電子貨幣服務(wù)和其它各種服務(wù)。
為了確保安全性,服務(wù)器應(yīng)用51請求安全服務(wù)器52執(zhí)行對要傳送和接收數(shù)據(jù)的加密過程。
服務(wù)器應(yīng)用51包含用于在必要時控制與客戶應(yīng)用42通信的模塊。
安全服務(wù)器52例如是由計算機(其是硬件)執(zhí)行的軟件,并獨自執(zhí)行加密過程,或請求安全芯片處理模塊53響應(yīng)于來自服務(wù)器應(yīng)用51的請求來執(zhí)行加密過程。
更具體地說,安全服務(wù)器52請求從服務(wù)器應(yīng)用51向安全芯片處理模塊53請求的加密過程中要求特別高保密性的加密過程,并執(zhí)行除自身執(zhí)行的加密過程以外的加密過程(在安全服務(wù)器52中)。
安全芯片處理模塊53響應(yīng)于來自安全服務(wù)器52的請求來執(zhí)行加密過程(要求特別高保密性的加密過程)。
這里假設(shè),安全芯片處理模塊53存儲在具有防篡改功能的專用硬件中。然而,安全芯片處理模塊53例如還可用作安全服務(wù)器52的一個模塊(軟件)。存儲安全芯片處理模塊53的硬件例如對應(yīng)于圖1的SAM 2。
圖4是示出客戶端設(shè)備31和服務(wù)器端設(shè)備32的硬件配置具體示例的框圖。
在圖4中,客戶端設(shè)備31包括R/W 43、IC卡61以及PC 62。
IC卡61含有安全芯片41(其是硬件),并例如對應(yīng)于存儲電子貨幣的卡,諸如Edy(注冊商標(biāo))。
PC 62例如是由IC卡61的用戶處理的PC,并且客戶應(yīng)用42安裝在該PC中。通過操作PC 62,用戶能夠查詢存儲在IC卡61(安全芯片41)中的電子貨幣余額,并能夠充電子貨幣。
圖4中,服務(wù)器端設(shè)備32包括安全芯片處理模塊53和計算機63。
計算機63例如是用作硬件的服務(wù)器(機器),服務(wù)器應(yīng)用51和安全服務(wù)器52安裝在其中。
圖5是示出客戶端設(shè)備31和服務(wù)器端設(shè)備32的另一硬件配置具體示例的框圖。圖5中服務(wù)器端設(shè)備32的硬件配置與圖4中的相同。
在圖5中,客戶端設(shè)備31包括便攜式電話64。
便攜式電話64含有安全芯片41(其是硬件)。此外,客戶應(yīng)用42安裝在便攜式電話64中。通過操作便攜式電話64,用戶例如能夠查詢存儲在安全芯片41中的電子貨幣余額,并能夠充電子貨幣。
可用便攜式電話64擁有的通信功能來執(zhí)行對結(jié)合在便攜式電話64中的安全芯片41的訪問,同樣,也可通過拿著便攜式電話64(結(jié)合在便攜式電話64中的安全芯片41)靠近R/W 43(圖5中未示出)來執(zhí)行上述訪問。
圖6是示出圖4的PC 62的硬件配置示例的框圖,PC中安裝了客戶應(yīng)用42。
PC 62包括有CPU(中央處理單元)72。輸入/輸出接口80經(jīng)總線71連接到CPU 72。當(dāng)用戶通過操作包括鍵盤、鼠標(biāo)、麥克風(fēng)等的輸入部分77經(jīng)輸入/輸出接口80輸入指令時,CPU 72根據(jù)該指令執(zhí)行存儲在ROM(只讀存儲器)73中的程序。
此外,CPU 72將如下程序加載到RAM(隨機訪問存儲器)74中存儲在硬盤75中的程序、或從衛(wèi)星或網(wǎng)絡(luò)傳輸?shù)牟⒂赏ㄐ挪糠?8接收的且安裝在硬盤75中的程序、或從加載到驅(qū)動器79中的可移動記錄介質(zhì)81中讀取的且安裝在硬盤75中的程序,并且CPU 72執(zhí)行該程序。
結(jié)果,CPU 72執(zhí)行各種處理。然后,CPU 72經(jīng)輸入/輸出接口80例如從包括LCD(液晶顯示器)、揚聲器等的輸出部分76輸出處理因此,從通信部分78傳送處理結(jié)果,或在必要時將處理結(jié)果記錄在硬盤75中。
輸入/輸出接口80例如設(shè)置有USB(通用串行總線)終端,并且圖4的R/W 43可連接到USB終端。
圖7是示出了圖4計算機63硬件配置示例的框圖,在該計算機中安裝有服務(wù)器應(yīng)用51和安全服務(wù)器52。
在圖7中,與圖6的包括總線71直到可移動記錄介質(zhì)81的部分類似地配置構(gòu)成計算機63的包括總線91直到可移動記錄介質(zhì)101的部分。因此,省略了這些部分的描述。
圖8是示出圖3的安全芯片41的硬件配置示例的框圖。
當(dāng)廣泛分類時,安全芯片41包括通信處理部分111和數(shù)據(jù)處理部分112。通信處理部分111執(zhí)行以接觸或非接觸方式在安全芯片41外部通信所需的處理,從而向數(shù)據(jù)處理部分112提供從外部傳送的數(shù)據(jù)(包括命令),并向外部傳送來自數(shù)據(jù)處理部分112的數(shù)據(jù)。在安全芯片41中執(zhí)行的與外部通信所需的處理,包括數(shù)據(jù)的編碼/解碼和數(shù)據(jù)的調(diào)制/解調(diào)。
數(shù)據(jù)處理部分112例如包括CPU 121、加密處理部分122和存儲器123,并根據(jù)從通信處理部分111提供的命令來執(zhí)行各種處理。
更具體地說,CPU 121執(zhí)行加密處理部分122的控制和存儲器123的管理。此外,根據(jù)從通信處理部分111提供的命令,CPU 121從存儲器123中讀數(shù)據(jù)并向存儲器123寫數(shù)據(jù),而且對存儲在存儲器123中的數(shù)據(jù)進(jìn)行數(shù)據(jù)處理。CPU 121通過執(zhí)行存儲在存儲器123中的程序來執(zhí)行各種處理。
在CPU 121的控制下,除了用于加密/解密數(shù)據(jù)(包括命令)的加密過程以外,加密處理部分122還執(zhí)行認(rèn)證過程,諸如用于挑戰(zhàn)響應(yīng)系統(tǒng)中認(rèn)證的隨機數(shù)的生成,以及用于加密/解密的密鑰(用作加密密鑰的信息)的生成。也就是說,加密處理部分122使用加密數(shù)據(jù)來執(zhí)行各種處理。
存儲器123是非易失性存儲器,并存儲數(shù)據(jù)、程序等。存儲器123實際上可以是一個存儲器,也可以是多個存儲器。當(dāng)存儲器123實際上由多個存儲器構(gòu)成時,對于一些存儲器,可使用易失性存儲器作為存儲器。
在如圖9所示的CPU 121中,存儲器123的存儲區(qū)域以形成層次的方式來管理。
圖9示出了存儲器123的目錄結(jié)構(gòu)。
存儲器123的一部分存儲區(qū)域用作數(shù)據(jù)存儲區(qū)域,用以存儲提供各種服務(wù)的數(shù)據(jù)。該數(shù)據(jù)存儲區(qū)域具有層次結(jié)構(gòu),其中對應(yīng)于所謂目錄的區(qū)域定義區(qū)是一個層次。區(qū)域定義區(qū)被形成為具有區(qū)域定義區(qū)和服務(wù)定義區(qū)。
區(qū)域定義區(qū)是存儲器123的一部分?jǐn)?shù)據(jù)存儲區(qū)域,并被分配給管理器(可以是服務(wù)提供商本身),用以管理提供服務(wù)的服務(wù)提供商。在區(qū)域定義區(qū)中,配置如下項作為可用作標(biāo)識區(qū)域定義區(qū)的名稱的標(biāo)識代碼的區(qū)域代碼、指示可用有效塊數(shù)量的有效容量、用作訪問區(qū)域定義區(qū)(包括區(qū)域定義區(qū)和低于區(qū)域定義區(qū)級別的層次中的服務(wù)定義區(qū))所需密鑰的區(qū)域密鑰等。
在圖9的實施例中,分配給管理器A的區(qū)域定義區(qū)形成最高層次,并通過使用該層作為父層次,創(chuàng)建了管理器B1和B2的區(qū)域定義區(qū)。此外,通過使用管理器B1的區(qū)域定義區(qū)作為父層次,創(chuàng)建了管理器C的區(qū)域定義區(qū)。
服務(wù)定義區(qū)是用于管理服務(wù)區(qū)(將隨后描述)的存儲器123的一部分?jǐn)?shù)據(jù)存儲區(qū)域,并被分配給服務(wù)提供商所提供的服務(wù)。在服務(wù)定義區(qū)中,配置如下項作為可用作標(biāo)識服務(wù)定義區(qū)的名稱的標(biāo)識代碼的服務(wù)代碼、指示存儲提供服務(wù)所需數(shù)據(jù)的服務(wù)區(qū)大小的塊的數(shù)量、作為訪問服務(wù)定義區(qū)(包括由服務(wù)定義區(qū)管理的服務(wù)區(qū))所需密鑰的服務(wù)密鑰等。
服務(wù)區(qū)是數(shù)據(jù)存儲區(qū)域的一部分,并由0塊或更多塊組成,在這些塊中存儲了提供服務(wù)所需的數(shù)據(jù)。形成服務(wù)區(qū)的塊的數(shù)量配置為管理服務(wù)區(qū)的服務(wù)定義區(qū)的容量。
這里,CPU 121管理具有固定存儲容量的塊單元中存儲器123的數(shù)據(jù)存儲區(qū)域,并且圖9中服務(wù)區(qū)的有效容量和大小由多個塊管理。
服務(wù)提供商在比管理器管理的區(qū)域定義區(qū)低的級別的層次中創(chuàng)建服務(wù)定義區(qū),并通過使用在該服務(wù)定義區(qū)中管理的服務(wù)區(qū)來提供各種服務(wù)。例如,當(dāng)提供電子貨幣服務(wù)時,電子貨幣的貨幣數(shù)(余額)、電子貨幣所購買的商品的信息(例如商品名稱、價錢等)等存儲在服務(wù)區(qū)中。
圖10是示出圖3的安全服務(wù)器52的詳細(xì)配置示例的框圖。
安全服務(wù)器52包括安全芯片命令模塊131和安全芯片管理器模塊132。
例如響應(yīng)于來自服務(wù)器應(yīng)用51產(chǎn)生命令的請求,安全芯片命令模塊131產(chǎn)生用于要控制的安全芯片41的命令,并將該命令提供給服務(wù)器應(yīng)用51。也就是說,當(dāng)服務(wù)器應(yīng)用51指令客戶端設(shè)備31的安全芯片上的一些處理時,服務(wù)器應(yīng)用51請求安全芯片命令模塊131根據(jù)該處理產(chǎn)生命令。
如將在后面描述的,安全芯片命令模塊131獲取當(dāng)前要控制的安全芯片41的芯片類型,響應(yīng)于來自服務(wù)器應(yīng)用51的請求而產(chǎn)生對應(yīng)于安全芯片41的芯片類型的命令,并將該命令用作安全芯片41的命令。安全芯片命令模塊131產(chǎn)生的安全芯片41的命令被提供給服務(wù)器應(yīng)用51。
因此,由于服務(wù)器應(yīng)用51沒必要知道(可以知道)要控制的安全芯片41的命令,因此即使存在各種命令系統(tǒng)的安全芯片(在作為命令的操作碼方面、參數(shù)方面以及命令類型方面具有差異的安全芯片),但也不需要為這些各種命令系統(tǒng)的每個安全芯片產(chǎn)生服務(wù)器應(yīng)用51。
更具體地說,服務(wù)器應(yīng)用51只需能夠使用安全芯片命令模塊131可理解的命令系統(tǒng)。這使一個服務(wù)器應(yīng)用51可以處理多個不同類型的安全芯片41。
這里,響應(yīng)于來自服務(wù)器應(yīng)用51的請求,安全芯片命令模塊131產(chǎn)生安全芯片41的命令,并將該命令提供給服務(wù)器應(yīng)用51。在命令被提供給服務(wù)器應(yīng)用51之前,安全芯片命令模塊131將命令提供給安全芯片管理器模塊132,以便請求命令的加密。然后,響應(yīng)于該請求,安全芯片命令模塊131將從安全芯片管理器模塊132提供的加密信息(加密的命令等)提供給服務(wù)器應(yīng)用51。
安全芯片管理器模塊132管理將由安全芯片41執(zhí)行的命令的類型以及加密過程的類型,該加密過程包括加密將由安全芯片41執(zhí)行的命令的方法,以及用安全芯片41以對應(yīng)于要控制的安全芯片41類型的方式執(zhí)行的認(rèn)證方法?;诋?dāng)前要控制的安全芯片的類型(其是從服務(wù)器應(yīng)用51報告的),安全芯片管理器模塊132選擇命令的類型和加密過程的類型(在下文中,這些將根據(jù)需要被分別稱為“命令類型”和“加密處理類型”)。
例如,由安全芯片管理器模塊132選擇的命令類型被報告給安全芯片命令模塊131。在安全芯片命令模塊131中,產(chǎn)生從安全芯片管理器模塊132報告的命令類型的命令。從而,以上面描述的方式,產(chǎn)生當(dāng)前要控制的安全芯片的命令。
圖11示出了安全芯片管理器模塊132管理的對應(yīng)表格的示例。
在圖11的對應(yīng)表格中,命令類型和加密處理類型對應(yīng)于“FeliCa1”、“FeliCa2”、“GP1”和“GP2”中每一個的安全芯片的類型(芯片類型)。
例如,命令類型“類型11”和加密處理類型“類型12”對應(yīng)于“FeliCa1”,而命令類型“類型12”和加密處理類型“類型12”對應(yīng)于“FeliCa2”。類似地,命令類型“類型21”和加密處理類型“類型21”對應(yīng)于“GP1”,而命令類型“類型22”和加密處理類型“類型21”對應(yīng)于“GP2”。
例如,在從服務(wù)器應(yīng)用51報告當(dāng)前要控制的安全芯片41的類型是“FeliCa1”這一事實時,安全芯片管理器模塊132從圖11的對應(yīng)表格中選擇命令類型“類型11”,并將命令類型是“類型11”這一事實報告給安全芯片命令模塊131。在安全芯片命令模塊131中,作為與當(dāng)前要控制的安全芯片41的類型“FeliCa1”相關(guān)的命令組合的結(jié)果,產(chǎn)生類型為“類型11”的命令,并將該命令設(shè)置為安全芯片41的命令。
更具體地說,假設(shè)例如定義了三種命令,即,發(fā)(issue)命令、讀命令和寫命令。在從服務(wù)器應(yīng)用51請求其中的發(fā)命令時,在安全芯片命令模塊131中,作為與當(dāng)前要控制的安全芯片41的類型(其是從安全芯片管理器模塊132報告的)有關(guān)的命令組合的結(jié)果,產(chǎn)生“記錄器命令”和“提交(commit)命令”。也就是說,在此情況下,與安全芯片41的類型“FeliCa1”有關(guān)的命令“記錄器命令”和“提交命令”都對應(yīng)于發(fā)命令,并根據(jù)安全芯片的類型選擇對應(yīng)于唯一特定安全芯片的命令組。
此外,安全芯片管理器模塊132根據(jù)從圖11的對應(yīng)表格中選擇的加密處理類型“類型12”(當(dāng)前要控制的類型為“FeliCa1”的安全芯片41的加密處理類型)來獨自執(zhí)行命令加密過程,并通過安全芯片處理模塊53控制該加密過程,以便執(zhí)行對應(yīng)于加密處理類型“類型12”的加密過程。
存在如下加密過程。例如,與要控制的安全芯片41一起使用的加密過程被確定為根據(jù)安全芯片41的類型適當(dāng)組合的下一加密過程的結(jié)果。
1.認(rèn)證方法(1)在服務(wù)器端設(shè)備32和安全芯片41之間是應(yīng)該執(zhí)行相互認(rèn)證,還是應(yīng)該執(zhí)行一端上的認(rèn)證。
(2)是否應(yīng)該在相互認(rèn)證的同時共享用于加密通信路徑(將隨后描述)的會話密鑰,或執(zhí)行一端上的認(rèn)證。
2.加密命令的方法(加密通信路徑的方法)(1)是應(yīng)該加密整個命令,還是應(yīng)該加密部分命令。
(2)是否應(yīng)該使用執(zhí)行加密的加密密鑰,對于每個會話(會話密鑰)該加密密鑰有所不同。
3.指示用于執(zhí)行特殊命令(將隨后描述)的執(zhí)行權(quán)利的權(quán)利文檔數(shù)據(jù)的加密過程方法
(1)是否應(yīng)該用預(yù)定密鑰對指示執(zhí)行權(quán)利的權(quán)利文檔進(jìn)行加密。
(2)是否應(yīng)該將簽名附加到指示執(zhí)行權(quán)利的權(quán)利文檔。
(3)是否應(yīng)該通過在指示執(zhí)行權(quán)利的權(quán)利文檔上應(yīng)用預(yù)定的散列函數(shù)來獲取散列值。
更具體地說,根據(jù)當(dāng)前要控制的安全芯片41的類型選擇以下項作為服務(wù)器端設(shè)備32和安全芯片41之間認(rèn)證的方法,執(zhí)行相互認(rèn)證(1.的選擇);在相互認(rèn)證的同時共享用于加密通信路徑的會話密鑰;作為產(chǎn)生命令的方法來加密全部命令(2.的選擇);使用用于執(zhí)行加密的加密密鑰,對于每個會話該加密密鑰有所不同;并且作為加密指示執(zhí)行權(quán)利的權(quán)利文檔的方法(3.的選擇),不對指示執(zhí)行權(quán)利的權(quán)利文檔進(jìn)行加密,不應(yīng)用散列函數(shù),但附加簽名。
此外,由安全芯片類型指定專門用在認(rèn)證中的加密/簽名算法(DES、T-DES、RSA、EC-DSA等)、通信路徑加密、執(zhí)行權(quán)利加密過程、認(rèn)證中的挑戰(zhàn)/響應(yīng)方法、應(yīng)該執(zhí)行特定加密/簽名的格式、填充規(guī)則等。
因此,在不涉及要控制的安全芯片41類型的情況下,服務(wù)器應(yīng)用51能夠僅通過請求上面描述的發(fā)命令、讀命令和寫命令來獲取執(zhí)行對應(yīng)于安全芯片類型的加密過程的命令,諸如對應(yīng)于芯片類型的安全芯片41的命令以及受到加密的整個命令。當(dāng)從服務(wù)器應(yīng)用51查看時,可以說執(zhí)行了命令和加密處理的所謂虛擬化。
圖12示出了命令和加密處理虛擬化的具體示例。
例如,如圖12所示,在從服務(wù)器應(yīng)用51請求產(chǎn)生包含參數(shù)1和2的參數(shù)數(shù)據(jù)的發(fā)命令時,對參數(shù)2執(zhí)行由“類型12”標(biāo)識的加密過程(該加密過程由圖12的“實際加密處理方法”指示)。在圖12中,加密過程類型首先被分為“類型1”和“類型2”,而“類型1”被進(jìn)一步分為“類型11”和“類型12”,“類型2”被進(jìn)一步分為“類型21”和“類型22”。
作為服務(wù)器應(yīng)用51請求產(chǎn)生包括參數(shù)1和2的發(fā)命令的結(jié)果,作為對應(yīng)于安全芯片41類型的類型加密過程,對參數(shù)2進(jìn)行加密,而不考慮要控制的安全芯片41的類型。因此,實現(xiàn)了加密過程的虛擬化。
類似地,例如如圖12所示,當(dāng)從服務(wù)器應(yīng)用51請求產(chǎn)生包括參數(shù)1和2的參數(shù)數(shù)據(jù)的寫命令時,由“類型12”標(biāo)識的命令(圖中的實際命令)被選擇作為除參數(shù)數(shù)據(jù)部分外的命令部分。在圖12中,命令類型首先被分為“類型1”和“類型2”,而“類型1”被進(jìn)一步分為“類型11”和“類型12”,“類型2”被進(jìn)一步分為“類型21”和“類型22”。
作為服務(wù)器應(yīng)用51請求包括參數(shù)1和2的寫命令的結(jié)果,作為對應(yīng)于安全芯片41類型的類型命令,選擇“類型12”的命令,而不考慮要控制的安全芯片41的類型。因此,實現(xiàn)了命令的虛擬化。
往回參考圖10,安全芯片管理器模塊132自身(安全芯片管理器模塊132)或通過安全芯片處理模塊53將加密過程獲取的加密信息提供給安全芯片命令模塊131。
接下來,參考圖13的流程圖給出客戶端設(shè)備31和服務(wù)器端設(shè)備32操作的描述。
當(dāng)客戶應(yīng)用42被啟動時,最初在步驟S21,客戶應(yīng)用42向安全芯片41傳送請求有關(guān)安全芯片的安全芯片信息的命令。
在步驟S11中,安全芯片41接收來自客戶應(yīng)用42的命令。過程然后繼續(xù)步驟S12,在該步驟中將安全芯片信息作為對上述命令的響應(yīng)傳送到客戶應(yīng)用42。
在步驟S22,客戶應(yīng)用42接收來自安全芯片41的安全芯片信息。過程然后繼續(xù)步驟S23,在該步驟中請求連接的服務(wù)器連接請求以及包含安全芯片信息的初始信息被傳送到服務(wù)器端設(shè)備32。
除安全芯片信息外,初始信息還包含關(guān)于客戶應(yīng)用42的客戶信息以及關(guān)于服務(wù)器應(yīng)用規(guī)范的信息,該規(guī)范規(guī)定了客戶應(yīng)用42將要連接到的服務(wù)器端設(shè)備32的服務(wù)器應(yīng)用51。
安全芯片信息的例子包括安全芯片類型,它是指示安全芯片41種類的信息;安全芯片OS類型,它是指示在安全芯片41中采用的OS(操作系統(tǒng))的信息;以及安全芯片文件結(jié)構(gòu)(文件格式、區(qū)域代碼列表、服務(wù)代碼列表等),它是關(guān)于安全芯片41中數(shù)據(jù)管理的信息。結(jié)果,在服務(wù)器端設(shè)備32中,指定了當(dāng)前要控制的安全芯片41的類型。
客戶信息的例子包括客戶類型,它是關(guān)于客戶端設(shè)備31硬件的信息(例如,諸如客戶端設(shè)備31是便攜式電話、PC或POS記錄器的信息);客戶OS類型,它是指示在客戶端設(shè)備31中采用的OS的信息;客戶應(yīng)用ID(標(biāo)識),它是用于指定客戶應(yīng)用42的信息;以及應(yīng)用版本,它是指示客戶應(yīng)用42版本的信息。
這里,響應(yīng)于來自服務(wù)器應(yīng)用51的對安全芯片信息和其它初始信息的請求(這是在執(zhí)行了到服務(wù)器應(yīng)用51的連接之后進(jìn)行的),客戶應(yīng)用42還可從安全芯片41獲取安全芯片信息,并可將包含在初始信息中的所獲取的安全芯片信息傳送到服務(wù)器應(yīng)用51。
然而,如圖13中所示,客戶應(yīng)用42從安全芯片41獲取安全芯片信息并然后將包含安全芯片信息的初始信息以及服務(wù)器連接請求一起傳送到服務(wù)器應(yīng)用51的情況,要求客戶應(yīng)用42和服務(wù)器應(yīng)用51之間的交換量較少。
此外,在此情況下,服務(wù)器端設(shè)備32可在訪問啟動的同時接收來自客戶端設(shè)備31的客戶信息。由此,基于該客戶信息,服務(wù)器端設(shè)備32可傳送和接收適合于客戶應(yīng)用42的命令和消息(屏幕的GUI(圖形用戶界面)等)。這里,適合于客戶應(yīng)用42的命令和消息例如指的是內(nèi)容適合于客戶應(yīng)用42的命令和信息,或一次傳送和接收的命令和消息的長度和數(shù)量適合于客戶應(yīng)用42的命令和消息。
在步驟S41中,服務(wù)器應(yīng)用51接收來自客戶應(yīng)用42的服務(wù)器連接請求和初始信息,并啟動向客戶端設(shè)備31提供必要服務(wù)的應(yīng)用(軟件)。過程然后進(jìn)入步驟S42。
在步驟S42中,服務(wù)器應(yīng)用51將包含在步驟S41中接收的初始信息中的安全芯片信息和客戶信息提供給安全服務(wù)器52的安全芯片管理器模塊132。
在步驟S111中,安全芯片管理器模塊132接收來自服務(wù)器應(yīng)用51的安全芯片信息和客戶信息,并將安全芯片信息提供給安全芯片處理模塊53。
在步驟S151中,安全芯片處理模塊53基于來自安全芯片管理器模塊132的安全芯片信息設(shè)置來自安全芯片41的訪問的處理范圍。
更具體地說,安全芯片處理模塊53被設(shè)計為能夠執(zhí)行各種安全芯片和服務(wù)加密過程,并含有各種安全芯片和服務(wù)加密過程所需的密鑰(還包含有對應(yīng)于在安全芯片41的存儲器123中形成的各區(qū)中設(shè)置的密鑰的密鑰)。
如果安全芯片41例如僅可接收電子貨幣服務(wù),則安全芯片處理模塊53僅執(zhí)行(允許)提供與來自安全芯片41的訪問有關(guān)的電子貨幣服務(wù)所需的過程。當(dāng)預(yù)先確定用于加密/解密電子貨幣服務(wù)中數(shù)據(jù)的密鑰時,安全芯片處理模塊53僅允許使用用于加密/解密電子貨幣服務(wù)中數(shù)據(jù)的密鑰,并不允許使用用于加密/解密與來自安全芯片41的訪問有關(guān)的其他服務(wù)中數(shù)據(jù)的密鑰。
另一方面,基于在步驟S111中從服務(wù)器應(yīng)用51接收的安全芯片信息和客戶信息,安全芯片管理器模塊132被置于執(zhí)行對應(yīng)于當(dāng)前要控制的安全芯片41和客戶應(yīng)用42的處理的狀態(tài)中。
更具體地說,基于從服務(wù)器應(yīng)用51提供的安全芯片信息,安全芯片管理器模塊132確定當(dāng)前要控制的安全芯片41的類型,并選擇對應(yīng)于從圖11中所示對應(yīng)表格中確定的類型的命令類型和加密處理類型。結(jié)果,在隨后處理中產(chǎn)生和傳送的命令被設(shè)置為在此選擇的類型的命令,并且在隨后處理中所需的認(rèn)證過程和命令加密過程被設(shè)置為對應(yīng)于在此選擇的加密處理類型的過程。
然后,在步驟S112,安全芯片管理器模塊132將初始化指令提供給安全芯片命令模塊131。
在步驟S71中,安全芯片命令模塊131接收該指令,并初始化其自身的狀態(tài),以使其可以執(zhí)行對應(yīng)于安全芯片41的過程。例如,從安全芯片管理器模塊132提供的初始化指令還包含指示安全芯片管理器模塊132所選擇的命令類型的信息。因此,從此處,在從服務(wù)器應(yīng)用51提供命令產(chǎn)生請求時,安全芯片命令模塊131可產(chǎn)生對應(yīng)于當(dāng)前要控制的安全芯片41類型的類型命令。
其后,例如在服務(wù)器應(yīng)用51和安全芯片處理模塊53之間進(jìn)行相互認(rèn)證。接下來,當(dāng)認(rèn)證成功時,在安全芯片41和安全芯片處理模塊53之間進(jìn)行認(rèn)證。在此所進(jìn)行的認(rèn)證被設(shè)置為對安全芯片管理器模塊132選擇的加密處理類型的認(rèn)證。
例如由挑戰(zhàn)響應(yīng)系統(tǒng)執(zhí)行安全芯片41和安全芯片處理模塊53之間的認(rèn)證。在挑戰(zhàn)響應(yīng)系統(tǒng)中,安全芯片處理模塊53(同樣應(yīng)用于安全芯片41)產(chǎn)生隨機數(shù),加密該隨機數(shù),并通過與安全芯片41交換隨機數(shù)來執(zhí)行認(rèn)證。當(dāng)該認(rèn)證成功時,例如認(rèn)證期間,安全芯片處理模塊53產(chǎn)生的隨機數(shù)被設(shè)置為用于標(biāo)識安全芯片41和安全芯片處理模塊53之間會話的會話密鑰。
其后,例如當(dāng)確定在服務(wù)器端設(shè)備32中根據(jù)選擇的加密處理類型共享加密通信路徑的會話密鑰時,使用此處認(rèn)證過程產(chǎn)生的會話密鑰作為密鑰來加密將要傳送到安全芯片41的命令(包括參數(shù)和附加在該命令上的其它數(shù)據(jù)),并且該命令被傳送到客戶端設(shè)備31。此外,在客戶端設(shè)備31中,在安全芯片41中通過使用會話密鑰作為密鑰來加密將從安全芯片41傳送到服務(wù)器端設(shè)備32的數(shù)據(jù),并且該數(shù)據(jù)被傳送到服務(wù)器端設(shè)備32。
如上所述,在客戶端設(shè)備31和服務(wù)器端設(shè)備32的每一個中,通過使用會話密鑰作為密鑰來加密數(shù)據(jù)。結(jié)果,客戶端設(shè)備31和服務(wù)器端設(shè)備32之間的通信路徑被加密,也就是說,實現(xiàn)為所謂的VPN(虛擬專用網(wǎng))。
在步驟S43中,服務(wù)器應(yīng)用51向安全芯片命令模塊131提供要傳送到安全芯片41的命令產(chǎn)生請求。在步驟S72中,安全芯片命令模塊131接收來自服務(wù)器應(yīng)用51的命令產(chǎn)生請求。
然后,在步驟S73中,響應(yīng)于來自服務(wù)器應(yīng)用51的命令產(chǎn)生請求,安全芯片命令模塊131產(chǎn)生安全芯片41的命令(對應(yīng)于安全芯片41類型的命令),并向安全芯片管理器模塊132提供用于產(chǎn)生命令以及加密該命令并將其設(shè)置為加密信息的請求。
在步驟S113中,安全芯片管理器模塊132接收來自安全芯片命令模塊131的對命令進(jìn)行加密并將其設(shè)置為加密信息的請求。過程然后進(jìn)入步驟S114,在此上述請求被提供給安全芯片處理模塊53。
更具體地說,在此情況下,由于在安全芯片處理模塊53中存在用于加密通信路徑的會話密鑰,因此安全芯片管理器模塊132請求安全芯片處理模塊53使用該會話密鑰對命令進(jìn)行加密。
在步驟S152中,安全芯片處理模塊53接收來自安全芯片管理器模塊132的請求,并響應(yīng)于該請求對命令加密。由于來自安全芯片管理器模塊132的請求例如包含指示加密處理類型的信息,因此在安全芯片處理模塊53中,根據(jù)需要執(zhí)行對應(yīng)于該類型的加密過程。
在步驟S153中,安全芯片處理模塊53將通過命令加密獲取的加密信息提供給安全芯片管理器模塊132。
在步驟S115中,安全芯片管理器模塊132接收來自安全芯片處理模塊53的加密信息。過程然后進(jìn)入步驟S116,在該步驟中從安全芯片處理模塊53接收的加密信息被提供給安全芯片命令模塊131。
在步驟S74中,安全芯片命令模塊131接收來自安全芯片管理器模塊132的加密信息。過程然后進(jìn)入步驟S75,在該步驟中加密信息(加密的命令)被提供給服務(wù)器應(yīng)用51。
在步驟S44中,服務(wù)器應(yīng)用51接收來自安全芯片命令模塊131的加密信息。過程然后進(jìn)入步驟S45,在該步驟中加密信息(加密的命令)以及設(shè)備數(shù)據(jù)(其是作為客戶端設(shè)備31的硬件的消息)被提供給客戶應(yīng)用42。
在步驟S24中,客戶應(yīng)用42接收來自服務(wù)器應(yīng)用51的加密信息和設(shè)備數(shù)據(jù)。過程然后進(jìn)入步驟S25,在該步驟中加密信息被傳送到安全芯片41。
在步驟S13中,安全芯片41接收來自客戶應(yīng)用42的加密信息,并通過使用會話密鑰將該加密信息解密為命令。此外,安全芯片41執(zhí)行對應(yīng)于該命令的處理,并在步驟S14中將作為對應(yīng)于該命令的響應(yīng)的響應(yīng)數(shù)據(jù)傳送到客戶應(yīng)用42。根據(jù)需要在安全芯片41中使用會話密鑰加密該響應(yīng)數(shù)據(jù)。
在步驟S26中,客戶應(yīng)用42接收來自安全芯片41的響應(yīng)數(shù)據(jù)。過程然后進(jìn)入步驟S27,在該步驟中響應(yīng)數(shù)據(jù)被傳送到服務(wù)器應(yīng)用51。
在步驟S46中,服務(wù)器應(yīng)用51接收來自客戶應(yīng)用42的響應(yīng)數(shù)據(jù),執(zhí)行對應(yīng)于該響應(yīng)數(shù)據(jù)的處理,或?qū)⒃擁憫?yīng)數(shù)據(jù)提供給安全芯片命令模塊131和安全芯片管理器模塊132。
另一方面,在步驟S117中,安全芯片管理器模塊132將對會話密鑰的請求提供給安全芯片處理模塊53。
在步驟S154中,安全芯片處理模塊53接收來自安全芯片管理器模塊132對會話密鑰的請求。過程然后進(jìn)入步驟S155,在該步驟中作為用安全芯片41認(rèn)證的結(jié)果獲取的會話密鑰被提供給安全芯片管理器模塊132。
在步驟S118中,安全芯片管理器模塊132接收并擁有來自安全芯片處理模塊53的會話密鑰。
其后,例如由安全芯片管理器模塊132執(zhí)行使用會話密鑰的加密,并在安全芯片處理模塊53中僅執(zhí)行要求更高級保密性的加密。由安全芯片管理器模塊132執(zhí)行的加密或由安全芯片處理模塊53執(zhí)行的加密對應(yīng)于由安全芯片處理模塊53選擇的類型(例如,對全部命令加密,或者對部分命令加密)。
這樣,作為由安全芯片管理器模塊132使用會話密鑰執(zhí)行加密以及由安全芯片處理模塊53僅執(zhí)行要求更高級保密性的加密(包括使用加密所執(zhí)行的相互認(rèn)證以及包的創(chuàng)建(將隨后描述))的結(jié)果,當(dāng)與在安全芯片處理模塊53中執(zhí)行所有加密過程的情況相比較時,可減少安全芯片處理模塊53的負(fù)荷。因此,可縮短在安全芯片處理模塊53中的處理時間。
可提供多個防篡改安全芯片處理模塊53,以便通過使該多個安全芯片處理模塊53以分布式方式進(jìn)行處理,可減少一個安全芯片處理模塊53的負(fù)荷。
其后,在步驟S47中,服務(wù)器應(yīng)用51向安全芯片命令模塊131提供將要傳送到安全芯片41的命令產(chǎn)生請求。
在步驟S76中,安全芯片命令模塊131接收來自服務(wù)器應(yīng)用51的命令產(chǎn)生請求。
在步驟S77中,響應(yīng)于來自服務(wù)器應(yīng)用51的命令產(chǎn)生請求,安全芯片命令模塊131向安全芯片管理器模塊132提供如下請求產(chǎn)生安全芯片41的命令(對應(yīng)于命令類型的命令),并對該命令進(jìn)行加密以用作加密信息。
在步驟S119中,安全芯片管理器模塊132接收來自安全芯片命令模塊131的對命令進(jìn)行加密以用作加密信息的請求。
當(dāng)來自安全芯片命令模塊131的請求是加密除特殊命令外的命令的請求時,安全芯片管理器模塊132使用擁有的會話密鑰來加密該命令。在步驟S122中,安全芯片命令模塊131將由此獲取的加密信息提供給安全芯片命令模塊131。
另一方面,當(dāng)來自安全芯片命令模塊131的請求是加密特殊命令的請求時,在步驟S120中,安全芯片管理器模塊132將創(chuàng)建執(zhí)行該特殊命令的執(zhí)行權(quán)利的加密請求提供給安全芯片處理模塊53。
這里,特殊命令的例子包括用于請求安全芯片41的注冊和區(qū)域定義區(qū)刪除的命令。
在步驟S156中,安全芯片處理模塊53接收來自安全芯片管理器模塊132的請求,并對指示用于執(zhí)行特殊指令的執(zhí)行權(quán)利的權(quán)利文檔數(shù)據(jù)執(zhí)行加密過程。這里執(zhí)行的加密過程也是安全芯片管理器模塊132選擇的類型的加密過程。
此外,安全芯片處理模塊53添加證書的數(shù)據(jù),該證書證明權(quán)利文檔對該權(quán)利文檔的加密結(jié)果是有效的。在步驟S157中,安全芯片處理模塊53將證書和權(quán)利文檔的加密結(jié)果作為包提供給安全芯片管理器模塊132。
在步驟S121中,安全芯片管理器模塊132接收來自安全芯片處理模塊53的包。過程然后進(jìn)入步驟S122,在該步驟中使用會話密鑰加密特殊命令,并且加密結(jié)果和包是一組的加密信息被提供給安全芯片命令模塊131。
在步驟S78中,安全芯片命令模塊131接收來自安全芯片管理器模塊132的加密信息。過程然后進(jìn)入步驟S79,在該步驟中加密信息被提供給服務(wù)器應(yīng)用51。
在步驟S48中,服務(wù)器應(yīng)用51接收來自安全芯片命令模塊131的加密信息。過程然后進(jìn)入步驟S49,在該步驟中加密信息和設(shè)備數(shù)據(jù)(它是作為客戶端設(shè)備31的硬件的消息)被傳送到客戶應(yīng)用42。
在步驟S28中,客戶應(yīng)用42接收來自服務(wù)器應(yīng)用51的加密信息和設(shè)備數(shù)據(jù)。過程然后進(jìn)入步驟S29,在該步驟中加密信息被傳送到安全芯片41。
在步驟S15中,安全芯片41接收來自客戶應(yīng)用42的加密信息,并將該加密信息解密為命令。此外,在安全芯片41根據(jù)需要確認(rèn)命令執(zhí)行權(quán)利之后,安全芯片41執(zhí)行對應(yīng)于上述命令的處理。在步驟S16中,作為對應(yīng)于該命令的響應(yīng)的響應(yīng)數(shù)據(jù)被傳送到客戶應(yīng)用42。
在步驟S30中,客戶應(yīng)用42接收來自安全芯片41的響應(yīng)數(shù)據(jù)。過程然后進(jìn)入步驟S31,在該步驟中響應(yīng)數(shù)據(jù)被傳送到服務(wù)器應(yīng)用51。
在步驟S50中,服務(wù)器應(yīng)用51接收來自客戶應(yīng)用42的響應(yīng)數(shù)據(jù),并執(zhí)行對應(yīng)于該響應(yīng)數(shù)據(jù)的處理。
其后,在與客戶端設(shè)備31的通信將要結(jié)束時,服務(wù)器應(yīng)用51在步驟S51將作為該事實消息的結(jié)束報告?zhèn)魉偷娇蛻魬?yīng)用42。
在步驟S31中,客戶應(yīng)用42接收來自服務(wù)器應(yīng)用51的結(jié)束報告。這完成了一系列處理。
雖然上述一系列過程可由硬件執(zhí)行,但也可由軟件執(zhí)行。
當(dāng)一系列過程由軟件執(zhí)行時,形成軟件的程序被從網(wǎng)絡(luò)或記錄介質(zhì)安裝在結(jié)合在專用硬件中的計算機中,或例如安裝在能通過安裝各種程序來執(zhí)行各種功能的通用個人計算機中。
如圖6所示的記錄介質(zhì)包括可移動記錄介質(zhì)81,該可移動記錄介質(zhì)包括磁盤(包括軟盤)、光盤(包括CD-ROM(壓縮盤只讀存儲器)或DVD(數(shù)字多功能盤))、磁光盤(包括MD(注冊商標(biāo))(迷你盤))或半導(dǎo)體存儲器,該記錄介質(zhì)是分布式的,以便獨立于設(shè)備的主單元向用戶提供程序。此外,記錄介質(zhì)包括在其中記錄程序的ROM 73或硬盤75,其通過預(yù)先結(jié)合在設(shè)備的主單元中來向用戶提供程序。
在本說明書中,步驟不僅包括以所寫順序來按順序執(zhí)行的過程,而且包括同時或單獨執(zhí)行的過程,雖然這些不必按順序處理。
在本說明書中,系統(tǒng)表示由多臺設(shè)備組成的整個儀器。
本領(lǐng)域技術(shù)人員應(yīng)理解到,只要在所附權(quán)利要求書或其等價物的范圍內(nèi),可根據(jù)設(shè)計需求和其它因素進(jìn)行各種修改、組合、子組合和改變。
權(quán)利要求
1.一種信息管理儀器,用于響應(yīng)來自服務(wù)器的向要控制的集成電路芯片傳送命令的請求來產(chǎn)生命令,所述信息管理儀器包括用于管理與所述集成電路芯片要執(zhí)行的命令類型有關(guān)的集成電路芯片類型的裝置;用于獲取關(guān)于要控制的所述集成電路芯片類型的信息的裝置;及用于產(chǎn)生對應(yīng)于要控制的所述集成電路芯片類型的類型命令的裝置,所述集成電路芯片類型是由所述獲取裝置從對應(yīng)于從所述服務(wù)器請求的命令的多個不同命令類型中獲取的,并且所述裝置用于將產(chǎn)生的命令傳送到所述服務(wù)器。
2.如權(quán)利要求1所述的信息管理儀器,其中所述獲取裝置設(shè)置在要控制的所述集成電路芯片與通信路徑中的所述服務(wù)器之間,并配置為基于從客戶傳送的允許所述集成電路芯片被控制以執(zhí)行預(yù)定命令的信息,來獲取關(guān)于要控制的所述集成電路芯片類型的信息。
3.如權(quán)利要求1所述的信息管理儀器,其中所述管理裝置管理集成電路芯片類型,其與認(rèn)證集成電路芯片的方法和/或?qū)σ獋魉偷剿黾呻娐沸酒臄?shù)據(jù)進(jìn)行加密的方法有關(guān)。
4.如權(quán)利要求3所述的信息管理儀器,其中所述數(shù)據(jù)是要由所述集成電路芯片執(zhí)行的命令。
5.一種信息管理方法,用于響應(yīng)來自服務(wù)器的向要控制的集成電路芯片傳送命令的請求來產(chǎn)生命令,所述信息管理方法包括以下步驟管理與要由所述集成電路芯片執(zhí)行的命令類型有關(guān)的集成電路芯片類型;獲取關(guān)于要控制的所述集成電路芯片類型的信息;以及產(chǎn)生對應(yīng)于要控制的所述集成電路芯片類型的類型命令,所述集成電路芯片類型是在所述獲取步驟中從對應(yīng)于從所述服務(wù)器請求的命令的多個不同命令類型中獲取的,并將產(chǎn)生的命令傳送到所述服務(wù)器。
6.一種使計算機能夠進(jìn)行如下處理的程序管理與要由所述集成電路芯片執(zhí)行的命令類型有關(guān)的集成電路芯片類型,并響應(yīng)來自服務(wù)器的向要控制的集成電路芯片傳送命令的請求來產(chǎn)生命令,所述程序包括以下步驟獲取關(guān)于要控制的所述集成電路芯片類型的信息;以及產(chǎn)生對應(yīng)于要控制的所述集成電路芯片類型的類型命令,所述集成電路芯片類型是在所述獲取步驟中從對應(yīng)于從所述服務(wù)器請求的命令的多個不同命令類型中獲取的,并將產(chǎn)生的命令傳送到所述服務(wù)器。
7.一種信息管理儀器,用于響應(yīng)來自服務(wù)器的向要控制的集成電路芯片傳送命令的請求來產(chǎn)生命令,所述信息管理儀器包括管理單元,用于管理與要由所述集成電路芯片執(zhí)行的命令類型有關(guān)的集成電路芯片類型;獲取部分,配置為獲取關(guān)于要控制的所述集成電路芯片類型的信息;以及命令產(chǎn)生器,配置為產(chǎn)生對應(yīng)于要控制的所述集成電路芯片類型的類型命令,所述集成電路芯片類型是由所述獲取部分從對應(yīng)于從所述服務(wù)器請求的命令的多個不同命令類型中獲取的,并用于將產(chǎn)生的命令傳送到所述服務(wù)器。
全文摘要
一種信息管理儀器包括管理裝置,用于以彼此對應(yīng)的方式管理集成電路芯片類型和要由集成電路芯片執(zhí)行的命令類型;信息獲取裝置,用于獲取關(guān)于要控制的集成電路芯片類型的信息;以及命令發(fā)生裝置,用于產(chǎn)生對應(yīng)于要控制的集成電路芯片類型的類型命令,集成電路芯片的類型是由信息獲取裝置從對應(yīng)于從服務(wù)器請求的命令的多個不同命令類型中獲取的,并用于將產(chǎn)生的命令傳送到服務(wù)器。
文檔編號H04L9/08GK1756150SQ200510108519
公開日2006年4月5日 申請日期2005年9月30日 優(yōu)先權(quán)日2004年9月30日
發(fā)明者赤鹿秀樹, 荻島淳, 花木直文 申請人:飛力凱網(wǎng)路股份有限公司