CN112989386A - 一种基于不经意传输的黑名单共享方法及系统 - Google Patents

一种基于不经意传输的黑名单共享方法及系统 Download PDF

Info

Publication number
CN112989386A
CN112989386A CN202110348166.2A CN202110348166A CN112989386A CN 112989386 A CN112989386 A CN 112989386A CN 202110348166 A CN202110348166 A CN 202110348166A CN 112989386 A CN112989386 A CN 112989386A
Authority
CN
China
Prior art keywords
enterprise
user
blacklist
unique identification
transmission
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
Application number
CN202110348166.2A
Other languages
English (en)
Other versions
CN112989386B (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.)
Suzhou Black Cloud Intelligent Technology Co ltd
Original Assignee
Suzhou Black Cloud Intelligent Technology Co ltd
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 Suzhou Black Cloud Intelligent Technology Co ltd filed Critical Suzhou Black Cloud Intelligent Technology Co ltd
Priority to CN202110348166.2A priority Critical patent/CN112989386B/zh
Publication of CN112989386A publication Critical patent/CN112989386A/zh
Application granted granted Critical
Publication of CN112989386B publication Critical patent/CN112989386B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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
    • G06F21/6227Protecting 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 where protection concerns the structure of data, e.g. records, types, queries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (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

本发明涉及一种基于不经意传输的黑名单共享方法及系统,属于大数据处理技术领域,特别是隐私计算技术领域。该方法包括:S1:企业一将自身的用户的唯一标识ID分为三部分:第一部分、第二部分和第三部分;S2:用户将第一部分和第三部分暴露给企业二,企业二根据用户暴露的信息进行筛选;S3:企业一将第二部分作为ID通过不经意传输进行查询,查询后与S2中筛选后的数据进行数组映射,判断企业一的用户是否存在在企业二的黑名单中。本发明解决了传统技术重复成本高和公信力低等问题;在面对数据泄漏和滥用时“主动出击”。

Description

一种基于不经意传输的黑名单共享方法及系统
技术领域
本发明属于大数据领域,涉及一种基于不经意传输的黑名单共享方法及系统。
背景技术
大数据与人工智能时代背景下,数据共享在各行各业应用越广泛,数据泄漏和滥用造成的影响和损失也越大。行业黑名单信息共享是行业征信系统建设的重要内容之一,有利于企业进行相关业务的信用定价和风险防控。现有的方案是依靠“自律”和“他律”的数据保护与共享,即自身的防护和制度的保障。但是,重复成本高,且公信力低,在面对数据泄漏和滥用的过程中处于被动地位。因此,急需一种基于不经意传输的黑名单共享方法及系统,实现数据的主动保护。
发明内容
有鉴于此,本发明的目的在于提供一种基于不经意传输的黑名单共享方法及系统。
为达到上述目的,本发明提供如下技术方案:
一种基于不经意传输的黑名单共享方法,该方法包括以下步骤:
S1:企业一将自身的用户的唯一标识ID分为三部分:第一部分、第二部分和第三部分;
S2:用户将第一部分和第三部分暴露给企业二,企业二根据用户暴露的信息进行筛选;
S3:企业一将第二部分作为ID通过不经意传输进行查询,查询后与S2中筛选后的数据进行数组映射,判断企业一的用户是否存在在企业二的黑名单中。
可选的,所述S1具体为:
将唯一标识ID截断为三部分,第一部分为唯一标识ID的前n位,第三部分为唯一标识ID的后m位;第二部分为除去n及m部分的其余的中间部分;n和m由企业一和企业二制定;将第一部分和第三部分暴露给企业二,用于企业二的筛选。
可选的,所述S2中,企业二根据用户暴露的信息进行筛选具体为:
设p和q为两个128~256位的质数,且满足p=2q+1,G是一个q阶群,α、β是群G的生成器,Zq表示q的最小剩余集合,α、β和G被公布给所有用户;
对唯一标识ID的第二部分生成一个索引:若第二部分是1111或2222,则创建0~v个索引,在相应的位置处为1,其余为0,v为第二部分的最大值,相应位置为该数值对应的索引的位置,然后根据索引的位置进行筛选。
可选的,所述S3中,所述S3中,若唯一标识ID的第二部分为1111或2222,用户生成一个r,r是属于Zq的随机数,并计算y=αΓβamod p,将y发送给企业二;
y表示发送给企业二的密文;
αΓ表示密文生成器一;
βa表示密文生成器二;
企业二用秘钥K={k1,k2,k3,…}对{0,0,0…,1,1…}生成加密集合EM;这里的K为加密集合,0,1对应第二部分的索引;
在企业二收到y之后,企业二通过
Figure BDA0003001477490000021
以及
Figure BDA0003001477490000022
计算
Figure BDA0003001477490000023
其中hi∈Zq,1≤i≤2020,ki=12345678;将EM和ST返回给用户;si与ti均为计算过程中的中间量,si为根据α生成器产生的满足唯一标识ID的第二部分的计算加密分母,ti为根据β生成器产生的满足唯一标识ID的第二部分的计算加密分子;
si为根据α生成器产生的满足唯一标识ID的第二部分的计算加密分母;ti为根据β生成器产生的满足唯一标识ID的第二部分的计算加密分子;
用户通过公式
Figure BDA0003001477490000024
计算需要的秘钥ka,利用秘钥ka解密EM中的第a个元素,其中a是ST中的第a个元素;ta表示第a个元素对应的年份加密分子;sa表示第a个元素对应的年份加密分子,modp表示对p进行取模;ta表示第a个元素对应的第二部分加密分子;
解密后,若为1,则表示企业一自身的用户存在在企业二的黑名单中;若为0,则表示企业一自身的用户不存在在企业二的黑名单中。
可选的,所述用户想选择r时,并告诉企业二,以及企业二响应用户请求,采用的是快速模幂算法,复杂程度为lgn,性能与n的大小呈负相关,即n越大,性能越低;n表示运算的次数;
其中,快速模幂算法的原理为:(a1*b1)Mod c 1=[(a 1Mod c1)*(b1 Mod c1)]Mod c1;考虑到b1是一个大数,直接算a1和b 1会很慢,先把b 1转换成二进制形式;a1、b1和c1为任意自然数。
基于所述方法的基于不经意传输的黑名单共享系统,该系统包括企业端服务器一、企业端服务器二、用户端服务器和核心交换机;
所述企业端服务器一、企业端服务器二和用户端服务器分别与核心交换机连接;
所述企业端服务器一中,有:
Figure BDA0003001477490000031
Figure BDA0003001477490000032
用户端服务器中,有:
y=αΓβamod p ⑧
ka=(ta/(sa)Γ)mod p ⑨
si为根据α生成器产生的满足第二部分的计算机密分母;
Figure BDA0003001477490000033
为加密因子;
mod p为对p进行取模操作;
ti表示根据β生成器产生的满足许第二部分的计算加密分子;
ki表示密钥群;
y表示密文;
β表示阶群G的生成器,i表示Zq中的h对应的索引值;
hi∈Zq
在一次不经意传输过程中,企业端服务器一进行n次⑥和⑦运算,其中n表示用户查询的结果数据量;在一次不经意传输过程,中用户端服务器进行⑧和⑨运算。
一种计算机装置,包括存储器、处理器及储存在存储器上并能够在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述的方法。
一种计算机可读存储介质,其上储存有计算机程序,所述计算机程序被处理器执行时实现所述的方法。
本发明的有益效果在于:
(1)解决传统技术重复成本高和公信力低等问题;
(2)面对数据泄漏和滥用时“主动出击”。
本发明的其他优点、目标和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书来实现和获得。
附图说明
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作优选的详细描述,其中:
图1为本发明原理图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
其中,附图仅用于示例性说明,表示的仅是示意图,而非实物图,不能理解为对本发明的限制;为了更好地说明本发明的实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
本发明实施例的附图中相同或相似的标号对应相同或相似的部件;在本发明的描述中,需要理解的是,若有术语“上”、“下”、“左”、“右”、“前”、“后”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此附图中描述位置关系的用语仅用于示例性说明,不能理解为对本发明的限制,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语的具体含义。
不经意传输
场景假设:企业B有一批黑名单数据,企业a想查询自身的每个用户X是否存在在B的黑名单中。
目标:a不能告诉B用户X具体是谁;B不能告诉a任何自身的原始黑名单数据。
经过分析,上述场景有两个级别的信息保密要求:
一个是企业不公开自己的黑名单数据库,但是可以供其他企业进行黑名单信息对比;
另一个是查询黑名单时,不泄露查询的原始信息,但可以得到黑名单信息的比对结果。
请参阅图1,本发明对基于抽象代数群论的不经意传输算法进行了优化,缩短了源数据搜索空间。下文对算法原理、实现过程、性能分析、安全分析进行详细阐述。
1算法原理
假设p、q是两个大素数(p=2q+1),G是一个q阶群,α、β是群G的生成器,Zq表示q的最小剩余集合。
假设M={m1,m2,…,mn}是用户查询的结果集合,并且用户希望得到集合中的某一指定数据ma,1≤a≤n因此该用户生成一个满足r∈Zq的随机数,并计算y=αΓβamod p,然后将y发送给企业。
企业对M中的每个元素使用秘钥K={k1,k2,…,kn}加密,并生成加密后的集合
Figure BDA0003001477490000051
在收到y之后,企业通过
Figure BDA0003001477490000052
以及
Figure BDA0003001477490000053
计算获得ST={(s1,t1),(s2,t2),…,(sn,tn)},其中hi∈Zq,1≤i≤n。并将EM和ST同时返还给用户。
用户通过ka=(ta/(sa)Γ)mod p计算所需要的秘钥ka,并使用该秘钥解密获得所要查询的数据ma
2形式化证明
假设p、q是两个大素数(p=2q+1),G是一个q阶群,α、β是群G的生成器,Zq表示q的最小剩余集合。其中α、β和G被公布给所有用户。该协议的工作方式表示如下:
(1)假设M={m1,m2,…,mn}是用户查询的结果集合,并且用户希望得到集合中的某一指定数据ma,1≤a≤n因此该用户生成一个满足r∈Zq的随机数,并计算y=αΓβamod p,然后将y发送给企业。
(2)企业首先对M中的每个元素使用密钥K={k1,k2,…,kn}加密,并生成加密后的集合
Figure BDA0003001477490000054
在收到用户发送的y之后,企业通过
Figure BDA0003001477490000055
以及
Figure BDA0003001477490000056
计算获得ST={(s1,t1),(s2,t2),…,(sn,tn)},其中hi∈Zq,1≤i≤n。并将EM和ST同时返还给用户。
由以上描述可知,用户拥有如下数据:r∈Zq、EM、ST和a。
Figure BDA0003001477490000057
记为F,由已知条件知,G是由Zq中非零元素构成的乘法循环群,故G中每个元素都会存在逆元,从而,对F两边同时乘以
Figure BDA0003001477490000058
此时F变为公式①:
Figure BDA0003001477490000061
将y=αΓβamod p代入①得到公式②:
Figure BDA0003001477490000062
根据模运算法则,由②得:
Figure BDA0003001477490000063
对③公式两边同时求逆得
Figure BDA0003001477490000064
在对④两边同时乘以ki
Figure BDA0003001477490000065
那么,
Figure BDA0003001477490000066
证毕。
并使用该密钥解密获得所要查询的数据ma
其中,模运算与基本四则运算相似,但是除法例外,规则如下:
(a+b)%p=(a%p+b%p)%p (1)
(a-b)%p=(a%p-b%p+p)%p (2)
(a*b)%p=(a%p*b%p)%p (3)
(a^b)%p=((a%p)^b)%p (4)结合律:
((a+b)%p+c)%p=(a+(b+c)%p)%p (5)
((a*b)%p*c)%p=(a*b*c)%p//(a%p*b)%p=(a*b)%p (6)
“//”为或者,((a*b)%p*c)%p=(a*b*c)%p和(a%p*b)%p=(a*b)%p都是体现结合律。
交换律:
(a+b)%p=(b+a)%p (7)
(a*b)%p(b*a)%p (8)
分配律:
((a+b)%p*c)%p=((a*c)%p+(b*c)%p)%p (9)
重要定理:
若a≡b(%p),则对于任意的c,都有:
(a+c)≡(b+c)(%p) (10)
若a≡b(%p),则对于任意的c,都有:
(a*c)≡(b*c)(%p) (11)
若a≡b(%p),c≡d(%p),则:
(a+c)≡(b+d)(%p)
(a-c)≡(b-d)(%p) (12)
(a*c)≡(b*d)(%p)
3实现过程
假设p、q为质数,且满足p=2q+1,G是一个q阶群,α、β是群G的生成器,Zq表示q的最小剩余集合。
α、β和G被公布给所有用户。
(1)以身份证号码为例:将身份证号码截断为3部分,将第一部分和第三部分暴露给企业,企业用于筛选。然后对中间的信息生成一个索引,如:中间是1990,那么创建0~2020个索引,在相应的位置处为1,其余为0。这里以1990,1995处为1为例。
(2)假设用户这里的信息是1990,用户生成一个满足r属于Zq的随机数,并计算y=αΓβamod p。将y发送给企业。
(3)企业用秘钥K={k1,k2,k3,…}对{0,0,0…,1,1…}(这里的1的位置是第1990和1995,ki以12345678为例)进行加密,生成加密集合EM。在收到y之后,企业通过
Figure BDA0003001477490000071
以及
Figure BDA0003001477490000081
计算ST={(s1,t1),(s2,t2),…},其中hi∈Zq,1≤i≤2020。将EM和ST返回给用户。
(4)用户通过
Figure BDA0003001477490000082
(这里的a是ST中的第a个元素)计算所需要的秘钥ka,利用秘钥ka解密EM中的第a个元素。解密完如果是1则表示在,如果是0表示不在。
代码展示如下:
一、设置一个大质数q,且满足p=2q+1。
static final BigInteger q=new BigInteger("57896044618658097711785492504343953926634992332820282019728792003954417335831");
static final BigInteger p=q.multiply(new BigInteger("2")).add(newBigInteger("1"));
static final BigIntegerα=new BigInteger("60300556597753154781239923047219078515410877540607532238537983597388018023497");
static final BigIntegerβ=new BigInteger("60300556597753154781239923047219078515410877540607532238537983597388018023497");
其中α、β是q阶群的生成元。
二、用户将身份证号码截为3部分,前6位和后4位暴露给企业,企业用这些数据在自己本地库进行筛选相关信息。这里以筛选到的信息{1990,1995}为例。企业生成数组,{0....0,0...}这里数组的长度为2020,其中在第1990和1995处的值为1。
Figure BDA0003001477490000083
三、用户生成一个满足r属于Z的随机数,其中Z是表示q的最小剩余集合,并计算y=αΓβamod p,将y的结果发送给企业。
BigInteger a=new BigInteger(a1);
System.out.println("加密后的ID:"+Base64.getEncoder().encodeToString(key.getBytes()));
BigInteger r=new BigInteger("456789123");
BigInteger y=α.modPow(r,p).multiply(β.modPow(a,p)).mod(p);
System.out.println("计算y=((α^r)*(β^a))%p,结果为:"+y);
这是以r=456789123为例,输入的a1代表用户的ID,以1990为例,结果如下:
加密后的ID:MTIzNDU2Nzg=
计算y=((α^r)*(β^a))%p,结果为:
100054904208482837648657335090155948857412358508732419507127269938370640500736
四、企业用自己生成的秘钥,对数组进行加密,记为EM。
String key="12345678";
DESUtil des=new DESUtil(key);
String[]select_data_index_str=new String[select_data_index.length];
for(int i=0;i<select_data_index.length;i++){
select_data_index_str[i]=des.encryptStr(String.valueOf(select_data_index[i]));
}
这里以秘钥key=12345678为例。
五、企业通过
Figure BDA0003001477490000091
以及
Figure BDA0003001477490000092
计算ST={(s1,t1),(s2,t2),…},将加密集合EM和ST返回给用户。
String[]Si=new String[2020];
String[]Ti=new String[2020];
for(int i=0;i<Si.length;i++){
BigInteger h=new BigInteger("123456987");
BigInteger m=h.multiply(new BigInteger(String.valueOf(i+1)));
Si[i]=α.modPow(h,p).toString();
Ti[i]=y.modPow(h,p).multiply(β.modPow(m,p).modInverse(p)).multiply(new BigInteger(key)).mod(p).toString();
}
六、用户通过计算可以获取得到秘钥,利用秘钥对EM中的第a个元素进行解密。
BigInteger sia=new BigInteger(Si[Integer.valueOf(a1)-1]);
BigInteger tia=new BigInteger(Ti[Integer.valueOf(a1)-1]);
BigInteger K1=tia.multiply(sia.modPow(r,p).modInverse(p)).mod(p);
System.out.println("利用K1=(Ti[a]*(Si[a]^(r*(p-1))))%p计算得到秘钥是:"+K1);
DESUtil des1=new DESUtil(K1.toString());
String[]select_data_index2=new String[select_data_index.length];
for(int i=0;i<select_data_index_str.length;i++){
select_data_index2[i]=des1.decryptStr(select_data_index_str[i]);
}
System.out.println("解密完的值为:"+select_data_index2[Integer.valueOf(a1)-1]+"(结果若为1代表黑名单中有此数据)");
结果如下:
利用K1=(Ti[a]*(Si[a]^(r*(p-1))))%p计算得到秘钥是:12345678
解密完的值为:1(结果若为1代表黑名单中有此数据)
4性能分析
在不考虑企业对数据加密(此加密可使用对称加密,一般对称加密性能较高)的情况下,该不经意传输方案仅需要经过两轮信息交互。且这两轮信息交互过程中至少包含用户随机选择r并告诉企业以及企业响应用户请求。这个过程是通过用户发动的信息y,以及企业发送的信息集合用户来完成。该不经意传输方案核心算法主要是快速模幂算法,快速模幂算法的算法复杂程度是0(lgn),其性能与n的大小呈负相关,即n越大,性能越低。
用到快速模幂算法主要集中在如下计算:
企业端:
Figure BDA0003001477490000101
Figure BDA0003001477490000102
用户端:
y=αΓβamod p ⑧
ka=(ta/(sa)Γ)mod p ⑨
在一次不经意传输过程中需要企业进行n次⑥和⑦运算,其中n表示用户查询的结果数据量,由于企业系统一般部署在具有较高性能的系统服务器上,可认为该服务器能够在较短时间内完成计算处理。因此,可认为该协议对查询数据处理时间影响较小。在一次不经意传输过程中需要用户进行⑧和⑨运算。用户的此运算在整个传输过程中可忽略不计。故可认为整个过程中整体性能较好。
5安全分析
数据传输过程安全分析。本专利企业与企业间数据传输方面,我们采用专线传输,这样可以避免数据在传输过程中被截取或被不法分子篡改;从而保证数据传输的安全。
算法本身的安全分析。不经意传输的核心算法是作用域是循环乘法群的快速模幂算法,从而不经意传输协议的安全是基于离散对数数学难题,基于离散对数数学难题是给定循环群G是一个q阶群,g是群G的生成器,h是G上元素。对于任意的多项式时间算法a(G,g,h)都解决不了这个难题。即当前没有多项式时间算法裹着概率多项式时间算法来解决这个问题。
针对离散对数问题,广义的DLog目前所知的最佳算法是Pollard's rhoalgorithm for logarithms,时间复杂度是
Figure BDA0003001477490000111
p可以视为群的大小。
如果用2进制表示p,即把p写成110111....,设这个二进制表示的长度为n;则在密码学范畴里,这个复杂度实际上是O(2n/2);直接穷举的情况下,比如逐个计算gxmodp,复杂度更惊人,基本上是O(2n),n这里是群的大小的二进制表示的长度,也可以理解为key的二进制长度。如果用1024位的key,即21024,这样的难度以目前的技术几乎无法解决。
隐私数据的安全性分析。用户端使用的r是随机选择的(即一次一随机)。同时在整个服务过程中任何与该用户有关的信息都没有发送给企业,整个服务过程实现对用户的零信息披露。另外,由于用户端仅能对所需要的信息项进行解密,使得即使在整个服务过程中企业发送了大量相关数据的情况下,用户仅能获得其自身所需的相关数据,而不能对其他数据进行解密。因而,企业数据同时也能得到相应的保护。由此,可认为该协议很好的解决了企业隐私所面对的两个问题。
应当认识到,本发明的实施例可以由计算机硬件、硬件和软件的组合、或者通过存储在非暂时性计算机可读存储器中的计算机指令来实现或实施。所述方法可以使用标准编程技术-包括配置有计算机程序的非暂时性计算机可读存储介质在计算机程序中实现,其中如此配置的存储介质使得计算机以特定和预定义的方式操作——根据在具体实施例中描述的方法和附图。每个程序可以以高级过程或面向对象的编程语言来实现以与计算机系统通信。然而,若需要,该程序可以以汇编或机器语言实现。在任何情况下,该语言可以是编译或解释的语言。此外,为此目的该程序能够在编程的专用集成电路上运行。
此外,可按任何合适的顺序来执行本文描述的过程的操作,除非本文另外指示或以其他方式明显地与上下文矛盾。本文描述的过程(或变型和/或其组合)可在配置有可执行指令的一个或多个计算机系统的控制下执行,并且可作为共同地在一个或多个处理器上执行的代码(例如,可执行指令、一个或多个计算机程序或一个或多个应用)、由硬件或其组合来实现。所述计算机程序包括可由一个或多个处理器执行的多个指令。
进一步,所述方法可以在可操作地连接至合适的任何类型的计算平台中实现,包括但不限于个人电脑、迷你计算机、主框架、工作站、网络或分布式计算环境、单独的或集成的计算机平台、或者与带电粒子工具或其它成像装置通信等等。本发明的各方面可以以存储在非暂时性存储介质或设备上的机器可读代码来实现,无论是可移动的还是集成至计算平台,如硬盘、光学读取和/或写入存储介质、RAM、ROM等,使得其可由可编程计算机读取,当存储介质或设备由计算机读取时可用于配置和操作计算机以执行在此所描述的过程。此外,机器可读代码,或其部分可以通过有线或无线网络传输。当此类媒体包括结合微处理器或其他数据处理器实现上文所述步骤的指令或程序时,本文所述的发明包括这些和其他不同类型的非暂时性计算机可读存储介质。当根据本发明所述的基于不经意传输的黑名单共享方法和技术编程时,本发明还包括计算机本身。
计算机程序能够应用于输入数据以执行本文所述的功能,从而转换输入数据以生成存储至非易失性存储器的输出数据。输出信息还可以应用于一个或多个输出设备如显示器。在本发明优选的实施例中,转换的数据表示物理和有形的对象,包括显示器上产生的物理和有形对象的特定视觉描绘。
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。

Claims (8)

1.一种基于不经意传输的黑名单共享方法,其特征在于:该方法包括以下步骤:
S1:企业一将自身的用户的唯一标识ID分为三部分:第一部分、第二部分和第三部分;
S2:用户将第一部分和第三部分暴露给企业二,企业二根据用户暴露的信息进行筛选;
S3:企业一将第二部分作为ID通过不经意传输进行查询,查询后与S2中筛选后的数据进行数组映射,判断企业一的用户是否存在在企业二的黑名单中。
2.根据权利要求1所述的一种基于不经意传输的黑名单共享方法,其特征在于:所述S1具体为:
将唯一标识ID截断为三部分,第一部分为唯一标识ID的前n位,第三部分为唯一标识ID的后m位;第二部分为除去n及m部分的其余的中间部分;n和m由企业一和企业二制定;将第一部分和第三部分暴露给企业二,用于企业二的筛选。
3.根据权利要求2所述的一种基于不经意传输的黑名单共享方法,其特征在于:所述S2中,企业二根据用户暴露的信息进行筛选具体为:
设p和q为两个128~256位的质数,且满足p=2q+1,G是一个q阶群,α、β是群G的生成器,Zq表示q的最小剩余集合,α、β和G被公布给所有用户;
对唯一标识ID的第二部分生成一个索引:若第二部分是1111或2222,则创建0~v个索引,在相应的位置处为1,其余为0,v为第二部分的最大值,相应位置为该数值对应的索引的位置,然后根据索引的位置进行筛选。
4.根据权利要求3所述的一种基于不经意传输的黑名单共享方法,其特征在于:所述S3中,所述S3中,若唯一标识ID的第二部分为1111或2222,用户生成一个r,r是属于Zq的随机数,并计算y=αΓβamod p,将y发送给企业二;
y表示发送给企业二的密文;
αΓ表示密文生成器一;
βa表示密文生成器二;
企业二用秘钥K={k1,k2,k3,…}对{0,0,0…,1,1…}生成加密集合EM;这里的K为加密集合,0,1对应第二部分的索引;
在企业二收到y之后,企业二通过
Figure RE-FDA0003073229600000011
以及
Figure RE-FDA0003073229600000012
计算ST={(s1,t1),(s2,t2),…},其中hi∈Zq,1≤i≤2020,ki=12345678;将EM和ST返回给用户;si与ti均为计算过程中的中间量,si为根据α生成器产生的满足唯一标识ID 的第二部分的计算加密分母,ti为根据β生成器产生的满足唯一标识ID的第二部分的计算加密分子;
si为根据α生成器产生的满足唯一标识ID的第二部分的计算加密分母;ti为根据β生成器产生的满足唯一标识ID的第二部分的计算加密分子;
用户通过公式
Figure RE-FDA0003073229600000021
计算需要的秘钥ka,利用秘钥ka解密EM中的第a个元素,其中a是ST中的第a个元素;ta表示第a个元素对应的年份加密分子;sa表示第a个元素对应的年份加密分子,modp表示对p进行取模;ta表示第a个元素对应的第二部分加密分子;
解密后,若为1,则表示企业一自身的用户存在在企业二的黑名单中;若为0,则表示企业一自身的用户不存在在企业二的黑名单中。
5.根据权利要求4所述的一种基于不经意传输的黑名单共享方法,其特征在于:所述用户在选择r时,并告诉企业二,以及企业二响应用户请求,采用的是快速模幂算法,复杂程度为lgn,性能与n的大小呈负相关,即n越大,性能越低;n表示运算的次数;
其中,快速模幂算法的原理为:(a1*b1)Mod c1=[(a 1Mod c1)*(b1 Mod c1)]Mod c1;考虑到b1是一个大数,直接算a1和b1会很慢,先把b1转换成二进制形式;a1、b1和c1为任意自然数。
6.基于权利要求1~5中任一项所述方法的基于不经意传输的黑名单共享系统,其特征在于:该系统包括企业端服务器一、企业端服务器二、用户端服务器和核心交换机;
所述企业端服务器一、企业端服务器二和用户端服务器分别与核心交换机连接;
所述企业端服务器一中,有:
Figure FDA0003001477480000022
Figure FDA0003001477480000023
用户端服务器中,有:
y=αΓβamod p ⑧
ka=(ta/(sa)Γ)mod p ⑨
si为根据α生成器产生的满足第二部分的计算机密分母;
Figure FDA0003001477480000024
为加密因子;
modp为对p进行取模操作;
ti表示根据β生成器产生的满足许第二部分的计算加密分子;
ki表示密钥群;
y表示密文;
β表示阶群G的生成器,i表示Zq中的h对应的索引值;
hi∈Zq
在一次不经意传输过程中,企业端服务器一进行n次⑥和⑦运算,其中n表示用户查询的结果数据量;在一次不经意传输过程,中用户端服务器进行⑧和⑨运算。
7.一种计算机装置,包括存储器、处理器及储存在存储器上并能够在处理器上运行的计算机程序,其特征在于:所述处理器执行所述计算机程序时实现如权利要求1~5中任选一项所述的方法。
8.一种计算机可读存储介质,其上储存有计算机程序,其特征在于:所述计算机程序被处理器执行时实现如权利要求1~5中任选一项所述的方法。
CN202110348166.2A 2021-03-31 2021-03-31 一种基于不经意传输的黑名单共享方法及系统 Active CN112989386B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110348166.2A CN112989386B (zh) 2021-03-31 2021-03-31 一种基于不经意传输的黑名单共享方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110348166.2A CN112989386B (zh) 2021-03-31 2021-03-31 一种基于不经意传输的黑名单共享方法及系统

Publications (2)

Publication Number Publication Date
CN112989386A true CN112989386A (zh) 2021-06-18
CN112989386B CN112989386B (zh) 2023-09-22

Family

ID=76338613

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110348166.2A Active CN112989386B (zh) 2021-03-31 2021-03-31 一种基于不经意传输的黑名单共享方法及系统

Country Status (1)

Country Link
CN (1) CN112989386B (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140258027A1 (en) * 2011-11-01 2014-09-11 Nederlandse Organisatie Voor Toegepast-Natuurwetenschappelijk Onderzoek Tno Recommender system and media retrieval system for providing recommendations to groups of users
CN110166423A (zh) * 2019-04-02 2019-08-23 阿里巴巴集团控股有限公司 用户信用的确定方法、装置、系统和数据的处理方法
CN110365670A (zh) * 2019-07-08 2019-10-22 深圳壹账通智能科技有限公司 黑名单共享方法、装置、计算机设备和存储介质
CN110489985A (zh) * 2019-08-21 2019-11-22 泰康保险集团股份有限公司 数据处理方法、装置、计算机可读存储介质及电子设备
CN111259443A (zh) * 2020-01-16 2020-06-09 百融云创科技股份有限公司 一种基于psi技术保护联邦学习预测阶段隐私的方法
CN111526155A (zh) * 2020-04-30 2020-08-11 桂林电子科技大学 一种社交网络中保护用户隐私的系统及最优路径匹配方法
CN111931253A (zh) * 2020-09-15 2020-11-13 腾讯科技(深圳)有限公司 基于节点群的数据处理方法、系统、设备和介质
CN111949986A (zh) * 2020-02-19 2020-11-17 华控清交信息科技(北京)有限公司 业务处理方法、系统及存储介质
CN112270006A (zh) * 2020-11-02 2021-01-26 重庆邮电大学 电商平台中隐藏搜索模式和访问模式的可搜索加密方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140258027A1 (en) * 2011-11-01 2014-09-11 Nederlandse Organisatie Voor Toegepast-Natuurwetenschappelijk Onderzoek Tno Recommender system and media retrieval system for providing recommendations to groups of users
CN110166423A (zh) * 2019-04-02 2019-08-23 阿里巴巴集团控股有限公司 用户信用的确定方法、装置、系统和数据的处理方法
CN110365670A (zh) * 2019-07-08 2019-10-22 深圳壹账通智能科技有限公司 黑名单共享方法、装置、计算机设备和存储介质
CN110489985A (zh) * 2019-08-21 2019-11-22 泰康保险集团股份有限公司 数据处理方法、装置、计算机可读存储介质及电子设备
CN111259443A (zh) * 2020-01-16 2020-06-09 百融云创科技股份有限公司 一种基于psi技术保护联邦学习预测阶段隐私的方法
CN111949986A (zh) * 2020-02-19 2020-11-17 华控清交信息科技(北京)有限公司 业务处理方法、系统及存储介质
CN111526155A (zh) * 2020-04-30 2020-08-11 桂林电子科技大学 一种社交网络中保护用户隐私的系统及最优路径匹配方法
CN111931253A (zh) * 2020-09-15 2020-11-13 腾讯科技(深圳)有限公司 基于节点群的数据处理方法、系统、设备和介质
CN112270006A (zh) * 2020-11-02 2021-01-26 重庆邮电大学 电商平台中隐藏搜索模式和访问模式的可搜索加密方法

Also Published As

Publication number Publication date
CN112989386B (zh) 2023-09-22

Similar Documents

Publication Publication Date Title
Kiss et al. Private set intersection for unequal set sizes with mobile applications
JP6016948B2 (ja) 秘匿計算システム、演算装置、秘匿計算方法、およびプログラム
US20170063534A1 (en) Generating Cryptographic Function Parameters From Compact Source Code
US10374797B2 (en) Public-key encryption system
CN110637441A (zh) 应用于数据重复数据删除的加密密钥生成
JP4137385B2 (ja) 公開鍵および秘密鍵による暗号化方法
Jayapandian et al. Secure and efficient online data storage and sharing over cloud environment using probabilistic with homomorphic encryption
EP3729713B1 (en) Homomorphic encryption for password authentication
CN111404952B (zh) 变电站数据加密传输方法、装置、计算机设备和存储介质
JP2011164607A (ja) シンボルシーケンスの編集距離のプライバシーを保護した計算の方法およびシステム
US10079675B2 (en) Generating cryptographic function parameters from a puzzle
CN109905229B (zh) 基于群组非对称密钥池的抗量子计算Elgamal加解密方法和系统
CA2983166A1 (en) Generating cryptographic function parameters based on an observed astronomical event
EP0899907B1 (en) Apparatus for processing bivectors and encrypting system including the same
CN114448640A (zh) 一种双盲信息分发方法、装置及计算机可读存储介质
KR101440680B1 (ko) 중국인 나머지 정리에 기반한 준동형 암복호화 방법 및 이를 이용한 장치
CN112989386B (zh) 一种基于不经意传输的黑名单共享方法及系统
CN115529120A (zh) 一种保密计算系统
Al-Saidi et al. Improved digital signature protocol using iterated function systems
Liu et al. Proofs of encrypted data retrievability with probabilistic and homomorphic message authenticators
CN115001741B (zh) 一种数据加密方法及相关组件
Goo et al. Reconfigurable real number field elliptic curve cryptography to improve the security
KR101006358B1 (ko) 실수체 기반의 타원 곡선 암호 시스템 및 그 방법
US20230125560A1 (en) Cryptographic Computer Machines with Novel Switching Devices
RU2774807C2 (ru) Гомоморфное шифрование для проверки подлинности с помощью пароля

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