喬 瑞
(陜西國際商貿學院 信息工程學院,陜西 咸陽 712046)
現在人們對出行方式的要求逐漸提高,各種打車軟件層出不窮,其中最典型的當屬滴滴出行,但滴滴出行中存在各種問題。針對車聯網隱私保護的方式有很多種,目前采用最多的是PKI認證機制。林璟鏘等[1]在PKI的綜述中提到,該方式中TA需要為每個車輛頒發唯一編號并提供多個匿名證書,這樣會導致TA存儲和撤銷證書負擔過重。Vija等[2]提出了利用假名頒發的匿名證書對車輛進行認證和批認證,該方式雖然能夠解決PKI中TA存儲和撤銷證書負擔過重的問題,但經過王青龍等[3]的安全分析后發現該方案不能抵抗假冒攻擊、偽造攻擊等。因此,既要實現車輛與乘客的點對點通信,又要保障通信的安全,就需要通過區塊鏈技術來完成。
近幾年,區塊鏈技術得到了迅速發展。它是一種特定的數據結構,其主要按照時間順序將數據區塊以鏈條的方式組合而成,通過密碼學保證消息的不可篡改性和不可偽造性。通過部署智能合約完成去中心化過程,當條件達到觸發合約的條件時,合約模塊會自動執行,從而完成合約中設定的一系列的功能。
本文提出的基于區塊鏈的車聯網客運系統主要由:乘客端、司機端、智能篩選合約、訂單合約、支付合約和共享系統幾個部分組成,如圖1所示。其中,底層去中心化系統通過采用區塊鏈技術構建去中心化的交易系統。

圖1 車聯網客運系統工作流程
車聯網客運系統的工作流程如下述步驟所示:(1)首先,司機端、乘客端注冊審核;然后,乘客在乘客端發送出行請求,司機在司機端做出回應。(2)首先,通過智能篩選合約篩選最佳司機,本系統設置5 km范圍以內的,評價分數平均值在4分及其以上的(5分為總分)司機通過篩選。其次,通過篩選的司機在司機端確認接單,生成訂單。(3)生成訂單后,會觸發訂單合約的自動執行。(4)區塊鏈中的礦工節點會對該訂單進行全程跟蹤。(5)司機在服務端確認到達終點后,觸發支付合約的自動執行,完成支付。(6)乘客評價完成后自動觸發智能篩選合約,該合約會記錄該司機的評價分數,供以后篩選司機時作為參考。
本文使用B/S架構與Truffle框架實現本文所提出的基于區塊鏈的車聯網客運系統的各個模塊,通過Web3.js實現3個智能合約模塊與各個接口間的連接。圖2記錄了乘客和司機去中心化支付過程,包含乘客請求節點創建支付合約和乘客與司機點對點支付,支付形式為以太幣。支付合約搭建在以太坊系統上,實現了乘客和司機的點對點支付,無須第三方系統的干預,不僅具有不可篡改性、不可偽造性等,而且實現了高效率交易,不產生中介費。

圖2 去中心化支付合約系統
本文針對現在滴滴出行等客運出行軟件中存在的中心化嚴重、安全性差等問題,提出了基于區塊鏈技術的車聯網客運系統的解決方案。本文從乘客和司機的角度給出了車聯網客運系統完整的設計方案和工作流程,并且在以太坊客戶端上運行成功。相對于現有滴滴出行系統,該系統能夠實現去中心化,提高通信效率,保障了乘客的安全性和評價的真實性。