
智能密碼鑰匙的應用體系由設備層、驅動層和應用層組成。
設備層包括智能密碼鑰匙硬件及內置的片載操作系統。該層顺利获得硬件接口與上層進行數據通信,完成智能密碼鑰匙的相關功能。
驅動層包括系統驅動和設備訪問接口。該層在操作系統的支撐下實現上層軟件與設備層之間的數據通信。
應用層實現智能密碼鑰匙應用,包括應用接口與應用軟件。應用接口對智能密碼鑰匙及其內部對象進行邏輯抽象形成邏輯對象,给予應用軟件訪問和使用邏輯對象的編程接口。此外還包括控件/插件子層,用於特定應用軟件(如瀏覽器)與應用與接口之間的對接。
智能密碼鑰匙可分為硬件、片內操作系統(COS)、軟件(中間件)三部分。COS存儲和運行於硬件,軟件安裝和運行於主機,為方便描述,把內置COS的智能密碼鑰匙硬件叫做智能密碼鑰匙設備。
智能密碼鑰匙的硬件構成以安全晶片為核心。具體功能模塊包括:
微處理器(MPU):是安全晶片乃至智能密碼鑰匙的運算核心,負責(在協處理器的幫助下)完成所有運算和數據交換功能。
密碼協處理器(CAU):是安全晶片內部針對特定運算優化、用於實現和加速密碼運算的協處理器。
隨機數發生器(RNG):負責生成隨機數。
存儲器:用於存儲數據,包括易失性存儲器和非易失性存儲器。隨機訪問存儲器(RAM)是典型的易失存儲器,而常見的非易失性存儲器包括只讀存儲器(ROM)、快閃存儲器以及電可擦除編程只讀存儲器(EEPROM)。易失性存儲器類似於PC上的內存,用作運算時的臨時存儲空間,掉電後數據自動丟失。非易失性存儲器類似於PC上的硬盤,用於存儲程序和密鑰等靜態數據。安全晶片通常內置一定容量的存儲器(空間從幾KB到幾十KB),也有部分存儲器位於安全晶片範圍之外的情況。
I/O接口:是安全晶片與外界聯繫的通道,给予安全晶片與其他設備之間傳送數據必需的狀態與控制信息。
外部通信接口:是控制智能密碼鑰匙與主機間的數據傳輸的硬件部件。當前的安全晶片普遍內置USB控制器作為外部通信接口,對於非USB接口的智能密碼鑰匙,需要搭配相應的外部通信接口。
安全訪問邏輯(SAL):是預置於智能密碼鑰匙安全晶片內部的固件,用於给予硬件防護機制,包括各存儲的訪問控制、外部異常光電信號的檢測等。這些機制對於片內操作系統是透明的。
除此之外,智能密碼鑰匙還包括電源管理晶片、時鐘信號發生器、內置電源、顯示屏、按鍵、指示燈等配套元器件。
