CN103248492A - 可验证的分布式隐私数据比较与排序方法 - Google Patents

可验证的分布式隐私数据比较与排序方法 Download PDF

Info

Publication number
CN103248492A
CN103248492A CN2013101957311A CN201310195731A CN103248492A CN 103248492 A CN103248492 A CN 103248492A CN 2013101957311 A CN2013101957311 A CN 2013101957311A CN 201310195731 A CN201310195731 A CN 201310195731A CN 103248492 A CN103248492 A CN 103248492A
Authority
CN
China
Prior art keywords
client
data
private
private data
certificate
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.)
Pending
Application number
CN2013101957311A
Other languages
English (en)
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.)
Tsinghua University
Original Assignee
Tsinghua 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 Tsinghua University filed Critical Tsinghua University
Priority to CN2013101957311A priority Critical patent/CN103248492A/zh
Publication of CN103248492A publication Critical patent/CN103248492A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明提出一种可验证的分布式隐私数据比较与排序方法。其中,方法包括:S1:服务器分别为每个客户端分配相应的公钥和私钥,对每个客户端的隐私数据进行验证,并通过公钥和私钥对每个客户端的隐私数据进行加密和签名形成对应证书;S2:每个客户端从服务器获取对应的公钥和私钥;S3:查询客户端将所有客户端两两分组,并根据对应证书比较每个分组内部两个客户端隐私数据的大小得到比较结果;S4:根据对应证书验证每个分组的比较结果;S5:对每个分组的有效比较结果重新进行分组,并重复步骤S3和步骤S4,以得到所有客户端隐私数据的排序结果。根据本发明实施例的方法,保证数据的隐私,并使客户端无法伪造数据或造假,提高了隐私数据的可靠性。

Description

可验证的分布式隐私数据比较与排序方法
技术领域
本发明涉及网络技术领域,特别涉及一种可验证的分布式隐私数据比较与排序方法。
背景技术
在各种数据相关的应用中常常都会使用到数据大小比较和排序操作。随着现代信息技术的发展,很多数据的存储已经不再是中心式的存储方式,而是分布在多个客户端上。比如传感器网络中节点采集到的感知数据和网络数据则分布在各个传感器节点上;移动社交网络中的数据则分布在各个用户的手机上;分布式数据库中的数据都分别存储在多个服务器上等。如何对分布在不同客户端上的数据进行实时的比较和如何对多个客户端上的数据进行排序是一个具有挑战性的题目。目前已经有大量的分布式计算方法的提出来解决这个问题,这些方法普遍关注于计算和通信的开销,旨在提高计算的效率,却忽略了对数据隐私的保护。
实际上在很多应用中的数据是一种隐私,具有敏感性需要得到保护,这些数据客户端并不愿意将自己的数据暴露给任何查询者或者其他客户端,例如在很多安全传感器网络和移动社交网络中,每个传感器或者手机上的数据都需要得到保护,不能向外界暴露。在隐私问题日益严重的现在,人们提出了需要在完全不暴露客户端隐私数据的情况下,对分布式的隐私数据进行比较和排序操作。
传统的安全多方计算方法计算开销都非常大,尤其是在计算资源受限的移动设备上几乎无法进行,使得它们在如传感网,移动社交网络等很多场景下都难以得到实际应用。并且所有相关的解决方案都将重点放在了隐私保护,保证数据不被泄露,而忽略了运算输入和结果的可验证性。采用这些方法的查询得到的比较和排序结果的正确性都建立在客户端诚实地执行该方法的假设上。实际上,恶意客户端很容易伪造其输入输出数据而导致错误的比较和排序结果,但是传统的方法却很难对这样的情况进行验证和发现。这样无法验证的计算方法显然无法满足大量安全性较高的应用的需要。以此,我们急需一种在不可信的环境中的可验证的分布式隐私数据比较和排序的方法,并且这个方法同样需要以较低的计算和和通信开销保证其在大量的移动计算设备和应用场景上能高效发挥作用。
发明内容
本发明的目的旨在至少解决上述的技术缺陷之一。
为此,本发明的目的在于提出一种可验证的分布式隐私数据比较与排序方法。
为达到上述目的,本发明的实施例提出一种可验证的分布式隐私数据比较与排序方法,包括以下步骤:S1:第三方认证服务器分别为每个客户端分配相应的公钥和私钥,对存储在每个客户端的隐私数据进行验证,并通过所述公钥和私钥对每个客户端的隐私数据进行加密和签名,以形成每个客户端的对应证书。对应证书中包括加密的隐私数据;S2:每个客户端从所述第三方认证服务器获取对应的所述公钥和私钥;S3:查询客户端将所有参与排序的客户端两两分组,并根据所述对应证书比较所述每个分组内部两个客户端隐私数据的大小,以得到每个分组隐私数据的比较结果;S4:根据所述对应证书验证每个分组的比较结果;S5:通过归并排序的方法对每个分组的有效比较结果重新进行分组,并重复步骤S3和步骤S4,以得到所有客户端隐私数据的排序结果。
在本发明的一个实施例中,所述对应证书中包括所述加密后的隐私数据。
在本发明的一个实施例中,所述查询客户端通过所述对应证书中所包含的加密后的隐私数据判断所述隐私数据的有效性
在本发明的一个实施例中,所述查询客户端比较每个分组中两个加密隐私数据的大小,并验证比较结果。
根据本发明实施例的方法,保证了数据的隐私,保证了所有客户端无法伪造虚假数据或造假提高了隐私数据的可靠性。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为根据本发明一个实施例的可验证的分布式隐私数据比较与排序方法的流程图。
具体实施方式
下面详细描述本发明的实施例,实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
图1为根据本发明一个实施例的可验证的分布式隐私数据比较与排序方法的流程图。如图1所示,根据本发明实施例的可验证的分布式隐私数据比较与排序方法,包括以下步骤:
步骤S101,第三方认证服务器分别为每个客户端分配相应的公钥和私钥,对存储在各个客户端的隐私数据进行验证,并通过公钥和私钥对每个客户端的隐私数据进行加密和签名,以形成每个客户端的对应证书。对应证书中包括加密的隐私数据。
具体地,隐私数据存储于n个客户端,每个客户端Pi的数据为vi。第三方认证服务器PT,拥有一对数字签名算法的密钥,包括公钥PkT和私钥SkT。初始化时,每个客户端都需要连接到该第三方认证服务器PT获取标识、密钥,并对其隐私数据vi进行验证:PT将分配给每个客户端Pi一个唯一标示IDi。PT采用快速Paillier加密***,为每个Pi生成唯一的公钥和私钥Pki和Ski。定义Ei(vi,ri)表示使用快速Paillier加密算法用Pi的公钥Pki对vi进行加密,其中ri是作为加密算法输入的随机数。Pi选择一系列随机数{δk}发送给PT。PT验证vi的合法性,然后用一系列随机数{δk}分别乘以vi得到集合{δkvi}。PT使用用户Pi的公钥Pki加密{δk}和{δkvi},然后PT分别对两个集合中的值进行哈希,再对哈希值用PT的私钥SkT进行签名得到{Sig(Eik,ri))}、{Sig(Eikvi,ri'))}。最后PT将以上内容形成该数据的一系列证书的集合{C(Pi,δkvi)}={<Sig(IDi),Ei(vi,ri),Eik,ri),Eikvi,ri’),Sig(Eik,ri)),Sig(Eikvi,ri’)),Pki,PkT>}并将该证书(即签名)颁发给用户Pi
步骤S102,每个客户端从第三方认证服务器获取对应的公钥和私钥。
具体而言,查询客户端Pa在初始化时需要连接到第三方认证服务器PT获取标识、密钥。PT采用快速Paillier加密***,为Pa生成唯一的公钥和私钥Pka和Ska
步骤S103,查询客户端将所有参与排序的客户端两两分组,并根据对应证书比较每个分组内部两个客户端隐私数据的大小,以得到每个分组隐私数据的比较结果。
具体地,查询客户端Pa将n个客户端分成两个一组,并且广播其分组结果和Pa的公钥Pka。Pa发送消息启动各组的隐私数据大小比较。令P1和P2为其中一组客户端,其隐私数据分别为v1和v2,并通过如下过程比较P1和P2隐私数据大小。
比较P1和P2隐私数据大小的比较过程为:用户P1随机地从v1的证书集合{C(P1kv1)}中选出一个证书为C(P1,δ1vl)=<Sig(ID1),E1(v1,r1),E11,r1),E11v1,r1’),Sig(E11,r1)),Sig(E11v1,r1’)),Pk1,PkT
,并利用Pa和P2的公钥加密计算m11=E2(Ea1v1,r1a),r12)和m12=E2(Ea(r1’,r1))。P1将C(P1,δ1v1),m11,m12发送给P2。然后,客户端P2随机的从v2的证书集合{C(P2kv2)}选出一个证书为C(P22v2)=<Sig(ID2),E2(v2,r2),E22,r2),E22v2,r2'),Sig(E22,r2)),Sig(E12v2,r2')),Pk2,PkT>
并利用Pa和P1的公钥加密计算m21=E1(Ea2v2,r2a),r21)和m22=E1(Ea(r2’,r2))。P2将C(P2,δ2v2),m21,m22发送给P1。再P1利用第三方认证服务器的公钥PkT验证证书C(P22v2)的值,对P2的输入进行验证,如验证通过则表明P2的输入正确,否则表明P2对输入值作假。然后P1解密m21和m22,并使用证书C(P2,δ2v2)中的值在密文上利用Palliar加密***进行同态计算得到以下值:e11=Ea1δ2v2,δ1r2a),e12=Ea(E21δ2v1,δ1v1r2)),e13=Ea(E21δ2v21r2')),e14=Ea1r2’,δ1r2),e15=Ea2v2r1,r1r2')。
P1将Pk1,e11,e12,e13,e14,e15发送给查询客户端Pa
P2利用第三方认证服务器的公钥PkT验证证书C(P1,δ1v1)的值,对P1的输入进行验证,如验证通过则表明P1的输入正确,否则表明P1对输入值作假。然后P2解密m11和m12,并使用证书C(P1,δ1v1)中的值在密文上利用Palliar加密***进行同态计算得到以下值:
e21=Ea1δ2v12r1a),e22=Ea(E11δ2v22v2r1)),e23=Ea(E11δ2v12r1')),e24=Ea2r1’δ2r1),e25=Ea1v1r2,r1’r2)。
P2将Pk2,e21,e22,e23,e24,e25发送给数据查询者Pa
此处定义Di(e)表示使用快速Paillier解密算法,用Pi,的私钥Ski对e进行解密。数据查询者Pa解密d1=Da(e11)和d2=Da(e21),比较d1和d2的大小得到v1、v2的大小比较结果,若d1>d2则v1<v2;若d1=d2则v1=v2;若d1<d2则v1>v2
步骤S104,根据对应证书验证每个分组的比较结果。
具体地,数据查询者对v1、v2的大小比较结果进行验证,具体地,数据查询客户Pa解密e14,e15,e24,e25,得到δ1r2',δ2v2r1,δ2r1',δ1v1r2,并计算以下等式:E2(d1,δ1r2')=Da(e13),E1(d12v2r1)=Da(e22),E1(d2,δ2r1’)=Da(e23),E2(d2,δ1v1r2)=Da(e12)。
如果满足上述四个等式,则说明Pa得到正确的比较结果,否则说明计算结果无效不对其失效隐私数据进行排序。
步骤S105,对每个分组的有效比较结果通过归并排序的方法重新进行分组,并重复步骤S103和步骤S104,以得到所有客户端隐私数据的排序结果。
具体地,若分布式客户端只有两个,即n=2则比较过程到步骤S104结束,从v1、v2的大小比较结果即可得到排序结果;若n>2,且Pa需要得到n个用户的排序结果,根据步骤S105进行进一步的比较和排序。通过步骤S104对每对分组客户端都进行处理使得得到每组隐私数据大小的比较结果,并对其结果进行排序和验证。然后Pa需要采用归并排序的方法对相邻两组客户端进行比较和排序。因此Pa对相邻两组客户端根据归并排序的原则分别取出客户端构成新的分组,直至将所有隐私数据排序完毕,并将排序结果输出。表1为快速Paillier加密算法的数据。
Figure BDA00003238010900051
表1
根据本发明实施例的方法,具有如下优点:
(1)可以对分布存储在多客户端上的隐私数据进行数据比较和排序。
(2)所有客户端数据均使用客户端公钥进行加密,仅客户端私钥可解密,保证了数据的隐私。
(3)通过验证机制,保证所有客户端无法输入虚假数据,也不能对比较和排序结果作假。
(4)通过快速Paillier***的计算消耗较小,能支持在移动设备上使用,使得扩大了应用范围。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在不脱离本发明的原理和宗旨的情况下在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (4)

1.一种可验证的分布式隐私数据比较与排序方法,其特征在于,包括以下步骤:
S1:第三方认证服务器分别为每个客户端分配相应的公钥和私钥,对存储在每个客户端的隐私数据进行验证,并通过所述公钥和私钥对每个客户端的隐私数据进行加密和签名,以形成每个客户端的对应证书;
S2:每个客户端从所述第三方认证服务器获取对应的所述公钥和私钥;
S3:查询客户端将所有参与排序的客户端两两分组,并根据所述对应证书比较所述每个分组内部两个客户端隐私数据的大小,以得到每个分组隐私数据的比较结果;
S4:根据所述对应证书验证每个分组的比较结果;
S5:通过归并排序的方法对每个分组的有效比较结果重新进行分组,并重复步骤S3和步骤S4,以得到所有客户端隐私数据的排序结果。
2.如权利要求1所述的可验证的分布式隐私数据比较与排序方法,其特征在于,所述对应证书中包括所述加密后的隐私数据。
3.如权利要求1或2所述的可验证的分布式隐私数据比较与排序方法,其特征在于,所述查询客户端通过所述对应证书中所包含的加密后的隐私数据判断所述隐私数据的有效性。
4.如权利要求1所述的可验证的分布式隐私数据比较与排序方法,其特征在于,所述查询客户端比较每个分组中两个加密隐私数据的大小,并验证比较结果。
CN2013101957311A 2013-05-23 2013-05-23 可验证的分布式隐私数据比较与排序方法 Pending CN103248492A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2013101957311A CN103248492A (zh) 2013-05-23 2013-05-23 可验证的分布式隐私数据比较与排序方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2013101957311A CN103248492A (zh) 2013-05-23 2013-05-23 可验证的分布式隐私数据比较与排序方法

Publications (1)

Publication Number Publication Date
CN103248492A true CN103248492A (zh) 2013-08-14

Family

ID=48927728

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2013101957311A Pending CN103248492A (zh) 2013-05-23 2013-05-23 可验证的分布式隐私数据比较与排序方法

Country Status (1)

Country Link
CN (1) CN103248492A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104951472A (zh) * 2014-03-29 2015-09-30 华为技术有限公司 一种基于分布式的数据统计的方法
CN110061828A (zh) * 2019-04-04 2019-07-26 西安电子科技大学 无可信中心的分布式数字签名方法
CN111046409A (zh) * 2019-12-16 2020-04-21 支付宝(杭州)信息技术有限公司 一种私有数据多方安全计算方法和***
CN112307056A (zh) * 2019-07-31 2021-02-02 华控清交信息科技(北京)有限公司 一种数据处理方法、装置和用于数据处理的装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102984156A (zh) * 2012-11-30 2013-03-20 无锡赛思汇智科技有限公司 一种可验证的分布式隐私数据比较与排序方法及装置
CN103064931A (zh) * 2012-12-21 2013-04-24 清华大学 可验证的隐私数据比较与排名查询方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102984156A (zh) * 2012-11-30 2013-03-20 无锡赛思汇智科技有限公司 一种可验证的分布式隐私数据比较与排序方法及装置
CN103064931A (zh) * 2012-12-21 2013-04-24 清华大学 可验证的隐私数据比较与排名查询方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
LAN ZHANG, ET AL.: "Verifiable private multi-party computation: Ranging and ranking", 《INFOCOM, 2013 PROCEEDINGS IEEE》 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104951472A (zh) * 2014-03-29 2015-09-30 华为技术有限公司 一种基于分布式的数据统计的方法
WO2015149497A1 (zh) * 2014-03-29 2015-10-08 华为技术有限公司 一种基于分布式的数据统计的方法
CN110061828A (zh) * 2019-04-04 2019-07-26 西安电子科技大学 无可信中心的分布式数字签名方法
CN110061828B (zh) * 2019-04-04 2021-05-04 西安电子科技大学 无可信中心的分布式数字签名方法
CN112307056A (zh) * 2019-07-31 2021-02-02 华控清交信息科技(北京)有限公司 一种数据处理方法、装置和用于数据处理的装置
CN112307056B (zh) * 2019-07-31 2024-02-06 华控清交信息科技(北京)有限公司 一种数据处理方法、装置和用于数据处理的装置
CN111046409A (zh) * 2019-12-16 2020-04-21 支付宝(杭州)信息技术有限公司 一种私有数据多方安全计算方法和***
CN111046409B (zh) * 2019-12-16 2021-04-13 支付宝(杭州)信息技术有限公司 一种私有数据多方安全计算方法和***

Similar Documents

Publication Publication Date Title
He et al. An efficient identity-based conditional privacy-preserving authentication scheme for vehicular ad hoc networks
AU2017395785B2 (en) Voting system and method
CN108964919B (zh) 基于车联网的具有隐私保护的轻量级匿名认证方法
CN102984156B (zh) 一种可验证的分布式隐私数据比较与排序方法及装置
CN107508686B (zh) 身份认证方法和***以及计算设备和存储介质
Wang et al. 2FLIP: A two-factor lightweight privacy-preserving authentication scheme for VANET
CN102170352B (zh) 使用具有温特尼茨单次签名的ecdsa的方法
WO2018004783A1 (en) Public key infrastructure using blockchains
CN103064931B (zh) 可验证的隐私数据比较与排名查询方法
US10742426B2 (en) Public key infrastructure and method of distribution
CN107493273A (zh) 身份认证方法、***及计算机可读存储介质
CN106878318A (zh) 一种区块链实时轮询云端***
Wang et al. LAMANCO: A lightweight anonymous mutual authentication scheme for $ N $-times computing offloading in IoT
CN109818730B (zh) 盲签名的获取方法、装置和服务器
CN110932865B (zh) 一种基于sm2数字签名算法的可链接环签名生成方法
CN105812354B (zh) 一种lbs背景下车联网中基于抗攻击的位置隐私保护方法
ES2894726T3 (es) Protocolo de consenso para libros mayores autorizados
CN113221184A (zh) 一种基于区块链网络的物联网***及装置
Kanumalli et al. Secure V2V Communication in IOV using IBE and PKI based Hybrid Approach
CN110867012A (zh) 一种基于智能合约的去中心电子投票方法、装置、***及存储介质
CN106209730A (zh) 一种管理应用标识的方法及装置
CN103248492A (zh) 可验证的分布式隐私数据比较与排序方法
CN114520726A (zh) 基于区块链数据的处理方法和装置、处理器及电子设备
CN109766716A (zh) 一种基于可信计算的匿名双向认证方法
Ogundoyin An Efficient, Secure and Conditional Privacy-Preserving Authentication Scheme for Vehicular Ad-hoc Networks.

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20130814