CN112733179A - 一种轻量级非交互隐私保护数据聚合方法 - Google Patents
一种轻量级非交互隐私保护数据聚合方法 Download PDFInfo
- Publication number
- CN112733179A CN112733179A CN202110353614.8A CN202110353614A CN112733179A CN 112733179 A CN112733179 A CN 112733179A CN 202110353614 A CN202110353614 A CN 202110353614A CN 112733179 A CN112733179 A CN 112733179A
- Authority
- CN
- China
- Prior art keywords
- certificate
- data
- function
- key
- execution environment
- 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.)
- Granted
Links
- 230000002776 aggregation Effects 0.000 title claims abstract description 136
- 238000004220 aggregation Methods 0.000 title claims abstract description 136
- 238000000034 method Methods 0.000 title claims abstract description 35
- 230000002452 interceptive effect Effects 0.000 title claims abstract description 28
- 238000004364 calculation method Methods 0.000 claims abstract description 50
- 238000013475 authorization Methods 0.000 claims abstract description 24
- 238000007726 management method Methods 0.000 claims description 23
- 238000012795 verification Methods 0.000 claims description 16
- 230000008569 process Effects 0.000 claims description 10
- 238000012423 maintenance Methods 0.000 claims description 7
- 238000010200 validation analysis Methods 0.000 claims description 6
- 238000001914 filtration Methods 0.000 claims description 3
- 238000003860 storage Methods 0.000 claims description 3
- 230000004931 aggregating effect Effects 0.000 claims description 2
- 238000004891 communication Methods 0.000 abstract description 2
- 230000006399 behavior Effects 0.000 abstract 1
- 230000006870 function Effects 0.000 description 98
- 230000003993 interaction Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 101000983970 Conus catus Alpha-conotoxin CIB Proteins 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- QVGXLLKOCUKJST-UHFFFAOYSA-N atomic oxygen Chemical compound [O] QVGXLLKOCUKJST-UHFFFAOYSA-N 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000012905 input function Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 229910052760 oxygen Inorganic materials 0.000 description 1
- 239000001301 oxygen Substances 0.000 description 1
- 238000006116 polymerization reaction Methods 0.000 description 1
- 230000008092 positive effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- 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/64—Protecting data integrity, e.g. using checksums, certificates or signatures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bioethics (AREA)
- Databases & Information Systems (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种轻量级非交互隐私保护数据聚合方法,包含基于可信执行环境的隐私保护函数计算、基于凭证的函数授权、公共可验证的凭证管理。所述基于可信执行环境的隐私保护函数计算,用于实现任意函数的聚合计算,摆脱对可信聚合器的需求;所述基于凭证的函数授权,用于对用户所请求计算的函数进行授权、验证、管理,防止攻击者利用特殊函数获取信息;所述公共可验证的凭证管理,用于防止凭证伪造、凭证重放等针对凭证的恶意行为。本发明所提供的隐私保护数据聚合方法不依赖于可信实体,能够计算任意聚合函数,仅具有常数级通信复杂度和线性计算复杂度,特别适用于资源受限的物联网环境。
Description
技术领域
本发明属于信息安全技术领域,涉及一种应用密码学中隐私保护数据聚合方法,具体涉及一种轻量级非交互隐私保护数据聚合方法。
背景技术
随着云计算和物联网的巧妙结合,云化物联网已经成为改变生产和生活方式的重要力量。智慧城市、医疗保健、虚拟现实等,这些日益复杂的物联网应用对物联网终端的计算能力、存储容量和电池容量提出了更高的要求。例如,在医疗分析系统中,新兴的可穿戴设备和应用可以检测身体状况(如,心率、氧气水平),为现代医学的发展提供了丰富的数据。用户的健康数据被传输到云服务器(聚合服务器),对这些数据计算一个聚合函数(例如,SUM、MAX或VAR)从而推测用户的身体状况。
然而,由于完全可信的云服务器在现实世界中很难实现,特别是在资源受限的环境中,以保护隐私的方式进行安全的数据聚合仍然是个难题,引起了学术界和工业界的广泛关注。因此,隐私保护数据聚合的概念应运而生。隐私保护数据聚合是指为达到一定目的而对相关数据进行选择和分析以得到预期结果的过程。目前,隐私保护数据聚合已经在各种场景下得到了广泛的研究,如移动传感系统,雾计算,机器学习等。然而,由于较高的计算开销和频繁的交互对于受限的物联网设备来说相对昂贵,并且现有的方案大多数专注于特定函数的隐私保护数据聚合方法难以满足智能服务的多样性需求。
根据数据所有者和聚合器之间的交互,现有的隐私保护数据聚合方案可以分为两类:交互式方案和非交互式方案。交互式方案通常将计算任务分发到终端设备,在终端设备中,数据由数据所有者维护和操作,数据所有者与聚合器频繁交互。最具代表性的交互式解决方案是基于联邦学习和安全多方计算的方案。在联邦学习中,通过在终端设备上生成本地训练的聚合参数更新来生成一个集中式模型。但是,有研究表明参数更新仍旧可能泄露某些敏感信息。与联邦学习不同,基于安全多方计算的方法只需要数据拥有者,不需要可信的聚合器。然后,由于安全多方计算需要频繁交互,在涉及大量数据的数据聚合的场景中性能堪忧。与交互式方法不同的是,非交互式方法通常将数据处理后传输到一个具有强计算能力的中心。在数据聚合的过程中,数据所有者和聚合器之间不再需要进行频繁的交互。非交互式方案中最常用的是同态加密技术。具体来说,同态加密允许直接在密文上进行计算,解密得到明文计算结果。然而,基于密文的计算通常都需要耗费巨大的计算资源。此外,大多数的隐私保护数据聚合方案关注的是特定的函数,这意味着一旦聚合函数发生变化,整个系统就需要重新部署。
可信执行环境是中央处理器(CPU)内的一个安全区域,它运行在一个独立的环境中且与操作系统并行运行。CPU确保可信执行环境中代码和数据的机密性和完整性都得到保护。通过同时使用硬件和软件来保护数据和代码,可信执行环境比操作系统更加安全。在可信执行环境中运行的受信任应用程序可以访问设备主处理器和内存的全部功能,而硬件隔离保护这些组件不受主操作系统中运行的用户安装应用程序的影响。因此,本方案基于可信执行环境,提出一个轻量级的非交互隐私保护数据聚合方案,该方案能够计算任意聚合函数,并且适用于资源受限环境下大体量数据的聚合计算。
发明内容
鉴于以上提及的传统数据聚合方案的弊端,以及在资源受限环境中进行隐私保护数据聚合的安全及性能需求,本发明基于可信执行环境,提供了一种在受限环境中具有低交互、低延时的轻量级非交互隐私保护数据聚合方法。
本发明所采用的技术方案是:一种轻量级非交互隐私保护数据聚合方法,包括基于可信执行环境的隐私保护函数计算,基于凭证的函数授权和公共可验证的凭证管理;
所述基于可信执行环境的隐私保护函数计算,包括系统密钥管理、保护数据机密性和完整性和实现任意函数的聚合计算;具体实现过程包括:
由具有可信执行环境的密钥分发中心生成整个系统所需要的函数计算密钥和公共参数,并将密钥和公共参数分发给系统中的所有参与方,包括数据拥有者、具有可信执行环境的聚合服务器、具有可信执行环境的密钥分发中心、数据分析者和公共账本;
在保护数据机密性和完整性阶段,数据拥有者接收具有可信执行环境的密钥分发中心分发的密钥,并使用混合加密的密钥管理方法结合认证加密对所有数据进行加密保护,然后将所有密文发送给聚合服务器;
在实现任意函数的聚合计算阶段,聚合服务器接收数据拥有者发送的所有密文并将其存储在数据库中;当聚合服务器收到数据分析者发送合法的函数计算请求时,建立一个该函数的可信执行环境并将所需的数据陆续放入该可信执行环境并进行计算,最后输出一个聚合结果,并对聚合结果进行签名从而生成一个有效性证明;所述合法的函数,为基于凭证的授权函数;
所述基于凭证的函数授权,包括函数白名单维护、密钥生成、凭证生成和凭证验证;
所述函数白名单维护,由每个数据拥有者创建一个函数白名单,并定期进行更新维护,当接收到数据分析者发送的函数计算请求时,数据拥有者根据函数白名单规定的规则决定是否为该请求进行授权;
所述密钥生成,每个数据拥有者和公共账本输入公共参数,分别生成一对公私钥对,将其私钥安全保存在本地,用于对凭证中的内容进行签名,并将公钥公开发送给系统中的所有参与方,用于对凭证进行验证;
所述凭证生成,当接收到数据分析者发送的函数请求时,若数据拥有者同意为其授权,则为该请求生成一个凭证,并对其进行签名;
所述凭证验证,当接收到数据分析者发送的函数请求和凭证时,聚合服务器的可信执行环境对该请求和凭证进行验证,当且仅当凭证验证通过时,可信执行环境执行任意函数的聚合计算;
所述公共可验证的凭证管理,包括凭证公示、凭证读取和凭证确认;
所述凭证公示,数据拥有者生成凭证之后,为该凭证生成一个承诺,并将其记录在公共账本上;
所述凭证读取,聚合服务器的可信执行环境接收到数据分析者发送的函数请求和凭证后,向公共账本请求读取该凭证的相关信息,公共账本为该请求生成一个证明;
所述凭证确认,聚合服务器的可信执行环境接收到公共账本发送的证明,验证该凭证的合法性。
本发明相比现有技术,其优点和积极效果主要体现在以下几个方面:
(1)本发明提供了一种轻量级非交互隐私保护数据聚合系统,基于我们的设计,该系统可以计算任意函数,并且不依赖于任何可信实体;
(2)本发明设计了基于可信执行环境的函数计算方法,主要使用轻量级的对称运算,对计算和通信资源消耗较低,适用于资源受限环境;
(3)本发明设计了函数授权和公共可验证的凭证管理,从而对函数请求进行限制,能够抵抗恶意的服务器和数据分析者。
附图说明
图1为本发明实施例的整体框架图。
图2为本发明实施例中基于可信执行环境的隐私保护函数计算模块的原理图。
图3为本发明实施例中基于凭证的函数授权模块的原理图。
图4为本发明实施例中公共可验证的凭证管理模块的原理图。
具体实施方式
为了便于本领域普遍技术人员的理解和实施本发明,下面结合附图及实施例对本发明作为进一步的详细描述,应当理解,此处所描述的实施示例仅用于说明和解释本发明,并不用于限定本发明。
本发明提供的一种轻量级非交互隐私保护数据聚合系统,包括基于可信执行环境的隐私保护函数计算模块、基于凭证的函数授权模块、公共可验证的凭证管理模块组成,完整的系统架构图请见图1。
本实施例中,基于可信执行环境的隐私保护函数计算模块用于系统密钥管理、保护数据机密性和完整性、实现任意函数的聚合计算,该过程中不要求任何可信实体,仅需要具有可信执行环境的聚合服务器和密钥分发中心;基于凭证的函数授权模块用于函数白名单维护、密钥生成、凭证生成、凭证验证,该过程中由数据拥有者作为决策主体,决定对数据分析者的请求是否授权,并由聚合服务器的可信执行环境对授权进行验证;公共可验证的凭证管理模块用于凭证公示、凭证读取、凭证确认,该过程中主要由公共账本提供公共可验证服务,公共账本的作用是确保保存在公共账本上的凭证数据未被篡改,并为该数据生成一个有效性证明。
基于上述构架,本发明还提供了一种轻量级非交互隐私保护数据聚合方法,包括基于可信执行环境的隐私保护函数计算,基于凭证的函数授权和公共可验证的凭证管理;
本实施例中,基于可信执行环境的隐私保护函数计算,包括系统密钥管理、保护数据机密性和完整性和实现任意函数的聚合计算;具体实现过程包括:
由具有可信执行环境的密钥分发中心生成整个系统所需要的函数计算密钥和公共参数,并将密钥和公共参数分发给系统中的所有参与方,包括数据拥有者、具有可信执行环境的聚合服务器、具有可信执行环境的密钥分发中心、数据分析者和公共账本;
本实施例在保护数据机密性和完整性阶段,数据拥有者接收具有可信执行环境的密钥分发中心分发的密钥,并使用混合加密的密钥管理方法结合认证加密对所有数据进行加密保护,然后将所有密文发送给聚合服务器(该阶段的操作可以离线进行,即选择合适的时间进行传输,而不需要占用数据聚合的线上运行时间)。
混合加密是用对称加密来加密明文,用公钥密码来加密对称加密中所使用的密钥,但是单纯只谈加密只能保证消息的机密性,为了同时保证消息的完整性,本实施例中把对称加密换成了认证加密。
本实施例在实现任意函数的聚合计算阶段,聚合服务器接收数据拥有者发送的所有密文并将其存储在数据库中;当聚合服务器收到数据分析者发送合法的函数计算请求时,建立一个该函数的可信执行环境并将所需的数据陆续放入该可信执行环境并进行计算,最后输出一个聚合结果,并对聚合结果进行签名从而生成一个有效性证明;本实施例中合法的函数,为基于凭证的授权函数;
本实施例中基于凭证的函数授权,包括函数白名单维护、密钥生成、凭证生成和凭证验证;
本实施例中函数白名单维护,由每个数据拥有者创建一个函数白名单,并定期进行更新维护,当接收到数据分析者发送的函数计算请求时,数据拥有者根据函数白名单规定的规则决定是否为该请求进行授权;
本实施例中密钥生成,每个数据拥有者和公共账本输入公共参数,分别生成一对公私钥对,将其私钥安全保存在本地,用于对凭证中的内容进行签名,并将公钥公开发送给系统中的所有参与方,用于对凭证进行验证;
本实施例中凭证生成,当接收到数据分析者发送的函数请求时,若数据拥有者同意为其授权,则为该请求生成一个凭证,并对其进行签名;
本实施例中凭证验证,当接收到数据分析者发送的函数请求和凭证时,聚合服务器的可信执行环境对该请求和凭证进行验证,当且仅当凭证验证通过时,可信执行环境执行任意函数的聚合计算;
本实施例中公共可验证的凭证管理,包括凭证公示、凭证读取和凭证确认;
本实施例中凭证公示,数据拥有者生成凭证之后,为该凭证生成一个承诺,并将其记录在公共账本上;
本实施例中凭证读取,聚合服务器的可信执行环境接收到数据分析者发送的函数请求和凭证后,向公共账本请求读取该凭证的相关信息,公共账本为该请求生成一个证明;
本实施例中凭证确认,聚合服务器的可信执行环境接收到公共账本发送的证明,验证该凭证的合法性。
请见图2,本实施例中,基于可信执行环境的隐私保护函数计算,具体过程包括以下步骤:
步骤A1:由密钥分发中心(具有可信执行环境)生成整个系统所需要的数据保护密钥(ek,dk)和公共参数PP,并将公钥ek和公共参数PP分发给系统中的所有参与方,包括数据拥有者、聚合服务器(具有可信执行环境)、数据分析者、公共账本;
A1.2:密钥分发中心生成一对公私钥对(ek,dk),并将该公钥ek发送给所有的数据拥有者,用于对数据进行加密,将该私钥dk保存在密钥分发中心的可信执行环境中;
步骤A2:保护数据机密性和完整性阶段中,数据拥有者P i (i∈[n])接收步骤A1所
分发的密钥ek,并使用混合加密的密钥管理方法结合认证加密对所有数据(i∈[n])进行加密保护,并将所有密文{c i }(i∈[n])发送给聚合服务
器(该阶段的操作可以离线进行,即选择合适的时间进行传输,而不需要占用数据聚合的线
上运行时间);
其中,假设有n个数据拥有者,假设每条消息向量含有m个消息明文; {V i },{c i }分别代表所有数据拥有者P i (i∈[n])所持有的明文数据V i 和
密文C i 的集合(为了便于表示,假设每个数据拥有者只有一个向量数据); ;
A2.1:数据拥有者P i 接收到密钥分布中心发送的公钥ek后,结合该公钥ek和随机
数分别生成一个加密密钥k i DE 和认证密钥k i MA ,以及一个辅助密钥(用于进行函数
计算时重新恢复出加密密钥和认证密钥);
其中加密算法本实施例采用AES-GCM算法,消息认证算法本实施例采用SHA-256。
步骤A3:实现任意函数的聚合计算阶段,聚合服务器接收数据拥有者发送的所有
密文{c i }(i∈[n])并将其存储在数据库中。当聚合服务器收到数据分析者发送合法的函数
计算(函数授权及验证见步骤B)请求f时,建立一个该函数的可信执行环境并将所需的数据
{c i }(i∈[n])陆续放入该可信执行环境并进行计算,最后输出一个聚合结果f({V i }),并对
聚合结果进行签名从而生成一个有效性证明。
A3.1:当接收到数据拥有者发送的密文{c i }后,聚合服务器首先将所有密文{c i }存储在数据库中;
A3.2:当聚合服务器收到数据分析者发送合法的函数计算请求f时,根据该函数建立一个可信执行环境;
A3.3:聚合服务器向密钥分发中心发布请求,在聚合服务器的可信执行环境和密钥分发中心的可信执行环境之间建立一条可信通道,用于传输步骤A1.2中所存储的私钥dk;
A3.4:根据数据分析者的请求,聚合服务器将所需要的密文{c i }依次读取到可信执行环境中;
这里为了表述清晰,假设数据分析者请求计算所有的密文;
A3.5:在可信执行环境中,根据每条密文C i 中含有的辅助密钥,结合私钥生成该
条密文的解密密钥k i DE 和消息验证密钥k i MA ,在确认其消息认证码合法的条件下,用解密密
钥解密出消息明文V i ,并根据数据分析者所请求的函数进行计算,生成一个聚合结果f
({V i });
其中,数字签名算法本实施例采用ElGamal签名算法;
请见图3,本实施例中,基于凭证的函数授权,具体过程包括以下步骤:
步骤B1:函数白名单维护,由每个数据拥有者P i 创建一个函数白名单W i ,并定期进行更新维护,当接收到数据分析者发送的函数计算请求f时,数据拥有者根据函数白名单规定的规则决定是否为该请求进行授权;
步骤B1.1:在系统运行之前,每个数据拥有者创建一个空的函数白名单W i ,用于对所收到的函数请求进行授权判断;
步骤B1.2:每个数据拥有者对其所拥有的所有数据进行分析,并确定允许计算的函数,将其存入所创建的函数白名单W i 中。
步骤B1.3:数据拥有者制定白名单策略,并根据策略定期对白名单进行更新维护。
步骤B2:密钥生成,每个数据拥有者P i 和公共账本PL(也表示为P n+1 )输入公共参数pp,分别生成一对公私钥对(sk i ,vk i ) ((i∈[n+1])),将其私钥sk i 安全保存在本地,用于对凭证中的内容进行签名,并将公钥vk i 公开发送给系统中的所有参与方,用于对凭证进行验证;
其中,签名算法本实施例采用ElGamal签名算法。
步骤B3:凭证生成,当接收到数据分析者发送的函数请求f时,若数据拥有者同意为其授权,则为该请求生成一个凭证CERT i ,其中包括数据拥有者对该凭证的签名Sig i ;
步骤B3.1:当接收到数据分析者发送的函数请求f,数据拥有者对该请求进行分析,包括分析者请求的数据范围是否会造成不必要的泄露等;
步骤B3.2:若数据拥有者认为该函数请求数据范围没有问题,则查找白名单W i 中是否允许计算该函数;
步骤B3.3:若该函数通过了白名单过滤,数据拥有者为该请求生成一个凭证CERT i ,该凭证中包含该请求的序列号ref i 、请求的函数f、该凭证所涉及的相关信息(比
如数据拥有者和数据分析者的身份标识)、随机值r i ;
步骤B3.4:除此之外,数据拥有者利用其私钥sk i 对凭证中的所有数据进行签名Sig i ,并将签名Sig i 放在凭证CERT i 中;
其中,签名算法本实施例采用ElGamal签名算法。
步骤B3.5:数据拥有者将最后签名过的凭证CERT i 发送给数据分析者。
步骤B4:凭证验证,当接收到数据分析者发送的函数请求f和凭证CERT i 时,聚合服务器的可信执行环境对该请求f和凭证CERT i 进行验证,当且仅当凭证验证通过时,可信执行环境执行步骤A3.2-A3.6;
步骤B4.1:当聚合服务器接收到数据分析者发送的函数请求f和凭证CERT i ,首先确认该函数是否包含在凭证中、凭证中所含的相关信息是否属实;
步骤B4.2:若函数和凭证均属实,聚合服务器找到签发该凭证的数据拥有者的公钥vk i ,将公钥vk i 、函数f和凭证CERT i 输入可信执行环境中;
步骤B4.3:可信执行环境通过调用公共可验证的凭证管理模块,确保凭证的有效性;
步骤B4.4:可信执行环境取出凭证中的签名,并用输入的公钥验证该签名是否合法,当且仅当该签名通过验证,且所输入函数包含在该凭证中,可信执行环境可继续执行步骤A3.2-A3.6;
请见图4,本实施例中公共可验证的凭证管理,具体过程包括以下步骤:
步骤C1:凭证公示,数据拥有者P i 生成凭证CERT i 之后,为该凭证生成一个承诺COM i ,并将其记录在公共账本PL上;
步骤C1.1:数据拥有者利用系统参数pp、生成的凭证CERT i 和凭证中包含的随机数r i 生成一个承诺COM i ,并将该承诺和数据拥有者的标识P i 一起发送给公共账本中;
其中,承诺算法本实施例采用Pedersen commitment方案。
步骤C1.2:公共账本接收到承诺COM i 和数据拥有者的标识P i 后,将其存放在公共账本中,并将其存储位置add i 返回给数据拥有者;
步骤C1.3:数据拥有者将该凭证所在公共账本中位置add i 发送给数据分析者,数据分析者在向聚合服务器发送请求时将该位置add i 发送给聚合服务器,聚合服务器同样将其输入到可信执行环境中;
步骤C2.1:聚合服务器的可信执行环境接收到请求f、凭证CERT i 和位置add i 之后,向公共账本发送请求;
其中,签名算法本实施例采用ElGamal签名算法。
步骤C3.1:聚合服务器将公共账本的公钥vk n+1发送给可信执行环境;
本发明能够提供:
1.快速高效的隐私保护数据聚合:本方案采用非交互式数据聚合方式,并基于可信执行环境,能够计算任意聚合函数,避免了参与方之间频繁交互,数据采用对称运算进行加密,降低了对设备计算能力的要求,适用于各类资源受限环境,如物联网;
2.基于凭证的函数授权机制:由数据拥有者作为授权决策者,构建函数白名单机制,对不同函数的请求进行授权,由聚合服务器的可信执行环境作为授权验证者,有效防止敌手恶意发起特殊函数请求所引起的数据泄露;
3.公共可验证的凭证管理机制:所有凭证的信息以承诺的形式记录在公共账本上,任何恶意的伪造凭证或凭证重放都可以被检测到。
本发明能够在物联网、体域网等更多领域,为使用者提供可靠、安全的数据聚合方法。
应当理解的是,上述针对较佳实施例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本领域的普通技术人员在本发明的启示下,在不脱离本发明权利要求所保护的范围情况下,还可以做出替换或变形,均落入本发明的保护范围之内,本发明的请求保护范围应以所附权利要求为准。
Claims (10)
1.一种轻量级非交互隐私保护数据聚合方法,其特征在于:包括基于可信执行环境的隐私保护函数计算,基于凭证的函数授权和公共可验证的凭证管理;
所述基于可信执行环境的隐私保护函数计算,包括系统密钥管理、保护数据机密性和完整性和实现任意函数的聚合计算;具体实现过程包括:
由具有可信执行环境的密钥分发中心生成整个系统所需要的函数计算密钥和公共参数,并将密钥和公共参数分发给系统中的所有参与方,包括数据拥有者、具有可信执行环境的聚合服务器、具有可信执行环境的密钥分发中心、数据分析者和公共账本;
在保护数据机密性和完整性阶段,数据拥有者接收具有可信执行环境的密钥分发中心分发的密钥,并使用混合加密的密钥管理方法结合认证加密对所有数据进行加密保护,然后将所有密文发送给聚合服务器;
在实现任意函数的聚合计算阶段,聚合服务器接收数据拥有者发送的所有密文并将其存储在数据库中;当聚合服务器收到数据分析者发送合法的函数计算请求时,建立一个该函数的可信执行环境并将所需的数据陆续放入该可信执行环境并进行计算,最后输出一个聚合结果,并对聚合结果进行签名从而生成一个有效性证明;所述合法的函数,为基于凭证的授权函数;
所述基于凭证的函数授权,包括函数白名单维护、密钥生成、凭证生成和凭证验证;
所述函数白名单维护,由每个数据拥有者创建一个函数白名单,并定期进行更新维护,当接收到数据分析者发送的函数计算请求时,数据拥有者根据函数白名单规定的规则决定是否为该请求进行授权;
所述密钥生成,每个数据拥有者和公共账本输入公共参数,分别生成一对公私钥对,将其私钥安全保存在本地,用于对凭证中的内容进行签名,并将公钥公开发送给系统中的所有参与方,用于对凭证进行验证;
所述凭证生成,当接收到数据分析者发送的函数请求时,若数据拥有者同意为其授权,则为该请求生成一个凭证,并对其进行签名;
所述凭证验证,当接收到数据分析者发送的函数请求和凭证时,聚合服务器的可信执行环境对该请求和凭证进行验证,当且仅当凭证验证通过时,可信执行环境执行任意函数的聚合计算;
所述公共可验证的凭证管理,包括凭证公示、凭证读取和凭证确认;
所述凭证公示,数据拥有者生成凭证之后,为该凭证生成一个承诺,并将其记录在公共账本上;
所述凭证读取,聚合服务器的可信执行环境接收到数据分析者发送的函数请求和凭证后,向公共账本请求读取该凭证的相关信息,公共账本为该请求生成一个证明;
所述凭证确认,聚合服务器的可信执行环境接收到公共账本发送的证明,验证该凭证的合法性。
2.根据权利要求1所述的轻量级非交互隐私保护数据聚合方法,其特征在于:所述由具有可信执行环境的密钥分发中心生成整个系统所需要的函数计算密钥和公共参数,并将密钥和公共参数分发给系统中的所有参与方;具体实现包括以下子步骤:
A1.1:密钥分发中心首先生成一组公共参数,并将该公共参数发送给系统中的所有参与方,包括数据拥有者、具有可信执行环境的聚合服务器、数据分析者、公共账本;
A1.2:密钥分发中心生成一对公私钥对,并将该公钥发送给系统中所有的数据拥有者,用于对数据进行加密,将该私钥安全地存储在密钥分发中心的可信执行环境中。
3.根据权利要求1所述的轻量级非交互隐私保护数据聚合方法,其特征在于:所述数据拥有者接收具有可信执行环境的密钥分发中心分发的密钥,并使用混合加密的密钥管理方法结合认证加密对所有数据进行加密保护,然后将所有密文发送给聚合服务器;具体实现包括以下子步骤:
A2.1:数据拥有者接收到密钥分布中心发送的公钥后,结合该公钥和随机数分别生成一个加密密钥和认证密钥,以及一个辅助密钥,所述辅助密钥用于进行函数计算时重新恢复出加密密钥和认证密钥;
A2.2:若每条消息向量含有m个消息明文,数据拥有者用加密密钥对消息向量中的每一条消息进行加密,并利用认证密钥对加密后的每一条消息生成一条消息认证码;
A2.3:数据拥有者将每个消息向量的密文发送给聚合服务器,每个消息向量的密文包含一个辅助密钥,m个消息密文和m个消息认证码。
4.根据权利要求3所述的轻量级非交互隐私保护数据聚合方法,其特征在于:所述当聚合服务器收到数据分析者发送合法的函数计算请求时,建立一个该函数的可信执行环境并将所需的数据陆续放入该可信执行环境并进行计算,最后输出一个聚合结果,并对聚合结果进行签名从而生成一个有效性证明;具体实现包括以下子步骤:
A3.1:当聚合服务器收到数据分析者发送合法的函数计算请求时,根据该函数建立一个可信执行环境;
A3.2:聚合服务器向密钥分发中心发布请求,在聚合服务器的可信执行环境和密钥分发中心的可信执行环境之间建立一条可信通道,用于传输存储在密钥分发中心的可信执行环境中的私钥;
A3.3:根据数据分析者的请求,聚合服务器将所需要的密文依次读取到可信执行环境中;
A3.4:在可信执行环境中,根据每条密文中含有的辅助密钥,结合私钥生成该条密文的解密密钥和消息验证密钥,在确认其消息验证码合法的条件下,用解密密钥解密出消息明文,并根据数据分析者所请求的函数进行计算,生成一个聚合结果;
A3.5:在可信执行环境中,用私钥为该聚合结果生成一个签名作为该结果的有效性证明,并将聚合结果和证明一同输出,返回给数据分析者。
5.根据权利要求1所述的轻量级非交互隐私保护数据聚合方法,其特征在于,所述函数白名单维护,具体实现包括以下子步骤:
步骤B1.1:在系统运行之前,每个数据拥有者创建一个空的函数白名单,用于对所收到的函数请求进行授权判断;
步骤B1.2:每个数据拥有者对其所拥有的所有数据进行分析,确定允许计算的函数,将其存入所创建的函数白名单中;
步骤B1.3:数据拥有者制定白名单策略,并根据策略定期对白名单进行更新维护。
6.根据权利要求1所述的轻量级非交互隐私保护数据聚合方法,其特征在于,所述凭证生成,具体实现包括以下子步骤:
步骤B3.1:当接收到数据分析者发送的函数请求,数据拥有者对该请求进行分析,包括分析者请求的数据范围是否会造成不必要的泄露;
步骤B3.2:若数据拥有者认为该函数请求数据范围没有问题,则查找白名单中是否允许计算该函数,即白名单过滤;
步骤B3.3:若该函数通过了白名单过滤,数据拥有者为该请求生成一个凭证,该凭证中包含该请求的序列号、请求的函数、该凭证所涉及的相关信息和随机值;所述相关信息包括数据拥有者和数据分析者的身份标识;
步骤B3.4:数据拥有者利用其私钥对凭证中的所有数据进行签名,并将签名附加在凭证中;
步骤B3.5:数据拥有者将最后签名过的凭证发送给数据分析者。
7.根据权利要求1所述的轻量级非交互隐私保护数据聚合方法,其特征在于,所述凭证验证,具体实现包括以下子步骤:
步骤B4.1:当聚合服务器接收到数据分析者发送的函数请求和凭证,首先确认该函数是否包含在凭证中、凭证中所含的相关信息是否属实;
步骤B4.2:若函数和凭证均属实,聚合服务器找到签发该凭证的数据拥有者的公钥,将公钥、函数和凭证输入可信执行环境中;
步骤B4.3:可信执行环境通过执行公共可验证的凭证管理过程,确保凭证的有效性;
步骤B4.3:可信执行环境取出凭证中的签名,并用输入的公钥验证该签名是否合法,当且仅当该签名通过验证,且所输入函数包含在该凭证中,可信执行环境可继续执行任意函数的聚合计算。
8.根据权利要求1所述的轻量级非交互隐私保护数据聚合方法,其特征在于,所述凭证公示,具体实现包括以下子步骤:
步骤C1.1:数据拥有者利用系统参数、生成的凭证和凭证中包含的随机数生成一个承诺,并将该承诺和数据拥有者的标识一起发送给公共账本;
步骤C1.2:公共账本接收到承诺和数据拥有者的标识后,将其存放在公共账本中,并将其存储位置返回给数据拥有者;
步骤C1.3:数据拥有者将该凭证所在公共账本中位置发送给数据分析者,数据分析者在向聚合服务器发送请求时将该位置发送给聚合服务器,聚合服务器同样将其输入到可信执行环境中。
9.根据权利要求1所述的轻量级非交互隐私保护数据聚合方法,其特征在于,所述凭证读取,具体实现包括以下子步骤:
步骤C2.1:聚合服务器的可信执行环境接收到请求、凭证和位置之后,向公共账本发送请求;
步骤C2.2:公共账本读取该位置所存储的凭证承诺,并利用公共账本的私钥为其生成一个签名,一同发回给聚合服务器的可信执行环境。
10.根据权利要求1-9任意一项所述的轻量级非交互隐私保护数据聚合方法,其特征在于,所述凭证确认,具体实现包括以下子步骤:
步骤C3.1:聚合服务器将公共账本的公钥发送给可信执行环境;
步骤C3.2:聚合服务器的可信执行环境接收到凭证承诺和签名后,首先用公共账本的公钥验证签名,以确保该凭证承诺确实来自于公共账本;
步骤C3.3:聚合服务器的可信执行环境利用公共参数、凭证和凭证中的随机数重新计算承诺;
步骤C3.3:聚合服务器的可信执行环境将重新计算的凭证承诺与接收到公共账本发送的凭证承诺进行比对,若相同,证明该凭证有效,则继续执行凭证验证步骤,否则终止。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110353614.8A CN112733179B (zh) | 2021-04-01 | 2021-04-01 | 一种轻量级非交互隐私保护数据聚合方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110353614.8A CN112733179B (zh) | 2021-04-01 | 2021-04-01 | 一种轻量级非交互隐私保护数据聚合方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112733179A true CN112733179A (zh) | 2021-04-30 |
CN112733179B CN112733179B (zh) | 2021-06-25 |
Family
ID=75596291
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110353614.8A Active CN112733179B (zh) | 2021-04-01 | 2021-04-01 | 一种轻量级非交互隐私保护数据聚合方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112733179B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114996694A (zh) * | 2022-08-01 | 2022-09-02 | 阿里云计算有限公司 | 一种数据融合方法、设备、系统及存储介质 |
CN115996126A (zh) * | 2022-12-02 | 2023-04-21 | 北京深盾科技股份有限公司 | 信息交互方法、应用设备、辅助平台及电子设备 |
CN117978838A (zh) * | 2024-03-28 | 2024-05-03 | 武汉烽火信息集成技术有限公司 | 一种数字身份下的自动编解码可信合约验证及交互方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109684855A (zh) * | 2018-12-17 | 2019-04-26 | 电子科技大学 | 一种基于隐私保护技术的联合深度学习训练方法 |
WO2020144027A1 (en) * | 2019-01-09 | 2020-07-16 | British Telecommunications Public Limited Company | Variable data protection |
CN111814191A (zh) * | 2020-08-24 | 2020-10-23 | 北京邮电大学 | 区块链隐私数据保护方法、装置及系统 |
CN112199714A (zh) * | 2020-12-04 | 2021-01-08 | 支付宝(杭州)信息技术有限公司 | 基于区块链的隐私保护方法、装置及电子设备 |
-
2021
- 2021-04-01 CN CN202110353614.8A patent/CN112733179B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109684855A (zh) * | 2018-12-17 | 2019-04-26 | 电子科技大学 | 一种基于隐私保护技术的联合深度学习训练方法 |
WO2020144027A1 (en) * | 2019-01-09 | 2020-07-16 | British Telecommunications Public Limited Company | Variable data protection |
CN111814191A (zh) * | 2020-08-24 | 2020-10-23 | 北京邮电大学 | 区块链隐私数据保护方法、装置及系统 |
CN112199714A (zh) * | 2020-12-04 | 2021-01-08 | 支付宝(杭州)信息技术有限公司 | 基于区块链的隐私保护方法、装置及电子设备 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114996694A (zh) * | 2022-08-01 | 2022-09-02 | 阿里云计算有限公司 | 一种数据融合方法、设备、系统及存储介质 |
WO2024027665A1 (zh) * | 2022-08-01 | 2024-02-08 | 阿里云计算有限公司 | 一种数据融合方法、设备、系统及存储介质 |
CN115996126A (zh) * | 2022-12-02 | 2023-04-21 | 北京深盾科技股份有限公司 | 信息交互方法、应用设备、辅助平台及电子设备 |
CN115996126B (zh) * | 2022-12-02 | 2023-11-03 | 北京深盾科技股份有限公司 | 信息交互方法、应用设备、辅助平台及电子设备 |
CN117978838A (zh) * | 2024-03-28 | 2024-05-03 | 武汉烽火信息集成技术有限公司 | 一种数字身份下的自动编解码可信合约验证及交互方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112733179B (zh) | 2021-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111639361B (zh) | 一种区块链密钥管理方法、多人共同签名方法及电子装置 | |
CN113489733B (zh) | 基于区块链的内容中心网络隐私保护方法 | |
Liu et al. | Blockchain empowered cooperative authentication with data traceability in vehicular edge computing | |
CN112733179B (zh) | 一种轻量级非交互隐私保护数据聚合方法 | |
CN112019591A (zh) | 一种基于区块链的云数据共享方法 | |
CN113162768B (zh) | 一种基于区块链的智能物联网设备认证方法及系统 | |
CN109691010B (zh) | 用于数据传输的系统和方法 | |
CN111614680B (zh) | 一种基于cp-abe的可追溯云存储访问控制方法和系统 | |
CN110519046A (zh) | 基于一次性非对称密钥对和qkd的量子通信服务站密钥协商方法和系统 | |
CN103780393A (zh) | 一种面向多安全等级的虚拟桌面安全认证系统及方法 | |
CN114036539A (zh) | 基于区块链的安全可审计物联网数据共享系统及方法 | |
CN110933033A (zh) | 智慧城市环境下多物联网域的跨域访问控制方法 | |
CN108462696A (zh) | 一种去中心化的区块链智能身份认证系统 | |
CN114666032B (zh) | 基于同态加密的区块链交易数据隐私保护方法 | |
CN115883102B (zh) | 基于身份可信度的跨域身份认证方法、系统及电子设备 | |
Li et al. | Conditional anonymous authentication with abuse-resistant tracing and distributed trust for internet of vehicles | |
CN116432204B (zh) | 基于同态加密和零知识证明的可监管交易隐私保护方法 | |
Zhou et al. | An efficient identity authentication scheme with dynamic anonymity for VANETs | |
CN111563733A (zh) | 一种用于数字钱包的环签名隐私保护系统及方法 | |
Liu et al. | PTAP: A novel secure privacy-preserving & traceable authentication protocol in VANETs | |
CN118133311A (zh) | 一种基于改进群签名的联邦学习隐私保护方法 | |
Yao et al. | Metaverse-AKA: A Lightweight and PrivacyPreserving Seamless Cross-Metaverse Authentication and Key Agreement Scheme | |
CN112436942A (zh) | 一种属性基/身份基异构的可撤销签密方法 | |
Cho et al. | Big data cloud deduplication based on verifiable hash convergent group signcryption | |
Jiang et al. | A blockchain-based privacy-preserving scheme for cross-domain authentication |
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 |