999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

PBOC2.0新型金融IC卡讀卡器的設計與開發

2012-06-25 02:45:46徐飛曹奇英
單片機與嵌入式系統應用 2012年1期
關鍵詞:指令

徐飛,曹奇英

(東華大學 計算機學院,上海 201620)

引 言

PBOC2.0規范是國內金融IC卡產業的基礎性規范,內容豐富,可以滿足我國銀行卡應對國際IC卡遷移的需要。它既滿足國內銀行卡高安全和多應用的實際需求,也為跨行業合作提供了良好的基礎架構。銀行磁條卡存儲空間小、無運算能力,而金融IC卡具備多應用加載的平臺,可豐富銀行卡產品系列,成為商業銀行業務創新的重要技術手段[1]。

在PBOC2.0規范指導下的金融IC卡的發展為金融IC卡讀卡器的發展了帶來了機遇,設計和開發使用方便、效率高和有著高可移植性的新型金融IC卡讀卡器必將促進國家金融IC的應用發展。

1 硬件設計

在讀卡器MCU的選擇上,為減少讀卡器的功耗,并降低器件上的成本,選擇TI公司的超低功耗單片機MSP430F5510。其提供的豐富外設I/O接口使讀卡器實現各種功能,并自帶全速USB2.0(12Mbps)特性,也方便了USB接口開發及HID通信協議的實現。MSP430F5510引腳圖如圖1所示。

MCU選擇RGZ48PIN的封裝形式,使得讀卡器設計小巧,48引腳能為開發提供足夠的I/O口。高頻率晶振XT2IN引腳外接4MHz晶振,能為IC卡提供穩定的時鐘源。

1.1 MCU與IC卡座接口設計

MCU與IC卡卡座的接口電路如圖2所示。IC卡座的V_IC與電源模塊的輸入引腳相連,IC_CLK與 MCU的高頻晶振(XT2IN)相連,為IC卡工作提供穩定的時鐘源。IC卡數據的輸入/輸出通過IC_IO與MCU的I/O口進行連接,MCU通過I/O口控制與IC卡的數據交互,并通過IC_DET檢測IC卡的插入和拔出,通過Reset引腳對IC卡進行復位。

1.2 MCU與USB接口設計

USB接口與MCU的接口電路如圖3所示。

USB接口的電源通過二極管D1接到MCU的電源供電部分,為MCU的正常工作提供電源。USB的Data+、Data-引腳分別接 MCU的DP、DM引腳,MCU上的PUR引腳與DP引腳間接一個1.4kΩ上拉電阻,完成MCU的兩個引腳DP和DM差分信號的輸入。

圖1 MSP430F5510引腳圖

圖2 MCU與IC卡卡座接口電路

圖3 USB接口與MCU接口電路

2 軟件設計與開發

讀卡器內部軟件主要由3部分組成,分別為ISO7816協議的實現、USB接口協議HID的實現、金融交易在讀卡器內部的實現。ISO7816協議的實現主要參考ISO7816規范,詳細的實現過程這里不再詳細敘述。由于MSP430F5510自帶全速 USB2.0(12Mbps),可參照 HID協議完成底層固件HID協議的開發。下面詳細敘述金融交易在讀卡器內部的實現。

為使得軟件開發具有條理性,考慮將金融交易部劃分為以下4個模塊:指令功能模塊、安全認證模塊、協助功能模塊、獨立交易功能模塊。各模塊之間可以相互輔助,實現金融交易的功能。

2.1 指令功能模塊

這個模塊也可以稱為基礎功能模塊,設計此模塊能解決從PBOC2.0規范中抽象出各金融IC卡指令的問題。在模塊內部實現PBOC2.0規范中所述的交易指令:選擇、讀記錄、取數據對象、應用初始化、應用鎖定、應用解鎖、外部認證、生成應用密文、內部認證、PIN修改/解鎖、設置數據、修改記錄、驗證[2]。

這些指令的實現能方便具體交易的調用,使得其他模塊不再具體考慮指令調用的細節。

2.2 安全認證模塊

此模塊的設計可解決交易過程中涉及到的安全認證,單片機內部可以實現RSA算法、3DES算法、哈希算法SHA-1。針對完成PBOC2.0規范中的脫機數據認證,軟實現各種安全認證算法能很好地節省硬件成本,使得開發具有相對的獨立性。

2.3 協助功能模塊

協助功能模塊可作為工具模塊,為其他模塊提供服務。在模塊內部實現對IC卡指令返回的數據的解析、PDOL(處理選項數據對象列表)、DDOL(動態數據認證數據對象列表)、CDOL(卡片風險管理數據對象列表)等數據對象的組包。

IC卡指令返回的數據實質上就是一個有格式的長字符串,這個字符串數據都有相應的模板格式,但不同的指令返回的數據模板不同。而且模板中包含的TLV(Tag、Length、Value)數據結構也各不相同,模板中還可能再包含模板。對于模板中有單一TLV數據結構不帶模塊結構的數據,可以通過先解析Tag,接著解析長度,再解析數據內容的方式,取得某個Tag對應的Value值。即便是一個字符串由多個TLV結構的數據對象組成,這種方法也可以完成對TLV結構的解析以及對單個Tag對應值的確定[3]。

但是對于有多個模塊結構的數據對象進行解析時,就需要先解析模板,確定該TLV的數據對象在哪個模板中,然后從長數據串中截取出這個模板對應的數據,然后再在這個模板中進行TLV數據的解析。

具體在設計中,采用如上所述的分析方法實現兩種不同的TLV解析功能,一種可以直接解析只有TLV結構字符串的函數;另外一種則可以針對有多個模板的字符串進行解析。

2.4 獨立交易功能模塊

在上面三個功能模塊的基礎上實現金融交易,這里主要設計實現了以下金融交易:讀取IC卡信息、讀取IC交易日志、寫卡腳本、生成ARQC(授權應用密文)、ECC(電子現金)交易。下面詳述各交易的實現。

2.4.1 讀取IC卡信息

讀取IC卡信息,可借助指令功能模塊中的選擇指令選擇IC卡應用個人化環境(PSE),然后利用協助功能模塊的解析函數,解析出卡片中的應用標識符AID,再通過選擇指令選擇AID,解析出PDOL(處理選項數據對象列表)。PDOL實質上是一個模板,表明了處理選項數據對象中應當包含哪些數據對象。解析出PDOL,利用上述協助功能模塊中的組PDOL對象功能函數便可以形成處理選項數據對象。在應用初始化指令中將這個數據對象發送給卡片,卡片接收到后,會根據處理選項數據對象作出交易的判斷,在返回的數據中帶回來交易中需要讀取的交易記錄,然后根據卡片返回到AFL(應用文件定位器)。遍歷讀取相應的記錄、解析相應的記錄,就可以找到需要的IC卡個人信息[3]。

以上方法不是唯一讀取IC卡的方法,對于常用持卡人信息的讀取,也可以選擇讀取IC卡前兩幾條記錄,從中分析得到IC卡持卡人的個人信息。這種方法讀取速度快,但是對于持卡人信息不在前幾條記錄中的卡片,則會發生讀取不到信息的錯誤。為避免此種錯誤的發生,設計中采用如上遍歷讀取記錄的方法。

2.4.2 讀取IC卡交易日志

金融IC卡對于圈存、ECC交易,在卡片中會有相應的日志記錄。IC卡交易日志以文件的形式保存在IC中,最多能保存十條交易日志,而且第一條是最近的交易日志。在交易過程中通過讀IC卡日志能判斷出最近幾筆交易的詳細情況,交易日志的讀取通過指令模塊中的Select指令選取PSE,然后解析出AID。選擇AID后,解析出日志入口標簽的值,從而找到日志對應的SFL(短文件標識符)以及交易日志中的記錄個數。逐條讀取SFL下的記錄,就可以得到完整的交易日志。然后再使用Get Data指令讀取日志格式標簽的值,便可以對照日志格式解析交易日志,得出每筆交易的詳細信息[4]。

以上為最全面的IC日志讀取方法,在實現中為節省程序運行時間,一般在選擇AID后直接讀取SFL為0x0B,在該文件下從第1條記錄讀取到第10條記錄。這種方法也能將交易日志完整的讀取出來,而且還節省了時間。讀卡器在內部實現中采用了這種方法[5]。

2.4.3 寫卡腳本

卡片腳本是發卡行對卡片進行認證過后,認為此卡片為合法卡片后,返回的可以修改IC卡記錄內容的命令。寫卡腳本命令執行之前首先需要對發卡行返回的密文數據進行外部認證,實質上是卡片在驗證發卡行的真偽。發卡行驗證通過,便可以通過產生密文指令向卡片發送表示允許進行交易,卡片收到后會產生允許交易的密文,產生TC(交易證書)。TC需要保存,結算的時候或者聯機中在腳本執行結果中返回給服務器,TC值的產生,說明了卡片承認了這筆交易,服務器清算的時候驗證TC證書。如果TC證書驗證通過,后臺服務就會把這筆消費入賬。由于產生密文的指令可以產生3種應用密文形式,分別為:TC、ARQC(授權請求密文)、AAC(應用認證密文)[6],在產生密文的指令中需要指明為產生TC的指令,而且需要組建CDOL2(卡片風險管理數據對象列表2)的數據。CDOL2的結構同PDOL結構,會指定卡片風險管理數據對象需要哪些數據元,CDOL2在讀記錄中讀取,利用協助功能模板組建CDOL2對象數據。卡片接收產生應用密文指令后,如果返回正確,則可以順利執行寫卡指令,寫卡指令執行正確后,整個交易結束。此時如果交易正常,在IC卡的交易日志中應能查到最近的這次交易。

2.4.4 生成ARQC

ARQC(授權應用密文)在交易中有卡片產生的一種密文,這個密文送到后臺服務器,后臺服務器會通過驗證這個應用密文的正確與否來確定IC卡的真偽。ARQC通過發送產生應用密文來得到,在產生應用密文的指令中,密文類型要選擇為ARQC,通過讀記錄、解析記錄、組建CDOL1(風險管理數據對象列表1)得到風險管理數據對象1。卡片接收指令后,會返回所需的ARQC。應用密文指令發送之前需要去完成選擇PSE、選擇AID、應用初始化和讀記錄的工作。

2.4.5 ECC交易

ECC(電子現金)交易是接觸式IC卡的一種脫機消費方式。由于交易是在脫機的情況下進行的,所以交易中不涉及聯機的認證過程。在選擇PSE、選擇AID后的GPO(應用初始化)指令中,利用PDOL指明支持電子現金,然后再讀取需要的IC卡記錄,得到相關的認證數據,包括IC卡公鑰證書、發卡行公鑰證書、認證中心公鑰索引、發卡行公鑰余項、IC卡公鑰余項、IC卡公鑰指數、發卡行公鑰指數。記錄讀取完畢后,需要先進行DDA(動態數據認證)認證,通過后再發送產生應用密文(產生TC)的指令,指令執行正確后再發送外部認證指令。指令執行正確,交易則開始對相關交易數據的保存以及終端風險管理進行處理。以上任何一條指令執行中如果發生錯誤,交易即終止。

結 語

本文在超低功耗單片機MSP430F5510的基礎上設計和實現了一款功能豐富的IC卡讀卡器。利用MSP430F5510自帶的全速USB硬件資源實現了HID協議,使得讀卡器可以實現無驅動的使用,方便了讀卡器的使用。金融交易在芯片內部的實現,也可以使得這款讀卡器能作為其他產品的一個模塊,因為其內部實現了相應的RSA算法、3DES算法、哈希算法SHA-1,同時也實現了生成ARQC、寫卡、讀取IC卡信息、讀交易日志、ECC交易。這些交融交易在讀卡器內部的實現,能減少外部應用對金融交易的重復開發,節省資源,同時也大大提高了工作效率。此款讀卡器在實際的應用中有很好的使用效果。

[1]中國人民銀行JR/T 0025.3—2010—中國金融集成電路(IC)卡規范第3部分:與借記/貸記應用無關的IC卡與終端接口規范[S].

[2]王愛英.智能卡技術:IC卡[M].2版.北京:清華大學出版社,2000:23-25.

[3]EMV:Integrated Circuit Card Specifications for Payment Systems[EB/OL].[2011-07].http://www.fi.muni.cz/~xkrhovj/lectures/2006-PA168_EMV_slides.pdf.

[4]ISO/IEC7816-3—2006Identification cards—Integrated circuit cards—Part 3:Cards with contacts—Electrical interface and transmission protocols[S].swizerland,2006.

[5]蘭柯,王卓人.智能卡大全——智能卡的結構、功能、應用[M].3版.北京:電子工業出版社,2002:14-20.

[6]范曉紅,吳今培,張其善.智能卡文件系統的安全訪問機制[J].微計算機應用,2004(1):39-42.

猜你喜歡
指令
聽我指令:大催眠術
ARINC661顯控指令快速驗證方法
測控技術(2018年5期)2018-12-09 09:04:26
LED照明產品歐盟ErP指令要求解讀
電子測試(2018年18期)2018-11-14 02:30:34
殺毒軟件中指令虛擬機的脆弱性分析
電信科學(2016年10期)2016-11-23 05:11:56
巧用G10指令實現橢圓輪廓零件倒圓角
時代農機(2015年3期)2015-11-14 01:14:29
中斷與跳轉操作對指令串的影響
科技傳播(2015年20期)2015-03-25 08:20:30
基于匯編指令分布的惡意代碼檢測算法研究
一種基于滑窗的余度指令判別算法
歐盟修訂電氣及電子設備等產品安全規定
家電科技(2014年5期)2014-04-16 03:11:28
MAC指令推動制冷劑行業發展
汽車零部件(2014年2期)2014-03-11 17:46:27
主站蜘蛛池模板: 久久婷婷六月| 亚洲大尺码专区影院| 国产国语一级毛片在线视频| 日韩第一页在线| 国产91高跟丝袜| 亚洲国产午夜精华无码福利| 波多野结衣无码中文字幕在线观看一区二区| 亚洲天堂日韩av电影| 婷婷中文在线| 麻豆精品国产自产在线| 女人爽到高潮免费视频大全| 国产精品欧美激情| 亚洲婷婷在线视频| 好吊色妇女免费视频免费| 国产99视频精品免费观看9e| 国产成人无码AV在线播放动漫| jizz亚洲高清在线观看| 538国产视频| 人妻精品全国免费视频| 波多野结衣一区二区三区88| 青草精品视频| 亚洲激情99| 国产成人精品高清在线| 2021亚洲精品不卡a| 国产美女丝袜高潮| 国产精品中文免费福利| 青青草原国产免费av观看| 久久精品国产999大香线焦| 国产福利影院在线观看| 97亚洲色综久久精品| 四虎在线观看视频高清无码| 日韩小视频在线观看| 国产福利一区视频| 国产免费网址| 国产成人91精品免费网址在线| 国产精品刺激对白在线 | 亚洲无码免费黄色网址| 农村乱人伦一区二区| 国产在线日本| 国产91久久久久久| 精品综合久久久久久97超人该| 国产成人精品一区二区不卡| 18禁不卡免费网站| 亚洲Av激情网五月天| 亚洲aaa视频| 在线高清亚洲精品二区| 久久99精品久久久久久不卡| 福利在线不卡一区| 亚洲女人在线| 国产内射一区亚洲| 亚洲欧美综合另类图片小说区| 国产一级毛片网站| 亚洲精品在线观看91| 国产无码性爱一区二区三区| h网站在线播放| 午夜不卡视频| 欧美成人在线免费| 精品综合久久久久久97| 永久免费AⅤ无码网站在线观看| www.av男人.com| 欧美日韩精品在线播放| 天堂成人在线| 亚洲精品第五页| 久久久久久午夜精品| 91探花国产综合在线精品| www中文字幕在线观看| 国产v精品成人免费视频71pao| 久久国产精品无码hdav| 91美女视频在线观看| 久久大香伊蕉在人线观看热2| 五月综合色婷婷| 欧美日韩福利| 国产综合网站| 国产小视频a在线观看| 日本五区在线不卡精品| 国产精品福利导航| 亚洲国产精品一区二区第一页免| 国产欧美日韩va另类在线播放| 超碰精品无码一区二区| 日本爱爱精品一区二区| aa级毛片毛片免费观看久| 伊人查蕉在线观看国产精品|