IC卡編程和使用流程
對IC卡的讀寫操作主要在發卡時和用戶持卡交費及持卡消費時時行. 發卡是卡片發行者根據用戶要求對空白卡的個人化過程. 這一過程由發卡單位的微機上運行的發卡程序執行,如銀行,工廠,機關等部.這一發卡程序也需IC卡開發人員根據上述經構特點進行開發設計.用戶持卡消費則在商店POS機或銀行ATM機上進行,持卡交費也需要在銀行或交費處進行.這一過程是讀出或修改卡上數據的過程,由IC卡用戶應用程序在用戶終端上完成.此時用戶需與終端進行交互式處理.這種用戶應用程序也是IC卡開發人員進行設計的.下面,綜合上一節討論的IC卡存儲結構特點, 說明在這兩種軟件中的操作過程.
1.IC卡個人化操作流程
如前所述,此流程嵌在IC卡發卡軟件中執行,可完成IC卡的人人化即初始數據錄入過程.首先系統核對IC卡的廠商代碼和卡型,正確時,在空白卡上寫入發行商代碼,確定此卡為本系統有效卡.然后軟件應提供交互式用戶界面, 讓用戶從鍵盤輸入自己的用戶密碼(SC).此密碼不應由發行者保留和處理,而應該通過調用密碼寫入函數而直接寫入卡上. 多分區中的分區密碼也可以通過給用戶提供的界面由用戶直接輸入.為了簡化密碼記憶要求,也可以采用根據統一用戶密碼經一定算法來分別產生分區密碼并寫入卡上. 擦除密碼則是在個人化時由發行商也就是系統來產生并且入卡上的,供系統使用.在上述密碼寫入后, 軟件還應提供用戶對密碼核實和再次修改的機會.在確認無誤后,軟件發出熔斷命令,熔斷熔絲2,完成IC卡的個人化進程.隨后系統可對IC卡數據區需寫入的數據作初始寫入.
2.IC卡用戶應用軟件流程
如前所述,此流程嵌于各IC卡讀寫器的用戶軟件中.每次涉及對IC卡操作時執行此流程.一旦IC卡插入讀寫器,用戶軟件首先應核對廠商代碼,發行商代碼,以確認此卡的合法性.在確定是本系統中的有效卡后,進入用戶密碼核對流程, 如果是無效卡,應報警.接著在用戶密碼核對界面中對持卡人的合法性進行鑒別. 要求持卡人鍵入用戶密碼,與卡上密碼核對,無誤后可開始對卡讀寫. 如有分區密碼也要求用戶鍵入核實.如果需對卡上已有數據進行修改,則應與系統中保留的探險密碼進行核對. 正確時可先讀出卡上數據進行修改運算,再擦除相應存儲區,最后將修改后數據寫回該存儲區.根據以上敘述,我們知道IC卡的合法性, 持卡人合法性和系統的合法性要相互確認.這些確認和對IC卡的讀寫操作均需調用隨IC 卡讀寫器提供的函數庫中的函數來完成.