七色坊IC卡應用方案案例
用戶需求:
原需求:
在七色坊現在使用的軟件上增加讀寫IC卡的功能,由于不能直接在原軟件上修改增加讀寫IC卡的功能,所以采用外掛一款IC卡軟件的方式,將讀寫到的IC卡數據傳到七色坊使用的原軟件上;
功能要求:
a) 能自動或手動啟動IC卡設備;
b) 單次發卡;
c) 批量發卡:通過讀取導出的文件,寫入卡號;
d) 刷卡時也只讀會員卡的卡號;
e) 發卡:需要發卡密碼,才能進行發卡;并且只記錄會員卡的卡號;
f) 刷卡:無需密碼;只讀會員卡的卡號;將卡號讀取到當前光標的任意輸入點的位置;
g) 能夠修改發卡密碼;
現增需求:
1、密碼安全性要求:
a) 對每張發出的IC卡進行密碼保護;
b) 密碼方案由七色坊自由設定;
c) 同樣的兩張IC卡,密碼可能不一致;
d) 刷卡時能對兩種密碼方案加密的IC卡內數據進行讀取;
2、增加對會員卡的余額存儲功能;
3、依然提供以中間介或外掛的方式將數據中轉一次存儲到IC卡中;
4、方案中提供硬件設備的對比資料及推薦設備;
5、方案中提供類似的IC卡應用案例。
密碼設計方案原則
針對七色坊IC卡安全密碼的設計方案的設計原則如下:
1、軟件開發人員開發完成后密碼方案由七色坊設定后,軟件開發人員在不知道設定密碼的前提下是不能解碼或破解的,保證客戶的密碼安全;
2.、客戶方或第三方在得到設定密碼后,不能破解密碼的加密規則;即保證密碼的安全;
3、完全滿足七色坊對密碼安全性需求:
a) 對每張發出的IC卡進行密碼保護;
b) 密碼方案由七色坊自由設定;
c) 同樣的兩張IC卡,密碼可能不一致;
d) 刷卡時能對兩種密碼方案加密的IC卡內數據進行讀取;
1、IC卡的特性:(S50卡)
扇區數: 16個;
每個扇區組成: 1個密碼塊 + 3個數據塊
2、密碼安全方案: 保護密碼 + IC卡讀取密碼
3、保護密碼
作用:保護密碼是用來保護IC卡讀取密碼的密碼;由于加密規則的特性,使每張卡的保護密碼不一致;充分的防止了密碼被解;
組成:激活碼+IC卡隨機碼+不可反加密運算規則1
激活碼:由七色坊設定;
IC卡隨機碼:IC卡片每張的出廠號,每張卡不同;
不可反加密運算規則1:由開發人員定義的不可反的一種加密規則;
4、IC卡讀取密碼
作用:讀取密碼由七色坊設定;由加密規則進行加密;用于讀取IC卡的數據區存儲的會員卡號及余額;
組成: IC卡讀取密碼+不可反加密規則2;
IC卡讀取密碼:由七色坊設定;
不可反加密運算規則2:由開發人員定義的不可反的第二種加密規則;
系統設計方案:
外掛軟件方案
此方案是在原有外掛軟件方案的基礎上增加功能:
1、啟動外掛軟件,由托盤圖標的方式在任務欄中,對IC卡設備進行刷卡時實監控;
(托盤圖標)
2、一次啟動時:檢測是否有激活碼;如沒有激活碼,要求輸入激活碼;(注:密碼安全要求必須輸入,是形成保護碼的關鍵)
3、密碼設置:包括發卡管理密碼、IC卡讀取密碼設置;(注:功能增強)
a) 發卡管理密碼:指通過進入發卡管理功能界面的進入密碼;
b) IC卡讀取密碼:設置IC卡數據區的會員卡和余額的讀取密碼;
(功能菜單)
4、刷卡數據輸出
c) 將刷卡時讀取到的數據傳到光標指定位置;
d) 格式為:卡號+回車+余額+回車;
5、余額寫入:在原有功能中增加“余額寫入”功能,通過此功能寫入余額到IC卡中,如圖:
本方案的優點:
1、 在七色坊新舊系統更新的時期,可以不用修改七色坊現有軟件任何功能,可以完成IC卡的管理;
2、 可以使刷卡的數據輸出到任意光標所在位置,也就是說適合任何軟件按擴展IC卡功能;
本方案的缺點:
1、 寫入IC卡的數據不只是以前的一個會員卡號,而是會員卡號+余額;所以在刷卡輸出到七色坊的軟件上時,只能輸出到當前光標所在的位置;所以格式被定義為:卡號+回車+余額+回車,必須要求輸入會員卡號 與 余額 兩個輸入點必須為同一軟件界面,支持回車輸入點換位;
2、 發卡時,操作員必須在外掛軟件中輸入余額寫入;不能從其它軟件傳入到外掛軟件中進行寫入;
動態鏈接庫方案
將外掛軟件中的所有功能寫入動態鏈接庫,提供調用接口;供第三方軟件進行調用;如:
1、 余額寫入接口;
2、 激活碼接口;
3、 IC卡密碼修改接口;
4、 會員卡號寫入接口;
本方案的優點:
1、 可以由第三方軟件進行第二次開發調用;
2、 加密規則由動態鏈接庫內部定義好,不由第二次開發進行修改;可以充分的保證七色坊對密碼安全性的要求;
3、 對七色坊原有軟件的接合性好,能達到無縫結合的要求;
4、 會員卡號、余額、其它信息等都可以直接寫入IC卡;不需要額外的操作;
功能設計:
設備方案:
IC卡片
國內蕊片和國外蕊片技術參數基本樣的,據說國內蕊片沒有國外蕊片穩定、我在很多項目上都用的國外蕊片,在有些項目上用過國內蕊片,實質體驗上沒有發現問題,感覺上都是一樣的;
1、 性能指標
a) 工作頻率:13.56MHZ
b) 通訊接口:RS232、USB、RS485、脫機
c) 讀寫卡距離:0~70mm
d) 串口通訊波特率:1200BPS~115200BPS
e) 可擴充1~3個SAM卡座和1個大卡座
f) 外型尺寸:143mm×110mm×28mm
2、 功能特點:
a) 讀寫器和射頻卡之間的數據傳輸采用加密算法,卡和設備雙向驗證
b) 防沖突機制,可同時處理多張射頻卡
c) 實時時鐘顯示
d) 蜂鳴提示操作狀態
e) 8位LED顯示或者雙行漢字液晶顯示
f) 提供豐富的二次開發接口函數和范例
3、 支持卡型:可讀寫符合ISO14443標準的射頻卡,PHILIPS公司的TYPEA MF1ICS50、MF1ICL10、MF1ICS70、MIFAREPRO、MIFAREDES、MF Ultralight、DESFire, SIEMENS公司的TYPEA、上海華虹的SHC1102、復旦籌碼卡、以及國內兼容上述卡型的卡片;SAM卡,符合 T=0和T=1協議的CPU卡
DL8210
1、 特點:
a) 頻率:13.56MHz,支持ISO14443 TYPE A/B
b) USB1.1通訊接口(HID協議),即插即用,無驅動安裝
c) USB接口供電
d) 內置“看門狗”電路,保障可靠工作
e) 無盲區天線設計
f) 防沖突多卡讀寫設計
g) 豐富、完善的接口函數(動態鏈接庫DLL)以及二次開發包
h) 支持符合 ISO14443 Type A,Type B 的非接觸智能卡,如: Mifare S50 ,Mifare S70,MF1ICL10,Mifare Pro,Mifare desfire,Mifare ultralight 、 SLE44R31 、 SLE6-6cl 系列、 AT88RF020 、華虹 1102 等
1、 技術指標:
a) <span style="mso-spacerun:'yes';font-family:微軟雅黑;color:rgb(127,127,127);fo