CPU卡安全體系
在CPU卡開發(fā)指南(二)基本指令講到cpu卡的基本操作指令, 其中的創(chuàng)建文件時候的讀寫權(quán)限沒有解析,本章詳細(xì)介紹CPU卡中的安全體系囤捻。(本篇文章主要是對復(fù)旦1208cpu卡)
FMCOS的安全體系從概念上可以分為安全狀態(tài)臼朗,安全屬性,安全機(jī)制和密碼算法蝎土。
安全狀態(tài)
安全狀態(tài)是指==卡在當(dāng)前所處的一種安全級別==视哑。
FMCOS在卡內(nèi)部用安全狀態(tài)寄存器來表示安全級別;寄存器的的值==可以是0-F之間的==某一值瘟则。
當(dāng)前目錄的安全狀態(tài)寄存器的值在==復(fù)位后或選擇目錄文件==命令成功被執(zhí)行時被置為0黎炉,在當(dāng)前目錄下口令核對或外部認(rèn)證通過后該狀態(tài)寄存器值發(fā)生變化。
安全屬性
安全屬性是指對某個文件進(jìn)行某種操作時所必須滿足的條件醋拧,也就是在進(jìn)行某種操作時要求安全寄存器的值是什么慷嗜。
訪問權(quán)限為0Y時表示要求MF的安全狀態(tài)寄存器的值大于等于Y。
- 例1: 如某個文件的讀權(quán)限為05則表示在對該文件進(jìn)行讀之前必須是MF的安全狀態(tài)寄存器的值大于等于5丹壕。
訪問權(quán)限為XY(X!=0) 表示要求當(dāng)前目錄的安全狀態(tài)寄存器的值大于等于Y切小于等于X庆械。 如果(X=Y)則表示要求當(dāng)前目錄的安全狀態(tài)寄存器的值等于X,
例2: 如某個文件的讀權(quán)限為05菌赖,則表示在對該文件進(jìn)行讀之前必須是MF的安全狀態(tài)寄存器的值大于等于5缭乘。
例3: 如某個文件的讀權(quán)限為53,則表示在對該文件進(jìn)行讀之前當(dāng)前目錄安全狀態(tài)寄存器的值大于等于3琉用,小于等于5堕绩,即為 3、4邑时、5奴紧。
例4: 如某個文件的讀權(quán)限為F0,寫權(quán)限為F1。代表該文件可以任意讀取晶丘,在寫入的時候必須滿足當(dāng)前目錄的權(quán)限大于等于1
安全機(jī)制
安全機(jī)制是指某種安全狀態(tài)轉(zhuǎn)移為另外一種安全狀態(tài)所采用的方法和手段黍氮。
當(dāng)在MF下是唐含,認(rèn)證通過之后同時改變MF狀態(tài)值,若不在MF下認(rèn)證通過沫浆,只改變當(dāng)前目錄的安全狀態(tài)值捷枯。當(dāng)上電復(fù)位后,進(jìn)入子目錄或者退回上級目錄,當(dāng)前目錄的安全狀態(tài)寄存器的值均自動被置為0专执。
設(shè)卡中有一個目錄中有一個二進(jìn)制文件淮捆,定義二進(jìn)制文件的讀權(quán)限為F1,寫二進(jìn)制文件的權(quán)限為F2他炊,該目錄下有一個口令密鑰争剿,口令核對通過后后續(xù)狀態(tài)為1,卡中有一個外部認(rèn)證密鑰痊末,使用權(quán)限為11蚕苇,外部認(rèn)證通過后狀態(tài)為2。
請看下面的操作及當(dāng)前目錄的狀態(tài)寄存器變化情況凿叠。
密碼算法
FMCOS外部認(rèn)證的算法使用的是DES