(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202211420158.5
(22)申请日 2022.11.15
(71)申请人 哈尔滨工业大 学 (深圳) (哈尔滨工
业大学深圳科技创新研究院)
地址 518055 广东省深圳市南 山区桃源街
道深圳大 学城哈尔滨工业大 学校区
申请人 暨南大学
(72)发明人 蒋琳 谢永杰 杨鹏 方俊彬
高翠芸 王轩 刘川意
(74)专利代理 机构 广州市华学知识产权代理有
限公司 4 4245
专利代理师 李斌
(51)Int.Cl.
G06F 21/62(2013.01)
G06F 21/60(2013.01)
(54)发明名称
基于复制秘密共享的密态数据库查询方法
及装置
(57)摘要
本发明公开了一种基于复制秘密共享的密
态数据库查询方法及装置, 方法包括: 用户将查
询需求编译成复制秘密共享下的安全多方计算
原语并将其交递给计算层, 计算层向存储层请求
共享查询需求所对应数据的表; 每个数据提供方
调用布尔复制秘密共享算法生成秘密份额并传
输给计算方; 计算方调用安全三方计算算法并利
用密态过滤算子、 密态连接算子、 密态排序算子
和密态聚合算子中的一个或多个进行安全三方
计算, 得到秘密共享形式的计算结果的秘密共享
份额并发送给用户; 调用秘密重构算法将计算结
果的秘密共享份额重构之后得到最终的查询结
果。 本发明每个数据提供方将自己的数据以秘密
共享的形式分成三个秘密份额发给计算方, 性能
更好。
权利要求书2页 说明书9页 附图3页
CN 115455488 A
2022.12.09
CN 115455488 A
1.基于复制秘密共享的密态数据库查询方法, 其特 征在于, 包括下述 步骤:
用户将查询需求编译成复制秘密共享下的安全多方计算原语并将其交递给计算层, 计
算层向存 储层请求共享 查询需求所对应数据的表;
每个数据 提供方i通过自己的输入数据 x调用布尔复制秘密共享算法MPC.Shr (x)生成
秘密份额第一秘密份额[ x]1B、 第二秘密份额[ x]2B和第三秘密份额[ x]3B, 并通过安全信道将
[x]1B传输给第一计算方, 将[ x]2B传输给第二计算方, 将[x]3B传输给第三计算方, 1≤ i≤k;
计算方收到来自每个数据提供方传输的秘密份额后, 调用安全三方计算算法MPC.Eval
并利用密态过滤算子、 密态连接算子、 密态排序算子和密态 聚合算子中的一个或多个进行
相应的安全三方计算, 得到秘密共享形式的计算结果的秘密共享份额[ r]1B, [r]2B, [r]3B,
并发送给用户;
用户收到各方计算结果的秘密共享份额后, 调用秘密重构算法MPC.Rec将计算结果的
秘密共享份额[ r]1B, [r]2B, [r]3B重构之后得到最终的查询结果。
2.根据权利要求1所述基于复制秘密共享的密态数据库查询方法, 其特征在于, 所述调
用布尔复制秘密共享算法MPC.Shr (x)生成第一秘密 份额[x]1B、 第二秘密 份额[x]2B和第三
秘密份额[ x]3B, 具体为:
数据x作为输入, 并输出三份秘密共享份额[ x]1B: x1,x2, [x]2B: x2,x3, [x]3B: x1,x3,
满足x = x1⊕x2⊕x3。
3.根据权利要求1所述基于复制秘密共享的密态数据库查询方法, 其特征在于, 所述安
全三方计算 算法MPC.Eval具体为:
输入为秘密共享份额[ x]1B, [x]2B, [x]3B, 输出为计算结果的秘密共享份额[ r]1B,
[r]2B, [r]3B。
4.根据权利要求1所述基于复制秘密共享的密态数据库查询方法, 其特征在于, 所述密
态过滤算子的计算过程如下:
首先, 将查询语句编译成对应的底层操作算子;
其次, 将所述底层操作算子转 化成安全多方计算原语, 而后完成计算;
最后, 计算结果由一个单比特位份额 [r]B表示, 如果 符合查询谓词的条件, 则设置为1,
反之则为0。
5.根据权利要求1所述基于复制秘密共享的密态数据库查询方法, 其特征在于, 所述密
态连接算子的计算过程如下:
首先, 编译器将连接谓词编译对应的底层操作算子;
其次, 得到底层操作算子后, 跟明文下的嵌套循环连接相似, 对于左表中每个连接键,
计算方根据连接谓词在右表中进 行扫描匹配, 如果连接谓词中出现算术运算, 则使用B2A协
议将该计算对应的布尔电路转换成算术电路进 行计算, 完成计算后, 再使用A2B协 议转换到
布尔电路进行匹配;
最后, 对于全连接, 匹配过程中, 连接算子会生成左表、 右表的笛卡尔积组成一张新表,
为新表的每一个元组添加了一个额外的比特r来表示该新表的左表元组t是否与右表元组
t'匹配上; 对于 半连接, 连接算子为左表添加一个额外属性r来存储 结果位表 示左表中该元
组是否与右 表的某个元组匹配上。
6.根据权利要求1所述基于复制秘密共享的密态数据库查询方法, 其特征在于, 所述密权 利 要 求 书 1/2 页
2
CN 115455488 A
2态排序算子的计算过程如下:
所述密态排序算子实现的是密态下的比较 ‑交换算法, 在安全三方计算中的比较 ‑交换
运算中, 参与方先共同计算两个字符串的最大值与最小值, 并设置一个额外的比较结果, 进
而使用多路加法器来计算得到交换 结果。
7.根据权利要求1所述基于复制秘密共享的密态数据库查询方法, 其特征在于, 所述密
态聚合算子的计算过程如下:
先使用密态排序算子基于聚合键对所有的元组进行排序, 再扫描聚合键, 进行安全比
较运算, 对于每一个元组添加一个额外的比特用来表示结果, 当第一次扫描到某一元组 时,
比特设置为1, 反 之为0。
8.基于复制秘密共享的密态数据库查询系统, 其特征在于, 包括查询 请求模块、 秘密共
享模块、 三方计算模块和重构模块;
所述查询 请求模块, 用于用户将查询需求编译成复制秘密共享下的安全多方计算原语
并将其交递给计算层, 计算层向存 储层请求共享 查询需求所对应数据的表;
所述秘密共享模块, 用于每个数据提供方 i通过自己的输入数据 x调用布尔复制秘密共
享算法MPC.Shr (x)生成秘密份额第一秘密 份额[x]1B、 第二秘密 份额[x]2B和第三秘密 份额
[x]3B, 并通过安全信道将 [x]1B传输给第一计算方, 将 [x]2B传输给第二计算方, 将 [x]3B
传输给第三计算方, 1≤ i≤k;
所述三方计算模块, 用于计算方收到来自每个数据提供方传输的秘密份额后, 调用安
全三方计算算法MPC.Eval并利用密态过滤算子、 密态连接算子、 密态排序算子和密态聚合
算子中的一个或多个进行相应的安全三方计算, 得到秘密 共享形式的计算结果的秘密 共享
份额[r]1B, [r]2B, [r]3B, 并发送给用户;
所述重构模块, 用于用户收到各方计算结果的秘密共享份额后, 调用秘密重构算法
MPC.Rec将查询结果的秘密共享份额[ r]1B, [r]2B, [r]3B重构之后得到最终的查询结果。
9.一种电子设备, 其特 征在于, 所述电子设备包括:
至少一个处 理器; 以及,
与所述至少一个处 理器通信连接的存 储器; 其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序指令, 所述计算机程序
指令被所述至少一个处理器执行, 以使所述至少一个处理器能够执行如权利要求1 ‑7中任
意一项所述的基于复制秘密共享的密态数据库查询方法。
10.一种计算机可读存储介质, 存储有程序, 其特征在于, 所述程序被处理器执行时, 实
现权利要求1 ‑7任一项所述的基于复制秘密共享的密态数据库查询方法。权 利 要 求 书 2/2 页
3
CN 115455488 A
3
专利 基于复制秘密共享的密态数据库查询方法及装置
文档预览
中文文档
15 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
温馨提示:本文档共15页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 人生无常 于 2024-03-18 02:14:10上传分享