一種多SAM模塊的低功耗IC卡讀卡器設計與實現
文章出處:http://5052h112.com 作者:武衛東 王光興 人氣: 發表時間:2011年10月16日
IC卡又叫智能卡,它將大規模集成電路(IC:Integrated circuit)封裝在卡片中,卡片上印有說明文字和圖像,可以存儲大量信息.具有極強的保密性能,抗干擾、無磨損、壽命長等優點。
根據其內部結構Ic卡可以分為以下3類:1.存儲卡;2.邏輯加密卡;3.CPU卡。CPU卡內部帶有微處理器,把具有存儲加密及數據處理能力的芯片鑲嵌在塑料基片中;CPU卡采用密鑰管理機制認證過程,通過加密算法運算在SAM卡和CPU卡之間動態進行,CPU卡和SAM卡之間傳遞的是一種動態變化的偽隨機碼,在實際應用中被破譯和攻擊的可能性非常小;在性能上比存儲卡有較好的安全性,兼容性和擴展性;CPU卡信息傳輸方式遵循ISO7816—3國際標準,芯片升級時不需要對系統內的微控制器程序進行改動,這是存儲卡和邏輯加密卡所不能作到的。CPU卡采用文件方式對數據進行存儲,可以對不同應用的數據文件進行目錄管理,很容易實現一卡多用。
CPU卡的這些優勢使其在智能卡表、通信、設備,交通收費網絡、安全金融設備等領域得到越來越廣泛的應用。但是目前市面上的CPU型IC卡種類較多,彼此之間的安全認證過程不盡相同,且彼此保密。所以為了使瀆卡器兼容不同IC卡,需要設計一種可以使用不同的SAM卡來對不同的IC卡進行安全認證的讀卡器,作者根據某通信有限公司的要求,設計了一種超低功耗的讀卡器。文章第一部分介紹了讀卡器的硬件結構和工作原理,第二部分介紹了系統的軟件設計,第三部分對系統進行了低功耗測試和性能測試,最后給出了結論。
1 讀卡器的硬件結構和工作原理
(1)MSP430F149單片機是讀卡器主控制器,負責判斷讀卡器中是否插卡,若插卡,則通過對SAM卡卡座中的SAM卡的掃描,對CPU卡進行型號判別。判定IC卡類型后,使用相應的SAM 卡模塊,對該CPU進行安全認證,認證結束,通知主機,IC卡合法,主機啟動相應的業務進行服務.通過通信協議,主機可以發送讀余額、扣費等指令,MSP430F149單片機接到指令.通過標準協議向CPU卡發出讀余額、扣費等操作指令,CPU卡接到指令后自動完成這些操作。
(2)電源:由于該讀卡器在實際使用中是嵌入到所應用的系統中,所以系統應該提供標準的5V電源(可以在RS一232 C接口端取),為了降低讀卡器的功耗,選用的MSP430F149需要3V的工作電壓,因此選用AS818 DC—DC芯片進行電源轉換。
(3)用戶卡:用戶卡用CPU型IC卡,用戶卡卡座選用的是常開型卡座,當用戶卡插入時,迫使卡座中SW開關的兩個腳短路,這兩個腳一端接地,一端接單片機具有中斷功能的I/0腳,通過外部上拉,中斷啟動。在實際運行時,由于大部分時間處于低功耗狀態(睡眠模式),所以在軟件上采用中斷喚醒的工作方式。用戶卡驅動模塊電路圖如圖4所示,CD4066起開關作用,在不讀卡時使其與主控器的控制信號隔離。
(4)SAM卡:為了兼容各種用戶卡,瀆取不同公司的SAM 卡,SAM卡卡座選用的是普通的卡座,通過CMOS電壓向rITrL電壓轉換電路和MSP430F149相連。電壓轉換電路利用雙電源電平移位器74LVC4245來實現。SAM 卡驅動模塊電路圖與用戶卡類似。
(5)RS一232 C接口:IC卡讀寫器多數是采用RS232串口進行通信的,其硬件的實現比較簡單,一般的主機系統都具有RS一232 C接口,因此可以保證讀卡器具有很好的通用性。
2 讀卡器的軟件設計
軟件功能模塊,核心部分包括以下幾個模塊:SAM卡的操作模塊、用戶卡4436卡的操作模塊、IC操作模塊和串口發送和協議解析模塊。SAM卡的操作模塊主要完成對SAM卡進行復位、基本寫讀操作和命令的發送和返回字節數據的解析。4436卡的操作模塊主要完成對4436卡數據的讀取和認證的操作。IC卡的操作模塊主要完成對24c01卡和24c01管理卡的指定地址的讀寫操作。串口發送和協議解析模塊主要完成對通信協議的解析和數據的讀取和發送。
讀卡器的軟件主流程圖從略。判斷有無卡,通過檢測SW引腳的狀態實現,置位為有卡,否則為無卡。當有卡時MSP430F149MCU向主機發出請求,讀卡器接收主機命令,模塊執行檢查卡類型子程序,根據時序檢測卡的類型,并返回數據。
3 綜合測試
系統的穩定性測試:采用了72小時重復認證和讀寫的方法,通過編寫專門的測試程序對讀卡器進行了測試,測試結果表明該系統運行穩定可靠。
低功耗測試:根據技術指標要求先將演示系統的讀卡器進行測試。
本測試方法采用VC9807電流表串聯測量的方法,測試時采用的測試程序為一循環認證程序,即設計的一個無限循環的連續認證的程序,因此所測的電流為系統的最大工作電流。設計時,采用全貼片元器件的設計和焊接工藝,設計的讀卡器體積60mm*40mm*20mm。因此可以方便地嵌人到公用電話機、自動會員機、自動提款機等系統中,具有體積小的特點。
4 結論
綜上所述,通過對不同CPU卡和SAM卡的研究和分析,提出了通過使用多SAM卡模塊的循環掃描對多種用戶卡進行認證管理,實現了對多種CPU卡的支持,讀卡器兼容多種用戶卡的方法,經過聯合調試,系統完成了低功耗和項目所規定的技術要求,通過了某通信公司的項目驗收,很好完成了此項目,同時具有低功耗,運行穩定、體積小等特點。