基于区块链的车联网矩阵计算安全卸载方案
Secure computation offloading scheme for matrix in Internet of vehicles based on blockchain
通讯作者:
收稿日期: 2022-04-13
基金资助: |
|
Received: 2022-04-13
Fund supported: | 国家自然科学基金资助项目(61873232);浙江省自然科学基金资助项目(LY19F020021);2022年浙江省大学生科技创新活动计划(新苗人才计划)资助项目(2022R426B067) |
作者简介 About authors
刘雪娇(1984—),女,副教授,从事车联网安全的研究.orcid.org/0000-0003-1821-2864.E-mail:
为了保护任务数据的机密性,验证计算结果的正确性,提出基于区块链的车联网矩阵计算安全卸载方案. 该方案利用编写在区块链上的智能合约自动执行计算结果验证过程,保证验证过程的安全性和结果的不可篡改. 方案提出的基于矩阵加法的轻量级矩阵加密方法,简化了矩阵计算卸载加解密的复杂度. 通过与现有方案比较可知,本文方案能够在有效保护车辆的敏感信息的同时,实现对矩阵计算结果正确性的验证. 利用所构建的矩阵加密方法,能够有效地降低车辆侧矩阵加解密的计算开销.
关键词:
A secure computation offloading scheme for matrix in the Internet of Vehicle based on blockchain was proposed in order to protect the confidentiality of the task data and verify the correctness of the computation results. The smart contract was used based on blockchain to automatically execute the verification process of the computation results, which can ensure the security of the verification process and the tamper resistance of the verification result. A lightweight matrix encryption method was proposed based on matrix addition, which can simplify the complexity of encryption and decryption in matrix computation offloading. The proposed scheme can effectively protect the sensitive information of the vehicle and verify the correctness of the matrix computation results compared with the existing schemes. The computing overhead of encryption and decryption on the vehicle side can be effectively reduced by the matrix encryption method.
Keywords:
本文引用格式
刘雪娇, 宋庆武, 夏莹杰.
LIU Xue-jiao, SONG Qing-wu, XIA Ying-jie.
近年来,越来越多的研究学者结合移动边缘计算(mobile edge computing, MEC)与车联网,提出车辆边缘计算(vehicular edge computing, VEC)[1]框架,利用部署在网络边缘的MEC服务器解决车辆对计算资源的需求,减轻云计算带来的高时延负担. VEC框架被广泛应用在自动驾驶[2]、增强现实和车载游戏[3]等车载应用中. 在边缘计算环境中,将计算任务卸载给边缘设备的同时,带来了各种安全和隐私问题[4]. 车辆卸载的计算任务中可能包含一些敏感信息,例如车辆的位置和行驶轨迹,恶意节点窃取原始数据会导致信息泄露. 利用完全同态加密(fully homomorphic encryption, FHE)方法可以对任意函数进行基于密文的计算,然而目前现有的FHE方案存在大量的取模和幂运算[5],难以在实际场景中应用[6-7].
由于MEC服务器处在开放式的网络环境,恶意节点可能会攻击MEC服务器,造成MEC服务器计算结果出错[8-9]. Zhang等[10-11]利用第三方服务器,对计算结果的正确性进行验证,但存在验证者与计算方合谋攻击和被恶意攻击造成验证出错的问题. 区块链技术具有去中心化、防篡改和公开透明的特性,可以在分布式环境中实现无可信第三方的交易认证与信息记录[12],保障车辆卸载的任务数据在传输、存储及计算过程中的安全性. 结合区块链和VEC框架,可以为车联网环境下的安全威胁提供新的解决方案[13]. 综上所述,车联网在边缘计算中,如何轻量级、安全地卸载计算任务,保护任务机密性和车辆隐私,如何安全、可靠地验证计算结果的正确性,成为目前亟待解决的研究问题.
1. 相关工作
1.1. 车辆边缘计算
为了缩短车联网虚拟现实(virtual reality, VR)应用程序的完成时间,Zhou等[16]利用MEC服务器,提出用于VR的并行计算和传输的协作方法. 他们将任务分为2个子任务,使得任务可以在MEC服务器和车辆上同时单独处理. Mourad等[17]考虑到未来人工智能驱动的自动驾驶车辆使用的入侵检测程序产生的大量计算任务,避免集中式云服务带来的高延时,提出基于VEC的雾检测方案. 该方案将入侵检测任务卸载到任务附近的车辆节点上进行计算,使用遗传算法最大化卸载生存能力,最小化计算执行时间和能耗. 自动驾驶的实现依赖大量的传感器数据,但资源有限的车辆端往往没有足够的计算能力来处理数据. 为了解决该问题,Cui等[18]结合MEC服务器和云服务器,设计分布式激光雷达即时定位与地图构建算法,实现任务在车辆、MEC服务器和云服务器上协同计算. 由于MEC服务器处在开放式的网络环境中,恶意节点可能通过攻击MEC服务器,使得服务器计算结果错误. 若车辆使用错误的计算结果指导自身行为,则将误导车辆,危害车辆驾驶安全,因此验证MEC服务器计算结果的正确性是十分重要的.
1.2. 区块链在车联网中的应用
为了解决车联网计算卸载中因节点之间的不合作或者恶意攻击造成的资源共享不可信、不透明的问题,Wang等[19]设计多步骤智能合约,实现安全计算资源共享框架,将参与者的行为记录上链,防止参与者的自私行为,利用智能合约来激励车辆共享计算资源. Liao等[20]考虑到车辆和计算节点在激励机制下存在的抵赖攻击和欺骗攻击,设计基于区块链和智能合约的安全任务卸载方案,通过在卸载前收取双方的数字货币,利用智能合约对恶意行为进行惩罚,在保护计算数据隐私的同时,实现了公平的计算卸载. 为了解决MEC服务器中存在不公平或有偏差的资源分配问题,Islam等[21]提出基于区块链的管理架构,以提高边缘计算资源管理的透明度,通过智能合约自动化执行,减少人为干预.
1.3. 基于智能合约的结果正确性验证
Avizheh等[22]针对多服务器计算卸载框架下的结果可以验证存在的复制攻击(copy attack),使用智能合约作为第三方验证者,提高验证过程的安全性,基于智能合约编写有效抵御攻击的协议扩展,实现双服务器下的计算结果安全验证. 为了解决激励机制下自私节点的搭便车行为造成的不公平问题,Dorsala等[23]使用智能合约进行验证并支付,保证诚实的工人可以获得奖励,同时惩罚恶意工人. Dong等[24]研究2个云服务器同时计算同一任务时,为了使云服务器不会相互勾结,利用智能合约促使云服务器之间相互背叛和不信任,使得每个云都能够更加理智和诚实地工作. 通过交叉检查,验证云计算结果的正确性. 基于复制的多服务器方案与基于证明的单服务器方案相比,要占用更多的服务器带宽和计算资源.
1.4. 矩阵计算加密保护方法
为了保护统计分析和机器学习中输入矩阵的机密性,Mishra等[6]利用基于环的同态加密,将矩阵转化为多项式,将多项式加密,实现安全的矩阵乘法. Jiang等[7]利用同态密文压缩对矩阵进行编码,在实现单个密文加密多个矩阵的同时,仅需要时间复杂度为
2. 预备知识
2.1. 双线性对
设
1) 双线性:对于任意
2) 非退化性:对于任意
3) 可计算性:对于所有
2.2. 矩阵摘要技术
矩阵摘要[26]是由矩阵与所选参数一起生成的向量. 对于矩阵
矩阵摘要有以下3个属性特征.
1) 确定性:给定一个矩阵,矩阵摘要仅由确定的参数,即向量
2) 可计算性:得到的矩阵摘要本质上是向量,它具有向量的所有性质,可以应用于向量的运算.
3) 不可逆性:矩阵摘要的计算是单向映射,即使同时给出矩阵摘要和参数,也无法得到原矩阵.
2.3. 计算不可区分
如果2个概率总体
标记
该表示法可以扩展到区分器
定义1 设
式中:
2.4. 困难问题假设
设
co-CDH问题:给定
困难问题假设:给定
3. 模型设计
3.1. 车联网矩阵计算卸载模型
如图1所示,为了描述车联网环境中移动车辆卸载矩阵计算的任务过程,本文方案中包含4个实体:移动车辆、路侧单元(road side unit, RSU)、可信机构(trusted authority, TA)和MEC服务器.
图 1
车辆:车辆提交卸载任务,通过直连无线网络(dedicated short range communications, DSRC)与RSU通讯,将计算任务卸载到MEC服务器.
RSU:RSU配备有MEC服务器,通过有线连接与MEC和可信机构进行通信,RSU同时配有无线设备,可以和覆盖区域内的车辆交换数据.
MEC服务器:MEC服务器部署在网络边缘,为多个RSU提供丰富的计算资源,在本文方案中,MEC服务器会积极地执行任务,但可能因为自私或者恶意攻击提交错误结果.
可信机构:TA负责系统的初始化和生成公钥,也负责验证标签的产生和分发. 在本文方案中,所有的TA组成了区块链,负责智能合约的运行和公钥、验证密钥等数据上链.
3.2. 设计目标
在车联网矩阵计算卸载模型中,MEC服务器可能由于恶意节点劫持网络数据流或者攻击造成MEC服务器计算结果是不可靠的. 开放式的网络环境可能泄露矩阵数据中的敏感信息,破坏数据机密性. 本文方案必须满足以下安全目标.
1) 数据的机密性:车联网和MEC开放式的网络环境使得信息容易被窃听和篡改,因此需要保证该方案在整个网络环境中数据的机密性.
2) 计算的正确性:车辆矩阵乘法计算任务可以卸载到MEC服务器,车辆应该能够验证结果的正确性,获得正确的计算结果.
3) 结果的不可伪造性:车辆可以验证MEC服务器的计算结果,应该能够验证结果是不可伪造的.
4. 车联网矩阵计算卸载方案
基于区块链技术实现了去中心化的矩阵乘法计算结果可验证方案,针对车辆网中数据机密性的需求,设计矩阵加密方法来实现矩阵计算的安全卸载. 如图2所示,主要分为以下6个阶段:系统初始化、公钥和验证标签生成、矩阵加密和验证密钥生成、矩阵计算、验证结果正确性、结果解密.
图 2
4.1. 系统初始化
在初始化阶段,TA首先运行
4.2. 公钥和验证标签生成
在该阶段,TA运行
车辆在行驶过程中,可能因为车载应用程序的运行,产生大量的大矩阵乘法计算任务. 车辆选择卸载这些计算任务给MEC服务器,将计算任务抽象为矩阵乘法函数
TA计算
使用矩阵摘要[26]技术,不需要遍历矩阵
4.3. 矩阵加密和验证密钥生成
该阶段由车辆端执行
算法1 MMCEnc算法
1: 输入:原始输入矩阵
2: 输出:加密矩阵
3: 随机生成参数
4: //借助矩阵
5: for k = 1,2,…,n do
6:
7: end for
8: for j = 1,2,…,s do
9:
10: end for
11: //利用向量
12: fork = 1,2,…,n do
13: for j = 1,2,…,s do
14:
15: end for
16: end for
17: Final
车辆利用可信机构TA发布的公钥
将
4.4. 矩阵计算
该阶段由MEC服务器执行
为了承诺计算结果是正确的,MEC服务器计算
MEC将计算结果和正确性承诺
4.5. 验证结果正确性
该阶段由智能合约执行
采用Zhang等[26]提出的公开可验证方法,结合区块链技术,利用编写在区块链上的智能合约来验证计算结果的正确性,在
若
4.6. 结果解密
该阶段由车辆端执行
算法2 MMCDec算法.
1: Input:加密的结果
2: Output:正确结果
3: //借助算法1生成的2个向量
4: for i = 1,2,…,m do
5: for k = 1,2,…,n do
6:
7: end for
8: for j = 1,2,…,s do
9:
10: end for
11: end for
12: Final
5. 实验与分析
5.1. 方案正确性分析
5.1.1. 验证阶段
在验证阶段,主要是由智能合约在
1)方案中存在如下推导:
利用算法KenGen和Compute,可以得到
2)验证下式成立:
因此,本文的验证方案是正确的.
5.1.2. 解密阶段
在解密阶段,车辆查询智能合约验证结果. 若通过验证,则车辆需要解密出矩阵乘法计算的结果.
根据算法ProbGen和Compute,可得
若本文方案能够被正确执行,则车辆解密得到的结果
5.2. 方法安全性分析
5.2.1. 矩阵加密方法
将矩阵计算任务卸载到MEC服务器之前,车辆需要对原始数据执行计算,保护数据中的隐私信息. 算法需要车辆少量的计算工作,允许MEC服务器返回有意义的结果. 设计基于矩阵加法的轻量级矩阵加密方法,该加密具有计算不可区分性,即概率多项式时间算法无法区分加密后的矩阵和概率不可忽略的随机矩阵.
根据算法1 可知,矩阵加密可以描述为:
向量
式中:
定理1 设矩阵
证明 根据定义1,为了证明矩阵
矩阵
式中:
同理可得
可得
这是可以忽略的函数,证明结束.
5.2.2. 方案整体安全性
定理2 在随机预言机模型下,如果敌手A以不可忽略的概率攻破本方案,那么挑战者B以不可忽略的优势解决co-CDH问题.
证明 假设存在敌手A,他能够以不可忽略的优势
为了攻破co-CDH假设,敌手B调用预言机
敌手B选择
随机生成验证标签
式中:
定义
1) 对于输入私有矩阵
式中:
2) 验证标签
敌手A用输入
敌手A返回假结果
敌手B可以计算得到
给出结果的详细推导过程. 若假结果
根据
根据以上2个等式,可得
若
5.3. 方案性能分析
5.3.1. 理论分析
在本文方案的执行过程中,车辆侧需要执行ProbGen和Solve 2个阶段,而这2个阶段的核心是矩阵加密和解密算法,即算法1和算法2. 从算法1可知,车辆计算了2个向量
如表1所示为本文方案与其他矩阵乘法计算卸载方案在不同方面的比较.
表 1 与其他矩阵乘法计算卸载方案的比较
Tab.1
方法 | 加密时间 | 解密时间 | 验证方式 | 客户端验 证开销 |
文献[27]方法 | | | 客户端 | |
文献[28]方法 | | | 客户端 | |
文献[29]方法 | | | 客户端 | |
文献[10]方法 | | | 第三方 服务器 | 0 |
本文方法 | | | 智能合约 | |
从表1可以看出,基于矩阵乘法的加密方式[27,29]在加密阶段时间复杂度很高,在车联网环境下,可能存在单个RSU域无法完成的情况,不适用于要求高动态、低延时的车联网环境. 文献[28]方法与本文方法相比,虽然使用基于矩阵加法的加密方式,但该方法在附加矩阵的生成过程中需要执行2次向量乘法,时间复杂度较高. 客户端在加密阶段需要额外存储随机向量和变换函数[10],在多任务卸载时会占用大量的存储空间. 分析解密时间开销可以看出,相比于文献[28,29]方案,本文方法的时间复杂度有明显优势. 单次循环内需要执行多次乘法和除法运算[27],实际使用时会带来很高的时间开销. 在验证方式上,本文使用智能合约执行自动化验证,与文献[27~29]相比,可以降低车辆侧的计算负担;与文献[10]相比,本文仅需一次链上查询的时间开销.
如表2所示为本文方案与其他方案的安全性对比. 表中,“√”表示满足要求,“×”表示不满足要求,Pv为验证出错概率. 本文方案在验证方式上支持公开可验证,基于矩阵加法的矩阵加密方法能够更好地保护矩阵零元素,基于智能合约的验证能够更好地抵抗合谋和抵赖攻击,追责造成计算结果错误的节点.
表 2 与其他方案的安全性对比
Tab.2
在验证过程的数据隐私方面,Kong等[27-29]使用的验证方式需要借助原始输入矩阵和解密后的计算结果进行验证,无法保护矩阵的数据隐私性. Kong等[27]在加密阶段仅使用可逆矩阵进行加密,不能保护原始矩阵中的零元素. 传统利用第三方服务器对结果正确性验证的方案存在验证者和计算方合谋攻击的可能,恶意车辆可能声称没有收到计算结果或结果错误,造成抵赖攻击. Kong等[27-29]均使用客户端自行验证的方式对计算结果的正确性进行验证,虽然能够阻止合谋攻击,但无法阻止抵赖攻击. Zhang等[10]利用第三方服务器验证不能抵抗合谋攻击,本文使用智能合约代替第三方服务器,可以在区块链上自动化执行结果验证,能够同时抵抗合谋攻击和抵赖攻击,实现对恶意节点的链上追责. 在验证出错概率上,本文依赖矩阵维数(m,n),相比于该概率由验证次数k(20≤k≤80)决定[27-29],在大矩阵乘法中,有更高的安全性.
5.3.2. 实验分析
本文实验采用Java的配对密码库(JPBC)实现所有对比方案的加解密过程,为车辆侧配置Intel i5-4590 @3.30 GHz处理器和10 GB内存,为MEC服务器配置Intel Xeon Silver 4210 @ 2.20 GHz处理器和60 GB内存.
图 3
图 3 矩阵加密计算开销(m ꞉ n ꞉ s = 4 ꞉ 5 ꞉ 6)
Fig.3 Computing overhead of matrix encryption (m: n: s = 4 ꞉ 5 ꞉ 6)
图 4
图 4 矩阵解密的计算开销(m ꞉ n ꞉ s = 4 ꞉ 5 ꞉ 6)
Fig.4 Computing overhead of matrix decryption (m ꞉ n ꞉ s = 4 ꞉ 5 ꞉ 6)
图 5
图 5 结果验证计算开销(m ꞉ n ꞉ s = 4 ꞉ 5 ꞉ 6)
Fig.5 Computing overhead of result verification (m ꞉ n ꞉ s = 4 ꞉ 5 ꞉ 6)
在加密阶段,文献[28]方法和本文方法使用矩阵加法对原始矩阵进行加密,与文献[27, 29]方案使用可逆矩阵乘法相比,大大降低了加密阶段的复杂度. 例如,自动驾驶车辆在利用3D传感器实现增强现实时[30],每秒会产生超过60张1 280×720像素的图片. 从图3可知,当n = 1200时,文献[27, 29]方法分别平均需要13.849和18.607 s,本文的矩阵加密方法将加密时间减少到0.844 s,加密时间开销明显降低. 即使在一些图片像素为4 096×2160的车联网场景中,当n = 4 800时,文献[27, 29]方法分别平均需要261.225和410.265 s,本文方法仅需9.790 s,能够更好地满足车联网对低时延的需求.
选择车联网深度学习和3D传感器采集的点云图像[30]中常见的维度为n(300≤n≤1000)的矩阵,将方案整体计算开销与车辆本地计算开销进行对比,体现本文方案的有效性. 方案整体计算开销包含车辆侧加解密开销、车辆验证计算结果开销、MEC计算和通信过程构成的其他开销,结果如图6所示. 可以看出,本文方案的整体时间开销在各个矩阵维度下,均少于车辆本地计算的时间开销. 当n = 1 000时,本地计算的时间开销为86.8 s,而本文方法仅需39.8 s,减少了约1.36倍,车辆处理矩阵乘法计算的时间开销明显降低. 在面对车联网中大矩阵计算的需求时,本文方案不仅可以降低车辆的计算负担,还能够更好地满足矩阵计算任务的时延需求.
图 6
图 6 与车辆本地计算开销的对比(m ꞉ n ꞉ s = 4 ꞉ 5 ꞉ 6)
Fig.6 Comparison with vehicle local computation overhead (m ꞉ n ꞉ s = 4 ꞉ 5 ꞉ 6)
6. 结 语
针对VEC框架下,矩阵计算卸载存在计算结果错误、数据隐私泄露的问题,本文设计基于区块链的可验证的矩阵乘法计算卸载方案,在提供对边缘服务器计算结果验证的同时,能够提供计算卸载输入输出数据的隐私保护. 利用智能合约技术,实现验证过程链上进行,保证验证过程安全可靠. 性能分析表明,与现有方案相比,本文方案在矩阵加解密阶段的车辆侧计算开销明显降低.
下一步,将考虑减少边缘服务器侧的计算开销,优化整个方案的计算开销,提高服务器的并行效率,考虑在多服务器上进行更加通用的计算卸载.
参考文献
车辆边缘计算环境下任务卸载研究综述
[J].DOI:10.11897/SP.J.1016.2021.00963 [本文引用: 1]
A survey on task offloading research in vehicular edge computing
[J].DOI:10.11897/SP.J.1016.2021.00963 [本文引用: 1]
A scheduling algorithm for autonomous driving tasks on mobile edge computing servers
[J].DOI:10.1016/j.sysarc.2019.02.004 [本文引用: 1]
Ready player one: UAV-clustering-based multi-task offloading for vehicular VR/AR gaming
[J].DOI:10.1109/MNET.2019.1800357 [本文引用: 1]
边缘计算: 平台、应用与挑战
[J].DOI:10.7544/issn1000-1239.2018.20170228 [本文引用: 1]
Edge computing: platforms, applications and challenges
[J].DOI:10.7544/issn1000-1239.2018.20170228 [本文引用: 1]
Fast secure matrix multiplications over ring-based homomorphic encryption
[J].
Distributed calculation of edge-disjoint spanning trees for robustifying distributed algorithms against man-in-the-middle attacks
[J].
Mobile edge computing: a survey
[J].
Verifiable outsourcing computation for matrix multiplication with improved efficiency and applicability
[J].DOI:10.1109/JIOT.2018.2867113 [本文引用: 1]
区块链数据隐私保护: 研究现状与展望
[J].DOI:10.7544/issn1000-1239.2021.20210804 [本文引用: 1]
Data privacy-preserving for blockchain: state of the art and trends
[J].DOI:10.7544/issn1000-1239.2021.20210804 [本文引用: 1]
Blockchain for the internet of vehicles towards intelligent transportation systems: a survey
[J].
基于Spark的车联网分布式组合深度学习入侵检测方法
[J].DOI:10.11896/jsjkx.200700129 [本文引用: 1]
Distributed combination deep learning intrusion detection method for Internet of vehicles based on spark
[J].DOI:10.11896/jsjkx.200700129 [本文引用: 1]
Ad Hoc vehicular fog enabling cooperative low-latency intrusion detection
[J].
Offloading autonomous driving services via edge computing
[J].DOI:10.1109/JIOT.2020.3001218 [本文引用: 2]
Consortium blockchain for secure resource sharing in vehicular edge computing: a contract-based approach
[J].
Blockchain and learning-based secure and intelligent task offloading for vehicular fog computing
[J].DOI:10.1109/TITS.2020.3007770 [本文引用: 1]
Blockchain-enabled intelligent vehicular edge computing
[J].DOI:10.1109/MNET.011.2000554 [本文引用: 2]
Fair payments for verifiable cloud services using smart contracts
[J].DOI:10.1016/j.cose.2019.101712 [本文引用: 1]
New publicly verifiable computation for batch matrix multiplication
[J].DOI:10.1016/j.ins.2017.11.063 [本文引用: 4]
Cloud outsourcing computing security protocol of matrix multiplication computation based on similarity transformation
[J].DOI:10.1504/IJWMC.2018.089984 [本文引用: 17]
Secure and efficient protocol for outsourcing large-scale matrix multiplication to the cloud
[J].DOI:10.1109/ACCESS.2020.3045999 [本文引用: 14]
/
〈 |
|
〉 |
