一般來說 IC卡按照接口方式可分為 接觸式卡、非接觸式卡、復合卡;按器件技術可分為非加密存儲卡、加密存儲卡和CPU卡。 加密存儲卡是對持卡人的認證,只有輸入正確的密碼才能訪問或者修改卡中的數據,最典型的是手機SIM卡的PIN碼;當設置PIN碼后,開機必須輸入PIN碼,如果連續(xù)幾次輸入錯誤,就必須更高權限的PUK碼來修改PIN碼,如果PUK碼也連續(xù)輸錯,那就只有換卡了。 加密存儲卡保證了對持卡人的認證,但是,在保證系統(tǒng)安全性上還不夠。 1. 密碼輸入是采用透明傳輸,在偽造的ATM機或者網絡上,這個密碼很容易被截??; 2. 邏輯加密卡無法認證應用是否合法; 3. 對于系統(tǒng)集成商來說,密碼和加密算法是透明的; 由此,引入了CPU卡; CPU卡在三個方面保證了安全: 1. 對人:持卡者合法性認證:持卡者需要輸入口令。 2. 對卡:卡的合法性認證;內部認證。 3. 對系統(tǒng):系統(tǒng)的合法性認證;外部認證。 卡的合法性認證: CPU卡發(fā)送隨機數給卡(如地鐵卡),卡收到隨機數后用加密算法加密,將加密后的值傳給CPU卡,CPU卡解密并與發(fā)送的隨機數比較,如果相等,則認為卡合法。 系統(tǒng)的合法性認證(例如手持POS是否是合法的經過認證的廠商生產的): CPU卡發(fā)送隨機數給POS自帶的卡或者模塊,POS自帶的卡或者模塊將隨機數加密后,傳回CPU卡,CPU卡解密并與發(fā)送的隨機數比較,如果相等,則認為系統(tǒng)合法。這個過程在開機時做。
在加密和解密過程中,涉及到兩個因素,一個是加解密算法、一個是密鑰。加解密算法是公開的,在CPU卡中,有操作系統(tǒng)叫COS:Chip OS;由卡的生產商提供,并提供加解密算法。卡的生產商必須經過專門的機構認證。密鑰則有發(fā)卡機構掌握,層層發(fā)卡,權限不同。 SAM卡簡介
SAM卡:全稱是Security Access module;是一種特殊的CPU卡;存儲了密鑰和加解密算法。 目前SAM卡分了很多種: PSAM卡:終端安全控制模塊,一般用于小額支付扣款中; ESAM:廠商(系統(tǒng))的SAM卡,用于設備的認證; ISAM:用于充值; 在具體的實現中,會比較多樣化。例如,有的設備認證并不是用ESAM卡,而是采用專用的模塊。這樣,就存在一個問題,即密鑰用軟件實現,可能會存在密鑰泄露的問題;一種解決的方法是存儲多組密鑰,在隨機數中采用一組密鑰。

普通卡的發(fā)行一般采用密鑰對的物理卡號加密的方式。