CN112182488B - 基于边缘计算的分布式外包计算处理方法及装置 - Google Patents
基于边缘计算的分布式外包计算处理方法及装置 Download PDFInfo
- Publication number
- CN112182488B CN112182488B CN202011090558.5A CN202011090558A CN112182488B CN 112182488 B CN112182488 B CN 112182488B CN 202011090558 A CN202011090558 A CN 202011090558A CN 112182488 B CN112182488 B CN 112182488B
- Authority
- CN
- China
- Prior art keywords
- calculation
- blinding
- matrix
- result
- equation set
- 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
Classifications
-
- 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/11—Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
-
- 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/15—Correlation function computation including computation of convolution operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0863—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Operations Research (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种基于边缘计算的分布式外包计算处理方法中,通过调用边缘服务器实现计算任务的响应以及处理,相对传统的云服务器响应从路径上可以更快的响应用户终端的请求,同时多边缘服务器协同合作实现任务的处理,可以保证整体任务处理时间的有效压缩;用户终端在将计算任务发送给边缘服务器之前,将超定方程组的输入用户数据进行盲化处理,从而保障用户的原始数据仅保存于用户终端中,且用于盲化处理的盲化量由用户终端生成,且保存于用户终端,可以保障用户数据的完全盲化,可以有效保障用户数据的安全性。本申请还提供了一种基于边缘计算的分布式外包计算处理装置、系统及一种可读存储介质,具有上述有益效果。
Description
技术领域
本申请涉及电子技术领域,特别涉及一种基于边缘计算的分布式外包计算处理方法、装置、系统及一种可读存储介质。
背景技术
超定方程组是一种方程个数大于未知量个数的方程组,在实际应用中超定方程组作为一种非方阵的线性方程组在工程实践中有着广泛的应用。
在目前的外包方程组的方案中,大部分的方案都要求系数矩阵是一个非奇异的方阵,而且大部分都是基于一个具有强大计算和存储能力的云服务器。云服务器上是一个单节点的集中式的计算模式,这对于云服务器的计算要求较高,且随着物联网的发展,越来越多的数据产生在网络的边缘,云服务器距离用户遥远,具有较高的传输延迟,难以满足超定方程组的计算要求。
边缘计算可以将数据和数据的处理集中在多个边缘服务器上,可以分布式地解决问题,同时边缘服务器在网络拓扑中的位置比云服务器更低,更加接近终端用户,可以更快的响应用户的请求,为了减少在服务器端的运算时间,多个边缘服务器可以通过协同合作的方式解决超定方程组的计算问题。
但是用户外包的数据中通常包含隐私敏感的数据,边缘服务器在接收以及处理过程中存在泄漏隐私敏感数据的可能性,对于这些数据的安全性存在较大的安全威胁。
因此,如何实现超定方程组的快速计算的同时保护用户隐私,是本领域技术人员急需解决的问题。
发明内容
本申请的目的是提供一种基于边缘计算的分布式外包计算处理方法,该方法可以实现超定方程组的快速计算的同时保护用户隐私;本申请的另一目的是提供一种基于边缘计算的分布式外包计算处理装置、系统及一种可读存储介质。
为解决上述技术问题,本申请提供一种基于边缘计算的分布式外包计算处理方法,包括:
用户终端生成盲化量;
调用所述盲化量对待处理的超定方程组中的原始参数进行盲化处理,得到盲化方程组;
将所述盲化方程组进行变量分割,得到若干待处理的计算任务;
将所述计算任务分别发送至各边缘服务器中,以调用所述边缘服务器实现对于各所述计算任务的计算处理;
当接收到所述边缘服务器反馈的迭代计算结果后,调用所述盲化量对所述迭代计算结果进行解盲化处理,得到处理结果。
可选地,所述用户终端生成盲化量,包括:
用户终端根据生成的两个随机置换函数生成两个正交稀疏的密钥矩阵,作为第一密钥矩阵以及第二密钥矩阵;
生成与所述密钥矩阵维度匹配的随机向量;
将所述密钥矩阵以及所述随机向量作为所述盲化量。
可选地,所述调用所述盲化量对待处理的超定方程组中的原始参数进行盲化处理,得到盲化方程组,包括:
计算所述第一密钥矩阵、所述第二密钥矩阵与所述超定方程组中的系数矩阵的矩阵乘积,作为所述系数矩阵的盲化结果;
将所述第二密钥矩阵的逆矩阵作为第一矩阵,将所述超定方程组中的未知向量与所述随机向量的和作为第二矩阵,计算所述第一矩阵与所述第二矩阵的乘积,并将所述乘积的结果作为所述未知变量的盲化结果;
将所述第一密钥矩阵作为第三矩阵,将所述系数矩阵与所述随机变量进行矩阵相乘后与所述超定方程组中的已知向量求和的结果作为第四矩阵,计算所述第三矩阵与所述第四矩阵的乘积,并将所述乘积的结果作为所述已知向量的盲化结果;
分别将所述系数矩阵的盲化结果、所述未知变量的盲化结果以及所述已知变量的盲化结果还原至所述超定方程组中,得到盲化方程组。
可选地,将所述盲化方程组进行变量分割,得到若干待处理的计算任务,包括:
确定可调用的边缘服务器的数量;
确定与所述数量相匹配的所述盲化方程组中的系数矩阵与已知向量的组合;
将所述系数矩阵与已知向量的组合以及相应的计算规则作为所述待处理的计算任务。
本申请还提供了一种基于边缘计算的分布式外包计算处理装置,应用于用户终端,该装置包括:
数据生成单元,用于生成盲化量;
盲化处理单元,用于调用所述盲化量对待处理的超定方程组中的原始参数进行盲化处理,得到盲化方程组;
任务分割单元,用于将所述盲化方程组进行变量分割,得到若干待处理的计算任务;
任务分配单元,用于将所述计算任务分别发送至各边缘服务器中,以调用所述边缘服务器实现对于各所述计算任务的计算处理;
结果还原单元,用于当接收到所述边缘服务器反馈的迭代计算结果后,调用所述盲化量对所述迭代计算结果进行解盲化处理,得到处理结果。
本申请还提供了一种基于边缘计算的分布式外包计算处理方法,包括:
边缘服务器接收用户终端发送的待处理的计算任务;其中所述计算任务为对待处理的超定方程组中的原始参数进行盲化处理后根据待分配的若干边缘服务器进行变量分割得到;
对根据预先设定的超定方程组迭代算法对所述计算任务进行迭代计算,得到迭代计算结果;
将所述迭代计算结果反馈至所述用户终端。
可选地,对根据预先设定的超定方程组迭代算法对所述计算任务进行迭代计算,得到迭代计算结果,包括:
根据预先设定的超定方程组迭代算法对所述计算任务进行一轮迭代计算后,确定当前迭代结果;
将所述当前迭代结果与用于完成当前迭代计算的数据发送至邻居节点进行重复迭代计算,以便通过所述邻居节点对所述当前迭代结果进行正确性验证;
接收所述邻居节点针对所述当前迭代结果的正确性验证结果;
若所述正确性验证结果显示正确,则触发下一轮的迭代计算。
本申请还提供了一种基于边缘计算的分布式外包计算处理装置,应用于边缘服务器,该装置包括:
任务接收单元,用于接收用户终端发送的待处理的计算任务;其中所述计算任务为对待处理的超定方程组中的原始参数进行盲化处理后根据待分配的若干边缘服务器进行变量分割得到;
迭代计算单元,用于对根据预先设定的超定方程组迭代算法对所述计算任务进行迭代计算,得到迭代计算结果;
结果反馈单元,用于将所述迭代计算结果反馈至所述用户终端。
本申请还提供了一种基于边缘计算的分布式外包计算处理系统,包括:用户终端以及若干台边缘服务器;
其中,所述用户终端用于实现所述应用于用户终端的基于边缘计算的分布式外包计算处理方法的步骤;
所述边缘服务器用于实现所述应用于边缘服务的基于边缘计算的分布式外包计算处理方法的步骤。
本申请还提供了一种可读存储介质,所述可读存储介质上存储有程序,所述程序被处理器执行时实现所述应用于用户终端的基于边缘计算的分布式外包计算处理方法和/或所述应用于边缘服务器的基于边缘计算的分布式外包计算处理方法的步骤。
本申请所提供的基于边缘计算的分布式外包计算处理方法中,通过调用边缘服务器实现计算任务的响应以及处理,边缘服务器在网络拓扑中的位置低于云服务器,因此相对传统的云服务器响应从路径上可以更快的响应用户终端的请求,同时多边缘服务器协同合作实现任务的处理,可以保证整体任务处理时间的有效压缩,提升任务处理速度;用户终端在将计算任务发送给边缘服务器之前,将超定方程组的输入用户数据进行盲化处理,从而保障用户的原始数据仅保存于用户终端中,避免其他无关人员的随意获取,且用于盲化处理的盲化量由用户终端生成,且保存于用户终端,可以保障用户数据的完全盲化,可以有效保障用户数据的安全性。
本申请还提供了一种基于边缘计算的分布式外包计算处理装置、系统及一种可读存储介质,具有上述有益效果,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种基于边缘计算的分布式外包计算处理方法的流程图;
图2为本申请实施例提供的一种整体实现流程示意图;
图3为本申请实施例提供的一种应用于用户终端的基于边缘计算的分布式外包计算处理装置的结构框图;
图4为本申请实施例提供的一种应用于边缘服务器的基于边缘计算的分布式外包计算处理装置的结构框图;
图5为本申请实施例提供的一种基于边缘计算的分布式外包计算处理系统的结构示意图。
具体实施方式
本申请的核心是提供一种基于边缘计算的分布式外包计算处理方法,该方法可以实现超定方程组的快速计算的同时保护用户隐私;本申请的另一核心是提供一种基于边缘计算的分布式外包计算处理装置、系统及一种可读存储介质。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
对于一个超定方程组Ax=b,其中A是一个r×n维的系数矩阵,x是一个n×1维的未知向量,b是一个r×1维的已知向量,r是大于n的整数。在大部分情况下超定方程组,没有精确解。这时我们可以求得一个最小二乘解。求解超定方程组的最小二乘解就相当于解决这个优化问题| |2代表着一个向量的二范数。本申请中采用边缘计算的方式调用边缘服务器实现对于超定方程组的外包计算处理。需要说明的是,本申请中对于超定方程组的介绍以及处理过程中将延续上述中的字母设定,即超定方程组为Ax=b,A为r×n维的系数矩阵,x为n×1维的未知向量,b为r×1维的已知向量,r为大于n的整数。
请参考图1,图1为本实施例提供的基于边缘计算的分布式外包计算处理方法的信令图,该方法主要包括:
步骤s110、用户终端生成盲化量;
盲化量为用户终端为保护输入至超定方程组中进行计算的用户数据生成的用于盲化原始参数的参数,由于用户数据中可能包含用户的隐私,为避免直接输入至边缘服务器后对于用户隐私数据的安全性的威胁,本实施例中在将超定方程组的输入用户数据进行盲化处理,盲化处理后再输入至边缘服务器中,从而保障用户的原始数据仅保存于用户终端中,避免其他无关人员的随意获取。
盲化量由用户终端生成,且保存于用户终端,可以保障用户数据的完全盲化,保障用户数据的安全性。
本实施例中对于盲化量的具体生成过程以及包含的数据项的数量不做限定,可以为单个盲化量,也可以为多个盲化量,分别用于对于不同的原始参数实现不同的盲化处理等,可选地,一种盲化量的生成过程如下所示,具体包括以下步骤:
(1)用户终端根据生成的两个随机置换函数生成两个正交稀疏的密钥矩阵,作为第一密钥矩阵以及第二密钥矩阵;
用户根据首先生成两个随机置换函数π1和π2,σi,j是克罗内克函数,mi是从集合{1,-1}随机选取的。首先生成r×r维的第一密钥矩阵P1可以按照下面的公式实现:
P1(i,j)=miσπ(i),j,1≤i,j≤r
可以用相同的方式生成n×n维的第二密钥矩阵P2,则本实施例中对于第二密钥矩阵P2的生成过程在此不再赘述。
(2)生成与密钥矩阵维度匹配的随机向量;
在用户终端中再生成一个n×1维的随机向量r,该随机向量r的生成过程本实施例中不做限定,可以参照相关技术中随机向量的生成方式,在此不再赘述。
(3)将密钥矩阵以及随机向量作为盲化量。
上述方式中生成两个正交的稀疏的密钥矩阵和一个随机的向量,利用密钥矩阵和随机向量对原始参数进行盲化来保护用户的隐私,实现方式简单易行,且可以实现有效的数据盲化。本实施例中仅以上述盲化量的生成实现步骤为例进行介绍,其他用于实现超定方程组中的原始参数盲化处理的盲化量的生成过程均可参照本实施例的介绍,在此不再赘述。
步骤s120、用户终端调用盲化量对待处理的超定方程组中的原始参数进行盲化处理,得到盲化方程组;
超定方程组中的原始参数主要包括系数矩阵A、未知变量x以及已知向量b,对原始参数进行盲化处理可以对原始参数中的一项或若干项进行预设手段下的盲化处理。
本实施例中对于盲化处理的具体实现手段不做限定,可选地,基于上述步骤中生成的盲化量,在此介绍一种盲化处理手段,具体包括以下步骤:
(1)计算第一密钥矩阵、第二密钥矩阵与超定方程组中的系数矩阵的矩阵乘积,作为系数矩阵的盲化结果;
(2)将第二密钥矩阵的逆矩阵作为第一矩阵,将超定方程组中的未知向量与随机向量的和作为第二矩阵,计算第一矩阵与第二矩阵的乘积,并将乘积的结果作为未知变量的盲化结果;
(3)将第一密钥矩阵作为第三矩阵,将系数矩阵与随机变量进行矩阵相乘后与超定方程组中的已知向量求和的结果作为第四矩阵,计算第三矩阵与第四矩阵的乘积,并将乘积的结果作为已知向量的盲化结果;
(4)分别将系数矩阵的盲化结果、未知变量的盲化结果以及已知变量的盲化结果还原至超定方程组中,得到盲化方程组。
A′=P1AP2
y=P2 -1(x+r)
b′=P1(b+Ar)
按照上述公式将系数矩阵A盲化为A’,将未知变量x盲化为y,将已知向量b盲化为b’。本实施例中仅以上述盲化处理方式为例进行介绍,除了上述方式外还可以采用其它的数字相乘或者相加的数字加密计算形式,其它矩阵计算下的超定方程组的盲化处理方式均可参照本实施例的介绍,在此不再赘述。
步骤s130、用户终端将盲化方程组进行变量分割,得到若干待处理的计算任务;
变量分割即将盲化方程组中存在多种情况的变量根据矩阵的行数分割为多个子变量,由各可调用的边缘服务器分别承担各子变量下对应的盲化方程组的计算任务,从而在降低每个边缘服务器的计算量的同时保证计算任务的快速处理。
本实施例中对于具体的变量分割方式不做限定,可选地,一种将盲化方程组进行变量分割,得到若干待处理的计算任务的实现方式具体包括以下几个步骤:
(1)确定可调用的边缘服务器的数量;
(2)确定与数量相匹配的盲化方程组中的系数矩阵与已知向量的组合;
(3)将系数矩阵与已知向量的组合以及相应的计算规则作为待处理的计算任务。
假设在我们的方案中m个边缘服务器,将盲化后的系数矩阵与已知向量A′和b′按照下列方式进行划分:
步骤s140、用户终端将计算任务分别发送至各边缘服务器中;
对于每一个A′i和b′i对应的计算任务,用户终端需要发送他们给每一个边缘服务器i,从而实现任务的分割处理。
本实施例中调用边缘服务器实现计算任务的响应以及处理,边缘服务器在网络拓扑中的位置低于云服务器,因此相对传统的云服务器响应从路径上可以更快的响应用户终端的请求,同时多边缘服务器协同合作实现任务的处理,可以保证整体任务处理时间的有效压缩,提升任务处理速度。
步骤s210、边缘服务器接收用户终端发送的待处理的计算任务;
步骤s220、边缘服务器对根据预先设定的超定方程组迭代算法对计算任务进行迭代计算,得到迭代计算结果;
对计算任务进行迭代计算的具体实现算法本实施例中不做限定,为加深理解,本实施例中介绍一种超定方程组迭代算法,如下所示,每一个边缘服务器i都可以按照下面的等式(1)进行迭代计算:
其中zi是一个辅助变量,c是一个随机的常数,这里我们设c=1。Ni代表边缘服务器i的邻居节点的集合,di是每一个边缘服务器i的邻居服务器的个数,如果边缘服务器i是边缘服务j的邻居,那么wij=1,否则wij=0。需要说明的是,本实施例中仅以上述迭代计算算法为例进行介绍,其它算法下的实现方式均可参照本实施例的介绍,在此不再赘述。
步骤s230、边缘服务器将迭代计算结果反馈至用户终端。
当迭代计算结束之后,边缘服务器将返回盲化后的迭代计算结果y反馈给用户。
步骤s150、用户终端接收到边缘服务器反馈的迭代计算结果后,调用盲化量对迭代计算结果进行解盲化处理,得到处理结果。
解盲化处理的过程与步骤s110与s120中盲化的处理过程相关联,由于上述步骤中对于盲化的处理过程不做限定,本步骤中对于解盲化处理的具体实现过程也不做限定,可以根据盲化的处理过程对应设置。
若盲化的处理过程按照上述步骤中介绍的根据第一密钥矩阵、第二密钥矩阵以及随机向量分别对系数矩阵、未知变量与已知向量进行矩阵计算的处理方式,则本步骤中进行解盲化处理的过程具体可以为:用户终端利用本地保存的第一密钥矩阵、第二密钥矩阵与随机向量对结果y按照x=P2y-r进行解密,得到原始问题的解x作为处理结果。
基于上述介绍,本实施例提供的基于边缘计算的分布式外包计算处理方法中,通过调用边缘服务器实现计算任务的响应以及处理,边缘服务器在网络拓扑中的位置低于云服务器,因此相对传统的云服务器响应从路径上可以更快的响应用户终端的请求,同时多边缘服务器协同合作实现任务的处理,可以保证整体任务处理时间的有效压缩,提升任务处理速度;用户终端在将计算任务发送给边缘服务器之前,将超定方程组的输入用户数据进行盲化处理,从而保障用户的原始数据仅保存于用户终端中,避免其他无关人员的随意获取,且用于盲化处理的盲化量由用户终端生成,且保存于用户终端,可以保障用户数据的完全盲化,可以有效保障用户数据的安全性。
基于上述实施例,边缘服务器在处理的过程中可能由于各种各样的原因返回错误的结果,这种情况对于后续计算以及对于结果的直接利用都存在较大的不稳定因素。为了提升边缘服务器计算的精准度以及系统整体运行的稳定性,可选地,边缘服务器对根据预先设定的超定方程组迭代算法对计算任务进行迭代计算,得到迭代计算结果的过程具体可以包括以下步骤:
根据预先设定的超定方程组迭代算法对计算任务进行一轮迭代计算后,确定当前迭代结果;
将当前迭代结果与用于完成当前迭代计算的数据发送至邻居节点进行重复迭代计算,以便通过邻居节点对当前迭代结果进行正确性验证;
接收邻居节点针对当前迭代结果的正确性验证结果;
若正确性验证结果显示正确,则触发下一轮的迭代计算。
在每一轮迭代运算(整个边缘服务器的计算过程需要进行若干次迭代计算,每计算得到一组yi和zi作为一次迭代过程,每次迭代后边缘服务器都把结果以及计算所需的数据发给其邻居节点以实现对于当前迭代计算过程的验证。若相邻两次迭代计算得到的结果间的差距小于某个阈值后,迭代结束,将最后一次迭代计算的结果作为最终计算结果。)后,每一个边缘服务器i将发送消息Mi,k+1发送给其邻居服务器(k代表迭代轮数)。其邻居服务器j根据A′i和b′i以及收到的消息,重新根据等式(1)将结果计算一遍。如果和边缘服务器i的计算结果相同,则结果是正确的;否则,结果是错误的。消息Mi,k+1的一种构造如下所示:
Mi,k+1={yi(k+1),zi(k+1),yh(k),zh(k)|h∈Ni,j}
边缘服务器计算完成后,把计算结果以及用于完成当前计算任务数据提供给其邻居节点(如果一个边缘服务器可以和另一个边缘服务器通信,我们就称这两个服务器互为邻居),使邻居节点完成与该边缘服务器相同的计算任务,即对于每一个A′i和b′i对应的计算任务需要发送给每一个边缘服务器i以及其邻居服务器,从而实现将同一计算任务分发给多个边缘服务器(一个边缘服务器以及其邻居服务器)进行计算,多个边缘服务器计算完成后,将多个边缘服务器分别计算得到的结果进行比对,从而实现对于计算结果的验证。
本实施例中通过在边缘服务器上实施结果可验证的外包计算处理保证整体计算结果的正确性以及系统运行的稳定性。
为加深对本实施例提供的结果验证过程的理解,在此介绍一种包括结果验证的整体计算处理实现方案,如图2所示为一种整体实现流程示意图,
本方案主要包括5个阶段:生成密钥,问题盲化,问题分割,计算与验证,解密。
生成密钥矩阵阶段由用户终端执行,生成两个正交的稀疏的密钥矩阵和一个随机的向量;问题盲化阶段由用户终端执行,利用密钥矩阵和随机向量对原始问题进行盲化来保护用户的隐私;问题分割阶段由用户终端执行,用户终端根据矩阵的行数进行分割并根据一定的规则分发给相应的边缘服务器。计算与验证阶段在边缘服务器端执行,各个边缘服务器进行迭代计算,在迭代的过程中,服务器之间对结果不断的进行验证。迭代完成之后将最后得结果返回给用户;解密阶段由用户终端执行,用户根据返回的结果进行结果恢复,得到原始问题的解,即处理结果。
本实施例中仅以图2对应的实现方式为例进行介绍,其他基于本申请的实现方式均可参照本实施例的介绍,在此不再赘述。
请参考图3,图3为本实施例提供的应用于用户终端的基于边缘计算的分布式外包计算处理装置的结构框图;主要包括:数据生成单元110、盲化处理单元120、任务分割单元130、任务分配单元140以及结果还原单元150。本实施例提供的基于边缘计算的分布式外包计算处理装置可与上述基于边缘计算的分布式外包计算处理方法相互对照。
其中,数据生成单元110主要用于生成盲化量;
盲化处理单元120主要用于调用盲化量对待处理的超定方程组中的原始参数进行盲化处理,得到盲化方程组;
任务分割单元130主要用于将盲化方程组进行变量分割,得到若干待处理的计算任务;
任务分配单元140主要用于将计算任务分别发送至各边缘服务器中,以调用边缘服务器实现对于各计算任务的计算处理;
结果还原单元150主要用于当接收到边缘服务器反馈的迭代计算结果后,调用盲化量对迭代计算结果进行解盲化处理,得到处理结果。
请参考图4,图4为本实施例提供的应用于边缘服务器的基于边缘计算的分布式外包计算处理装置的结构框图;主要包括:任务接收单元210、迭代计算单元220以及结果反馈单元230。本实施例提供的基于边缘计算的分布式外包计算处理装置可与上述基于边缘计算的分布式外包计算处理方法相互对照。
其中,任务接收单元210主要用于接收用户终端发送的待处理的计算任务;其中计算任务为对待处理的超定方程组中的原始参数进行盲化处理后根据待分配的若干边缘服务器进行变量分割得到;
迭代计算单元220主要用于对根据预先设定的超定方程组迭代算法对计算任务进行迭代计算,得到迭代计算结果;
结果反馈单元230主要用于将迭代计算结果反馈至用户终端。
请参考图5,图5为本实施例提供的一种基于边缘计算的分布式外包计算处理系统的结构框图;主要包括:用户终端以及若干台边缘服务器。本实施例提供的基于边缘计算的分布式外包计算处理系统可与上述基于边缘计算的分布式外包计算处理方法相互对照。
其中,用户终端与边缘服务所完成的工作如上述方法实施例中所示,在此不再赘述。
本实施例中对于边缘服务器的数量不做限定,在一定范围内边缘服务器的数量越多外包计算处理的速度越快。
本实施例公开一种可读存储介质,其上存储有程序,程序被处理器执行时实现如上述实施例介绍的基于边缘计算的分布式外包计算处理方法的步骤,具体可参照上述实施例中对基于边缘计算的分布式外包计算处理方法的介绍。
该可读存储介质具体可以为U盘、移动硬盘、只读存储器(Read-On ly Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可存储程序代码的可读存储介质。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的基于边缘计算的分布式外包计算处理方法、装置、系统及可读存储介质进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
Claims (7)
1.一种基于边缘计算的分布式外包计算处理方法,其特征在于,包括:
用户终端生成盲化量;
调用所述盲化量对待处理的超定方程组中的原始参数进行盲化处理,得到盲化方程组;
将所述盲化方程组进行变量分割,得到若干待处理的计算任务;
将所述计算任务分别发送至各边缘服务器中,以调用所述边缘服务器实现对于各所述计算任务的计算处理;
当接收到所述边缘服务器反馈的迭代计算结果后,调用所述盲化量对所述迭代计算结果进行解盲化处理,得到处理结果;
所述用户终端生成盲化量,包括:
用户终端根据生成的两个随机置换函数生成两个正交稀疏的密钥矩阵,作为第一密钥矩阵以及第二密钥矩阵;
生成与所述密钥矩阵维度匹配的随机向量;
将所述密钥矩阵以及所述随机向量作为所述盲化量;
所述调用所述盲化量对待处理的超定方程组中的原始参数进行盲化处理,得到盲化方程组,包括:
计算所述第一密钥矩阵、所述第二密钥矩阵与所述超定方程组中的系数矩阵的矩阵乘积,作为所述系数矩阵的盲化结果;
将所述第二密钥矩阵的逆矩阵作为第一矩阵,将所述超定方程组中的未知向量与所述随机向量的和作为第二矩阵,计算所述第一矩阵与所述第二矩阵的乘积,并将所述乘积的结果作为未知变量的盲化结果;
将所述第一密钥矩阵作为第三矩阵,将所述系数矩阵与随机变量进行矩阵相乘后与所述超定方程组中的已知向量求和的结果作为第四矩阵,计算所述第三矩阵与所述第四矩阵的乘积,并将所述乘积的结果作为已知变量的盲化结果;
分别将所述系数矩阵的盲化结果、所述未知变量的盲化结果以及所述已知变量的盲化结果还原至所述超定方程组中,得到盲化方程组;
将所述盲化方程组进行变量分割,得到若干待处理的计算任务,包括:
确定可调用的边缘服务器的数量;
确定与所述数量相匹配的所述盲化方程组中的系数矩阵与已知向量的组合;
将所述系数矩阵与已知向量的组合以及相应的计算规则作为所述待处理的计算任务。
2.一种基于边缘计算的分布式外包计算处理装置,其特征在于,应用于用户终端,该装置包括:
数据生成单元,用于生成盲化量;
盲化处理单元,用于调用所述盲化量对待处理的超定方程组中的原始参数进行盲化处理,得到盲化方程组;
任务分割单元,用于将所述盲化方程组进行变量分割,得到若干待处理的计算任务;
任务分配单元,用于将所述计算任务分别发送至各边缘服务器中,以调用所述边缘服务器实现对于各所述计算任务的计算处理;
结果还原单元,用于当接收到所述边缘服务器反馈的迭代计算结果后,调用所述盲化量对所述迭代计算结果进行解盲化处理,得到处理结果;
所述数据生成单元,包括用于:
用户终端根据生成的两个随机置换函数生成两个正交稀疏的密钥矩阵,作为第一密钥矩阵以及第二密钥矩阵;
生成与所述密钥矩阵维度匹配的随机向量;
将所述密钥矩阵以及所述随机向量作为所述盲化量;
所述盲化处理单元,包括用于:
计算所述第一密钥矩阵、所述第二密钥矩阵与所述超定方程组中的系数矩阵的矩阵乘积,作为所述系数矩阵的盲化结果;
将所述第二密钥矩阵的逆矩阵作为第一矩阵,将所述超定方程组中的未知向量与所述随机向量的和作为第二矩阵,计算所述第一矩阵与所述第二矩阵的乘积,并将所述乘积的结果作为未知变量的盲化结果;
将所述第一密钥矩阵作为第三矩阵,将所述系数矩阵与随机变量进行矩阵相乘后与所述超定方程组中的已知向量求和的结果作为第四矩阵,计算所述第三矩阵与所述第四矩阵的乘积,并将所述乘积的结果作为已知变量的盲化结果;
分别将所述系数矩阵的盲化结果、所述未知变量的盲化结果以及所述已知变量的盲化结果还原至所述超定方程组中,得到盲化方程组;
所述任务分割单元,包括用于:
确定可调用的边缘服务器的数量;
确定与所述数量相匹配的所述盲化方程组中的系数矩阵与已知向量的组合;
将所述系数矩阵与已知向量的组合以及相应的计算规则作为所述待处理的计算任务。
3.一种基于边缘计算的分布式外包计算处理方法,其特征在于,包括:
边缘服务器接收用户终端发送的待处理的计算任务;其中所述计算任务为通过权利要求1中所述方法对待处理的超定方程组中的原始参数进行盲化处理后根据待分配的若干边缘服务器进行变量分割得到;
对根据预先设定的超定方程组迭代算法对所述计算任务进行迭代计算,得到迭代计算结果;
将所述迭代计算结果反馈至所述用户终端。
4.如权利要求3所述的基于边缘计算的分布式外包计算处理方法,其特征在于,对根据预先设定的超定方程组迭代算法对所述计算任务进行迭代计算,得到迭代计算结果,包括:
根据预先设定的超定方程组迭代算法对所述计算任务进行一轮迭代计算后,确定当前迭代结果;
将所述当前迭代结果与用于完成当前迭代计算的数据发送至邻居节点进行重复迭代计算,以便通过所述邻居节点对所述当前迭代结果进行正确性验证;
接收所述邻居节点针对所述当前迭代结果的正确性验证结果;
若所述正确性验证结果显示正确,则触发下一轮的迭代计算。
5.一种基于边缘计算的分布式外包计算处理装置,其特征在于,应用于边缘服务器,该装置包括:
任务接收单元,用于接收用户终端发送的待处理的计算任务;其中所述计算任务为通过权利要求1中所述方法对待处理的超定方程组中的原始参数进行盲化处理后根据待分配的若干边缘服务器进行变量分割得到;
迭代计算单元,用于对根据预先设定的超定方程组迭代算法对所述计算任务进行迭代计算,得到迭代计算结果;
结果反馈单元,用于将所述迭代计算结果反馈至所述用户终端。
6.一种基于边缘计算的分布式外包计算处理系统,其特征在于,包括:用户终端以及若干台边缘服务器;
其中,所述用户终端用于实现如权利要求1至2任一项所述基于边缘计算的分布式外包计算处理方法的步骤;
所述边缘服务器用于实现如权利要求4至5任一项所述基于边缘计算的分布式外包计算处理方法的步骤。
7.一种可读存储介质,其特征在于,所述可读存储介质上存储有程序,所述程序被处理器执行时实现如权利要求1至2任一项所述基于边缘计算的分布式外包计算处理方法和/或如权利要求4至5任一项所述基于边缘计算的分布式外包计算处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011090558.5A CN112182488B (zh) | 2020-10-13 | 2020-10-13 | 基于边缘计算的分布式外包计算处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011090558.5A CN112182488B (zh) | 2020-10-13 | 2020-10-13 | 基于边缘计算的分布式外包计算处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112182488A CN112182488A (zh) | 2021-01-05 |
CN112182488B true CN112182488B (zh) | 2023-07-25 |
Family
ID=73949574
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011090558.5A Active CN112182488B (zh) | 2020-10-13 | 2020-10-13 | 基于边缘计算的分布式外包计算处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112182488B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115242540B (zh) * | 2022-08-03 | 2023-09-26 | 平安银行股份有限公司 | 数据处理方法与系统 |
CN117032832B (zh) * | 2023-08-25 | 2024-03-08 | 重庆邮电大学 | 一种基于移动边缘计算的最小化任务调用成本卸载方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111352609A (zh) * | 2020-03-05 | 2020-06-30 | 青岛大学 | 一种基于边缘计算的分布式外包模幂运算方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7660437B2 (en) * | 1992-05-05 | 2010-02-09 | Automotive Technologies International, Inc. | Neural network systems for vehicles |
KR101874119B1 (ko) * | 2012-02-07 | 2018-07-03 | 삼성전자주식회사 | 서버 및 클라이언트 간의 인증 방법, 기계로 읽을 수 있는 저장 매체, 클라이언트 및 서버 |
-
2020
- 2020-10-13 CN CN202011090558.5A patent/CN112182488B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111352609A (zh) * | 2020-03-05 | 2020-06-30 | 青岛大学 | 一种基于边缘计算的分布式外包模幂运算方法 |
Non-Patent Citations (1)
Title |
---|
一种高效安全外包求解大型模线性系统的算法;孟盼盼;赵英杰;;青岛大学学报(自然科学版)(第04期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112182488A (zh) | 2021-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11595421B2 (en) | Method and system that determine malicious nodes in a distributed computation network | |
Zhou et al. | Outsourcing eigen-decomposition and singular value decomposition of large matrix to a public cloud | |
CN112182488B (zh) | 基于边缘计算的分布式外包计算处理方法及装置 | |
CN112560091B (zh) | 数字签名方法、签名信息的验证方法、相关装置及电子设备 | |
Gupta et al. | Single secret image sharing scheme using neural cryptography | |
US10623189B2 (en) | Online/offline signature system and method based on multivariate cryptography | |
CN113326475B (zh) | 一种基于初等矩阵的矩阵求逆外包计算方法 | |
CN113407976B (zh) | 数字签名方法、签名信息的验证方法、相关装置及电子设备 | |
US8923519B2 (en) | Method of efficient secure function evaluation using resettable tamper-resistant hardware tokens | |
CN111026359A (zh) | 多方联合判定隐私数据的数值范围的方法和装置 | |
WO2022251341A1 (en) | Multi-party computation for many computers | |
CN114139197A (zh) | 一种代理安全多方计算方法、系统、处理设备及存储介质 | |
CN110443061B (zh) | 一种数据加密方法和装置 | |
Shah et al. | Paillier cryptosystem based mean value computation for encrypted domain image processing operations | |
EP3304803A1 (en) | Method and encryption node for encrypting message | |
CN114697142B (zh) | 一种通信数据加密方法及装置、电子设备、存储介质 | |
US10361855B2 (en) | Computing a secure elliptic curve scalar multiplication using an unsecured and secure environment | |
Zhang et al. | Secure outsourcing algorithms of modular exponentiations in edge computing | |
DE60105328T2 (de) | Öffentliche Schlüsselverteilung unter Verwendung einer näherungsweise linearen Funktion | |
CN111125752A (zh) | 一种边缘计算环境中的隐私保护方法 | |
CN112417468A (zh) | 数据处理方法、装置、电子设备及计算机存储介质 | |
Bao et al. | Efficient privacy-preserving outsourcing of large-scale geometric programming | |
CN113806775A (zh) | 一种基于卷积优化的区块链报文处理方法及装置 | |
CN115033645B (zh) | 一种基于区块链技术的电力数据存储方法、系统 | |
CN117811722B (zh) | 全局参数模型构建方法、秘钥生成方法、装置及服务器 |
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 |