專利名稱::一種利用pos終端實現(xiàn)交易數(shù)據(jù)冗余備份的方法
技術領域:
:本發(fā)明涉及銀行金融應用領域中一種交易數(shù)據(jù)備份的方法,尤其是涉及一種借助IC卡對POS終端產(chǎn)生的交易數(shù)據(jù)進行備份的方法。
背景技術:
:POS終端一般系指銀行金融應用的POS系統(tǒng),它是由銀行設置在商業(yè)網(wǎng)點或特約商戶的信用卡授權終端機和銀行計算機系統(tǒng)通過公用數(shù)據(jù)交換網(wǎng)聯(lián)機構成的電子轉(zhuǎn)帳服務系統(tǒng)。它的功能是提供持卡人在銷售點購物或消費,通過電子轉(zhuǎn)帳系統(tǒng)直接扣帳或信用記帳的服務。在本發(fā)明中,POS終端指符合《中國金融集成電路(IC)卡規(guī)范(V2.0)》(以下簡稱PBOC規(guī)范),能夠操作IC卡的終端機。PBOC規(guī)范是金融IC卡支付應用的標準,對金融IC卡及其應用系統(tǒng)的設計、研制和使用有較為完善的規(guī)定。目前,POS終端每做完一筆交易,都要在POS終端內(nèi)的非易失性存儲器中保存該筆交易數(shù)據(jù)。當一天交易結(jié)束后,操作員軋帳,POS終端向銀行計算機系統(tǒng)傳送當天的交易明細帳目,供清算和結(jié)算使用。這種軋帳方式容易產(chǎn)生一個問題在軋帳前,如果由于自然的或人為的因素導致POS終端損壞,或者POS終端不能與銀行計算機系統(tǒng)聯(lián)網(wǎng),都將導致POS終端保存的明細帳目不能送達銀行計算機系統(tǒng),從而延誤銀行與商戶間的帳目清算和結(jié)算。而如果采用人工核對帳目的方法,顯然又費時費力,并且容易出錯。有的POS終端采取在終端內(nèi)部保存多份交易明細帳目的方法,這種方法在一定程度可以減少因POS終端故障而導致帳目數(shù)據(jù)丟失的問題,但不能從根本上解決前面所說的問題。分析問題產(chǎn)生的原因,可以發(fā)現(xiàn),其關鍵在于交易帳目數(shù)據(jù)單點存儲,即每臺POS終端只保存本終端產(chǎn)生的交易數(shù)據(jù),并且每臺POS終端與銀行計算機系統(tǒng)間只有一條網(wǎng)絡通路。這樣,一旦該終端發(fā)生故障,或者由于外部原因不能聯(lián)網(wǎng),POS終端的交易帳目數(shù)據(jù)都不能傳送給銀行計算機系統(tǒng)。目前,在國際和國內(nèi)的銀行金融應用中,用可靠性和安全性高的ic卡取代傳統(tǒng)的磁條卡已經(jīng)成為一個共識。銀行金融應用中所使用的ic卡是一種CPU卡,不僅具備運算能力,而且有多應用功能,即一張卡片上可以存儲多個應用,且應用間互相隔離,安全性高。
發(fā)明內(nèi)容針對上述問題,本提出一種交易數(shù)據(jù)冗余備份方法,這一方法旨在克服交易帳目數(shù)據(jù)單點存儲而導致的問題。本發(fā)明所設計的交易數(shù)據(jù)冗余備份機制,正是基于多應用IC卡的特性而實現(xiàn)的。這種機制的基本思想是利用IC卡具有隨用戶移動的特點,把IC卡當作存儲器,而用戶持有的IC卡和POS終端共同構成一個分布式移動存儲系統(tǒng);POS終端的交易帳目數(shù)據(jù)可以在這個分布式移動存儲系統(tǒng)內(nèi)流動,從而產(chǎn)生多個備份;由于每臺POS終端與銀行計算機系統(tǒng)間都有網(wǎng)絡通路,因而同一筆交易數(shù)據(jù)的多個備份可以從多點傳遞給銀行計算機系統(tǒng)。為了實現(xiàn)上述發(fā)明目的,本發(fā)明采用了如下的技術方案,一種利用P0S終端實現(xiàn)交易數(shù)據(jù)冗余備份的方法,所述方法包括步驟一,初始化,在IC卡上建立冗余數(shù)據(jù)備份區(qū);步驟二,當所述IC卡在POS終端上進行交易時,所述P0S終端讀取所述IC卡上所述冗余數(shù)據(jù)備份區(qū)中前次冗余備份數(shù)據(jù);步驟三,所述POS終端檢查所述前次冗余備份數(shù)據(jù)的有效性,如果有效,進入步驟四,無效則進入步驟五;步驟四,所述POS終端保存所述IC卡中讀取的前次冗余備份數(shù)據(jù);步驟五,所述POS終端將本終端的前一筆交易數(shù)據(jù)寫入所述IC卡的冗余數(shù)據(jù)備份區(qū);步驟六,判斷是否需要提交?若否,返回步驟二;步驟七,所述POS終端上傳包括前次冗余備份數(shù)據(jù)以及交易日志的信息給銀行計算機系統(tǒng)。比較好的是,所述冗余備份數(shù)據(jù)和前一筆交易數(shù)據(jù)包括發(fā)卡方標識、IC卡應用序列號、系統(tǒng)定義交易類型、終端機編號、終端交易序號、脫機交易序號、交易金額、交易日期、交易時間、交易驗證碼。比較好的是,所述步驟五中,所述POS終端在讀取終端前一筆交易數(shù)據(jù)后以安全報文方式把該筆交易數(shù)據(jù)寫入所述IC卡的冗余數(shù)據(jù)備份區(qū)中。比較好的是,所述安全報文方式是使用專用備份區(qū)的應用密鑰計算含新冗余備份數(shù)據(jù)的APDU報文的MAC碼。比較好的是,所述步驟七進一步包括,所述銀行計算機系統(tǒng)根據(jù)IC卡應用序列號、終端機編號、終端交易序號、IC卡脫機交易序號判斷所述冗余備份數(shù)據(jù)是否重復,如果重復,則不進入該系統(tǒng)。比較好的是,所述步驟三中,所述POS終端根據(jù)所述冗余備份數(shù)據(jù)的有效標志字段的值來判斷有效性。下面,參照附圖,對于熟悉本
技術領域:
的人員而言,從對本發(fā)明方法的詳細描述中,本發(fā)明的上述和其他目的、特征和優(yōu)點將顯而易見。圖1是本發(fā)明的一個概括性示意圖。圖2是實現(xiàn)本發(fā)明的一個流程圖。具體實施例方式圖1示意了一個由P0S1、P0S2和網(wǎng)銀系統(tǒng)3組成的一個系統(tǒng)框圖,其中一特定用戶采用IC卡IO在POSI上交易,之后又會跨時間跨空間在P0S2上發(fā)生交易,第一次交易后,P0S1會將本機和IC卡10中備份數(shù)據(jù)讀出,送給網(wǎng)銀系統(tǒng)3,第二次交易后,P0S2也是將本機和IC卡IO中的備份數(shù)據(jù)讀出,送網(wǎng)銀系統(tǒng)3。在每次交易過程中,IC卡10同時還要寫入該POS機上的冗余日志。實際上是通過IC卡搭載POS機的交易數(shù)據(jù),換句話說,即將用戶的IC卡作為一個移動U盤來使用,待做下一筆交易時,將相關信息交下一個POS機存儲。下面結(jié)合圖2詳細介紹本方法的實現(xiàn)過程。步驟21,IC卡的初始化處理包括,預先在IC卡上建立一個冗余數(shù)據(jù)備份區(qū),用于對交易數(shù)據(jù)進行冗余備份;步驟22,當IC卡在POS終端上進行交易時,POS終端發(fā)送讀數(shù)據(jù)(ReadBinary)命令,讀IC卡上前一次的冗余備份數(shù)據(jù)(下面簡稱為舊冗余備份數(shù)據(jù)),即從IC卡的冗余數(shù)據(jù)備份區(qū)中讀取備份數(shù)據(jù)。該備份數(shù)據(jù)的內(nèi)容包括發(fā)卡方標識、IC卡應用序列號、系統(tǒng)定義交易類型、終端機編號(PSAM)、終端交易序號(PSAM)、脫機交易序號、交易金額、交易日期(終端)、交易時間(終端)、交易驗證碼。步驟23,POS終端檢查該舊冗余備份數(shù)據(jù)的有效性,具體是根據(jù)冗余備份數(shù)據(jù)的有效標志字段的值來判斷有效性,如果有效,轉(zhuǎn)步驟24;如果無效,則跳過下一步,直接轉(zhuǎn)步驟25;下表中給出了該冗余備份數(shù)據(jù)包含的字段及其相關信息。<table>tableseeoriginaldocumentpage7</column></row><table><table>tableseeoriginaldocumentpage8</column></row><table>步驟24,POS終端保存從IC中讀取的舊冗余備份數(shù)據(jù);步驟25,POS終端把本終端的前一筆交易數(shù)據(jù)以安全報文方式寫入到IC卡的冗余數(shù)據(jù)備份區(qū)中(以下稱為新冗余備份數(shù)據(jù))。具體來說,就是使用密鑰計算含新冗余備份數(shù)據(jù)的APDU報文的MAC碼。需要進一步說明的是,對P0S終端,為保證IC卡及備份數(shù)據(jù)的安全,向IC卡寫入備份數(shù)據(jù)時采用PBOC規(guī)范所規(guī)定的安全報文方式,這種方式要對數(shù)據(jù)進行加密和校驗,以防止數(shù)據(jù)被破壞或篡改;具體來說,備份數(shù)據(jù)包括不可偽造的交易驗證碼;根據(jù)PBOC規(guī)范對支付交易流程的規(guī)定,IC卡使用內(nèi)部密鑰對關鍵的交易要素數(shù)據(jù)進行加密,生成交易驗證碼;此外,IC卡本身具備的安全機制保證各應用間互相隔離,因此對IC卡備份應用的操作不會影響到IC卡的金融應用;步驟26,POS終端根據(jù)PBOC規(guī)范執(zhí)行金融支付交易流程;步驟27,POS終端在軋帳或其它恰當時機,上傳終端交易日志和存儲的IC卡新冗余備份數(shù)據(jù)至銀行計算機系統(tǒng);步驟28,銀行計算機系統(tǒng)判斷交易數(shù)據(jù),如果合法且未重復上傳,將交易數(shù)據(jù)存儲在銀行計算機系統(tǒng)中,對于重復接收到的交易數(shù)據(jù),銀行計算機系統(tǒng)將自動剔除;銀行計算機系統(tǒng)將使用交易驗證碼對交易數(shù)據(jù)進行校驗,如果校驗結(jié)果正確,則認為該筆交易合法。這里將涉及到銀行系統(tǒng)對數(shù)據(jù)合法性和重復性的判斷。其中,合法性的判斷是標準內(nèi)容,重復性的判斷是獨有的。具體來說,銀行計算機系統(tǒng)根據(jù)IC卡應用序列號、終端機編號(PSAM)、終端交易序號(PSAM)、IC卡脫機交易序號這四項交易要素判斷交易的唯一性。本發(fā)明中采用的交易數(shù)據(jù)冗余備份機制的應用,建立在多應用ic卡基礎上,并且利用IC卡隨用戶移動的特點,對交易數(shù)據(jù)進行多點備份存儲,從而解決交易數(shù)據(jù)單點存儲方式在故障情況下導致數(shù)據(jù)丟失或不能向銀行計算機系統(tǒng)傳送的問題。同時,這一機制對IC卡銀行金融應用的安全性沒有影響,因為在CPU卡上存儲的多個應用互相隔離,某個應用上進行的交易或操作與其它應用無關。按照PBOC規(guī)范的規(guī)定,IC卡至少要保存最近IO筆交易記錄。在每次交易完成時,IC卡將保存這些交易記錄,其內(nèi)容主要包括交易序號、交易金額、曰期和時間等。這些交易記錄由IC卡自行保存,并且只能由外部系統(tǒng)讀取,不能修改。本發(fā)明設計的交易數(shù)據(jù)冗余備份機制是對PBOC規(guī)范的有益補充,體現(xiàn)在以下兩個方面一是PBOC規(guī)范規(guī)定保存的交易數(shù)據(jù)不能夠作為備份數(shù)據(jù)使用,因為這些交易數(shù)據(jù)不含交易驗證碼,雖然這些交易數(shù)據(jù)在卡片內(nèi)部不可以被更改,但是不能夠保證從卡片內(nèi)讀出后,這些數(shù)據(jù)不被更改;二是卡片內(nèi)部的交易數(shù)據(jù)只記錄卡片自身所進行的交易,范圍很窄,有較大的局限性。對于現(xiàn)有POS系統(tǒng)而言,應用交易數(shù)據(jù)冗余備份機制可以有兩點改進首先,POS系統(tǒng)的交易數(shù)據(jù)具有多個分離的存儲備份,降低了系統(tǒng)的風險;其次,同一筆交易數(shù)據(jù)的多個備份可以從多點傳遞給銀行計算機系統(tǒng)(參見圖2),有效避免因網(wǎng)絡線路原因而造成數(shù)據(jù)不能上傳的問題。前面提供了對較佳實施例的描述,以使本領域內(nèi)的任何技術人員可使用或利用本發(fā)明。對這些實施例的各種修改對本領域內(nèi)的技術人員是顯而易見的,可把這里所述的總的原理應用到其他實施例而不使用創(chuàng)造性。因而,本發(fā)明將不限于這里所示的實施例,而應依據(jù)符合這里所揭示的原理和新特征的最寬范權利要求1、一種利用POS終端實現(xiàn)交易數(shù)據(jù)冗余備份的方法,所述方法包括步驟一,初始化,在IC卡上建立冗余數(shù)據(jù)備份區(qū);步驟二,當所述IC卡在POS終端上進行交易時,所述POS終端讀取所述IC卡上所述冗余數(shù)據(jù)備份區(qū)中前次冗余備份數(shù)據(jù);步驟三,所述POS終端檢查所述前次冗余備份數(shù)據(jù)的有效性,如果有效,進入步驟四,無效則進入步驟五;步驟四,所述POS終端保存所述IC卡中讀取的前次冗余備份數(shù)據(jù);步驟五,所述POS終端將本終端的前一筆交易數(shù)據(jù)寫入所述IC卡的冗余數(shù)據(jù)備份區(qū);步驟六,判斷是否需要提交?若否,返回步驟二;步驟七,所述POS終端上傳包括前次冗余備份數(shù)據(jù)以及交易日志的信息給銀行計算機系統(tǒng)。2、根據(jù)權利要求1所述的利用p0s終端實現(xiàn)交易數(shù)據(jù)冗余備份的方法,其特征在于,所述冗余備份數(shù)據(jù)和前一筆交易數(shù)據(jù)包括發(fā)卡方標識、ic卡應用序列號、系統(tǒng)定義交易類型、終端機編號、終端交易序號、脫機交易序號、交易金額、交易日期、交易時間、交易驗證碼。3、根據(jù)權利要求1或2所述的利用p0s終端實現(xiàn)交易數(shù)據(jù)冗余備份的方法,其特征在于,所述步驟五中,所述pos終端在讀取終端前一筆交易數(shù)據(jù)后以安全報文方式把該筆交易數(shù)據(jù)寫入所述IC卡的冗余數(shù)據(jù)備份區(qū)中。4、根據(jù)權利要求3所述的利用P0S終端實現(xiàn)交易數(shù)據(jù)冗余備份的方法,其特征在于,所述安全報文方式是使用專用備份區(qū)的應用密鑰計算含新冗余備份數(shù)據(jù)的APDU報文的MAC碼。5、根據(jù)權利要求4所述的利用P0S終端實現(xiàn)交易數(shù)據(jù)冗余備份的方法,其特征在于,所述步驟七進一步包括,所述銀行計算機系統(tǒng)根據(jù)IC卡應用序列號、終端機編號、終端交易序號、IC卡脫機交易序號判斷所述冗余備份數(shù)據(jù)是否重復,如果重復,則不進入該系統(tǒng)。6、根據(jù)權利要求5所述的利用P0S終端實現(xiàn)交易數(shù)據(jù)冗余備份的方法,其特征在于,所述步驟三中,所述POS終端根據(jù)所述冗余備份數(shù)據(jù)的有效標志字段的值來判斷有效性。全文摘要本發(fā)明提出一種利用POS終端實現(xiàn)交易數(shù)據(jù)冗余備份的方法,所述方法包括步驟一,初始化,在IC卡上建立冗余數(shù)據(jù)備份區(qū);步驟二,當所述IC卡在POS終端上進行交易時,所述POS終端讀取所述IC卡上所述冗余數(shù)據(jù)備份區(qū)中前次冗余備份數(shù)據(jù);步驟三,所述POS終端檢查所述前次冗余備份數(shù)據(jù)的有效性,如果有效,進入步驟四,無效則進入步驟五;步驟四,所述POS終端保存所述IC卡中讀取的前次冗余備份數(shù)據(jù);步驟五,所述POS終端將本終端的前一筆交易數(shù)據(jù)寫入所述IC卡的冗余數(shù)據(jù)備份區(qū);步驟六,判斷是否需要提交?若否,返回步驟二;步驟七,所述POS終端上傳包括前次冗余備份數(shù)據(jù)以及交易日志的信息給銀行計算機系統(tǒng)。文檔編號G07F19/00GK101458844SQ20071017209公開日2009年6月17日申請日期2007年12月11日優(yōu)先權日2007年12月11日發(fā)明者翔張,鄭琢非申請人:結(jié)行信息技術(上海)有限公司