亚洲狼窝一区二区在线观看-米奇精品一区二区三区在线观看-一区二区三区美女免费作爱视频-av中文字幕不卡在线播放

歡迎您訪問鄭州興邦電子股份有限公司官方網(wǎng)站!
阿里巴巴誠(chéng)信通企業(yè)
全國(guó)咨詢熱線:40000-63966
興邦電子,中國(guó)水控機(jī)第一品牌

聯(lián)系興邦電子

全國(guó)咨詢熱線:40000-63966

售后:0371-55132951/55132952

工廠:河南省 鄭州市 高新區(qū)蓮花街電子電器產(chǎn)業(yè)園

CPU卡發(fā)卡程序設(shè)計(jì)過程中應(yīng)當(dāng)注意的問題

文章出處:http://m.luckydriving.com 作者:中國(guó)一卡通網(wǎng) 收編   人氣: 發(fā)表時(shí)間:2011年09月28日

[文章內(nèi)容簡(jiǎn)介]:構(gòu)建IC卡應(yīng)用系統(tǒng)過程中,如何定義卡中的數(shù)據(jù)信息(相對(duì)邏輯加密卡)或卡中的應(yīng)用類型及其數(shù)據(jù)信息(相對(duì)CPU卡)及將數(shù)據(jù)信息寫入卡中,以便應(yīng)用于系統(tǒng)中進(jìn)行交易是一個(gè)重要環(huán)節(jié)。不管硬件設(shè)備如何,都必須設(shè)計(jì)一套程序軟件來進(jìn)行個(gè)人化。這個(gè)程序軟件通常稱為發(fā)卡程序。本文討論CPU卡發(fā)卡程序設(shè)計(jì)過程中將會(huì)遇到的關(guān)鍵技術(shù)問題及其解決方法。

    1摘要

    構(gòu)建IC卡應(yīng)用系統(tǒng)過程中,如何定義卡中的數(shù)據(jù)信息(相對(duì)邏輯加密卡)或卡中的應(yīng)用類型及其數(shù)據(jù)信息(相對(duì)CPU卡)及將數(shù)據(jù)信息寫入卡中,以便應(yīng)用于系統(tǒng)中進(jìn)行交易是一個(gè)重要環(huán)節(jié)。這一環(huán)節(jié)在業(yè)界通常稱為卡片個(gè)人化??ㄆ瑐€(gè)人化既可以在專門的設(shè)備機(jī)器上進(jìn)行,以便于對(duì)大批量的卡片進(jìn)行個(gè)人化;也可以在PC機(jī)上通過連接IC卡讀寫器進(jìn)行,以便于對(duì)小批量的卡片進(jìn)行個(gè)化。不管硬件設(shè)備如何,都必須設(shè)計(jì)一套程序軟件來進(jìn)行個(gè)人化。這個(gè)程序軟件通常稱為發(fā)卡程序。本文討論CPU卡發(fā)卡程序設(shè)計(jì)過程中將會(huì)遇到的關(guān)鍵技術(shù)問題及其解決方法。
  
    CPU卡發(fā)卡大體可分為三個(gè)組成部分:(1)卡結(jié)構(gòu)建立;(2)密鑰寫入;(3)個(gè)人化數(shù)據(jù)寫入。當(dāng)然,為確保正確發(fā)卡,程序設(shè)計(jì)過程中最好是采用一邊建立卡結(jié)構(gòu),一邊寫入密鑰和個(gè)人化數(shù)據(jù)。  

    2發(fā)卡前的準(zhǔn)備工作
  
    一般地,卡片供應(yīng)商提供卡片時(shí),已經(jīng)對(duì)卡片進(jìn)行過初始化(主要用于對(duì)卡片進(jìn)行測(cè)試),亦即卡片上已經(jīng)建立了主文件(MF)及主密鑰文件(MF下的Keyfile文件),主密鑰文件中也已寫入了初始卡片主控密鑰。
  
    在對(duì)CPU卡建立特定的卡結(jié)構(gòu)及寫入密鑰和數(shù)據(jù)之前,程序設(shè)計(jì)中的第一步應(yīng)該對(duì)卡片進(jìn)行外部認(rèn)證。外部認(rèn)證所使用的密鑰正是初始卡片主控密鑰。
  
    當(dāng)完成外部認(rèn)證后,接下來最好是擦除卡片上已有的卡片結(jié)構(gòu),然后再開始重新建立卡片結(jié)構(gòu)。
  
    許多發(fā)卡程序在設(shè)計(jì)過程中,沒有考慮到擦除卡片上已有的卡片結(jié)構(gòu),而是在完成外部認(rèn)證后直接改寫原有卡片的主密鑰文件的卡片主控密鑰。常見問題是由于原有主密鑰文件創(chuàng)建時(shí)的空間大小不夠,而發(fā)卡程序試圖寫入除卡片主控密鑰外還想寫入卡片維護(hù)密鑰時(shí),勢(shì)必造成寫入空間不夠而導(dǎo)致寫入不成功。
  
    3密鑰文件的建立與密鑰值的寫入
  
    為了獨(dú)立地管理一張卡上不同應(yīng)用之間的安全問題,CPU卡中的每一個(gè)應(yīng)用放在一個(gè)單獨(dú)的ADF中。各個(gè)ADF及其下屬各文件數(shù)據(jù)的訪問(包括改寫、讀?。┲荒軕?yīng)用該ADF下的密鑰文件中的密鑰數(shù)值。為討論方便,此處假設(shè)只有一個(gè)ADF。 

    用戶卡結(jié)構(gòu)中主要存在以下兩個(gè)密鑰文件及相應(yīng)的幾個(gè)密鑰: 

    (1)MF下的密鑰文件(簡(jiǎn)稱KMF),其裝載的密鑰是卡片主控密鑰(簡(jiǎn)稱CCK,以下同);
  
    (2)ADF下的密鑰文件(簡(jiǎn)稱KADF),其裝載的密鑰有應(yīng)用主控密鑰(簡(jiǎn)稱ACK,以下同),應(yīng)用維護(hù)密鑰(簡(jiǎn)稱AMK),及其它應(yīng)用密鑰;
  
    (3)其它密鑰,如口令密鑰PIN,口令解鎖密鑰,DES運(yùn)算密鑰等等。
  
    3.1密鑰文件的創(chuàng)建  

    各密鑰文件在建立時(shí)必須慎重考慮以下兩個(gè)要素:
  
    (1)文件大小的分配;
  
    (2)有關(guān)權(quán)限和密鑰使用后的后續(xù)狀態(tài)值的規(guī)定。
 
    密鑰文件的大小分配取決于要裝載的密鑰個(gè)數(shù)。每個(gè)密鑰均為一條可變長(zhǎng)的記錄,每條記錄的長(zhǎng)度為密鑰數(shù)據(jù)長(zhǎng)度加7。以此可以計(jì)算密鑰文件的大小。在發(fā)卡程序設(shè)計(jì)過程中,常常會(huì)出現(xiàn)因?yàn)槊荑€文件的大小分配不夠而造成后面的密鑰無法寫入。  

    密鑰文件建立過程中的有關(guān)權(quán)限和密鑰使用后的后續(xù)狀態(tài)值的規(guī)定一方面起到對(duì)密鑰文件本身的安全維護(hù)作用,另一方面也將決定對(duì)卡片操作的流程。顯然這個(gè)要素至關(guān)重要。
  
    3.2各密鑰值的寫入
  
    關(guān)于密鑰值的寫入,關(guān)鍵問題是要弄清楚該密鑰要求以何種形式寫入。通常有以下幾種形式:
  
    (1)以明文形式寫入(常見的如口令密鑰PIN的寫入);
  
    (2)以帶線路保護(hù)的形式寫入(要求計(jì)算MAC);
  
    (3)以對(duì)密鑰值進(jìn)行加密后的密文形式寫入(要求計(jì)算DES或3DES);  

    (4)以對(duì)密鑰值進(jìn)行加密并帶線路保護(hù)的形式寫入(要求計(jì)算DES&MAC)。
  
    如果密鑰值的寫入要求加密并帶線路保護(hù),則密鑰值寫入時(shí)須對(duì)該密鑰值進(jìn)行DES&MAC計(jì)算后以密文形式寫入(當(dāng)然卡片操作系統(tǒng)內(nèi)部會(huì)自動(dòng)將其解釋成明文),帶線路保護(hù)的目的是防止密鑰值在寫入的過程中被劫取。如果不要求帶線路保護(hù)寫入,可直接以明文方式寫入。
  
    在發(fā)卡程序設(shè)計(jì)過程中,尤其要注意卡片主控密鑰、應(yīng)用主控密鑰、應(yīng)用維護(hù)密鑰及其它密鑰之間的關(guān)系及其寫入要求。
  
    3.2.1卡片主控密鑰與應(yīng)用主控密鑰
  
    卡片主控密鑰是對(duì)整個(gè)卡片的訪問起控制作用的密鑰,由卡片生產(chǎn)商寫入,由發(fā)卡方替換為發(fā)卡方的卡片主控密鑰。發(fā)卡程序設(shè)計(jì)過程中,在對(duì)卡片進(jìn)行任何操作之前,必須使用卡片主控密鑰作外部認(rèn)證,
  
    應(yīng)用主控密鑰是應(yīng)用的控制密鑰,在卡片主控密鑰控制下寫入。一般地,發(fā)卡方替換卡片的主控密鑰之后,為驗(yàn)證替換工作正確,再用新的卡片主控密鑰作一次外部認(rèn)證。

本文關(guān)鍵詞:發(fā)卡設(shè)計(jì),發(fā)卡,CPU卡,密鑰
回到頂部