喬 瑞
(陜西國際商貿(mào)學院 信息工程學院,陜西 咸陽 712046)
現(xiàn)在人們對出行方式的要求逐漸提高,各種打車軟件層出不窮,其中最典型的當屬滴滴出行,但滴滴出行中存在各種問題。針對車聯(lián)網(wǎng)隱私保護的方式有很多種,目前采用最多的是PKI認證機制。林璟鏘等[1]在PKI的綜述中提到,該方式中TA需要為每個車輛頒發(fā)唯一編號并提供多個匿名證書,這樣會導致TA存儲和撤銷證書負擔過重。Vija等[2]提出了利用假名頒發(fā)的匿名證書對車輛進行認證和批認證,該方式雖然能夠解決PKI中TA存儲和撤銷證書負擔過重的問題,但經(jīng)過王青龍等[3]的安全分析后發(fā)現(xiàn)該方案不能抵抗假冒攻擊、偽造攻擊等。因此,既要實現(xiàn)車輛與乘客的點對點通信,又要保障通信的安全,就需要通過區(qū)塊鏈技術來完成。
近幾年,區(qū)塊鏈技術得到了迅速發(fā)展。它是一種特定的數(shù)據(jù)結構,其主要按照時間順序?qū)?shù)據(jù)區(qū)塊以鏈條的方式組合而成,通過密碼學保證消息的不可篡改性和不可偽造性。通過部署智能合約完成去中心化過程,當條件達到觸發(fā)合約的條件時,合約模塊會自動執(zhí)行,從而完成合約中設定的一系列的功能。
本文提出的基于區(qū)塊鏈的車聯(lián)網(wǎng)客運系統(tǒng)主要由:乘客端、司機端、智能篩選合約、訂單合約、支付合約和共享系統(tǒng)幾個部分組成,如圖1所示。其中,底層去中心化系統(tǒng)通過采用區(qū)塊鏈技術構建去中心化的交易系統(tǒng)。
圖1 車聯(lián)網(wǎng)客運系統(tǒng)工作流程
車聯(lián)網(wǎng)客運系統(tǒng)的工作流程如下述步驟所示:(1)首先,司機端、乘客端注冊審核;然后,乘客在乘客端發(fā)送出行請求,司機在司機端做出回應。(2)首先,通過智能篩選合約篩選最佳司機,本系統(tǒng)設置5 km范圍以內(nèi)的,評價分數(shù)平均值在4分及其以上的(5分為總分)司機通過篩選。其次,通過篩選的司機在司機端確認接單,生成訂單。(3)生成訂單后,會觸發(fā)訂單合約的自動執(zhí)行。(4)區(qū)塊鏈中的礦工節(jié)點會對該訂單進行全程跟蹤。(5)司機在服務端確認到達終點后,觸發(fā)支付合約的自動執(zhí)行,完成支付。(6)乘客評價完成后自動觸發(fā)智能篩選合約,該合約會記錄該司機的評價分數(shù),供以后篩選司機時作為參考。
本文使用B/S架構與Truffle框架實現(xiàn)本文所提出的基于區(qū)塊鏈的車聯(lián)網(wǎng)客運系統(tǒng)的各個模塊,通過Web3.js實現(xiàn)3個智能合約模塊與各個接口間的連接。圖2記錄了乘客和司機去中心化支付過程,包含乘客請求節(jié)點創(chuàng)建支付合約和乘客與司機點對點支付,支付形式為以太幣。支付合約搭建在以太坊系統(tǒng)上,實現(xiàn)了乘客和司機的點對點支付,無須第三方系統(tǒng)的干預,不僅具有不可篡改性、不可偽造性等,而且實現(xiàn)了高效率交易,不產(chǎn)生中介費。
圖2 去中心化支付合約系統(tǒng)
本文針對現(xiàn)在滴滴出行等客運出行軟件中存在的中心化嚴重、安全性差等問題,提出了基于區(qū)塊鏈技術的車聯(lián)網(wǎng)客運系統(tǒng)的解決方案。本文從乘客和司機的角度給出了車聯(lián)網(wǎng)客運系統(tǒng)完整的設計方案和工作流程,并且在以太坊客戶端上運行成功。相對于現(xiàn)有滴滴出行系統(tǒng),該系統(tǒng)能夠?qū)崿F(xiàn)去中心化,提高通信效率,保障了乘客的安全性和評價的真實性。