(東南大學教育部智能運輸系統研究中心,210096,南京∥第一作者,碩士研究生)
軌道交通儲值票票卡結構與操作流程研究
宋亞娜 張 寧 何鐵軍
(東南大學教育部智能運輸系統研究中心,210096,南京∥第一作者,碩士研究生)
以Mifare Stand 1K票卡介質為研究對象,在分析儲值票功能需求的基礎上,明確票卡結構各功能區劃分。分析了儲值票初始化、預賦值、售票、充值、進站、出站、查詢等操作的流程,結合操作流程,歸納票卡操作時所涉及的數據,以字段的形式存放在票卡結構中,同時合理分配票卡存儲器空間,以符合應用規范并滿足多樣化的運營需求。
城市軌道交通;儲值票;票卡結構;操作流程
First-author's address ITS Institute of Ministry of Education,Southeast University,210096,Nanjing,China
隨著我國城市軌道交通(以下簡稱“城軌”)的線網日益擴大,軌道交通票務管理(包括售票、檢票、清分和結算)已成為各軌道交通運營公司的一項繁瑣而艱巨的任務,而信息技術的發展使得自動售檢票系統(Automatic Fare Collection,AFC)在世界上許多城市的軌道交通系統中投入了運行[1]。AFC系統以票卡為基礎,利用計算機管理購票、檢票、計費、收費、統計的全過程,提高了軌道交通系統的運行效率和效益。運營公司可通過實時監控掌握每條線路和車站的客流量、客流動態等信息,為軌道交通的運營、管理和決策及突發事件的預測提供大量的科學數據和依據[2-4]。
票卡作為AFC系統的核心,是記錄乘客乘車信息的媒介和載體,能記錄車票的系統編號、安全信息、車票種類、個人信息、進出站信息、金額、有效期、歷史交易記錄等,與車站現場設備共同完成自動售票、檢票功能,是乘客使用軌道交通運輸服務付費和乘車的憑證。
票卡種類包括單程票、儲值票和員工票等。儲值票是供乘客多次乘坐軌道交通的票卡,包括計程類儲值票、計次類儲值票及月票等[5-6]。相對單程票而言,儲值票省去了購票環節,且票種豐富,面向更加穩定的乘客群體。由于儲值票包含大量的信息,發行牽涉面廣,涉及環節多,因此,應合理地設計儲值票的票卡結構和操作流程,確保儲值票票卡安全,滿足乘客多樣化需求。
1.1 功能需求
作為乘客與城軌系統的直接媒介,儲值票支持乘客在城軌系統中一切與乘坐有關的活動。為了使乘客方便、快捷、安全地使用儲值票,儲值票必須具備如下基本功能:
(1)能夠被初始化并記錄初始化信息;
(2)儲值票在發售時,能夠按照乘客的要求生成特定類型的票種,并記錄發售信息;
(3)乘客能夠憑借儲值票進、出站,并在出站的時候支付本次乘坐的費用;
(4)當儲值票金額用完時,乘客可對儲值票進行充值,之后可繼續使用;
(5)購買記名票的乘客有權限查詢自己儲值票的相關信息,如余額、以往的交易情況等。
本文將儲存在儲值票中的數據信息以字段的形式在扇區的塊中進行儲存,將各字段合理分配到卡結構中,并設計出對應的操作流程來操作這些字段,實現上述各項功能。
1.2 票卡結構功能區劃分
本文選取Mifare Stand 1K作為票卡介質。Mifare Stand 1K是基于扇區操作的一種票卡,價格便宜,安全性較好,但不提供防撕裂機制。針對儲值票的功能需求,設置如下功能區:
(1)發行區---記錄儲值票發行初始化時的相關數據信息,完成與初始化相關的操作。
(2)發售區---記錄儲值票發售時的相關數據信息。
(3)錢包值區---存放余額。出站時從錢包里扣款支付乘坐費用,乘客查詢時顯示儲值票的余額。
(4)錢包信息區---記錄本卡錢包的有效期、使用區域或區段及充值的相關信息。
(5)公共信息區---包含票卡操作序列號、MAC(Message Authentication Code,交易認證碼),以及旅程交易信息區、錢包值區、錢包信息區及交易日志區的指針。
(6)旅程交易信息區---記錄票卡出入站編號、出入站設備編號、出入站日期等信息。
(7)交易狀態區---包含首次交易日期、阻止標志、拒絕出入站原因及日期等信息。
(8)交易日志區---記錄每次交易的日期、交易站編號等信息。
1.3 防撕裂操作
為保證儲值票票卡的安全性,對公共信息區、旅程交易信息區、錢包值區進行防撕裂操作保護。
(1)公共信息區:公共信息區操作時,首先讀取公共信息區的兩個數據塊的內容,并分別檢查其MAC是否正確(MAC可以是本塊內容的循環冗余校驗)。若兩個塊的MAC驗證正確,則檢查兩個塊的序列碼,序列碼大的為有效塊;若只有一個塊的MAC驗證正確,則該塊有效。公共信息區采用讀A寫B或讀B寫A的方式,即如果當前是第一區有效,下次改寫時將數據存入第二區,反之,如果當前是第二區有效,則下次改寫時將數據存入第一區。公共信息區每次改寫時序列號增1,交易流程將根據序列號來判斷當前有效塊。
(2)旅程交易信息區:旅程交易信息區也是一個扇區兩個相同結構的塊,在任一時刻,只有一個塊有效。對旅程交易信息區操作采用讀A寫B或讀B寫A的方式,即從當前有效的塊中讀取數據,修改后寫入另一個塊中。
(3)錢包值區:錢包值區也采用類似的方法,即從當前有效的錢包中讀取值,進行加值或減值后,轉移到另一個錢包。
整個交易流程大致為:
步驟1:從公共信息區中讀取數據,根據序列號等信息,判斷公共信息區當前有效塊;
步驟2:對公共信息區指定的旅程交易信息區、錢包值區進行操作。
步驟3:將公共信息區序列號增1,并寫入另一個塊,操作完成。
可以看出,防撕裂票卡操作機制可以確保交易的完整性,只要最后一步操作不完成,不管上次票卡交易從何處中斷,都能從頭恢復。
1.4 密鑰管理系統
為保證密鑰系統的封閉性和保密性,密鑰在生成過程中應采用逐級分散的方式,子密鑰不能推導母密鑰,同級密鑰不能互相推導。常見的單機架構密鑰管理系統如圖1所示。

圖1 密鑰管理系統組成
密鑰管理系統完成密鑰管理的各項功能,包括各類密鑰的分散、生成等,同時把這些生成的密鑰安裝到相應的SAM(Security Access Module,安全存取模塊)卡、SAM母卡、SAM卡傳輸卡中。
儲值票操作包括初始化、預賦值、售票、進站、出站、充值、查詢等。本文分析各操作流程的實現過程,為票卡結構設計做鋪墊。
(1)初始化:初始化操作流程部署于E/S(Encoder/Sorter)車票編碼分揀機中,分為新卡初始化和舊卡初始化。若對新卡進行初始化,首先,讀取發行區票卡的物理卡號和邏輯卡號,驗證卡認證碼,并向發行區寫入初始化信息。初始化信息包括城市代碼、行業代碼、初始化批次、初始化日期及初始化次數等。然后,分別對發售區、錢包值區、錢包信息區、公共信息區、旅程交易信息區、交易日志區等寫入相應信息,并設置各區密鑰和控制位。最后,驗證各區讀密鑰,讀取各區內容,完成初始化操作。如對舊卡進行初始化,各區寫操作之前應先驗證寫密碼,不必重新設置密鑰和控制位,另外,初始化次數應加1,初始化日期保持不變。
(2)預賦值:預賦值操作流程也部署于E/S車票編碼分揀機中。進行預賦值操作時:首先,應讀取并驗證發行區中的城市代碼、行業代碼及卡認證碼,以判斷該票卡是否為本系統卡;然后,計算各數據區密鑰,驗證發售區寫密鑰并寫入發售信息,包括票種、是否記名、車票有效期模式、車票有效期等;最后,驗證發售區讀密鑰,讀發售區內容,完成預賦值操作。
(3)售票:售票操作流程部署于半自動售票機中。售票只針對初始化后的卡進行,即卡內除發行區外,其他數據區中全為0。售票只寫發售區,有關錢的操作屬于充值流程。進行售票操作時:首先,判斷該票卡是否為本系統卡;然后,計算各數據區密鑰Key A/Key B,驗證發售區寫密鑰并寫入發售信息,包括發行票卡的SAM卡的ID、發售日期、發售站編號、押金、持卡人信息等;最后,驗證發售區讀密鑰,讀發售區內容,完成售票操作。
(4)充值:充值操作流程也部署于半自動售票機中。進行充值操作時:首先,判斷該票卡是否為本系統卡;接著,計算各數據區密鑰,選擇當前有效的公共信息區(防撕裂操作),判斷該票卡是否在黑名單中,并根據公共信息區中旅程交易信息區、錢包值區和錢包信息區的指針選擇當前有效區;最后,驗證當前有效錢包區寫密碼,根據票種判斷是計程類車票、計次類車票還是月票等其他票種,更新當前有效錢包值區和錢包信息區信息(防撕裂操作),包括有效期起止日期、區域代碼、區段中車站1代碼、區段中車站2代碼、充值前剩余金額、充值金額及累計充值金額等,完成充值操作。
(5)進站:進站操作流程部署于閘機中。進行進站操作時,首先,判斷該票卡是否為本系統卡。接著,計算各數據區密鑰,選擇當前有效的公共信息區(防撕裂操作),判斷該票卡是否在黑名單中,根據公共信息區中旅程交易信息區、錢包值區和錢包信息區的指針選擇當前有效區塊。然后,判斷出入站是否匹配,若出入站匹配,或出入站不匹配但上次交易處于出入站免檢模式,則更新錢包區信息(防撕裂操作),在旅程交易信息區寫入入站信息(防撕裂操作),包括入站站編號、入站設備編號、入站日期時間等;若出入站不匹配且上次交易不處于出入站免檢模式,則表明上次交易不完整。最后,驗證公共信息區寫密碼,更新公共信息區信息,完成進站操作。若未能進站,在交易狀態區寫入未進站原因(防撕裂操作),驗證公共信息區寫密碼,更新公共信息區信息。
(6)出站:出站操作流程部署于閘機中。與進站操作相同:首先,確定各有效區塊;然后讀取當前有效旅程交易信息區的進站信息,更新錢包區信息(防撕裂操作),包括金額、扣款等,在旅程交易信息區寫入出站信息(防撕裂操作),包括出站站編號、出站設備編號、出站日期時間等;接著,在交易日志區寫入交易日志信息,包括交易日期時間、交易站編號、交易金額、交易后錢包剩余金額等;最后,驗證公共信息區寫密碼,更新公共信息區信息,完成出站操作。若未能出站,在交易狀態區寫入未出站原因(防撕裂操作),驗證公共信息區寫密碼,更新公共信息區信息。
(7)查詢:查詢流程部署于半自動售票機中。若儲值票持卡人想知道票卡剩余金額,或者當遭遇閘機阻攔時想知道未能入站或出站原因,可到車站服務中心查詢。進行查詢操作時:首先,判斷該票卡是否為本系統卡;然后,計算各數據區密鑰,選擇當前有效的公共信息區(防撕裂操作),判斷該票卡是否在黑名單中,并根據公共信息區中旅程交易信息區、錢包值區和錢包信息區的指針選擇當前有效區塊;最后,根據要求讀取相關區域內容,完成查詢操作。
結合儲值票操作流程,設計票卡結構各功能區所需的字段。
(1)發行區字段:如表1所示。
(2)發售區字段:為滿足不同乘客對于乘坐的需求,面向乘客發售的儲值票有不同的票種,發售時需根據乘客的要求和情況獲取乘客的信息。發售區的字段如表2。
(3)錢包值區字段:錢包值區考慮防撕裂操作,其字段如表3。
(4)錢包信息區字段:錢包信息區記錄錢包的有效期、使用區域或區段及充值的相關信息,不考慮防撕裂操作,其字段如表4所示。

表1 發行區字段

表2 發售區字段

表3 錢包值區字段

表4 錢包信息區字段
(5)公共信息區字段:公共信息區考慮防撕裂操作,其字段如表5所示。

表5 公共信息區字段
(6)旅程交易信息區字段:旅程交易信息區考慮防撕裂操作,其字段如表6所示。

表6 旅程交易信息區字段
(7)交易狀態區字段:見表7。

表7 交易狀態區字段
(8)交易日志區字段:見表8。

表8 交易日志區字段
儲值票票卡結構和票卡操作流程的合理設計可以滿足軌道交通AFC系統的運營需求,滿足乘客多樣化的出行需求,保證儲值票票卡安全及票務系統的有效運行。在分析儲值票功能需求的基礎上,劃分票卡結構功能區,考慮防撕裂操作以保證票卡安全。分析初始化、預賦值、售票、充值、進站、出站和查詢等七個票卡操作流程,結合票卡操作流程,對發行區、發售區、錢包值區、錢包信息區、公共信息區、旅程交易信息區、交易狀態區和交易日志區等八個區的字段進行詳細設計并合理分配空間大小,為軌道交通AFC系統建設提供參考。
[1] 黎江.城市軌道交通線網AFC系統標準體系的建設[J].都市快軌交通,2009,22(5):56.
[2] 徐明.軌道交通自動售檢票系統設計[D].上海:復旦大學,2005.
[3] Shiibashi A.Tonomous decentralized high-speed processing technology and the application in an integrated IC card fixedline and wireless system[C]∥Proceedings of Autonomous Decentralized Systems,2005:215.
[4] 田衛剛,李瑾.沈陽地鐵票卡設置種類的探討[J].鐵道運輸與經濟,2008,30(9):56.
[5] 王國光,史天運.自動檢票系統設計及其實現[J].中國鐵道科學,2005(9):112.
[6] 張寧,何鐵軍,王健,等.城市軌道交通系統票種設置及票務規則分析[J].武漢理工大學學報:信息與管理工程版.2008,30(1):78.
[7] 康崇皓.軌道交通自動售檢票系統票卡方案探討[J].城市軌道交通研究,2012(5):26.
Structure and Operation Procedure of Stored Value Ticket in Rail Transit
Song Yana,Zhang Ning,He Tiejun
In order to standardize ticket business in rail transit,guarantee the order movement of ticket system,strengthen the safety of stored value ticket,the Mifare Stand 1K is taken as the studyobject and the functional requirements for the ticket is analyzed.Based on the functional requirements,the definition of all functional zones in ticket structure is conducted,and the operation procedure of stored value ticket is analyzed.Through combining the operational procedures,all data involved in ticket operation are concluded and kept in ticket structure in the field-formatted form,and the memory space of the ticket is assigned rationally in the meantime.The aim of this paper is to design a rational ticket structure and operation procedure,so as to meet the diversified operation demands.
urban rail transit;storedvalue ticket;card structure;operation procedure
U 293.22
2012-10-10)