CN111984990B - 基于边缘计算的支持隐私保护的矩阵乘法任务外包方法 - Google Patents
基于边缘计算的支持隐私保护的矩阵乘法任务外包方法 Download PDFInfo
- Publication number
- CN111984990B CN111984990B CN202010928199.XA CN202010928199A CN111984990B CN 111984990 B CN111984990 B CN 111984990B CN 202010928199 A CN202010928199 A CN 202010928199A CN 111984990 B CN111984990 B CN 111984990B
- Authority
- CN
- China
- Prior art keywords
- matrix
- encryption
- sub
- input
- calculation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Computational Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Computing Systems (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Storage Device Security (AREA)
Abstract
本申请公开了一种基于边缘计算的支持隐私保护的矩阵乘法运算任务外包方法,应用于物联网设备,能够将物联网设备上的矩阵乘法运算任务外包给一定数量的边缘服务器执行,降低了时间复杂度,减小了物联网设备的计算压力;而且利用基础变换矩阵对两个输入矩阵进行盲化加密,避免了信息泄露,提升数据安全性;最后能够对边缘服务器的子计算结果进行验证,避免得出错误的运算结果,提升外包方案的可靠性。此外,本申请还提供了一种基于边缘计算的支持隐私保护的矩阵乘法运算任务外包装置、物联网设备及可读存储介质,其技术效果与上述方法的技术效果相对应。
Description
技术领域
本申请涉及计算机技术领域,特别涉及一种基于边缘计算的支持隐私保护的矩阵乘法运算任务外包方法、装置、物联网设备及可读存储介质。
背景技术
物联网(IoT)中的各种设备实现了联网,并且应用通常涉及复杂的计算,而这些计算可能会超出某些资源受限的物联网设备的计算能力。因此,如何使资源受限的物联网设备有效,安全地完成复杂的计算就显得至关重要。
近年来,安全外包计算已经得到了广泛的研究,这使计算能力有限的设备能够以安全且可验证的方式将繁重的工作负载外包给计算能力强的一方。现有研究集中于将任务外包给一台或两台云服务器,这些服务器与最终物联网用户的距离很远。但是也带来一定的问题,长距离的传输导致用户与云之间的通信延迟很大。在许多社交物联网系统中,例如智能交通,参与者需要实时数据处理和传输,而云计算就无法即时满足数据需求。
另一方面,目前边缘计算在学术和工业领域都越来越受到关注。边缘服务器位于用户或数据附近。通过将计算服务放置在更靠近这些位置的位置,用户可以得到更快且更可靠的服务,而公司则受益于混合云计算的灵活性。边缘计算使智能应用程序和设备几乎可以立即与数据进行交互,这自然而然地适合物联网应用程序。
矩阵乘法是被广泛用于图像处理和机器学习等领域的科学的计算。它的时间复杂度很高,会给执行的服务造成繁重的计算负担,尤其当矩阵规模很大时,需要消耗巨大的计算资源。因此,设计一个能运行资源受限的服务,从而安全的将矩阵乘法委托给计算能力强大的边缘服务器具有重要的意义。
发明内容
本申请的目的是提供一种基于边缘计算的支持隐私保护的矩阵乘法运算任务外包方法、装置、物联网设备及可读存储介质,用以解决当前物联网设备缺乏完成矩阵乘法运算任务的计算能力的问题。其具体方案如下:
第一方面,本申请提供了一种基于边缘计算的支持隐私保护的矩阵乘法运算任务外包方法,应用于物联网设备,包括:
获取第一输入矩阵和第二输入矩阵;
生成所述第一输入矩阵的基础变换矩阵和所述第二输入矩阵的基础变换矩阵,得到第一基础变换矩阵集合和第二基础变换矩阵集合;
利用所述第一基础变换矩阵集合对所述第一输入矩阵进行加密,得到第一加密矩阵;利用所述第二基础变换矩阵集合对所述第二输入矩阵进行加密,得到第二加密矩阵;
根据边缘服务器的总数量和所述第一加密矩阵的总行数,确定目标行数,将所述第一加密矩阵按照行进行拆分,每所述目标行数拆分为一个子矩阵;根据边缘服务器的总数量和所述第二加密矩阵的总列数,确定目标列数,将所述第二加密矩阵按照列进行拆分,每所述目标列数拆分为一个子矩阵;
对所述第一加密矩阵的子矩阵和所述第二加密矩阵的子矩阵进行组合,将组合结果作为子计算任务发送至相应的边缘服务器;接收边缘服务器返回的子计算结果;
对各个边缘服务器的子计算结果进行验证;若均验证通过,则根据全部边缘服务器返回的子计算结果,合成加密计算结果;
生成所述第一基础变换矩阵集合和所述第二基础变换矩阵集合中各个基础变换矩阵的逆矩阵,得到第一逆矩阵集合和第二逆矩阵集合;利用所述第一逆矩阵集合和所述第二逆矩阵集合对所述加密计算结果进行解密,得到所述第一输入矩阵和所述输入矩阵的乘法运算结果。
优选的,所述根据边缘服务器的总数量和所述第一加密矩阵的总行数,确定目标行数,包括:
按照行数计算公式,根据边缘服务器的总数量和所述第一加密矩阵的总行数,计算得到目标行数,所述行数计算公式为:
相应的,所述根据边缘服务器的总数量和所述第二加密矩阵的总列数,确定目标列数,包括:
按照列数计算公式,根据边缘服务器的总数量和所述第二加密矩阵的总列数,计算得到目标列数,所述列数计算公式为:
其中,l′为目标列数,l为第二加密矩阵的总列数。
优选的,所述生成所述第一输入矩阵的基础变换矩阵和所述第二输入矩阵的基础变换矩阵,得到第一基础变换矩阵集合和第二基础变换矩阵集合,包括:
生成随机数S;
优选的,所述利用所述第一基础变换矩阵集合对所述第一输入矩阵进行加密,得到第一加密矩阵,包括:
利用所述第一基础变换矩阵集合对所述第一输入矩阵进行加密,得到第一加密矩阵,其中所述第一加密矩阵A′=P1P2...PSA;
相应的,所述利用所述第二基础变换矩阵集合对所述第二输入矩阵进行加密,得到第二加密矩阵,包括:
利用所述第二基础变换矩阵集合对所述第二输入矩阵进行加密,得到第二加密矩阵,其中所述第二加密矩阵B′=BQS...Q2Q1。
优选的,在所述接收边缘服务器返回的子计算结果之前,还包括:
利用边缘服务器对子计算任务进行处理,得到子计算结果,其中所述子计算结果R′ij=A′iB′j,A′i和B'j分别为从第一加密矩阵A′i拆分出来的第i个子矩阵和从第二加密矩阵B'j拆分出来的第j个子矩阵,R′ij为与A′i和B'j对应的子计算结果。
优选的,所述利用所述第一逆矩阵集合和所述第二逆矩阵集合对所述加密计算结果进行解密,得到所述第一输入矩阵和所述输入矩阵的乘法运算结果,包括:
利用所述第一逆矩阵集合和所述第二逆矩阵集合对所述加密计算结果进行解密,得到所述第一输入矩阵和所述输入矩阵的乘法运算结果,其中所述乘法运算结果R′为所述加密计算结果,为所述第一基础变换矩阵集合中各个基础变换矩阵的逆矩阵,为所述第二基础变换矩阵集合中各个基础变换矩阵的逆矩阵。
优选的,所述对各个边缘服务器的子计算结果进行验证,包括:
生成随机向量;
根据所述随机向量,判断边缘服务器的子计算结果是否满足结果验证公式,所述结果验证公式为:
rA′iB'j=rR′ij
其中,r为随机向量,m′为目标行数;A′i和B'j分别为从第一加密矩阵A′i拆分出来的第i个子矩阵和从第二加密矩阵B'j拆分出来的第j个子矩阵,R′ij为边缘服务器返回的与A′i和B'j对应的子计算结果;
若满足,则判定所述边缘服务器的子计算结果验证通过。
第二方面,本申请提供了一种基于边缘计算的支持隐私保护的矩阵乘法运算任务外包装置,应用于物联网设备,包括:
输入模块:用于获取第一输入矩阵和第二输入矩阵;
密钥生成模块:用于生成所述第一输入矩阵的基础变换矩阵和所述第二输入矩阵的基础变换矩阵,得到第一基础变换矩阵集合和第二基础变换矩阵集合;
加密模块:用于利用所述第一基础变换矩阵集合对所述第一输入矩阵进行加密,得到第一加密矩阵;利用所述第二基础变换矩阵集合对所述第二输入矩阵进行加密,得到第二加密矩阵;
任务拆分模块:用于根据边缘服务器的总数量和所述第一加密矩阵的总行数,确定目标行数,将所述第一加密矩阵按照行进行拆分,每所述目标行数拆分为一个子矩阵;根据边缘服务器的总数量和所述第二加密矩阵的总列数,确定目标列数,将所述第二加密矩阵按照列进行拆分,每所述目标列数拆分为一个子矩阵;
收发模块:用于对所述第一加密矩阵的子矩阵和所述第二加密矩阵的子矩阵进行组合,将组合结果作为子计算任务发送至相应的边缘服务器;接收边缘服务器返回的子计算结果;
验证合成模块:用于对各个边缘服务器的子计算结果进行验证;若均验证通过,则根据全部边缘服务器返回的子计算结果,合成加密计算结果;
解密模块:用于生成所述第一基础变换矩阵集合和所述第二基础变换矩阵集合中各个基础变换矩阵的逆矩阵,得到第一逆矩阵集合和第二逆矩阵集合;利用所述第一逆矩阵集合和所述第二逆矩阵集合对所述加密计算结果进行解密,得到所述第一输入矩阵和所述输入矩阵的乘法运算结果。
第三方面,本申请提供了一种物联网设备,包括:
存储器:用于存储计算机程序;
处理器:用于执行所述计算机程序,以实现如上所述的基于边缘计算的支持隐私保护的矩阵乘法运算任务外包方法的步骤。
第四方面,本申请提供了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时用于实现如上所述的基于边缘计算的支持隐私保护的矩阵乘法运算任务外包方法的步骤。
本申请所提供的一种基于边缘计算的支持隐私保护的矩阵乘法运算任务外包方法,应用于物联网设备,能够在获取到矩阵乘法运算任务中的两个输入矩阵之后,生成基础变换矩阵,并利用基础变换矩阵对两个输入矩阵进行加密;然后根据边缘服务器的总数量对加密后的输入矩阵进行拆分,将拆分结果作为子计算任务发送至对应的边缘服务器,接收边缘服务器返回的子计算结果;最后对子计算结果进行验证、合成和解密,得到矩阵乘法运算任务的运算结果。
可见,该方法能够将物联网设备上的矩阵乘法运算任务外包给一定数量的边缘服务器执行,降低了时间复杂度,减小了物联网设备的计算压力;而且利用基础变换矩阵对两个输入矩阵进行盲化加密,避免了信息泄露,提升数据安全性;最后能够对边缘服务器的子计算结果进行验证,避免得出错误的运算结果,提升外包方案的可靠性。
此外,本申请还提供了一种基于边缘计算的支持隐私保护的矩阵乘法运算任务外包装置、物联网设备及可读存储介质,其技术效果与上述方法的技术效果相对应,这里不再赘述。
附图说明
为了更清楚的说明本申请实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为边缘计算的系统模型示意图;
图2为基于边缘计算的计算任务外包模型示意图;
图3为本申请所提供的一种基于边缘计算的支持隐私保护的矩阵乘法运算任务外包方法实施例的流程图;
图4为本申请所提供的一种基于边缘计算的支持隐私保护的矩阵乘法运算任务外包装置实施例的功能框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1是边缘计算的系统模型。在物联网系统中,设备(包括传感器、智能电话和可穿戴设备等)连接以实现各种应用程序的使用和交互,但是这些设备的计算和存储容量有限。在边缘计算中,计算资源位于网络边缘,靠近终端设备。这些边缘服务器为终端设备提供足够的计算和存储服务。将计算资源放置在靠近用户的位置可以有效减少通信延迟,从而更好地支持需要实时通信的物联网应用程序,可以节省网络带宽。同样,移动性是边缘计算的另一个优势。边缘计算可以支持具有地理分布应用程序的设备,这确实是物联网部署的关键功能。
图2是基于边缘计算的计算任务外包模型。图2中,用户是指具有低计算能力的物联网设备,而该设备需要执行复杂的计算任务。边缘服务器是提供计算服务的强大计算方,因此,物联网设备将计算任务F()委派给边缘服务器。但是,边缘服务器可能会对输入数据感到好奇,而物联网应用程序通常涉及敏感信息,例如患者的健康状况等,这些信息不应泄露给未经授权的第三方。
因此,为了保护输入和输出的私密性,物联网设备将原始输入x盲化为x′,然后将x′分为k部分,并将它们分配给k个边缘服务器。边缘服务器i(此处i是边缘服务器的索引)执行F(x′i)并返回子计算结果y′i。最后,物联网设备汇总返回的子计算结果,并获得盲化加密的计算结果y′。值得注意的是,边缘服务器可能有意或无意返回无效结果。因此,物联网设备在获得y′后,会验证其正确性。最终物联网设备根据y′恢复真实结果y。
本申请在边缘计算的基础上,提供一种基于边缘计算的支持隐私保护的矩阵乘法运算任务外包方法、装置、物联网设备及可读存储介质,使外包任务在执行过程中服务器不会泄露给未经授权的第三方,并保证边缘服务器结果的正确性,从而实现算法外包的安全性和效率的优化。
具体的,本申请利用边缘计算能缩短数据传输中的时间消耗,同时能将计算过程外包给多个服务器的特点,实现对矩阵乘法运算任务的外包,该矩阵乘法运算任务如下:
下面对本申请提供的一种基于边缘计算的支持隐私保护的矩阵乘法运算任务外包方法实施例进行介绍,参见图3,该实施例应用于物联网设备,包括:
S101、获取第一输入矩阵和第二输入矩阵;
S102、生成第一输入矩阵的基础变换矩阵和第二输入矩阵的基础变换矩阵,得到第一基础变换矩阵集合和第二基础变换矩阵集合;
S103、利用第一基础变换矩阵集合对第一输入矩阵进行加密,得到第一加密矩阵;利用第二基础变换矩阵集合对第二输入矩阵进行加密,得到第二加密矩阵;
S104、根据边缘服务器的总数量和第一加密矩阵的总行数,确定目标行数,将第一加密矩阵按照行进行拆分,每目标行数拆分为一个子矩阵;根据边缘服务器的总数量和第二加密矩阵的总列数,确定目标列数,将第二加密矩阵按照列进行拆分,每目标列数拆分为一个子矩阵;
S105、对第一加密矩阵的子矩阵和第二加密矩阵的子矩阵进行组合,将组合结果作为子计算任务发送至相应的边缘服务器;接收边缘服务器返回的子计算结果;
S106、对各个边缘服务器的子计算结果进行验证;若均验证通过,则根据全部边缘服务器返回的子计算结果,合成加密计算结果;
S107、生成第一基础变换矩阵集合和第二基础变换矩阵集合中各个基础变换矩阵的逆矩阵,得到第一逆矩阵集合和第二逆矩阵集合;利用第一逆矩阵集合和第二逆矩阵集合对加密计算结果进行解密,得到第一输入矩阵和输入矩阵的乘法运算结果。
在矩阵乘法运算任务外包的场景下,输入矩阵通常包含一些敏感信息,例如军事数据和医疗保健数据等。因此,当将计算任务委派给边缘服务器时,需要保护输入矩阵A和B以及输出R的私密性。为了盲化输入矩阵,本实施例利用基础变换矩阵对矩阵A和B进行了加密。
其中,基础变换是矩阵的基本运算,包括以下运算方式:
方式一、重新排列两行(列);
方式二、将非零数字乘以矩阵的所有行(列)元素;
方式三、将矩阵中乘以相同的非零数的两行(列)相加。
通过执行这些运算操作,输入矩阵中元素的值将被替换。而且,基础变换的复杂度为O(n2),远低于对两个输入矩阵直接进行矩阵乘法运算的复杂度。基于此,本实施例通过对输入矩阵进行基础变换,以实现加密,进而实现对矩阵乘法运算的外包。
具体的,上述生成第一输入矩阵的基础变换矩阵和第二输入矩阵的基础变换矩阵,得到第一基础变换矩阵集合和第二基础变换矩阵集合的过程,具体包括以下步骤:生成随机数S;对于第一输入矩阵生成S个基础变换矩阵,得到第一基础变换矩阵集合SKP={P1,P2,...,PS},对于任意s∈[1,S]满足对于第二输入矩阵生成S个基础变换矩阵,得到第二基础变换矩阵集合SKQ={Q1,Q2,...,QS},对于任意s∈[1,S]满足
在得到第一基础变换矩阵集合和第二基础变换矩阵集合之后,对第一输入矩阵和第二输入矩阵的加密过程如下所示:利用第一基础变换矩阵对第一输入矩阵进行加密,得到第一加密矩阵,其中第一加密矩阵如下所示:A′=P1P2...PSA;利用第二基础变换矩阵对第二输入矩阵进行加密,得到第二加密矩阵,其中第二加密矩阵如下所示:B′=BQS...Q2Q1。
然后是任务拆分的过程。分别对第一加密矩阵A′和第二加密矩阵B′进行拆分,假设边缘服务器的总数量为k,根据矩阵乘法运算规则,应该将第一加密矩阵A′和第二加密矩阵B′分别拆分为份。值得注意的是,第一加密矩阵A′按照行数划分,而第二加密矩阵B′按列数划分。假设m′是第一加密矩阵A′划分的每个部分的行数,l′是第二加密矩阵B′划分的每个部分的列数,物联网设备将第一加密矩阵A′划分为满足的个矩阵,记为将第二加密矩阵B′划分为满足的个矩阵,记为
利用边缘服务器对子计算任务进行处理,得到子计算结果,其中子计算结果R′ij=A′iB′j,R′ij为与A′i和B'j对应的子计算结果。
上述对各个边缘服务器的子计算结果进行验证的过程,包括:生成随机向量;根据所述随机向量,判断边缘服务器的子计算结果是否满足结果验证公式,若满足,则判定所述边缘服务器的子计算结果验证通过。所述结果验证公式为:
rA′iB'j=rR′ij
然后对加密计算结果进行解密,具体包括:利用第一逆矩阵集合和第二逆矩阵集合对所述加密计算结果进行解密,得到两个输入矩阵的乘法运算结果,其中乘法运算结果如下所示:
本实施例所提供一种基于边缘计算的支持隐私保护的矩阵乘法运算任务外包方法,能够将物联网设备上的矩阵乘法运算任务外包给一定数量的边缘服务器执行,降低了时间复杂度,减小了物联网设备的计算压力;而且利用基础变换矩阵对两个输入矩阵进行盲化加密,避免了信息泄露,提升数据安全性;最后能够对边缘服务器的子计算结果进行验证,避免得出错误的运算结果,提升外包方案的可靠性。
下面以实际应用为例,对本申请提供的基于边缘计算的支持隐私保护的矩阵乘法运算任务外包方法进行介绍。
S201、密钥生成;
SKP={P1,P2,...,PS}
SKQ={Q1,Q2,...,QS}
S202、任务加密;
物联网设备按照以下方式计算得到两个加密矩阵:
A′=P1P2...PSA
B′=BQS...Q2Q1
S203、任务分割;
物联网设备给定的边缘服务器数量,计算目标行数和目标列数:
S204、发送子计算任务并接收子计算结果;
R′ij=A′iB′j
然后,边缘服务器将子计算结果返回给物联网设备。
S205、结果验证;
rA′iB′j=rR′ij
如果成立就进入S206,否则输出结果为“error”。
注意rA′iB'j和rR′ij是从左往右计算的,所以时间复杂度是O(n2)。
S206、结果恢复。
可见,本实施例提供的一种基于边缘计算的支持隐私保护的矩阵乘法运算任务外包方法,显著减少矩阵乘法在物联网设备的计算量,降低了时间复杂度,从而提高工作效率;将计算任务分配给多个服务器,所以每个服务器的工作量就显著降低;通过随机生成2S个基础变换矩阵,实现了输入输出的加密,使得外包计算更加安全可靠;通过对计算结果进行验证,如果恶意服务器行为不当,则可以检测到该行为不当的可能性为1。
下面对本申请实施例提供的一种基于边缘计算的支持隐私保护的矩阵乘法运算任务外包装置进行介绍,下文描述的一种基于边缘计算的支持隐私保护的矩阵乘法运算任务外包装置与上文描述的一种基于边缘计算的支持隐私保护的矩阵乘法运算任务外包方法可相互对应参照。
如图4所示,本实施例的基于边缘计算的支持隐私保护的矩阵乘法运算任务外包装置,应用于物联网设备,包括:
输入模块01:用于获取第一输入矩阵和第二输入矩阵;
密钥生成模块02:用于生成所述第一输入矩阵的基础变换矩阵和所述第二输入矩阵的基础变换矩阵,得到第一基础变换矩阵集合和第二基础变换矩阵集合;
加密模块03:用于利用所述第一基础变换矩阵集合对所述第一输入矩阵进行加密,得到第一加密矩阵;利用所述第二基础变换矩阵集合对所述第二输入矩阵进行加密,得到第二加密矩阵;
任务拆分模块04:用于根据边缘服务器的总数量和所述第一加密矩阵的总行数,确定目标行数,将所述第一加密矩阵按照行进行拆分,每所述目标行数拆分为一个子矩阵;根据边缘服务器的总数量和所述第二加密矩阵的总列数,确定目标列数,将所述第二加密矩阵按照列进行拆分,每所述目标列数拆分为一个子矩阵;
收发模块05:用于对所述第一加密矩阵的子矩阵和所述第二加密矩阵的子矩阵进行组合,将组合结果作为子计算任务发送至相应的边缘服务器;接收边缘服务器返回的子计算结果;
验证合成模块06:用于对各个边缘服务器的子计算结果进行验证;若均验证通过,则根据全部边缘服务器返回的子计算结果,合成加密计算结果;
解密模块07:用于生成所述第一基础变换矩阵集合和所述第二基础变换矩阵集合中各个基础变换矩阵的逆矩阵,得到第一逆矩阵集合和第二逆矩阵集合;利用所述第一逆矩阵集合和所述第二逆矩阵集合对所述加密计算结果进行解密,得到所述第一输入矩阵和所述输入矩阵的乘法运算结果。
本实施例的基于边缘计算的支持隐私保护的矩阵乘法运算任务外包装置用于实现前述的基于边缘计算的支持隐私保护的矩阵乘法运算任务外包方法,因此该装置中的具体实施方式可见前文中的基于边缘计算的支持隐私保护的矩阵乘法运算任务外包方法的实施例部分,例如,输入模块01、密钥生成模块02、加密模块03、任务拆分模块04、收发模块05、验证合成模块06、解密模块07,分别用于实现上述基于边缘计算的支持隐私保护的矩阵乘法运算任务外包方法中步骤S101,S102,S103,S104,S105,S106,S107。所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再展开介绍。
另外,由于本实施例的基于边缘计算的支持隐私保护的矩阵乘法运算任务外包装置用于实现前述的基于边缘计算的支持隐私保护的矩阵乘法运算任务外包方法,因此其作用与上述方法的作用相对应,这里不再赘述。
此外,本申请还提供了一种物联网设备,包括:
存储器:用于存储计算机程序;
处理器:用于执行所述计算机程序,以实现如上文所述的基于边缘计算的支持隐私保护的矩阵乘法运算任务外包方法的步骤。
最后,本申请提供了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时用于实现如上文所述的基于边缘计算的支持隐私保护的矩阵乘法运算任务外包方法的步骤。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的方案进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种基于边缘计算的支持隐私保护的矩阵乘法运算任务外包方法,其特征在于,应用于物联网设备,包括:
获取第一输入矩阵和第二输入矩阵;
生成所述第一输入矩阵的基础变换矩阵和所述第二输入矩阵的基础变换矩阵,得到第一基础变换矩阵集合和第二基础变换矩阵集合;
利用所述第一基础变换矩阵集合对所述第一输入矩阵进行加密,得到第一加密矩阵;利用所述第二基础变换矩阵集合对所述第二输入矩阵进行加密,得到第二加密矩阵;
根据边缘服务器的总数量和所述第一加密矩阵的总行数,确定目标行数,将所述第一加密矩阵按照行进行拆分,每所述目标行数拆分为一个子矩阵;根据边缘服务器的总数量和所述第二加密矩阵的总列数,确定目标列数,将所述第二加密矩阵按照列进行拆分,每所述目标列数拆分为一个子矩阵;
对所述第一加密矩阵的子矩阵和所述第二加密矩阵的子矩阵进行组合,将组合结果作为子计算任务发送至相应的边缘服务器;接收边缘服务器返回的子计算结果;
对各个边缘服务器的子计算结果进行验证;若均验证通过,则根据全部边缘服务器返回的子计算结果,合成加密计算结果;
生成所述第一基础变换矩阵集合和所述第二基础变换矩阵集合中各个基础变换矩阵的逆矩阵,得到第一逆矩阵集合和第二逆矩阵集合;利用所述第一逆矩阵集合和所述第二逆矩阵集合对所述加密计算结果进行解密,得到所述第一输入矩阵和所述输入矩阵的乘法运算结果。
4.如权利要求3所述的方法,其特征在于,所述利用所述第一基础变换矩阵集合对所述第一输入矩阵进行加密,得到第一加密矩阵,包括:
利用所述第一基础变换矩阵集合对所述第一输入矩阵进行加密,得到第一加密矩阵,其中所述第一加密矩阵A′=P1P2...PSA;
相应的,所述利用所述第二基础变换矩阵集合对所述第二输入矩阵进行加密,得到第二加密矩阵,包括:
利用所述第二基础变换矩阵集合对所述第二输入矩阵进行加密,得到第二加密矩阵,其中所述第二加密矩阵B′=BQS...Q2Q1。
8.一种基于边缘计算的支持隐私保护的矩阵乘法运算任务外包装置,其特征在于,应用于物联网设备,包括:
输入模块:用于获取第一输入矩阵和第二输入矩阵;
密钥生成模块:用于生成所述第一输入矩阵的基础变换矩阵和所述第二输入矩阵的基础变换矩阵,得到第一基础变换矩阵集合和第二基础变换矩阵集合;
加密模块:用于利用所述第一基础变换矩阵集合对所述第一输入矩阵进行加密,得到第一加密矩阵;利用所述第二基础变换矩阵集合对所述第二输入矩阵进行加密,得到第二加密矩阵;
任务拆分模块:用于根据边缘服务器的总数量和所述第一加密矩阵的总行数,确定目标行数,将所述第一加密矩阵按照行进行拆分,每所述目标行数拆分为一个子矩阵;根据边缘服务器的总数量和所述第二加密矩阵的总列数,确定目标列数,将所述第二加密矩阵按照列进行拆分,每所述目标列数拆分为一个子矩阵;
收发模块:用于对所述第一加密矩阵的子矩阵和所述第二加密矩阵的子矩阵进行组合,将组合结果作为子计算任务发送至相应的边缘服务器;接收边缘服务器返回的子计算结果;
验证合成模块:用于对各个边缘服务器的子计算结果进行验证;若均验证通过,则根据全部边缘服务器返回的子计算结果,合成加密计算结果;
解密模块:用于生成所述第一基础变换矩阵集合和所述第二基础变换矩阵集合中各个基础变换矩阵的逆矩阵,得到第一逆矩阵集合和第二逆矩阵集合;利用所述第一逆矩阵集合和所述第二逆矩阵集合对所述加密计算结果进行解密,得到所述第一输入矩阵和所述输入矩阵的乘法运算结果。
9.一种物联网设备,其特征在于,包括:
存储器:用于存储计算机程序;
处理器:用于执行所述计算机程序,以实现如权利要求1-7任意一项所述的基于边缘计算的支持隐私保护的矩阵乘法运算任务外包方法的步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时用于实现如权利要求1-7任意一项所述的基于边缘计算的支持隐私保护的矩阵乘法运算任务外包方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010928199.XA CN111984990B (zh) | 2020-09-07 | 2020-09-07 | 基于边缘计算的支持隐私保护的矩阵乘法任务外包方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010928199.XA CN111984990B (zh) | 2020-09-07 | 2020-09-07 | 基于边缘计算的支持隐私保护的矩阵乘法任务外包方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111984990A CN111984990A (zh) | 2020-11-24 |
CN111984990B true CN111984990B (zh) | 2022-02-25 |
Family
ID=73447703
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010928199.XA Active CN111984990B (zh) | 2020-09-07 | 2020-09-07 | 基于边缘计算的支持隐私保护的矩阵乘法任务外包方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111984990B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112995189B (zh) * | 2021-03-08 | 2022-01-21 | 北京理工大学 | 一种基于隐私保护的公开验证矩阵乘法正确性的方法 |
CN115208597B (zh) * | 2021-04-09 | 2023-07-21 | 中国移动通信集团辽宁有限公司 | 一种异常设备确定方法、装置、设备及计算机存储介质 |
CN113938508B (zh) * | 2021-09-13 | 2023-06-02 | 杭州大杰智能传动科技有限公司 | 用于智能塔吊远程控制的低延迟通信方法和系统 |
CN116841750B (zh) * | 2023-08-29 | 2023-12-12 | 恒辉信达技术有限公司 | 集成加密算法的边缘计算设备 |
CN117857040B (zh) * | 2024-03-05 | 2024-06-04 | 建投物联股份有限公司 | 一种物联网设备安全辅助方法、装置、设备及存储介质 |
CN117874825B (zh) * | 2024-03-11 | 2024-05-28 | 建投物联股份有限公司 | 基于lu分解的用户隐私保护方法、装置、设备及介质 |
CN117992717B (zh) * | 2024-04-03 | 2024-07-09 | 青岛国创智能家电研究院有限公司 | 兼顾隐私保护的Cholesky分解方法、智能家电设备、服务器终端 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106775576A (zh) * | 2017-03-28 | 2017-05-31 | 青岛大学 | 可验证的矩阵乘法的安全外包计算方法及系统 |
CN109460536A (zh) * | 2018-11-16 | 2019-03-12 | 青岛大学 | 大规模矩阵运算的安全外包算法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170230171A1 (en) * | 2015-08-25 | 2017-08-10 | Massachusetts Institute Of Technology | System and method of masking and computing on masked data in a data store |
-
2020
- 2020-09-07 CN CN202010928199.XA patent/CN111984990B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106775576A (zh) * | 2017-03-28 | 2017-05-31 | 青岛大学 | 可验证的矩阵乘法的安全外包计算方法及系统 |
CN109460536A (zh) * | 2018-11-16 | 2019-03-12 | 青岛大学 | 大规模矩阵运算的安全外包算法 |
Also Published As
Publication number | Publication date |
---|---|
CN111984990A (zh) | 2020-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111984990B (zh) | 基于边缘计算的支持隐私保护的矩阵乘法任务外包方法 | |
Li et al. | Privacy-preserving and distributed algorithms for modular exponentiation in IoT with edge computing assistance | |
EP3396894B1 (en) | Apparatus and method for performing operation being secure against side channel attack | |
CN110445797B (zh) | 一种具有隐私保护的两方多维数据比较方法和系统 | |
CN109190395B (zh) | 一种基于数据变换的全同态加密方法及系统 | |
Fu et al. | Secure outsourcing algorithms of modular exponentiations with optimal checkability based on a single untrusted cloud server | |
KR20120028432A (ko) | 타원곡선암호를 위한 연산 장치 및 방법 | |
Kumar et al. | Privacy preserving, verifiable and efficient outsourcing algorithm for matrix multiplication to a malicious cloud server | |
Zhang et al. | Cloud-assisted privacy-conscious large-scale Markowitz portfolio | |
CN114187000B (zh) | 用于分散私钥的签名方法、设备、存储介质及处理器 | |
Yassein et al. | A comparative performance analysis of NTRU and its variant cryptosystems | |
CN111984225B (zh) | 基于边缘计算的支持隐私保护的模幂运算任务外包方法 | |
Li et al. | Secure outsourcing of large-scale convex optimization problem in internet of things | |
US10361855B2 (en) | Computing a secure elliptic curve scalar multiplication using an unsecured and secure environment | |
Chakraborty et al. | A secure cloud computing authentication using cryptography | |
CN117978361A (zh) | 基于云端的隐私计算方法、装置、电子设备及可读介质 | |
Li et al. | Secure outsourcing for normalized cuts of large-scale dense graph in internet of things | |
Zakerolhosseini et al. | Secure transmission of mobile agent in dynamic distributed environments | |
Gondim et al. | Steerable Fourier number transform with application to image encryption | |
Erfan et al. | Secure and efficient publicly verifiable outsourcing of matrix multiplication in online mode | |
Lei et al. | Securely and efficiently perform large matrix rank decomposition computation via cloud computing | |
Chaudhari et al. | Survey on securing IoT data using homomorphic encryption scheme | |
Kumar et al. | Data confidentiality and integrity preserving outsourcing algorithm for matrix chain multiplication over malicious cloud server | |
Sheng et al. | MD-VC _ Matrix VC M atrix: An Efficient Scheme for Publicly Verifiable Computation of Outsourced Matrix Multiplication | |
Li et al. | Secure edge-aided singular value decomposition in internet of things |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CB03 | Change of inventor or designer information | ||
CB03 | Change of inventor or designer information |
Inventor after: Zhang Hanlin Inventor after: Yu Jia Inventor after: Yu Qing Inventor after: Li Yue Inventor after: Li Xinliang Inventor before: Zhang Hanlin Inventor before: Yu Jia Inventor before: Yu Qing Inventor before: Li Yue Inventor before: Li Xinliang |