一種非接觸卡數(shù)據(jù)處理方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本申請(qǐng)涉及信息處理技術(shù),尤其涉及一種非接觸卡數(shù)據(jù)處理方法及裝置。
【背景技術(shù)】
[0002] 智能卡(smartcard)是一種在塑料卡片中內(nèi)置有存儲(chǔ)器和/或微處理器等構(gòu)成 的用于實(shí)現(xiàn)身份鑒別、數(shù)據(jù)簽名、訪問(wèn)控制等功能的1C卡。由于其便于攜帶和使用,已經(jīng) 被廣泛地應(yīng)用于人們的日常生活中,例如,公司中的身份標(biāo)識(shí)(badge)、GSM通信系統(tǒng)中的 SIM(用戶身份模塊)卡、電子身份證、EMV(Eurocard-Mastercard-Visa)卡或所謂的電子錢 包(e-purse)等等。
[0003] 從通信方式的角度可以將智能卡分為:接觸卡(contactcard)和非接觸卡 (contactlesscard)。接觸卡需要插入到讀卡器中進(jìn)行操作。在使用接觸卡時(shí),讀卡器的 接口與卡上的觸點(diǎn)接觸,通過(guò)這些觸點(diǎn)向接觸卡供電并與其通信。非接觸卡通過(guò)射頻接口 與其它設(shè)備(讀卡器)通信。當(dāng)進(jìn)入讀卡器天線的有效范圍內(nèi)時(shí),非接觸卡就會(huì)被激活通 過(guò)內(nèi)置的天線與讀卡器進(jìn)行無(wú)線通信。
[0004] 非接觸卡,由于是通過(guò)無(wú)線通信與其它設(shè)備交互,因此具有很多優(yōu)點(diǎn)。例如,因?yàn)?在使用時(shí)無(wú)需從錢包或書(shū)包中取出并插入讀卡器,因此用戶使用起來(lái)很方便,提高了操作 速度,降低了丟失的風(fēng)險(xiǎn)并且不會(huì)被讀卡器磨損、延長(zhǎng)了使用壽命。
[0005] 但是,非接觸卡也存在許多技術(shù)上的限制。在非接觸卡與外界通信的過(guò)程中,卡片 自動(dòng)接收數(shù)據(jù),在數(shù)據(jù)接收過(guò)程中,基于功耗的考慮,要求非接觸卡進(jìn)入到休眠模式不做任 何操作,接收由硬件完成,在數(shù)據(jù)接收完成后,通過(guò)中斷或者事件的方式對(duì)卡片進(jìn)行喚醒再 開(kāi)始后續(xù)工作。這導(dǎo)致了在休眠過(guò)程中,卡片沒(méi)有任何操作進(jìn)行,所以卡片的后續(xù)處理要在 自動(dòng)接收的過(guò)程完成后啟動(dòng)。
[0006] 上述處理方式雖然在一定程度上節(jié)約了功耗,但是由于數(shù)據(jù)的接收和數(shù)據(jù)的處理 過(guò)程是串行的,從而導(dǎo)致非接觸式卡的響應(yīng)時(shí)間增長(zhǎng)。
【發(fā)明內(nèi)容】
[0007] 有鑒于此,本申請(qǐng)?zhí)峁┮环N非接觸卡數(shù)據(jù)處理方法,包括:
[0008]S1,修改接收中斷函數(shù),將接收程序添加到接收中斷函數(shù)中;
[0009]S2,非接觸式卡開(kāi)始接收數(shù)據(jù);
[0010] S3,接收一個(gè)字節(jié)完成后自動(dòng)觸發(fā)接收中斷函數(shù);
[0011]S4,對(duì)接收的一個(gè)字節(jié)的數(shù)據(jù)進(jìn)行處理;
[0012]S5,確定全部數(shù)據(jù)是否接收完成?若否,則跳轉(zhuǎn)至S2;若是,則執(zhí)行S6;
[0013] S6,結(jié)束。
[0014] 在本申請(qǐng)優(yōu)選實(shí)施例中,所述修改接收中斷函數(shù)將接收程序添加到接收中斷函數(shù) 中包括在接收過(guò)程中并行進(jìn)行其他運(yùn)算,進(jìn)行代碼的預(yù)處理,縮短卡片對(duì)指令的響應(yīng)時(shí)間。
[0015] 在本申請(qǐng)優(yōu)選實(shí)施例中,所述接收過(guò)程中并行進(jìn)行其他運(yùn)算包括:取消非接觸式 卡在數(shù)據(jù)接收時(shí)的卡片的休眠模式,使得在對(duì)數(shù)據(jù)接收的過(guò)程中可對(duì)數(shù)據(jù)進(jìn)行處理。
[0016] 在本申請(qǐng)優(yōu)選實(shí)施例中,所述對(duì)接收的一個(gè)字節(jié)的數(shù)據(jù)進(jìn)行處理包括所述處理包 括解密以及使用處理函數(shù)進(jìn)行處理。
[0017] 本申請(qǐng)還提供了一種非接觸卡數(shù)據(jù)處理裝置,該裝置包括:
[0018] 接收部件,用于接收數(shù)據(jù);
[0019] 處理部件,包括:
[0020] 修改單元:修改接收中斷函數(shù),將接收程序添加到接收中斷函數(shù)中;
[0021] 運(yùn)行單元:運(yùn)行接收中斷函數(shù),在接收一個(gè)字節(jié)完成后自動(dòng)觸發(fā)接收中斷函數(shù);
[0022] 操作單元:對(duì)接收的一個(gè)字節(jié)的數(shù)據(jù)進(jìn)行處理;
[0023] 控制單元:控制以上各個(gè)單元,在操作單元處理完成后觸發(fā)接收部件繼續(xù)接收數(shù) 據(jù)。
[0024] 在本申請(qǐng)優(yōu)選實(shí)施例中,所述修改接收中斷函數(shù)將接收程序添加到接收中斷函數(shù) 中包括在接收過(guò)程中并行進(jìn)行其他運(yùn)算,進(jìn)行代碼的預(yù)處理,縮短卡片對(duì)指令的響應(yīng)時(shí)間。
[0025] 在本申請(qǐng)優(yōu)選實(shí)施例中,所述接收過(guò)程中并行進(jìn)行其他運(yùn)算包括:取消非接觸式 卡在數(shù)據(jù)接收時(shí)的卡片的休眠模式,使得在對(duì)數(shù)據(jù)接收的過(guò)程中可對(duì)數(shù)據(jù)進(jìn)行處理。
[0026] 在本申請(qǐng)優(yōu)選實(shí)施例中,所述對(duì)接收的一個(gè)字節(jié)的數(shù)據(jù)進(jìn)行處理包括所述處理包 括解密以及使用處理函數(shù)進(jìn)行處理。
[0027] 在本申請(qǐng)優(yōu)選實(shí)施例中,所述在操作單元處理完成后觸發(fā)接收部件繼續(xù)接收數(shù)據(jù) 具體為:當(dāng)接收的一個(gè)字節(jié)的數(shù)據(jù)處理完畢后,確定全部數(shù)據(jù)是否接收完成,若否,則通知 接收單元接收下一字節(jié);若是,則結(jié)束處理。
【附圖說(shuō)明】
[0028] 為了更清楚地說(shuō)明本申請(qǐng)實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本 申請(qǐng)中記載的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,還可以根據(jù)這些附圖獲得其他 的附圖。
[0029] 圖1是本申請(qǐng)中非接觸性數(shù)據(jù)處理方法流程圖;
[0030] 圖2是本申請(qǐng)中非接觸性數(shù)據(jù)處理裝置結(jié)構(gòu)圖。
【具體實(shí)施方式】
[0031] 本申請(qǐng)中公開(kāi)一種非接觸性數(shù)據(jù)處理方法及其裝置,其通過(guò)取消非接觸式卡在數(shù) 據(jù)接收時(shí)的卡片的休眠模式,使得在對(duì)數(shù)據(jù)接收的過(guò)程中也可對(duì)數(shù)據(jù)進(jìn)行處理,從而解決 了非接觸式卡響應(yīng)時(shí)間過(guò)長(zhǎng)的問(wèn)題。
[0032] 具體地說(shuō),本申請(qǐng)?jiān)诜墙佑|通信過(guò)程中(利用使用14443協(xié)議的非接觸通信),利 用卡片接收過(guò)程中自動(dòng)接收的功能,在接收過(guò)程中實(shí)現(xiàn)對(duì)卡片接收到的部分?jǐn)?shù)據(jù)進(jìn)行提前 處理,以用來(lái)突破響應(yīng)時(shí)間性能的限制。
[0033] 本申請(qǐng)中公開(kāi)了一種非接觸性數(shù)據(jù)處理方法,該方法包括:
[0034] 步驟S1、修改接收中斷函數(shù),將接收程序添加到接收中斷函數(shù)中。
[0035] 所述接收中斷函數(shù)預(yù)置在智能卡內(nèi)部,智能卡內(nèi)部提供在特定條件下可使用的中 斷,可以根據(jù)中斷向量表轉(zhuǎn)到相應(yīng)地在中斷函數(shù)。
[0036] 在正常的接收過(guò)程中,基于功耗的考慮,一般都是將卡片設(shè)置為休眠或者低功耗 模式。由于接收的過(guò)程中是功耗的峰值,進(jìn)行其他操作會(huì)增大電廠的功耗,在本發(fā)明中,修 改接收中斷函數(shù)為:在接收過(guò)程中并行進(jìn)行其他運(yùn)算,進(jìn)行代碼的預(yù)處理,縮短卡片對(duì)指令 的響應(yīng)時(shí)間。
[0037] 修改接收終端函數(shù)的偽代碼為:
[0040] 通過(guò)上述代碼實(shí)現(xiàn)取消非接觸式卡在數(shù)據(jù)接收時(shí)的卡片的休眠模式,使得在對(duì)數(shù) 據(jù)接收的過(guò)程中可對(duì)數(shù)據(jù)進(jìn)行處理。
[0041] 步驟S2、非接觸式卡開(kāi)始接收數(shù)據(jù)。
[0042] 步驟S3、接收一個(gè)字節(jié)完成后自動(dòng)觸發(fā)接收中斷函數(shù)。
[0043] 步驟S4、對(duì)接收的一個(gè)字節(jié)的數(shù)據(jù)進(jìn)行處理。
[0044] 所述處理包括解密以及使用處理函數(shù)進(jìn)行處理。
[0045] 由于整個(gè)傳輸?shù)臄?shù)據(jù)都是經(jīng)過(guò)加密的,是密文數(shù)據(jù),只有經(jīng)過(guò)解密后才能使用接 收的數(shù)據(jù)。同時(shí),解密過(guò)程也是