IC卡的制作流程
發(fā)布時(shí)間:2025-09-15 09:26:38
IC卡制作流程分為:IC卡從設(shè)計(jì)到發(fā)行,可歸納成以下幾個(gè)步驟: 根據(jù)應(yīng)用系統(tǒng)對(duì)卡的功能和安全的要求設(shè)計(jì)卡內(nèi)芯片(或考慮設(shè)計(jì)通用芯片),并根據(jù)工藝水平和成本對(duì)智能卡的MPU、存儲(chǔ)器容量和COS提出具體要求,或?qū)壿嫾用芸ǖ倪壿嫻δ芎痛鎯?chǔ)區(qū)的分配提出具體要求。
卡內(nèi)集成電路設(shè)計(jì)
其設(shè)計(jì)過程與ASIC(專用集成電路)的設(shè)計(jì)類似,包括邏輯設(shè)計(jì)、邏輯模擬、電路設(shè)計(jì)、電路模擬、版圖設(shè)計(jì)和正確性驗(yàn)證等,可借助于Workview、Mentor或Cadence等計(jì)算機(jī)輔助設(shè)計(jì)工具來完成。
對(duì)于智能卡,在國外經(jīng)常采用工業(yè)標(biāo)準(zhǔn)微處理器作為核心,調(diào)整存儲(chǔ)器的種類和容量,而不必重新設(shè)計(jì)。比較可行的辦法是,由國內(nèi)設(shè)計(jì)COS,由國外半導(dǎo)體廠家生產(chǎn)芯片,為可靠起見,這些芯片應(yīng)該有自保護(hù)能力。
軟件設(shè)計(jì)(僅適于智能卡)
包括COS和應(yīng)用軟件的設(shè)計(jì),有相應(yīng)的開發(fā)工具可供選用。由于智能卡的安全性與COS有關(guān),因此在國家重要經(jīng)濟(jì)部門和機(jī)密部門使用的智能卡,應(yīng)寫入中國自行設(shè)計(jì)的COS。 在單晶硅圓片上制作電路
設(shè)計(jì)者將設(shè)計(jì)好的版圖或COS代碼提交給芯片制造廠。制造廠根據(jù)設(shè)計(jì)與工藝過程的要求,產(chǎn)生多層掩膜版。在一個(gè)圓片上可制作幾百~幾千個(gè)相互獨(dú)立的電路,每個(gè)電路即為一個(gè)小芯片。小片上除有按IC卡標(biāo)準(zhǔn)(8個(gè)觸點(diǎn))設(shè)計(jì)的壓焊塊外,還應(yīng)有專供測(cè)試用的探針壓塊,但要注意這些壓塊是否會(huì)給攻擊者以可乘之機(jī)。
測(cè)試并在E2PROM中寫入信息
利用帶測(cè)試程序的計(jì)算機(jī)控制探頭測(cè)試圓片上的每個(gè)芯片。在有缺陷的芯片上做標(biāo)記,在測(cè)試合格的芯片中寫入制造廠代號(hào)等信息。如用戶需要制造廠在E2PROM中寫入內(nèi)容,也可在此時(shí)進(jìn)行。
運(yùn)輸碼也可在此時(shí)寫入。運(yùn)輸碼是為了防止卡片在從制造廠運(yùn)輸?shù)桨l(fā)行商的途中被竊而采取的防衛(wèi)措施,是僅為制造廠和發(fā)行商知道的密碼。發(fā)行商接收到卡片后要首先核對(duì)運(yùn)輸碼,如核對(duì)不正確,卡將自鎖,燒斷熔絲。 先核對(duì)運(yùn)輸碼。如為邏輯加密卡,運(yùn)輸碼可由制造廠寫入用戶密碼區(qū),發(fā)行商核對(duì)正確后改寫成用戶密碼對(duì)于智能卡,在此時(shí)可進(jìn)行寫入密碼、密鑰、建立文件等操作。
操作完畢,將熔絲燒斷。此后該卡片進(jìn)入用戶方式,而且永遠(yuǎn)也不能回到以前的工作方式,這樣做也是為了保證卡的安全。 電擦除式可編程只讀存儲(chǔ)器(Electrically Erasable Programmable Read Only Memory)是IC卡技術(shù)的核心。該技術(shù)使晶體管密度增大,改善了性能,增加了容量,達(dá)到在同樣面積上存儲(chǔ)更大數(shù)據(jù)量的目的。作為數(shù)據(jù)或程序的存儲(chǔ)空間,EEPROM的數(shù)據(jù)可以至少保持 10年的時(shí)間,擦寫次數(shù)達(dá)10萬次以上。EEPROM技術(shù)還提供了很大的靈活性,通過設(shè)置不可修改的標(biāo)志位,能夠?qū)EPROM單元轉(zhuǎn)變成可編程只讀存儲(chǔ)器、只讀存儲(chǔ)器或不可讀的保密存儲(chǔ)單元。
該技術(shù)的先進(jìn)性使得帶有保密存儲(chǔ)器的IC卡得到快速發(fā)展和應(yīng)用。例如,在各種收費(fèi)系統(tǒng)(公用電話、電表、公路收費(fèi)等等)及訪問控制等領(lǐng)域獲得了廣泛的應(yīng)用。以EEPROM為核心的 CPU卡也廣泛應(yīng)用于移動(dòng)電話、銀行部門、多應(yīng)用卡及要求有公共密鑰算法的高安全性應(yīng)用領(lǐng)域。 射頻識(shí)別RFID(Radio Frequency Identification)技術(shù)是一種利用電磁波進(jìn)行信號(hào)傳輸?shù)淖R(shí)別方法,被識(shí)別的物體本身應(yīng)具有電磁波的接收和發(fā)送裝置。RFID系統(tǒng)使用的通信頻段范圍為<135kHz或>300MHz~GHz級(jí)。
射頻識(shí)別IC卡是一種使用電磁波和非觸點(diǎn)來與終端通信的 IC卡。使用此卡時(shí),不需要把卡片插入到特定讀寫器插槽之中。一般來說,通信距離在幾厘米至1米范圍內(nèi)。射頻識(shí)別卡使用得較多,而且發(fā)展?jié)摿^大。
射頻識(shí)別IC卡有主動(dòng)式和被動(dòng)式之分。主動(dòng)式卡是指卡片需要主動(dòng)靠近讀卡器,用戶需要將卡在讀卡器上讀卡區(qū)內(nèi)讀取卡上信息才完成交易;被動(dòng)式卡不用出示卡片,只要走過讀卡器的范圍,即可讀取卡上的信息,完成交易。 IC卡中的CPU卡采用特殊的加密技術(shù),不僅可以驗(yàn)證信息的正確性,同時(shí)還能檢查通信雙方身份的合法性,從而保證信息傳送的安全性。這是通過IC卡中存儲(chǔ)的銀行密鑰與讀卡器兼黑盒子中存儲(chǔ)的銀行密鑰的相互校驗(yàn)來實(shí)現(xiàn)的,從而保證了持卡者本身和讀卡器雙方都具有合法身份。總之,采用先進(jìn)的加密技術(shù)后,不僅具有高度安全性、嚴(yán)謹(jǐn)性,還具有靈活便捷、成本低等優(yōu)勢(shì)。
除上述技術(shù)之外,還有Java卡技術(shù)、IC卡ISO標(biāo)準(zhǔn)化技術(shù)、IC卡生物認(rèn)證技術(shù)及數(shù)據(jù)壓縮技術(shù)等軟、硬件新技術(shù)。IC卡讀寫器要能讀寫符合ISO7816標(biāo)準(zhǔn)的IC卡。IC卡接口電路作為IC卡與IFD內(nèi)的CPU進(jìn)行通信的唯一通道,為保證通信和數(shù)據(jù)交換的安全與可靠,其產(chǎn)生的電信號(hào)必須滿足嚴(yán)格的時(shí)序要求。
時(shí)序要求
IC卡接口電路對(duì)IC卡插入與退出的識(shí)別,即卡的激活和釋放,有很嚴(yán)格的時(shí)序要求。如果不能滿足相應(yīng)的要求,IC卡就不能正常進(jìn)行操作;嚴(yán)重時(shí)將損壞IC卡或IC卡讀寫器。
(1)激活過程
為啟動(dòng)對(duì)卡的操作,接口電路應(yīng)按圖1所示順序激活電路:
◇RST處于L狀態(tài);
◇根據(jù)所選擇卡的類型,對(duì)VCC加電A類或B類,
◇VPP上升為空閑狀態(tài);
◇接口電路的I/O應(yīng)置于接收狀態(tài);
◇向IC卡的CLK提供時(shí)鐘信號(hào)(A類卡1~5MHz,B類卡1~4MHz)。
在t’a時(shí)間對(duì)IC卡的CLK加時(shí)鐘信號(hào)。I/O線路應(yīng)在時(shí)鐘信號(hào)加于CLK的200個(gè)時(shí)鐘周期(ta)內(nèi)被置于高阻狀態(tài)Z(ta 時(shí)間在t’a之后)。時(shí)鐘加于CLK后,保持RST為狀態(tài)L至少400周期(tb)使卡復(fù)位(tb在t’a之后)。在時(shí)間t’b,RST被置于狀態(tài)H。I/O上的應(yīng)答應(yīng)在RST上信號(hào)上升沿之后的400~40 000個(gè)時(shí)鐘周期(tc)內(nèi)開始(tc在t’b之后)。
在RST處于狀態(tài)H的情況下,如果應(yīng)答信號(hào)在40 000個(gè)時(shí)鐘周期內(nèi)仍未開始,RST上的信號(hào)將返回到狀態(tài)L,且IC卡接口電路對(duì)IC卡產(chǎn)生釋放。
(2)釋放過程
當(dāng)信息交換結(jié)束或失敗時(shí)(例如,無卡響應(yīng)或卡被移出),接口電路應(yīng)按圖2所示時(shí)序釋放電路:
◇RST應(yīng)置為狀態(tài)L;
◇CLK應(yīng)置為狀態(tài)L(除非時(shí)鐘已在狀態(tài)L上停止);
◇VPP應(yīng)釋放(如果它已被激活);
◇I/O應(yīng)置為狀態(tài)A(在td時(shí)間內(nèi)沒有具體定義);
◇VCC應(yīng)釋放。
電源電壓
IC卡接口電路應(yīng)能在表1規(guī)定的電壓范圍內(nèi),向IC卡提供相應(yīng)穩(wěn)定的電流。
時(shí)鐘信號(hào)
IC卡接口電路向卡提供時(shí)鐘信號(hào)。時(shí)鐘信號(hào)的實(shí)際頻率范圍在復(fù)位應(yīng)答期間,應(yīng)在以下范圍內(nèi):A類卡,時(shí)鐘應(yīng)在1~5MHz;B類卡,時(shí)鐘應(yīng)在1~4MHz。
復(fù)位后,由收到的ATR(復(fù)位應(yīng)答)信號(hào)中的F(時(shí)鐘頻率變換因子)和D(比特率調(diào)整因子)來確定。
時(shí)鐘信號(hào)的工作周期應(yīng)為穩(wěn)定操作期間周期的40%~60%。當(dāng)頻率從一個(gè)值轉(zhuǎn)換到另一個(gè)值時(shí),應(yīng)注意保證沒有比短周期的40%更短的脈沖。
驅(qū)動(dòng)模塊
(1)數(shù)據(jù)結(jié)構(gòu)的確定
編輯頭文件ICDATA.H,確定在驅(qū)動(dòng)模塊程序中應(yīng)用的公用數(shù)據(jù)結(jié)構(gòu)。驅(qū)動(dòng)模塊的最終目的是讀取和寫入卡數(shù)據(jù)處理,所以規(guī)范整齊的數(shù)據(jù)結(jié)構(gòu)是必須的。可以定義一個(gè)數(shù)據(jù)結(jié)構(gòu)體來實(shí)現(xiàn)卡數(shù)據(jù)的存儲(chǔ)區(qū)域、數(shù)據(jù)地址索引、控制標(biāo)志位等,如右圖圖示:
這樣在驅(qū)動(dòng)模塊中,只需要STruct ICDATA iccdata;一條語句便可定義全部的卡處理數(shù)據(jù)結(jié)構(gòu)定義;而Ic_fops則定義了設(shè)備操作映射函數(shù)結(jié)構(gòu)。從這個(gè)數(shù)據(jù)結(jié)構(gòu)看,我們實(shí)現(xiàn)了IC卡設(shè)備的打開、讀、寫和監(jiān)控函數(shù)。
(2)硬件接口控制線控制子函數(shù)
以開發(fā)的硬件系統(tǒng)平臺(tái)為例的硬件控制接口操作函數(shù)之一,用于控制IC卡的復(fù)位信號(hào)置。針對(duì)不同硬件平臺(tái),函數(shù)內(nèi)部操作方法不盡相同。類似的其它操作函數(shù)還有:模塊初始化函數(shù)是模塊開發(fā)過程中必不可少的處理函數(shù),用于實(shí)現(xiàn)設(shè)備的初始化、中斷初始化及處理、設(shè)備注冊(cè)等。在上面函數(shù)中,首先應(yīng)用Initicdata實(shí)現(xiàn)了卡數(shù)據(jù)的初始化,然后定義了隊(duì)列數(shù)據(jù)。再進(jìn)行了中斷處理函數(shù)的綁定、中斷申請(qǐng)以及中斷初始化。最后實(shí)現(xiàn)了IC卡字符設(shè)備的申請(qǐng),設(shè)備名為IC。