[go: up one dir, main page]

CN111984225B - 基于边缘计算的支持隐私保护的模幂运算任务外包方法 - Google Patents

基于边缘计算的支持隐私保护的模幂运算任务外包方法 Download PDF

Info

Publication number
CN111984225B
CN111984225B CN202010928925.8A CN202010928925A CN111984225B CN 111984225 B CN111984225 B CN 111984225B CN 202010928925 A CN202010928925 A CN 202010928925A CN 111984225 B CN111984225 B CN 111984225B
Authority
CN
China
Prior art keywords
blinding
index
calculation result
edge
formula
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
Application number
CN202010928925.8A
Other languages
English (en)
Other versions
CN111984225A (zh
Inventor
张翰林
于佳
于清
李玥
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qingdao University
Original Assignee
Qingdao University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Qingdao University filed Critical Qingdao University
Priority to CN202010928925.8A priority Critical patent/CN111984225B/zh
Publication of CN111984225A publication Critical patent/CN111984225A/zh
Application granted granted Critical
Publication of CN111984225B publication Critical patent/CN111984225B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/544Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
    • G06F7/552Powers or roots, e.g. Pythagorean sums
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/544Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
    • G06F7/556Logarithmic or exponential functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy 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 Analysis (AREA)
  • Computational Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Mathematical Optimization (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Storage Device Security (AREA)
  • Computer And Data Communications (AREA)

Abstract

本申请公开了一种基于边缘计算的支持隐私保护的模幂运算任务外包方法,应用于物联网设备,能够将物联网设备的模幂运算任务外包给一定数量的边缘服务器,每个边缘服务器承担部分计算任务,在减少物联网设备的计算压力的同时,缩短了计算时间,提升物联网设备的工作效率;通过随机数对模数、底数和指数进行盲化,避免了信息泄露的问题,提升了外包过程的安全性;最后还能够验证边缘服务器返回的子计算结果,避免得出错误的计算结果,提升模幂运算任务外包过程的可靠性。此外,本申请还提供了一种基于边缘计算的支持隐私保护的模幂运算任务外包装置、物联网设备及可读存储介质,其技术效果与上述方法的技术效果相对应。

Description

基于边缘计算的支持隐私保护的模幂运算任务外包方法
技术领域
本申请涉及计算机技术领域,特别涉及一种基于边缘计算的支持隐私保护的模幂运算任务外包方法、装置、物联网设备及可读存储介质。
背景技术
在物联网(IoT)系统中,设备建立起联系以更好地促进应用程序的服务进程。物联网系统由各种智能设备组成,例如跟踪人体信息的传感器,也有望在众多领域进行创新。在这样的系统中,计算是无处不在的,每一个物联网设备在进行服务时需要执行大量的计算。在各种计算种类中,有一些计算类型是非常耗时。例如,用来确保安全的通信的复杂的密码算法,可以处理由传感器收集的数据的复杂的机器学习算法。但是,并非所有设备都可以执行繁重的计算。如何使受计算限制的物联网设备完成繁重的计算就显得尤为重要。
因此就有了外包的概念,外包就是资源受限或者说计算能力受限的设备将复杂的计算任务委派给计算能力强大的设备。在传统的基于云的解决方案中,计算任务外包给单个或两个云服务器。但是,这些服务器与物联网设备的距离往往很远,长距离的传输导致设备与云之间的通信延迟很大。
另外,模幂运算是公钥密码学(例如RSA)领域中最常见也最耗时的基本操作之一。对于n位指数,用于解决此问题的平方乘法算法大约需要1.5n倍的模乘。对于资源极其有限的设备(例如智能卡,RFID标签等),在本地进行如此昂贵的计算是不现实的。因此,探索如何在资源受限的物联网设备上有效完成模幂运算具有重要意义。
发明内容
本申请的目的是提供一种基于边缘计算的支持隐私保护的模幂运算任务外包方法、装置、物联网设备及可读存储介质,用以解决当前物联网设备缺乏完成模幂运算任务的计算能力的问题。其具体方案如下:
第一方面,本申请提供了一种基于边缘计算的支持隐私保护的模幂运算任务外包方法,应用于物联网设备,包括:
确定模幂运算任务中的模数、底数和指数;
随机生成与所述模数长度相同的质数,并随机生成四个整数;按照盲化公式,利用所述质数和所述四个整数分别对所述模数、所述底数和所述指数进行盲化,得到盲化模数、盲化底数、第一盲化指数和第二盲化指数,所述盲化公式为:
p′=pq
u′=u+r1p
a′1=a+r2φ(p)
a′2=t1a+r2φ(p)+t2
其中,p′为盲化模数,p为模数,q为随机生成的质数;u′为盲化底数,u为底数;r1,r2,t1,t2为随机生成的四个整数;a′1,a′2为第一盲化指数和第二盲化指数,a为指数,φ()为欧拉函数;
确定边缘服务器的总数量;按照分割公式,对所述第一盲化指数和所述第二盲化指数进行分割,所述分割公式为:
Figure BDA0002669472320000021
Figure BDA0002669472320000022
其中,对于任意的i∈[1,k],
Figure BDA0002669472320000023
MS和MM分别表示模平方运算和模乘的执行时间成本,k表示边缘服务器的总数量,L表示指数的位数;
对于任意的i∈[1,k],将(u′,e1,i,e2,i,pi-1,p′)作为子计算任务发送至相应的边缘服务器,接收边缘服务器返回的子计算结果;
根据全部边缘服务器返回的子计算结果,生成第一计算结果和第二计算结果;
利用所述第二计算结果对所述第一计算结果进行验证,若验证通过,则确定所述第一计算结果作为所述模幂运算任务的计算结果。
优选的,在所述接收边缘服务器返回的子计算结果之前,还包括:
利用边缘服务器按照目标公式对子计算任务进行处理,得到子计算结果,所述目标公式为:
Figure BDA0002669472320000031
优选的,所述根据全部边缘服务器返回的子计算结果,生成第一计算结果和第二计算结果,包括:
根据全部边缘服务器返回的子计算结果,按照合成公式,生成第一计算结果和第二计算结果,所述合成公式为:
Figure BDA0002669472320000032
优选的,所述利用所述第二计算结果对所述第一计算结果进行验证,包括:
判断所述第一计算结果和所述第二计算结果是否满足验证公式,所述验证公式为:
Figure BDA0002669472320000033
若满足,则判定所述第一计算结果验证通过。
优选的,所述确定边缘服务器的总数量,包括:
根据优化公式,确定边缘服务器的最优数量,所述优化公式为:
Figure BDA0002669472320000034
其中,[]表示取整函数。
第二方面,本申请提供了一种基于边缘计算的支持隐私保护的模幂运算任务外包装置,应用于物联网设备,包括:
输入模块:用于确定模幂运算任务中的模数、底数和指数;
盲化模块:用于随机生成与所述模数长度相同的质数,并随机生成四个整数;按照盲化公式,利用所述质数和所述四个整数分别对所述模数、所述底数和所述指数进行盲化,得到盲化模数、盲化底数、第一盲化指数和第二盲化指数,所述盲化公式为:
p′=pq
u′=u+r1p
a′1=a+r2φ(p)
a′2=t1a+r2φ(p)+t2
其中,p′为盲化模数,p为模数,q为随机生成的质数;u′为盲化底数,u为底数;r1,r2,t1,t2为随机生成的四个整数;a′1,a′2为第一盲化指数和第二盲化指数,a为指数,φ()为欧拉函数;
分割模块:用于确定边缘服务器的总数量;按照分割公式,对所述第一盲化指数和所述第二盲化指数进行分割,所述分割公式为:
Figure BDA0002669472320000041
Figure BDA0002669472320000042
其中,对于任意的i∈[1,k],
Figure BDA0002669472320000043
MS和MM分别表示模平方运算和模乘的执行时间成本,k表示边缘服务器的总数量,L表示指数的位数;
收发模块:用于对于任意的i∈[1,k],将(u′,e1,i,e2,i,pi-1,p′)作为子计算任务发送至相应的边缘服务器,接收边缘服务器返回的子计算结果;
合成模块:用于根据全部边缘服务器返回的子计算结果,生成第一计算结果和第二计算结果;
验证模块:用于利用所述第二计算结果对所述第一计算结果进行验证,若验证通过,则确定所述第一计算结果作为所述模幂运算任务的计算结果。
第三方面,本申请提供了一种物联网设备,包括:
存储器:用于存储计算机程序;
处理器:用于执行所述计算机程序,以实现如上所述的基于边缘计算的支持隐私保护的模幂运算任务外包方法的步骤。
第四方面,本申请提供了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时用于实现如上所述的基于边缘计算的支持隐私保护的模幂运算任务外包方法的步骤。
本申请所提供的一种基于边缘计算的支持隐私保护的模幂运算任务外包方法,应用于物联网设备,包括:确定模幂运算任务中的模数、底数和指数;随机生成与模数长度相同的质数,并随机生成四个整数;按照盲化公式,利用随机生成的质数和四个整数分别对模数、底数和指数进行盲化,得到盲化模数、盲化底数、第一盲化指数和第二盲化指数;确定边缘服务器的总数量;按照分割公式,对第一盲化指数和第二盲化指数进行分割;根据分割结果确定子计算任务,并发送至相应的边缘服务器,接收边缘服务器返回的子计算结果;根据全部边缘服务器返回的子计算结果,生成第一计算结果和第二计算结果;利用第二计算结果对第一计算结果进行验证,若验证通过,则确定第一计算结果作为模幂运算任务的计算结果。
可见,该方法能够将物联网设备的模幂运算任务外包给一定数量的边缘服务器,每个边缘服务器承担部分计算任务,在减少物联网设备的计算压力的同时,缩短了计算时间,提升物联网设备的工作效率;通过随机数对模数、底数和指数进行盲化,避免了信息泄露的问题,提升了外包过程的安全性;最后还能够验证边缘服务器返回的子计算结果,避免得出错误的计算结果,提升模幂运算任务外包过程的可靠性。
此外,本申请还提供了一种基于边缘计算的支持隐私保护的模幂运算任务外包装置、物联网设备及可读存储介质,其技术效果与上述方法的技术效果相对应,这里不再赘述。
附图说明
为了更清楚的说明本申请实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为边缘计算的系统模型示意图;
图2为基于边缘计算的计算任务外包模型示意图;
图3为本申请所提供的一种基于边缘计算的支持隐私保护的模幂运算任务外包方法实施例的流程图;
图4为本申请所提供的一种基于边缘计算的支持隐私保护的模幂运算任务外包装置实施例的功能框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
如前文所述,传统的基于云服务器的计算任务外包方案存在通信延迟较大的问题,且只能外包给一个或两个云服务器,耗时较长。
针对该问题,本申请基于边缘计算实现对模幂运算任务的外包方案,支持隐私保护。在边缘计算方案中,计算任务是通过网络边缘服务器的协作来执行的,边缘服务器位于用户或数据附近,通过将计算服务放置在更靠近用户或数据的位置,用户可以得到更快且更可靠的服务。
图1是边缘计算的系统模型。在物联网系统中,设备(包括传感器、智能电话和可穿戴设备等)连接以实现各种应用程序的使用和交互,但是这些设备的计算和存储容量有限。在边缘计算中,计算资源位于网络边缘,靠近终端设备。这些边缘服务器为终端设备提供足够的计算和存储服务。将计算资源放置在靠近用户的位置可以有效减少通信延迟,从而更好地支持需要实时通信的物联网应用程序,可以节省网络带宽。同样,移动性是边缘计算的另一个优势。边缘计算可以支持具有地理分布应用程序的设备,这确实是物联网部署的关键功能。
需要注意的是,在许多应用中,模幂运算的输入和输出通常涉及一些敏感信息。以众所周知的RSA算法为例,在加密阶段,操作的基础是纯文本,需要与他人保持秘密。在解密阶段,操作的指数是私钥,需要对其保密。在实践中,RSA加密和解密通常通过采用中国剩余理论(CRT)进行。这样做时,模幂的模数是原始模数的因数,该因素的泄漏将破坏RSA系统的安全性。因此,模幂的模量也需要被保护。
此外,计算服务提供商可能有意或无意返回无效结果。例如,服务提供商可能会很懒惰(节省财务奖励的计算能力),并且在没有完整计算的情况下返回结果,或者意外的软件错误可能导致无效的计算输出。
因此,本申请的外包方案需要满足以下条件:首先不会泄露给未经授权的第三方,其次是保证边缘服务器结果的正确性。
图2是基于边缘计算的计算任务外包模型。图2中,用户是指具有低计算能力的物联网设备,而该设备需要执行复杂的计算任务。边缘服务器是提供计算服务的强大计算方,因此,物联网设备将计算任务F()委派给边缘服务器。但是,边缘服务器可能会对输入数据感到好奇,而物联网应用程序通常涉及敏感信息,例如患者的健康状况等,这些信息不应泄露给未经授权的第三方。
因此,为了保护输入和输出的私密性,物联网设备将原始输入x盲化为x′,然后将x′分为k部分,并将它们分配给k个边缘服务器。边缘服务器i(此处i是边缘服务器的索引)执行F(x′i)并返回子计算结果y′i。最后,物联网设备汇总返回的子计算结果,并获得盲化加密的计算结果y′。值得注意的是,边缘服务器可能有意或无意返回无效结果。因此,物联网设备在获得y′后,会验证其正确性。最终物联网设备根据y′恢复真实结果y。
综上,本申请提供一种基于边缘计算的支持隐私保护的模幂运算任务外包方法、装置、物联网设备及可读存储介质,用以实现对如下所示的模幂运算任务的外包过程,从而降低物联网设备的计算压力,利用边缘计算能缩短数据传输中的时间消耗,通过计算任务外包给多个边缘服务器,缩短计算时间,提升计算效率:
Figure BDA0002669472320000081
同时,在模幂运算任务外包过程中,本申请实现以下目标:
第一,保护模幂运算的所有输入(底数,指数和模数)和输出的隐私,选择随机元素来掩盖模幂运算的输入,避免使信息受边缘服务器的侵害;
第二,将工作负载平均分配给边缘服务器,以使边缘服务器的计算时间成本相似,提升效率;
第三,为了确保边缘服务器计算结果的正确性,除了原始计算任务外,还将一些其他相关计算外包给边缘服务器,如果两组结果满足一定关系,则证明边缘服务器返回的结果有效。
下面对本申请提供的一种基于边缘计算的支持隐私保护的模幂运算任务外包方法实施例进行介绍,参见图3,该实施例应用于物联网设备,包括:
S101、确定模幂运算任务中的模数、底数和指数;
对于模幂运算任务R=ua mod p,模数为p,底数为u,指数为a。
S102、随机生成与模数长度相同的质数,并随机生成四个整数;按照盲化公式,利用质数和四个整数分别对模数、底数和指数进行盲化,得到盲化模数、盲化底数、第一盲化指数和第二盲化指数;
上述盲化公式为:
p′=pq
u′=u+r1p
a′1=a+r2φ(p)
a′2=t1a+r2φ(p)+t2
其中,p′为盲化模数,p为模数,q为随机生成的质数;u′为盲化底数,u为底数;r1,r2,t1,t2为随机生成的四个整数;a′1,a′2为第一盲化指数和第二盲化指数,a为指数,φ()为欧拉函数。
S103、确定边缘服务器的总数量;按照分割公式,对第一盲化指数和第二盲化指数进行分割;
上述分割公式为:
Figure BDA0002669472320000091
Figure BDA0002669472320000092
其中,对于任意的i∈[1,k],
Figure BDA0002669472320000093
MS和MM分别表示模平方运算和模乘的执行时间成本,k表示边缘服务器的总数量,L表示指数的位数。
S104、根据分割结果确定子计算任务,并发送至相应的边缘服务器,接收边缘服务器返回的子计算结果;
具体的,对于任意的i∈[1,k],将(u′,e1,i,e2,i,pi-1,p′)作为子计算任务发送至相应的边缘服务器。边缘服务器根据如下所示的目标公式,生成子计算结果:
Figure BDA0002669472320000094
S105、根据全部边缘服务器返回的子计算结果,生成第一计算结果和第二计算结果;
具体根据如下所示的合成公式生成两个计算结果:
Figure BDA0002669472320000095
S106、利用第二计算结果对第一计算结果进行验证,若验证通过,则确定第一计算结果作为模幂运算任务的计算结果。
具体判断第一计算结果和第二计算结果是否满足验证公式,若满足,则判定所述第一计算结果验证通过,并将第一计算结果作为模幂运算任务的计算结果,该验证公式为:
Figure BDA0002669472320000101
本实施例所提供一种基于边缘计算的支持隐私保护的模幂运算任务外包方法,应用于物联网设备,能够将物联网设备的模幂运算任务外包给一定数量的边缘服务器,每个边缘服务器承担部分计算任务,在减少物联网设备的计算压力的同时,缩短了计算时间,提升物联网设备的工作效率;通过随机数对模数、底数和指数进行盲化,避免了信息泄露的问题,提升了外包过程的安全性;最后还能够验证边缘服务器返回的子计算结果,避免得出错误的计算结果,提升模幂运算任务外包过程的可靠性。
值得注意的是,在前述分割公式中,模平方运算和模乘的执行时间成本并非恒定的,二者会随着边缘服务器的总数量变化而发生变化的。
因此,作为一种优选的实施方式,可以在前述实施例的基础上,寻找边缘服务器的最优数量,以进一步提升计算效率。
具体的,本申请根据优化公式,确定边缘服务器的最优数量,该优化公式为:
Figure BDA0002669472320000102
其中,[]表示取整函数。
基于以上实施例,下面以具体应用为例对本申请的基于边缘计算的支持隐私保护的模幂运算任务外包方法进行详尽的说明。
输入:
Figure BDA0002669472320000103
输出:R=ua mod p
S201、任务盲化。
首先,物联网设备随机选择一个与模数p长度相同的质数q,用于掩盖模数p。然后,物联网设备选择随机整数r1,r2,二者在盲化加密输入u和a中起着作用。最后,物联网设备选择用于验证结果的随机整数t1,t2。按照如下所示的盲化公式,分别对模数、底数和指数进行盲化:
p′=pq
u′=u+r1p
a′1=a+r2φ(p)
a′2=t1a+r2φ(p)+t2
其中,p′为盲化模数,p为模数,q为随机生成的质数;u′为盲化底数,u为底数;r1,r2,t1,t2为随机生成的四个整数;a′1,a′2为第一盲化指数和第二盲化指数,a为指数,φ()为欧拉函数。
S202、任务分割。
现在介绍分割方法,分割的目的是平衡每个边缘服务器的计算时间成本,从而将指数分成多个段。
具体的,将盲化指数a′1按照下式分为k部分,得到(e1,1,e1,2,e1,3,...,e1,k):
Figure BDA0002669472320000111
其中,k是边缘服务器的总数量,切点pi可以确定为:
Figure BDA0002669472320000112
其中,
Figure BDA0002669472320000113
MS和MM分别表示模平方运算和模乘的执行时间成本,L表示指数的位数。
注意到当在不同的边缘服务器上执行操作时,这两个值可能不是恒定的。因此边缘服务器的最优数量为:
Figure BDA0002669472320000114
现在,本实施例提供此细分方法的示例。假设有一个160位的指数,而边缘服务器的
Figure BDA0002669472320000115
是1.2,那么可以得到:
Figure BDA0002669472320000116
Figure BDA0002669472320000117
p1=100,p2=138,p3=152,p4=157,p5=159,p6=160
因此,每个边缘服务器需要计算160MS。
类似地,物联网设备按照下式将盲化指数a′2分为k部分,得到(e1,1,e1,2,e1,3,…,e1,k):
Figure BDA0002669472320000121
S203、发送子计算,接收子计算结果。
在分割过程之后,物联网设备将(u′,e1,i,e2,i,pi-1,p′)发送到边缘服务器Ei,其中i是边缘服务器的索引。
边缘服务器Ei根据下式,生成子计算结果,并发送至物联网设备:
Figure BDA0002669472320000122
S204、结果合成。
物联网设备根据k个边缘服务器返回的子计算结果,按照下式生成两个计算结果:
Figure BDA0002669472320000123
S205、结果验证。
物联网设备判断两个计算结果是否满足下式,若满足,则将第一计算结果作为模幂运算任务的计算结果;否则,物联网设备输出“error”:
Figure BDA0002669472320000124
可见,本实施例提供的一种基于边缘计算的支持隐私保护的模幂运算任务外包方法,显著减少模幂运算在物联网设备的计算量,降低了时间复杂度,从而提高工作效率;计算任务分配给多个服务器,所以每个服务器的工作量就显著降低,减少在边缘服务器的计算耗时。通过盲化模幂运算中的底数、指数、模数,实现了输入输出的加密,使得外包计算更加安全可靠;如果恶意服务器行为不当,则检测到该行为不当的可能性为1。
下面对本申请实施例提供的一种基于边缘计算的支持隐私保护的模幂运算任务外包装置进行介绍,下文描述的一种基于边缘计算的支持隐私保护的模幂运算任务外包装置与上文描述的一种基于边缘计算的支持隐私保护的模幂运算任务外包方法可相互对应参照。
如图4所示,本实施例的基于边缘计算的支持隐私保护的模幂运算任务外包装置,应用于物联网设备,包括:
输入模块01:用于确定模幂运算任务中的模数、底数和指数;
盲化模块02:用于随机生成与所述模数长度相同的质数,并随机生成四个整数;按照盲化公式,利用所述质数和所述四个整数分别对所述模数、所述底数和所述指数进行盲化,得到盲化模数、盲化底数、第一盲化指数和第二盲化指数,所述盲化公式为:
p′=pq
u′=u+r1p
a′1=a+r2φ(p)
a′2=t1a+r2φ(p)+t2
其中,p′为盲化模数,p为模数,q为随机生成的质数;u′为盲化底数,u为底数;r1,r2,t1,t2为随机生成的四个整数;a′1,a′2为第一盲化指数和第二盲化指数,a为指数,φ()为欧拉函数;
分割模块03:用于确定边缘服务器的总数量;按照分割公式,对所述第一盲化指数和所述第二盲化指数进行分割,所述分割公式为:
Figure BDA0002669472320000131
Figure BDA0002669472320000132
其中,对于任意的i∈[1,k],
Figure BDA0002669472320000133
MS和MM分别表示模平方运算和模乘的执行时间成本,k表示边缘服务器的总数量,L表示指数的位数;
收发模块04:用于对于任意的i∈[1,k],将(u′,e1,i,e2,i,pi-1,p′)作为子计算任务发送至相应的边缘服务器,接收边缘服务器返回的子计算结果;
合成模块05:用于根据全部边缘服务器返回的子计算结果,生成第一计算结果和第二计算结果;
验证模块06:用于利用所述第二计算结果对所述第一计算结果进行验证,若验证通过,则确定所述第一计算结果作为所述模幂运算任务的计算结果。
本实施例的基于边缘计算的支持隐私保护的模幂运算任务外包装置用于实现前述的基于边缘计算的支持隐私保护的模幂运算任务外包方法,因此该装置中的具体实施方式可见前文中的基于边缘计算的支持隐私保护的模幂运算任务外包方法的实施例部分,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再展开介绍。
另外,由于本实施例的基于边缘计算的支持隐私保护的模幂运算任务外包装置用于实现前述的基于边缘计算的支持隐私保护的模幂运算任务外包方法,因此其作用与上述方法的作用相对应,这里不再赘述。
此外,本申请还提供了一种物联网设备,包括:
存储器:用于存储计算机程序;
处理器:用于执行所述计算机程序,以实现如上文所述的基于边缘计算的支持隐私保护的模幂运算任务外包方法的步骤。
最后,本申请提供了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时用于实现如上文所述的基于边缘计算的支持隐私保护的模幂运算任务外包方法的步骤。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的方案进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (8)

1.一种基于边缘计算的支持隐私保护的模幂运算任务外包方法,其特征在于,应用于物联网设备,包括:
确定模幂运算任务中的模数、底数和指数;
随机生成与所述模数长度相同的质数,并随机生成四个整数;按照盲化公式,利用所述质数和所述四个整数分别对所述模数、所述底数和所述指数进行盲化,得到盲化模数、盲化底数、第一盲化指数和第二盲化指数,所述盲化公式为:
p′=pq
u′=u+r1p
a'1=a+r2φ(p)
a'2=t1a+r2φ(p)+t2
其中,p′为盲化模数,p为模数,q为随机生成的质数;u′为盲化底数,u为底数;r1,r2,t1,t2为随机生成的四个整数;a'1,a'2为第一盲化指数和第二盲化指数,a为指数,φ()为欧拉函数;
确定边缘服务器的总数量;按照分割公式,对所述第一盲化指数和所述第二盲化指数进行分割,所述分割公式为:
Figure FDA0002669472310000011
Figure FDA0002669472310000012
其中,对于任意的i∈[1,k],
Figure FDA0002669472310000013
MS和MM分别表示模平方运算和模乘的执行时间成本,k表示边缘服务器的总数量,L表示指数的位数;
对于任意的i∈[1,k],将(u′,e1,i,e2,i,pi-1,p′)作为子计算任务发送至相应的边缘服务器,接收边缘服务器返回的子计算结果;
根据全部边缘服务器返回的子计算结果,生成第一计算结果和第二计算结果;
利用所述第二计算结果对所述第一计算结果进行验证,若验证通过,则确定所述第一计算结果作为所述模幂运算任务的计算结果。
2.如权利要求1所述的方法,其特征在于,在所述接收边缘服务器返回的子计算结果之前,还包括:
利用边缘服务器按照目标公式对子计算任务进行处理,得到子计算结果,所述目标公式为:
Figure FDA0002669472310000021
3.如权利要求2所述的方法,其特征在于,所述根据全部边缘服务器返回的子计算结果,生成第一计算结果和第二计算结果,包括:
根据全部边缘服务器返回的子计算结果,按照合成公式,生成第一计算结果和第二计算结果,所述合成公式为:
Figure FDA0002669472310000022
4.如权利要求3所述的方法,其特征在于,所述利用所述第二计算结果对所述第一计算结果进行验证,包括:
判断所述第一计算结果和所述第二计算结果是否满足验证公式,所述验证公式为:
Figure FDA0002669472310000023
若满足,则判定所述第一计算结果验证通过。
5.如权利要求1-4任意一项所述的方法,其特征在于,所述确定边缘服务器的总数量,包括:
根据优化公式,确定边缘服务器的最优数量,所述优化公式为:
Figure FDA0002669472310000024
其中,[]表示取整函数。
6.一种基于边缘计算的支持隐私保护的模幂运算任务外包装置,其特征在于,应用于物联网设备,包括:
输入模块:用于确定模幂运算任务中的模数、底数和指数;
盲化模块:用于随机生成与所述模数长度相同的质数,并随机生成四个整数;按照盲化公式,利用所述质数和所述四个整数分别对所述模数、所述底数和所述指数进行盲化,得到盲化模数、盲化底数、第一盲化指数和第二盲化指数,所述盲化公式为:
p′=pq
u′=u+r1p
a'1=a+r2φ(p)
a'2=t1a+r2φ(p)+t2
其中,p′为盲化模数,p为模数,q为随机生成的质数;u′为盲化底数,u为底数;r1,r2,t1,t2为随机生成的四个整数;a'1,a'2为第一盲化指数和第二盲化指数,a为指数,φ()为欧拉函数;
分割模块:用于确定边缘服务器的总数量;按照分割公式,对所述第一盲化指数和所述第二盲化指数进行分割,所述分割公式为:
Figure FDA0002669472310000031
Figure FDA0002669472310000032
其中,对于任意的i∈[1,k],
Figure FDA0002669472310000033
MS和MM分别表示模平方运算和模乘的执行时间成本,k表示边缘服务器的总数量,L表示指数的位数;
收发模块:用于对于任意的i∈[1,k],将(u′,e1,i,e2,i,pi-1,p′)作为子计算任务发送至相应的边缘服务器,接收边缘服务器返回的子计算结果;
合成模块:用于根据全部边缘服务器返回的子计算结果,生成第一计算结果和第二计算结果;
验证模块:用于利用所述第二计算结果对所述第一计算结果进行验证,若验证通过,则确定所述第一计算结果作为所述模幂运算任务的计算结果。
7.一种物联网设备,其特征在于,包括:
存储器:用于存储计算机程序;
处理器:用于执行所述计算机程序,以实现如权利要求1-5任意一项所述的基于边缘计算的支持隐私保护的模幂运算任务外包方法的步骤。
8.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时用于实现如权利要求1-5任意一项所述的基于边缘计算的支持隐私保护的模幂运算任务外包方法的步骤。
CN202010928925.8A 2020-09-07 2020-09-07 基于边缘计算的支持隐私保护的模幂运算任务外包方法 Active CN111984225B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010928925.8A CN111984225B (zh) 2020-09-07 2020-09-07 基于边缘计算的支持隐私保护的模幂运算任务外包方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010928925.8A CN111984225B (zh) 2020-09-07 2020-09-07 基于边缘计算的支持隐私保护的模幂运算任务外包方法

Publications (2)

Publication Number Publication Date
CN111984225A CN111984225A (zh) 2020-11-24
CN111984225B true CN111984225B (zh) 2023-05-23

Family

ID=73448097

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010928925.8A Active CN111984225B (zh) 2020-09-07 2020-09-07 基于边缘计算的支持隐私保护的模幂运算任务外包方法

Country Status (1)

Country Link
CN (1) CN111984225B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117411913B (zh) * 2023-12-15 2024-02-13 徐州医科大学 一种基于幂变换的云平台与健康应用的安全交互方法
CN117857040B (zh) * 2024-03-05 2024-06-04 建投物联股份有限公司 一种物联网设备安全辅助方法、装置、设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111352609A (zh) * 2020-03-05 2020-06-30 青岛大学 一种基于边缘计算的分布式外包模幂运算方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102011117236A1 (de) * 2011-10-28 2013-05-02 Giesecke & Devrient Gmbh Effiziente Primzahlprüfung
US10367637B2 (en) * 2016-07-22 2019-07-30 Qualcomm Incorporated Modular exponentiation with transparent side channel attack countermeasures

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111352609A (zh) * 2020-03-05 2020-06-30 青岛大学 一种基于边缘计算的分布式外包模幂运算方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
小数据集条件下的多态系统贝叶斯网络参数学习;肖蒙;张友鹏;;计算机科学(第04期);全文 *

Also Published As

Publication number Publication date
CN111984225A (zh) 2020-11-24

Similar Documents

Publication Publication Date Title
CN112930660B (zh) 用于分配数字签名数据份额的计算机实现的系统和方法
CN111984990B (zh) 基于边缘计算的支持隐私保护的矩阵乘法任务外包方法
Li et al. Privacy-preserving and distributed algorithms for modular exponentiation in IoT with edge computing assistance
CN111064583B (zh) 一种门限sm2数字签名方法、装置、电子设备及存储介质
CN111010277B (zh) 密钥交换方法、装置和存储介质、计算装置
EP3930252A1 (en) Countermeasures for side-channel attacks on protected sign and key exchange operations
Gupta et al. Ecc over rsa for asymmetric encryption: A review
CN111291122B (zh) 基于区块链的竞标方法及装置
US20100082992A1 (en) Cryptographic Applications of Efficiently Evaluating Large Degree Isogenies
CN103024006A (zh) 一种云计算环境下双线性对的安全外包的方法
CN111984225B (zh) 基于边缘计算的支持隐私保护的模幂运算任务外包方法
US11902432B2 (en) System and method to optimize generation of coprime numbers in cryptographic applications
CN109981576A (zh) 密钥迁移方法和装置
Bollavarapu et al. Data security in cloud computing
CN111859314A (zh) 一种基于加密软件的sm2加密方法、系统、终端及存储介质
Yadav et al. A comparative study of elliptic curve and hyperelliptic curve cryptography methods and an overview of their applications
US12500761B2 (en) Data encryption for multi-cloud security
KR102070061B1 (ko) 묶음 검증 방법 및 장치
US10361855B2 (en) Computing a secure elliptic curve scalar multiplication using an unsecured and secure environment
Su et al. Secure outsourcing algorithms for composite modular exponentiation based on single untrusted cloud
CN114187000B (zh) 用于分散私钥的签名方法、设备、存储介质及处理器
Mujeerulla et al. Demerits of Elliptic Curve Cryptosystem with Bitcoin Curves Using Lenstra–Lenstra–Lovasz (LLL) Lattice Basis Reduction
Kuppusamy et al. CRT-based outsourcing algorithms for modular exponentiations
Zakerolhosseini et al. Secure transmission of mobile agent in dynamic distributed environments
Liu et al. The implementations and applications of elliptic curve cryptography

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