一种用于加密数据搜索的方法及存储控制器技术

技术编号:38071021 阅读:12 留言:0更新日期:2023-07-06 08:39
本申请涉及一种用于加密数据搜索的方法及存储控制器,所述方法应用于固态存储器,包括:响应于接收到第一陷门,搜索与所述第一陷门匹配的第一密文,其中,所述第一陷门包括第一加密关键词;所述第一密文用于索引所述第一加密关键词所对应的第一加密文件;根据所述第一密文确定出所述第一陷门所对应的第一加密文件,将所述第一加密文件提供给主机。本申请的方法,能够在固态存储器中实现加密数据的搜索,从而降低了主机的负担,提高搜索的效率和安全性。安全性。安全性。

【技术实现步骤摘要】
一种用于加密数据搜索的方法及存储控制器


[0001]本申请一般地涉及固态存储器
更具体地,本申请涉及一种用于加密数据搜索的方法、存储控制器及相关产品。

技术介绍

[0002]图1展示了固态存储设备的框图。固态存储设备102同主机相耦合,用于为主机提供存储能力。主机同固态存储设备102之间可通过多种方式相耦合,耦合方式包括但不限于通过例如SATA(Serial Advanced Technology Attachment,串行高级技术附件)、SCSI(Small Computer System Interface,小型计算机系统接口)、SAS(Serial Attached SCSI,串行连接SCSI)、IDE(Integrated Drive Electronics,集成驱动器电子)、USB(Universal Serial Bus,通用串行总线)、PCIE(Peripheral Component Interconnect Express,PCIe,高速外围组件互联)、NVMe(NVM Express,高速非易失存储)、以太网、光纤通道、无线通信网络等连接主机与固态存储设备102。主机可以是能够通过上述方式同存储设备相通信的信息处理设备,例如,个人计算机、平板电脑、服务器、便携式计算机、网络交换机、路由器、蜂窝电话、个人数字助理等。存储设备102(下文中,将固态存储设备简称为存储设备)包括接口103、控制部件104、一个或多个NVM芯片105以及DRAM(Dynamic Random Access Memory,动态随机访问存储器)110。
[0003]上述NVM芯片105包括NAND闪存、相变存储器、FeRAM(Ferroelectric RAM,铁电存储器)、MRAM(Magnetic Random Access Memory,磁阻存储器)、RRAM(Resistive Random Access Memory,阻变存储器)等是常见的存储介质。
[0004]上述接口103可适配于通过例如SATA、IDE、USB、PCIE、NVMe、SAS、以太网、光纤通道等方式与主机交换数据。
[0005]上述控制部件104用于控制在接口103、NVM芯片105以及DRAM 110之间的数据传输,还用于存储管理、主机逻辑地址到闪存物理地址映射、擦除均衡、坏块管理等。控制部件104可通过软件、硬件、固件或其组合的多种方式实现,例如,控制部件104可以是FPGA(Field

programmable gate array,现场可编程门阵列)、ASIC(Application Specific Integrated Circuit,应用专用集成电路)或者其组合的形式。控制部件104也可以包括处理器或者控制器,在处理器或控制器中执行软件来操纵控制部件104的硬件来处理IO(Input/Output)命令。控制部件104还可以耦合到DRAM 110,并可访问DRAM 110的数据。在DRAM可存储FTL表和/或缓存的IO命令的数据。
[0006]控制部件104以遵循NVM芯片105的接口协议的方式向NVM芯片105发出命令,以操作NVM芯片105,并接收从NVM芯片105输出的命令执行结果。已知的NVM芯片接口协议包括“Toggle”、“ONFI”等。
[0007]在存储技术中,上述固态存储设备被经常用于服务器中用于存储数据。用户端可以通过网络与服务器互联,以实现与服务器之间进行数据交互。例如,用户可以通过信任的计算存储传输方式将个人文件存放在可信的服务器的存储设备上,其中可信的服务器是指
用户知道该服务器的身份并信任它;用户还可能通过零信任的计算存储传输方式将个人文件存放在不可信的服务器,其中不可信的服务器是指用户可能了解它,也可能不了解它,但是不管是否了解,用户均对该服务器不信任。例如,边缘计算网络中不可信的边缘设备。为了保护用户文件的安全性,需要将用户文件以某种方式进行加密后存储。由于用户文件是以加密方式存储在服务器的存储设备中,为了保证用户文件的安全性,只有密钥拥有者才具备解密能力,服务器并不具备解密能力。因此,当用户进行搜索时,为了保证用户文件的安全性,需采用加密搜索的方式进行搜索,即在服务器中基于密文进行搜索。目前已经提出了基于密文进行搜索查询的方案,例如论文“可搜索加密技术研究综述”(《软件学报》;李经纬,贾春福等;2014年8月)对可搜索加密技术进行了总结。其中指出,可搜索加密技术包括对称可搜索加密方案和非对称可搜索加密方案。对称可搜索加密方案又分为SWP方案,Z

IDX方案和SSE

1方案。

技术实现思路

[0008]当前,可搜索加密方案主要包含两个部分:一部分是用户文件加密以及存储;另一部分是用户文件加密搜索。对于用户文件加密以及存储,其过程如下所示:客户端首先分别将用户文件中的关键词以及文件进行加密得到加密关键词和加密文件,然后将加密关键词和加密文件发送给服务器,服务器接收加密关键词和加密文件,并将加密关键词和加密文件存储在存储器的存储介质中。对于用户文件加密搜索,其过程如下所示:客户端将待查询关键词的索引(如陷门)发送给服务器,服务器接收该索引,并从存储设备的存储介质中读出全部或部分加密关键词,然后服务器的处理器根据该索引从部分或全部的加密关键词中搜索到与该索引匹配的加密关键词,根据匹配的加密关键词查找对应的加密文件,例如,在存储设备中还存储有加密关键词与加密文件之间的映射关系,服务器根据该映射关系即可查找出匹配的加密关键词所对应的加密文件。另外,服务器查询到加密文件之后,将加密文件发送给客户端,客户端根据密钥对加密文件进行解密得到明文。即当前可搜索加密方案部署于服务器端,例如在云计算或边缘计算系统中,将可搜索加密技术方案部署于云端或者边缘设备端。然而,由服务器来执行可搜索加密方案,一方面会增加服务器的负担;另一方面服务器在执行可搜索加密过程时,需将已存储的加密关键词从存储设备读出或者将搜索结果写入存储设备,当存储设备中存储的加密关键词数据量较大时,存储设备读出加密关键词会消耗较长的时间,进而影响搜索的效率。
[0009]本申请将可搜索加密技术方案部署在存储设备(例如SSD)中,由存储设备来执行加密搜索的过程,一方面,可以将服务器从加密搜索的工作中解脱出来,缓解了服务器的压力。另一方面,由存储设备内部来执行该搜索过程,只需要从存储介质中读出加密关键词,即只需要通过存储设备内部数据传输链路来传输加密关键词,而存储设备内部的数据传输链路会明显短于存储设备与服务器之间的数据传输链路,降低了读取加密关键词的时间,提高了搜索的效率;又一方面,本申请中所涉及的存储设备为KV存储设备,通过KV存储设备将已搜索过的加密关键词及其对应的密文进行存储(例如存储于查询历史中),当进行搜索时,存储设备首先从KV存储设备中查询当前待搜索的加密关键词是否之前已查询过,若已查询过,直接读取该加密关键词所对应的密文,根据密文确定出其对应的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用于加密数据搜索的方法,应用于存储设备,其特征在于,响应于接收到第一陷门(T
W
),搜索与所述第一陷门匹配的第一密文(C),其中,所述第一陷门(T
W
)包括第一加密关键词(E(W));所述第一密文用于索引所述第一加密关键词(E(W))所对应的第一加密文件;根据所述第一密文确定出所述第一陷门(T
W
)所对应的第一加密文件,将所述第一加密文件提供给主机。2.根据权利要求1所述的方法,其特征在于,搜索与所述第一陷门匹配的第一密文,包括:响应于存储了查询历史,根据所述第一陷门搜索查询历史,其中,所述查询历史包括已搜索过的加密关键词及其对应的密文;响应于在所述查询历史中查询到所述第一密文,从所述查询历史中确定出所述第一密文。3.根据权利要求2所述的方法,其特征在于,所述存储设备为KV存储设备;根据所述第一陷门搜索查询历史,包括:响应于所述查询历史以<关键字,键值>的形式存储于KV存储设备中,从所述KV存储设备中查询所述第一加密关键词所对应的第一密文。4.根据权利要求2所述的方法,其特征在于,搜索与所述第一陷门匹配的第一密文,包括:响应于未存储查询历史或在所述查询历史中未查询到所述第一密文,根据所述第一加密关键词(E(W))对所存储的一个或多个密文(C0~Cn)分别进行处理得到每个密文所对应的加密字符串(S||T),对每个加密字符串进行验证以得到所述第一密文(C)。5.根据权利要求4所述的方法,其特征在于,根据所述第一加密关键词(E(W))对所存储的一个或多个密文(C0~Cn)分别进行处理得到每个密文所对应的加密字符串,包括:将所述第一加密关键词(E(W))分别与所存储的一...

【专利技术属性】
技术研发人员:孙唐
申请(专利权)人:上海忆芯实业有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1