英语原文共 12 页,剩余内容已隐藏,支付完成后下载完整资料
区块链网约车服务安全收费的智能合约
摘 要
由于其在票价估算、自动付款和信誉评级方面的巨大优势,网约车服务正日益受到欢迎。然而,如何在驾驶员和乘客之间建立信任,实现安全计费仍然是一个公开的挑战。本文提出了一种新的安全计费协议,通过一个公开可验证的两方区块链上的智能合同消除在线第三方的存在。在提议的安全计费协议,司机和乘客生成一个区块链,其中包含的信息乘坐。驾驶员和乘客分别测量他们自己的轨迹。在每一轮结束时,他们交换当前一轮的轨迹。如果轨迹的差异在一个阈值之内,他们联合计算当前一轮的票价。完成计算后,乘客通过微支付渠道向司机支付当前一轮的票价。司机和乘客在每一轮结束时都会把这一轮产生的信息加入到区块链中。块环链可以被认为是一个乘坐的证据,因为它包含了乘坐的所有信息。通过大量的实验和详细的分析,我们评估了该协议的性能和有效性。
关键词 智能合约;区块链;乘车服务;安全账单
1引言
近年来,传统的出租车服务逐渐被打车服务取代,如优步和滴滴。智能手机上有叫车应用,乘客和司机可以以方便的方式安排乘车。与传统的出租车服务相比,叫车服务在票价估算、自动付款和声誉评级方面具有很大的优势。根据Uber的数据,2017年Uber的用户数量达到了每月4000万,Uber在美国叫车市场的份额达到了77%。在中国,滴滴以超过4.5亿用户主导了打车市场,去年完成了超过74亿次打车。
尽管这项新服务的受欢迎程度很高,但它也带来了新的安全和隐私问题,特别是在建立信任和安全计费方面。特别是,司机和乘客通常是没有任何信任的双方。一方面,行为不端的司机可能打算扩大输出里程和旅行时间,以获得更多的经济奖励。另一方面,当发生纠纷时,乘客可能会因为较少的打车服务费而减少里程和旅行时间。如果考虑动态(或动态)定价,即根据需求调整乘坐成本,这个问题就会变得更加严重。因此,一种新的安全的计费协议是网约车服务的迫切需要。在这项研究中,我们提出了一个新的安全计费协议的基础上块链技术。我们的见解是,区块链自然地体现了一个离散的概念的时间。每当挖掘出一个新块时,这个值就会递增),它可以作为在协议中实现财务公平的可信时钟。特别是行为不当的司机可能会故意延长服务时间和里程,从而过多索取服务费,而乘客可能会提前中止协议,以避免支付费用。但是,如果有一个可信的时钟,就可以利用超时来使这种中止变得明显,这样就可以通过将存款重新分配给诚实的非中止方,从财务上惩罚行为不端的当事方。因此,区块链允许网约车服务双方互不知情的安全交易没有可信的第三方避免高的法律和交易成本。这些贡献可归纳如下:我们提出了一个可公开验证的两方区块链(PTB)协议。证明了基于安全的证书授权协助签名协议可以构造一个安全的PTB协议。我们在通用可组合框架下提供了一个证明。我们引入了一种新的安全计费协议。该协议使得驾驶员和乘客能够自己就位置跟踪和乘车费用达成协议。我们的安全计费协议是一个关于可公开验证的两方区块链的智能合同。
我们为我们的安全计费协议构建了一个评估系统,实验表明我们的协议是可行的。
这篇论文的组织方式如下。在1.1节中,我们描述了这项工作的对手模型。在1.2节中,我们将对安全计费协议进行概述。在第二部分中,我们介绍了背景技术。在第3节中,我们提出了一个PTB协议,并证明了PTB协议的安全性。在第4节中,我们将安全计费协议定义为PTB上的智能合同。在第五部分,我们给出了实验结果。在第六部分中,我们对本文进行了总结,并对未来的工作进行了展望。
1.1对手模式
为了达成协议没有在线信任第三方,司机和乘客需要达成协议一个直观的想法是让驾驶员和乘客使用他们的智能手机全球定位系统(GPS)模组,用以记录行车路线,如果两者的产出相同,则该协定达到。然而,驱动程序可能打算扩大输出英里数和旅行时间,以赚取更多的钱,和乘客可能打算减少里程数旅行时间。与此同时,全球定位系统的资料,他们的自己的智能手机可以修改为自己的缘故。图1我们的安全计费协议的消息流。
在这种情况下,有三类方法来修改GPS信息。在硬件层,可以用一个改进的GPS模块代替GPS模块,输出完全由用户控制。在操作系统层,如果用户具有根权限,则可以更改系统服务生成的GPS信息。在应用程序层上,用户可以使用原始应用程序的修改版本。修改后的应用程序的GPS信息可以被用户提供的伪造数据所替代。在本文中,我们假设驾驶员和乘客都希望完成既定的旅程,因为驾驶员想赚钱,乘客想到达目的地。与此同时,司机打算赚更多的钱,而乘客打算付更少的钱。我们提出一个协议协议,其中报告伪造的全球定位系统信息将被立即发现。
1.2概述
我们提出了我们的安全计费协议的概述。图1显示了诚实的各方之间执行的消息流。在这个协议中,我们采用证书颁发机构(CA)。每一方都可以从CA获得一个证书,其中包括它的身份(id)、公钥(pkid)和CA签名的id和pkid。这些证书可用于对消息进行签名,从而构建经过身份验证的通道。
在执行安全计费协议之前,司机和乘客交换他们的证书,并决定一个票价计算功能,该功能输入旅行时间和一组全球定位系统位置,然后输出票价数额。此外,乘客选择一个支付协议来支付车费。支付协议应该能够生成某种支付的证据。
当驱动程序向乘客发送开始时间t时,协议开始生效。协议的下列部分是循环运行的。每一回合持续相同时间t。回合i从t (i-1)t开始,到t 它结束。我们从两个方面来说明协议的执行:票价统计和区块链的产生。
每当乘客到达目的地,它就向驱动程序发送一个停止消息,以结束协议。块环链和签名的双方在最后一轮可以被视为一个乘坐的证据。在骑行过程中可能会发生错误或纠纷。例如,双方最新的全球定位系统位置的距离超过了预定义的阈值。司机和乘客有两个选择:如果他们相信对方没有作弊,就忽略这个错误;或者停止协议,获得一个区块链,直到停止时间。如果乘客和司机中的任何一方选择停止协议,协议现在已经结束。直到本轮比赛结束,司机才能获得车费。我们的安全计费协议的本质是一个公开可验证的两方区块链上的智能合同。每一轮的位置比较是一种特殊的位置验证方案。接下来,我们将解释这些背景技术。
2.2安全定位
我们假设所有的用户可以通过GPS设备安全地获得他们的位置。这是许多安全的基于位置的服务(如导航和基于位置的地图服务)的一个共同假设。然而,一些攻击目前版本的全球定位系统的报告,特别是对民用信号[15,21]。攻击者可以篡改GPS信号,使受害者获得错误的位置。
2.3职位确认
采用位置验证是避免GPS修改攻击的一种可行方法。位置验证使得验证者p能够在一定时间内证明其地理位置。已经提出了许多位置验证协议。其中一些是在古典设置[1,6,7,9,17,18,20,24-26]。其中一些是量子设置[2,22,23]。
然而,Chandran等人[8]表明,这些位置验证协议都容易受到共谋攻击。一组相互勾结的对手可以证明他们中的一个已经身陷囹圄。一个确实没有人的位置。此外,它们还表明,在经典环境下,计算假设不足以提出抗合谋攻击的位置验证协议。根据这种情况需要额外的假设。因此,在我们的案例中,如果我们想在这种情况下提出一个实用的位置验证方案,我们必须找到一些特殊的条件,以提供额外的假设。在我们的方案中有两个特殊情况。首先,驾驶员利益与乘客利益的冲突。司机更愿意证明路程更长可以赚更多的钱,而乘客更愿意证明路程更短可以花更少的钱。其次,驾驶员和乘客之间的距离很小ーー他们在同一辆车上。有了这两个条件,就可以完成位置验证。
在我们的安全计费协议中,我们提供了司机和乘客之间的相互位置验证。由于利益冲突,司机和乘客被设定为彼此的验证者。在距离较小的情况下,对方位置的验证可以转化为对方位置与自己位置的比较。证明人(司机或乘客)声称其位置为p。
2.4通用可组合安全性
Canetti在[3,5]中总结了一个可信聚合图。他指出,一个协议的安全需求可以通过采用一个可信任方来拥有属性。受信任方已经与所有其他方验证了私有通道。所有其他方只向受信方发送输入,并输出从受信方接收到的消息。受信任的一方完成所有的基本任务。
如果我们能够在一个场景中找到这样一个可信方,那么我们就可以直接按照可信方图获得一个安全协议。如果不存在这样一个可信任的一方,我们必须提出一个协议。为了证明该协议的安全性,我们只需要证明该协议在可信任方图中与该协议一样安全。Canetti为这种设置引入了一个称为通用可组合(universallycompositable,UC)框架的证明框架。本文采用了安全性证明的框架。有关UC框架中的概念和定义的详细信息可以在[3,5]中找到。
2.5相关工作及比较
最近,研究人员提出了许多RHSs[10,16,19]及其背景技术的安全结果[11-13]。本文主要研究了基于安全计费的网络安全计费问题重组人口统计系统。在以前的设计,支付总是发生在结束的乘坐。如果司机报告虚假车费或乘客拒绝支付,则很难为诚实的一方挽回损失,因为受害人不得不付出很大努力(可能比损失更大)来收集证据。为了用更廉价的方式对付行为不端的一方,诚实的一方只能给行为不端的一方提交一个低声誉评级。
我们在旅程结束时用轮付款来代替付款。在每一轮结束时,乘客为当前一轮付钱给司机。因此,如果任何一方作弊,诚实的一方只需承受一轮的损失。此外,在我们的协议中产生的区块链可以作为信誉评级的证据,因为一个低信誉评级与证据比单独一个低信誉评级更令人信服。
3可公开验证的两方区块链
在将PTB协议指定为安全的计费协议之前,我们先描述PTB协议。在本节中,我们将定义PTB协议的功能。然后,我们介绍了如何构建PTB协议。
3.1PTB的功能
我们在图2中给出了一个关于PTB功能性的UC-style定义。Fptb是一个值得信赖的第三方。所有其他各方都使用FPTB认证秘密通道,只与FPTB通信。在FPTB的理想协议中有两个阶段:构建阶段和验证阶段。在构建阶段,双方a和b与可信方FPTB通信,以构建区块链。一个区块链在理想的世界协议只包含一个日志。在验证阶段,FPTB为任何一方提供验证服务,以验证区块链的有效性。
构建阶段从a方向FPTB发送带有另一方身份b、开始时间t和会话idsid的开始消息开始。然后,FPTB将开始时间发送给b。从时间t开始,协议的执行被分成几轮。每一回合持续时间t。回合i从t (i-1)t开始,到t it结束,因为i是1,2,3,..。系统以一个空的日志l00开始。圆形的I、a和b使用新的日志条目(mAi、mBi)扩展日志。A和b分别向FPTB发送入口消息。Fptb将在a和b之间交换条目消息并更新区块链。此外,FPTB调用verify函数来验证wiP是否是MiP的有效见证,其中pa或bFPTB也调用check函数来验证新区块链是否有效。
check的输出无效,FPTB将向a和b发送无效消息,解释无效原因。如果FPTB在回合结束前没有收到来自a或b的任何一条消息,它将向另一方发送一条超时消息。但是,无效消息和超时消息都不会停止构建阶段。构建阶段只有在a或b向FPTB发送带有停止原因的停止消息时才会停止。这意味着a和可以忽略警告并继续协议,或者使用停止消息停止构建阶段。
在验证阶段,任何一方p(例如仲裁员)都可以向FPTB查询具有sessionidsid、roundindexi和witnesseswiA、wiB的日志Li的有效性。Fptb计算验证函数和校验函数,然后将结果发送给p。我们不要求消息是私有的,因为这是一个可公开验证的协议。为了捕获这些信息,FPTB将发送它接收和发送给对手的所有消息。为了清晰起见,我们不把这些信息的转发写在图2中。
3.2 PTB协议
如图3所示,我们提出了一个基于证书颁发机构辅助签名(CAS)协议的PTB协议。在[4]中,Canetti展示了如何提出一个基于签名协议和证书颁发机构(CA)协议的CAS协议。在我们的协议中,所有签名任务都由证书颁发机构辅助的FCERT功能捕获。生成签名和验证签名的详细信息,可在[4]中找到。在我们的协议中,一方p签署消息m并获得签名的行为与p向FCERT发送消息(Sign,sid,m)并在[4]中获得(Signature,sid,m,)的行为是一致的。在实践中,CAS协议可以通过一个带有CA系统的公钥签名方案来实现。我们假设a和b之间的通信信道是经过身份验证的。任何没有身份验证或不符合任何接收格式的消息都将被忽略。Ptb协议分为两个相应的阶段:构造阶段和验证阶段。在构建阶段,a和b相互通信,以构建一个区块链。该协议中的区块链包含一个日志和双方在日志上的签名。构建阶段开始时,甲方向乙方发送开始信息,停止时,甲方或停止发送信息。停止信息应该附加一个停止的理由,例如,一个正常的结束或一方怀疑另一方是否作弊。
在第一轮中,a和b交换他们新的日志记录和从输入中收到的证人。见证wiP是消息MiP(Li-1,mPi)上p的签名,其中包括pa或b,然后,两者都检查新条目和签名是否有效。如果不是,则两者都输出无效的消息。在实践中,如果签名方案以散列和签名方式运行
剩余内容已隐藏,支付完成后下载完整资料
资料编号:[413632],资料为PDF文档或Word文档,PDF文档可免费转换为Word
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。