[发明专利]一种基于泄序算法的数据库密文比较检索方法有效
申请号: | 201811237729.5 | 申请日: | 2018-10-23 |
公开(公告)号: | CN109117676B | 公开(公告)日: | 2022-02-25 |
发明(设计)人: | 杨万年;牛自宾;滕海明;李卫明 | 申请(专利权)人: | 杭州弗兰科信息安全科技有限公司 |
主分类号: | G06F21/62 | 分类号: | G06F21/62 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 王学强 |
地址: | 310051 浙江省杭州市滨江*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 算法 数据库 比较 检索 方法 | ||
本发明公开一种基于泄序算法的数据库密文比较检索方法。该数据库密文比较检索方法主要是在数据库客户端与数据库服务器中间加一个数据库代理,数据库代理完成对sql语句进行改写,包括把sql语句中的敏感数据使用泄序算法进行加密保护,敏感数据比较部分利用数据库用户自定义函数来实现,对检索结果使用泄序解密算法进行解密操作,从而完成在数据库服务器端密文比较检索操作。此数据库密文比较检索算法具有安全性较高,且加密速度快,且膨胀率较低的特点。
技术领域
本发明属于信息安全技术领域,具体涉及一种基于泄序算法(Order-RevealingEncryption,ORE)的数据库密文比较检索方法。
背景技术
随着云计算技术的高速发展,很多的企业与个人用户将数据存储到云端服务器,近年来由于黑客的非法入侵以及云端服务器管理员的不当操作造成了多起大量用户资料和私人数据泄露事件。为了保证数据安全,企业和个人用户会使用加密算法对数据进行加密,将数据以密文形式存储在云端服务器,这样,可搜索加密技术(searchableencryption,SE)便应运而生。
本发明的一个应用场景:用户使用包含WHERE比较条件的sql语句在数据库中搜索符合条件的记录。由于数据是密文存储的,明文搜索方法已经失去作用。本发明使用泄序算法、数据库的用户自定义函数(User-Defined Function,UDF)、SQL语句改写技术很好的解决了该问题。
本文所采用的泄序加密算法从本质上来说一种对称加密算法,与保序加密算法(Order-Preserving Encryption,OPE)相似,保序加密算法是一种支持密文数据比较大小的加密算法,此算法加密明文后,可以直接通过密文数据得到大小关系,即,对任意明文p1>p2,加密后得到的密文满足c1>c2。利用此算法,可以对密文数据进行数据匹配、范围查询以及排序等操作,但此算法泄露了明文数据之间大小,遭受推理攻击后可以恢复一半以上的明文数据。
相对于保序加密算法,泄序加密算法具有更高的安全性,此种算法要求加密后的密文数据不保持原明文数据的大小关系,要依靠专门的比较函数进行大小比较,即,对任意明文数据p1>p2,加密后得到的密文数据c1、c2,满足比较函数Compare(c1,c2)>0。
泄序加密算法利用明文数据的比特位bit进行运算,泄露的仅是明文数据中第一个不相同的比特位,由于其是按位进行运算,加密速度较快,密文膨胀率较小。
发明内容
本发明的目的在于提出一种基于泄序算法的数据库密文比较检索方法,泄序算法具有安全性较高、速度快、膨胀率低的特点。
本发明解决其技术问题所采用的技术方案是:
一种泄序加密ORE方法,其方法包括以下步骤:
步骤1:输入加密密钥key与待加密明文数据p,设p有n比特位,将p表示成比特位形式为:p=m0m1…mn,设明文数据每个比特位在密文中扩展为out_blk_len位,明文p加密后密文为ctxt;
步骤2:计算block_mask=2^out_blk_len-1;
步骤3:初始化数组prf_input_buf,设i代表p的第i个比特位;
步骤4:计算明文第i位比特位位于明文数据的字节序列记为byteind;
步骤5:计算明文数据的第i位掩码记为mask及明文p的字节偏移量记为offset;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州弗兰科信息安全科技有限公司,未经杭州弗兰科信息安全科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811237729.5/2.html,转载请声明来源钻瓜专利网。