CN114676449B - 一种基于可验证数据库的物联网数据可搜索加密方法 - Google Patents

一种基于可验证数据库的物联网数据可搜索加密方法 Download PDF

Info

Publication number
CN114676449B
CN114676449B CN202210581347.4A CN202210581347A CN114676449B CN 114676449 B CN114676449 B CN 114676449B CN 202210581347 A CN202210581347 A CN 202210581347A CN 114676449 B CN114676449 B CN 114676449B
Authority
CN
China
Prior art keywords
data
search
attribute
search result
trapdoor
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.)
Active
Application number
CN202210581347.4A
Other languages
English (en)
Other versions
CN114676449A (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.)
Nanjing Changyang Technology Co ltd
Original Assignee
Nanjing Changyang 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 Nanjing Changyang Technology Co ltd filed Critical Nanjing Changyang Technology Co ltd
Priority to CN202210581347.4A priority Critical patent/CN114676449B/zh
Publication of CN114676449A publication Critical patent/CN114676449A/zh
Application granted granted Critical
Publication of CN114676449B publication Critical patent/CN114676449B/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
    • 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/6245Protecting personal data, e.g. for financial or medical purposes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种基于可验证数据库的物联网数据可搜索加密方法,属于信息安全技术领域,包括S1系统初始化阶段、S2陷门生成与搜索阶段、S3验证阶段和S4数据更新阶段,数据拥有者构建可验证数据库及索引结构,数据使用者生成基于可验证数据库的搜索陷门并发送到云存储服务器,在收到搜索陷门后,云存储服务器在索引结构上匹配通过验证的搜索陷门,数据使用者收到搜索结果后基于可验证数据库对数据的完整性和正确性进行验证,数据拥有者将处理过的更新内容上传至云存储服务器完成更新,通过本发明,实现了可以减少物联网数据使用云存储过程中的泄露风险,保证了搜索结果的正确性和完整性,使物联网终端之间高效、安全地完成数据共享。

Description

一种基于可验证数据库的物联网数据可搜索加密方法
技术领域
本发明主要涉及信息安全的技术领域,具体为一种基于可验证数据库的物联网数据可搜索加密方法。
背景技术
信息安全主要包括以下五方面的内容,即需保证信息的保密性、真实性、完整性、未授权拷贝和所寄生系统的安全性,信息安全本身包括的范围很大,其中包括如何防范商业企业机密泄露、防范青少年对不良信息的浏览、个人信息的泄露等,网络环境下的信息安全体系是保证信息安全的关键,包括计算机安全操作系统、各种安全协议、安全机制(数字签名、消息认证、数据加密等),直至安全系统,如UniNAC、DLP等,只要存在安全漏洞便可以威胁全局安全,信息安全是指信息系统(包括硬件、软件、数据、人、物理环境及其基础设施)受到保护,不受偶然的或者恶意的原因而遭到破坏、更改、泄露,系统连续可靠正常地运行,信息服务不中断,最终实现业务连续性。
随着数字经济的发展,数据已经成为受国家、企业和个人重视的关键战略性资源。随着数据规模的增加,使用云存储技术保存数据资源,可以有效减少在软硬件部署和管理环节中的成本,尤其是以物联网设备为代表的计算、存储资源受限设备,难以存储产生的数据以及处理复杂的计算任务,而云存储服务器作为不可信平台,将数据直接存储到云会导致数据隐私泄露问题,为提高物联网数据安全,考虑将可搜索加密技术应用于物联网数据安全存储、共享。
可搜索加密技术是指在密文域中使用关键词搜索,得到相应的文件,其特点是在有效减少本地存储空间和数据传输成本的同时,保证了数据的隐私安全,数据拥有者将数据加密后与搜索索引上传至云储存服务器,数据使用者需要搜索数据时,根据关键词构建相应的搜索陷门,将搜索陷门上传至云存储服务器,服务器在搜索索引上与陷门进行匹配,将匹配到的搜索结果反馈给数据使用者,数据使用者接收到密文后在本地解密,获得需要的明文文件,可搜索加密技术的主要目的是满足以下安全需求:服务器无法通过密文获取任何关于明文的信息,在没有合法用户的搜索陷门时,服务器无法私自对文件进行关键词搜索,服务器无法在不被发现的情况下私自篡改、增加、删除密文文件。
当前,在具有可验证性的可搜索加密方案中,通常验证的是搜索结果而不是数据库本身,因此,客户端无法验证云存储服务器是否在更新后的数据库上执行搜索操作,只能确认返回了匹配关键词的文档,而不能对搜索结果的完整性和正确性进行验证,设计一种结合属性可搜索加密与可验证数据库的可搜索加密方案,保证数据库的可验证性,是当前物联网数据云存储急需解决的问题。
发明内容
本发明主要提供了一种基于可验证数据库的物联网数据可搜索加密方法,用以解决上述背景技术中提出的技术问题。
本发明公开了包含云存储服务器、数据使用者和数据拥有者在内的方案,提出了一种基于可验证数据库的物联网数据可搜索加密方法,物联网设备作为数据拥有者,将数据加密后上传至云存储服务器,并允许其他获得授权的物联网设备作为数据使用者,对数据进行搜索操作,确保物联网终端间数据的安全共享,避免隐私泄露。
本发明解决上述技术问题采用的技术方案为:
一种基于可验证数据库的物联网数据可搜索加密方法,包括以下步骤:
S1系统初始化阶段:根据数据拥有者的私钥、系统的公开参数、由密文数据构建的数据库以及数据使用者的属性列表,生成与密文数据库对应的可验证数据库、系统公开密钥以及用于验证的附加信息;
S11密钥生成:数据拥有者生成文件加密密钥
Figure DEST_PATH_IMAGE001
、属性加密密钥
Figure DEST_PATH_IMAGE002
、节点加密密钥
Figure DEST_PATH_IMAGE003
,以及数据拥有者的设备身份认证密钥
Figure DEST_PATH_IMAGE004
,选取大素数
Figure DEST_PATH_IMAGE005
S12参数选择:选择抗强碰撞哈希函数
Figure DEST_PATH_IMAGE006
、伪随机函数
Figure DEST_PATH_IMAGE007
,满足等式
Figure DEST_PATH_IMAGE008
的两个群,
Figure DEST_PATH_IMAGE009
是群
Figure DEST_PATH_IMAGE010
的生成元,
Figure DEST_PATH_IMAGE011
为双线性映射,
Figure DEST_PATH_IMAGE012
为群
Figure 133429DEST_PATH_IMAGE010
中的安全哈希算 法;
S13数据加密:数据拥有者使用文件加密密钥
Figure 615226DEST_PATH_IMAGE001
对明文文件集合
Figure 904256DEST_PATH_IMAGE007
进行加密,得到 密文集合
Figure DEST_PATH_IMAGE013
S14关键词提取:采用分词技术提取关键词,根据明文文件集合
Figure 663265DEST_PATH_IMAGE007
提取出关键词集 合
Figure DEST_PATH_IMAGE014
S15属性权限划分:数据拥有者根据数据使用场景划分属性,生成属性集合
Figure DEST_PATH_IMAGE015
,为授权设备分配属性;
S16构建可验证数据库:数据使用者首先根据属性集合
Figure 947091DEST_PATH_IMAGE015
、文档标识符和 关键词生成数据库
Figure DEST_PATH_IMAGE016
、索引结构
Figure DEST_PATH_IMAGE017
,按照索引结构构建默克尔树
Figure DEST_PATH_IMAGE018
,构成可验证数据库
Figure DEST_PATH_IMAGE019
S2陷门生成与搜索阶段:数据使用者根据自己的用户属性、待搜索关键词以及索引密钥,计算出对应的关键词搜索陷门,云存储服务器在收到数据使用者提供的搜索陷门后,先验证属性是否合法,然后在索引上执行搜索操作,再将密文文件集反馈给数据使用者,并附上搜索结果证明;
S21,数据使用者首先生成与本设备属性一致的属性陷门
Figure DEST_PATH_IMAGE020
S22,数据使用者为每个待搜索关键词生成关键词搜索陷门
Figure DEST_PATH_IMAGE021
S23,数据使用者将属性陷门与关键词搜索陷门连接后发送到云存储服务器,发起搜索请求;
S24,云存储服务器首先验证请求中的属性是否合法;
S25,云存储服务器根据解析出的关键词搜索陷门
Figure 729234DEST_PATH_IMAGE021
在索引结构上运行搜索算 法,取出与陷门匹配的密文文件;
S26,根据最新的公开密钥计算与搜索结果对应的向量承诺
Figure DEST_PATH_IMAGE022
,将密文文件集和 搜索结果证明
Figure DEST_PATH_IMAGE023
反馈给数据使用者。
S3验证阶段:数据使用者收到搜索结果和证明后,基于最新的可验证数据库信息来验证搜索结果的完整性;
S31,若搜索结果为空,数据使用者检查布隆过滤器中是否包含此关键词,若结果 不为空,数据使用者解密搜索结果
Figure DEST_PATH_IMAGE024
获取文件标识符,验证搜索结果是否正确,通过默克 尔树
Figure 25217DEST_PATH_IMAGE018
验证搜索结果的完整性;
S32,数据使用者解析搜索结果证明
Figure DEST_PATH_IMAGE025
,通过系统公开参数中的附加信息检查证明
Figure 435470DEST_PATH_IMAGE025
的正确性,验证是否在最新的数据库上得到搜索结果;
S33,若运行该算法的是数据拥有者,还需检查向量承诺是否与设备私钥匹配。
S4数据更新阶段:数据拥有者根据需要更新的内容类型包括属性、关键词、密文等生成操作种类参数、更新内容和更新索引。
所述步骤S4数据更新阶段中数据拥有者在对关键词、属性和密文进行动态更新 时,需要根据更新内容的不同给出不同的操作类型参数
Figure DEST_PATH_IMAGE026
,在对属性和关键词进行更新 时,需要生成与更新内容匹配的索引结构、默克尔树,同时更新布隆过滤器,在对密文进行 更新时,数据拥有者需要根据原有密文
Figure DEST_PATH_IMAGE027
生成新的附加信息,与更新后的密文
Figure DEST_PATH_IMAGE028
一起上传 至云存储服务器,确认有效后更新密文和公开参数。
与现有技术相比,本发明的有益效果为:
本发明通过可搜索加密技术保证了物联网数据在云端存储时的安全性和私密性,同时可以在多台物联网设备间有效共享,可验证数据库技术的引入实现了数据库的可验证性,不仅保证了搜索结果的正确性和完整性,还保证了搜索结果是根据最新的数据库计算得出的,有效防范了不可信云存储服务器私自篡改、删除、增加物联网数据,保证了物联网设备的数据安全,可以实现对数据细粒度的访问控制,数据拥有者制定某种访问控制策略,只有满足访问策略的用户才有权限在云端进行密文搜索操作。
以下将结合附图与具体的实施例对本发明进行详细的解释说明。
附图说明
图1为本发明的方法步骤流程示意图;
图2为本发明构建的二维数组结构示意图;
图3为本发明的索引结构存储的文件访问权限数据结构示意图;
图4为本发明的数据使用者、云存储服务器、数据拥有者之间通信流程示意图。
具体实施方式
为了便于理解本发明,下面将参照相关附图对本发明进行更加全面的描述,附图中给出了本发明的若干实施例,但是本发明可以通过不同的形式来实现,并不限于文本所描述的实施例,相反的,提供这些实施例是为了使对本发明公开的内容更加透彻全面。
需要说明的是,当元件被称为“固设于”另一个元件,它可以直接在另一个元件上也可以存在居中的元件,当一个元件被认为是“连接”另一个元件,它可以是直接连接到另一个元件或者可能同时存在居中元件,本文所使用的术语“垂直的”、“水平的”、“左”、“右”以及类似的表述只是为了说明的目的。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常连接的含义相同,本文中在本发明的说明书中所使用的术语知识为了描述具体的实施例的目的,不是旨在于限制本发明,本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。
实施例一,请着重参照附图1和2所示,一种基于可验证数据库的物联网数据可搜索加密方法,包括如下的步骤:
(1)设置系统安全参数,根据安全参数生成密钥集合,数据拥有者根据密钥对明文文件进行加密,从中提取关键词、划分属性集合,最后根据以上内容构建可验证数据库。
步骤(1)中系统初始化包括如下的子步骤:
(1.1)数据拥有者DO根据系统安全参数
Figure DEST_PATH_IMAGE029
生成密钥集合
Figure DEST_PATH_IMAGE030
,其中包括文件 加密密钥
Figure 93459DEST_PATH_IMAGE001
、节点加密密钥
Figure 284269DEST_PATH_IMAGE003
、属性加密密钥
Figure 915102DEST_PATH_IMAGE002
、数据拥有者身份密钥
Figure 507757DEST_PATH_IMAGE004
(1.2)数据拥有者选取大素数
Figure 198633DEST_PATH_IMAGE005
、抗强碰撞哈希函数
Figure DEST_PATH_IMAGE031
,其 中
Figure DEST_PATH_IMAGE032
Figure 814422DEST_PATH_IMAGE023
为输出比特位。伪随机函数
Figure DEST_PATH_IMAGE033
,和两个能够使等式
Figure DEST_PATH_IMAGE034
成立的两个群,
Figure 311262DEST_PATH_IMAGE009
Figure 899370DEST_PATH_IMAGE010
的生成器。
Figure 354622DEST_PATH_IMAGE011
是一个双线性映射,
Figure 660969DEST_PATH_IMAGE012
Figure 758238DEST_PATH_IMAGE010
中的安全哈希 算法,
Figure DEST_PATH_IMAGE035
Figure DEST_PATH_IMAGE036
范围内的排列。
(1.3)数据拥有者加密明文文件集合
Figure DEST_PATH_IMAGE037
Figure DEST_PATH_IMAGE038
为明文文件数量,加密采用 AES加密方式,密钥使用
Figure 338868DEST_PATH_IMAGE001
,加密得到密文集合
Figure DEST_PATH_IMAGE039
,其中
Figure DEST_PATH_IMAGE040
(1.4)数据拥有者采用关键词提取技术,根据明文文件集合
Figure 902704DEST_PATH_IMAGE037
,提取出 关键词集合
Figure DEST_PATH_IMAGE041
(1.5)数据拥有者根据实际情况将数据使用者根据属性进行划分得到属性集合
Figure DEST_PATH_IMAGE042
,对每项属性进行权限划分,计算
Figure DEST_PATH_IMAGE043
条件下的可搜索的文件列表
Figure DEST_PATH_IMAGE044
,即属性
Figure DEST_PATH_IMAGE045
可以搜索的关键词和关键词所对应的文件,构成属性表
Figure 837293DEST_PATH_IMAGE015
,如式1所示:
Figure DEST_PATH_IMAGE046
(1.6)数据拥有者按照需要上传到云存储服务器的文件构建可验证数据库
Figure 144778DEST_PATH_IMAGE019
,首 先,随机选择
Figure 300953DEST_PATH_IMAGE005
个元素
Figure DEST_PATH_IMAGE047
,计算
Figure DEST_PATH_IMAGE048
Figure DEST_PATH_IMAGE049
,其中
Figure DEST_PATH_IMAGE050
,生成密钥
Figure DEST_PATH_IMAGE051
,计 算
Figure DEST_PATH_IMAGE052
,公开参数如式2所示:
Figure DEST_PATH_IMAGE053
然后构建索引结构,明文字典树构建规则如下:根节点为空节点,不存储数据,仅 作为搜索入口,深度为1的节点存储属性,用于在搜索时匹配用户属性,深度大于1的节点代 表关键词中的字符,从根节点到该子节点的路径代表该节点对应的关键词,节点存储以下 数据
Figure DEST_PATH_IMAGE054
,其中,
Figure DEST_PATH_IMAGE055
代表该节点对应的字符串,
Figure DEST_PATH_IMAGE056
代表
Figure 49073DEST_PATH_IMAGE055
是否为关键词,
Figure DEST_PATH_IMAGE057
时代表
Figure 595592DEST_PATH_IMAGE055
是 关键词,
Figure DEST_PATH_IMAGE058
代表该节点的子节点,
Figure DEST_PATH_IMAGE059
代表关键词
Figure 113292DEST_PATH_IMAGE055
的属性权限索引表,该 表使用二维数组的结构存储属性与文档之间的访问权限,1代表该属性有权限访问相关文 档,构建的二维数组结构,这个索引数组对于攻击者和云存储服务器没有任何意义,为了提 高安全性和索引的隐私安全,可以在索引中添加一些假关键词和文档标识符,进一步防止 攻击者利用统计方法获取文档信息。
接着对字典树加密生成搜索索引,数据持有者通过密钥
Figure DEST_PATH_IMAGE060
,对字典树进行加 密,得到搜索索引
Figure 894664DEST_PATH_IMAGE017
,并构建树
Figure 393778DEST_PATH_IMAGE018
,具体方法如下:
(1.6.1)对于关键词
Figure DEST_PATH_IMAGE061
,假设其每个字符为
Figure DEST_PATH_IMAGE062
,计算
Figure DEST_PATH_IMAGE063
,数据持有者对于每 个属性下的关键词
Figure DEST_PATH_IMAGE064
进行式3计算,该映射关系记作
Figure DEST_PATH_IMAGE065
Figure DEST_PATH_IMAGE066
(1.6.2)生成两个布隆过滤器
Figure DEST_PATH_IMAGE067
Figure DEST_PATH_IMAGE068
,把所有关键词标记
Figure 240643DEST_PATH_IMAGE021
插入
Figure DEST_PATH_IMAGE069
,以确 保搜索的可验证性,把所有的属性标记
Figure 889930DEST_PATH_IMAGE020
插入
Figure 161642DEST_PATH_IMAGE068
,以保证用户属性的可验证性。
(1.6.3)按照
Figure 831658DEST_PATH_IMAGE017
的结构构建哈希树,根节点为
Figure DEST_PATH_IMAGE070
,其他每个叶子节点中存储
Figure DEST_PATH_IMAGE071
,其中
Figure 618349DEST_PATH_IMAGE061
Figure 537239DEST_PATH_IMAGE017
中相同路径所表示的关键词,
Figure DEST_PATH_IMAGE072
为属性
Figure DEST_PATH_IMAGE073
可搜索该关键词的文件标 识符数量,即
Figure 725774DEST_PATH_IMAGE024
中1的个数。
最后,数据拥有者更新计数器初始
Figure DEST_PATH_IMAGE074
,假设关键词个数为
Figure 973216DEST_PATH_IMAGE038
,属性个数为
Figure DEST_PATH_IMAGE075
,原 始数据库向量如式4所示,在此基础上构建根承诺
Figure DEST_PATH_IMAGE076
,经过
Figure DEST_PATH_IMAGE077
次更新,可以得到当 前的数据库向量承诺
Figure DEST_PATH_IMAGE078
,计算
Figure DEST_PATH_IMAGE079
并发送给云存储平台,云存储平台在第 一次验证
Figure DEST_PATH_IMAGE080
的有效性之后,生成
Figure DEST_PATH_IMAGE081
,并且将
Figure DEST_PATH_IMAGE082
插入到
Figure DEST_PATH_IMAGE083
中。其中
Figure DEST_PATH_IMAGE084
Figure DEST_PATH_IMAGE085
步骤(1)完成后得到公开密钥
Figure DEST_PATH_IMAGE086
,上传至云存储服 务器的辅助信息
Figure DEST_PATH_IMAGE087
,数据拥有者和数据使用者保存的私钥
Figure DEST_PATH_IMAGE088
(2)数据使用者根据需要搜索的关键词集合
Figure DEST_PATH_IMAGE089
和本设备授权属性
Figure 11317DEST_PATH_IMAGE073
生成搜索陷门,云存储服务器在收到数据使用者的搜索请求后,将搜索陷门解析为属性 陷门和关键词集合陷门,在索引结构上执行搜索算法。
步骤(2)中搜索陷门生成及搜索过程包括如下的子步骤:
(2.1)数据使用者首先生成属性陷门,计算
Figure DEST_PATH_IMAGE090
(2.2)数据使用者对于每个关键词
Figure DEST_PATH_IMAGE091
中每个字母
Figure 533565DEST_PATH_IMAGE062
,计算
Figure 779870DEST_PATH_IMAGE063
(2.3)数据使用者生成关键词陷门
Figure DEST_PATH_IMAGE092
,拼接为关键词集合陷门
Figure DEST_PATH_IMAGE093
(2.4)云存储服务器验证数据使用者的属性是否在可以搜索的权限范围内,首先 检查
Figure DEST_PATH_IMAGE094
是否在
Figure DEST_PATH_IMAGE095
内,如果检查结果是存在的则再进行下面的步骤,若不在属性范围 内,则结束此次搜索请求。
(2.5)云存储服务器收到搜索令牌后,解析出来每个关键词的搜索陷门
Figure 401475DEST_PATH_IMAGE021
,通过
Figure 100441DEST_PATH_IMAGE017
执行搜索,得到结果
Figure DEST_PATH_IMAGE096
,云存储服务器将
Figure DEST_PATH_IMAGE097
和对应的所有加密文件一起发送 给数据使用者,数据使用者在接收到
Figure 423450DEST_PATH_IMAGE097
之后,计算
Figure DEST_PATH_IMAGE098
,解密
Figure DEST_PATH_IMAGE099
, 得到对应关键词所对应的文件标识符。
假设
Figure DEST_PATH_IMAGE100
为最新的公开密钥,接收到查询结果的承 诺索引为
Figure DEST_PATH_IMAGE101
,云存储服务器计算
Figure DEST_PATH_IMAGE102
,并将证明
Figure DEST_PATH_IMAGE103
发送给数据使用者。
(3)数据使用者收到搜索结果后,应运行验证算法,首先验证搜索属性的正确性, 然后验证搜索结果的完整性,最后解析证明
Figure 196366DEST_PATH_IMAGE023
步骤(3)中验证搜索结果包括如下的子步骤:
(3.1)当搜索结果为空时,数据使用者检查
Figure DEST_PATH_IMAGE104
是否成立,如果不成立, 则接受搜索结果,过程终止。
(3.2)当结果不为空时,数据使用者首先计算
Figure 520031DEST_PATH_IMAGE099
,得到的属性标 识符与自身属性标识符进行对比,检验属性的正确性。
(3.3)客户端通过使用
Figure 971872DEST_PATH_IMAGE018
的根来检查
Figure DEST_PATH_IMAGE105
,来验证完整性,其中
Figure 304764DEST_PATH_IMAGE072
是通过 对接收到的密文文件
Figure 384715DEST_PATH_IMAGE011
进行解密得到的,也可以通过
Figure 879282DEST_PATH_IMAGE024
中文件标识符的个数得到。
(3.4)搜索结果的正确性可以通过向量承诺的特征得到,数据使用者先对证明进 行解析
Figure 677474DEST_PATH_IMAGE103
,任何验证者都可以通过式5来检查证明
Figure 279969DEST_PATH_IMAGE023
的 正确性,如果通过验证,验证者输出
Figure DEST_PATH_IMAGE106
,如果没有通过验证,则输出终止符
Figure DEST_PATH_IMAGE107
Figure DEST_PATH_IMAGE108
(3.5)若执行验证算法的是数据持有者,则还需要检查
Figure DEST_PATH_IMAGE109
是否 成立。
(4)数据拥有者若需对数据进行更新,应根据需要更新的内容类型(属性、关键词、密文)生成操作种类参数、更新内容和更新索引。
数据拥有者首先要使用初始化算法中构建索引的方法为待操作关键词构建索引 结构
Figure DEST_PATH_IMAGE110
,并更新公开密钥中的
Figure DEST_PATH_IMAGE111
,将
Figure DEST_PATH_IMAGE112
设定为对应的操作标识,添加关键词时仅需将 新关键词的
Figure DEST_PATH_IMAGE113
加入
Figure DEST_PATH_IMAGE114
中,删除关键词时则需根据剩余关键词重新生成
Figure 230738DEST_PATH_IMAGE114
,将
Figure DEST_PATH_IMAGE115
发送到服务器。服务器在数据拥有者通过身份验证后更新索引结构
Figure 427364DEST_PATH_IMAGE110
及布隆 过滤器
Figure 322639DEST_PATH_IMAGE114
对属性的添加、删除操作与关键词的更新方法相似,不同之处在于使用新属性的
Figure 590810DEST_PATH_IMAGE020
更新或重新生成
Figure 520719DEST_PATH_IMAGE068
,将
Figure DEST_PATH_IMAGE116
发送到服务器,由服务器完成更新。
对于要更新的密文
Figure 747301DEST_PATH_IMAGE027
,数据持有者首先获取相应的索引
Figure 126943DEST_PATH_IMAGE101
,服务器将最新的数据记 录
Figure 933225DEST_PATH_IMAGE027
和相应的证明
Figure 983220DEST_PATH_IMAGE023
发送给数据持有者,当
Figure DEST_PATH_IMAGE117
时,数据持有者在
Figure 115124DEST_PATH_IMAGE077
上加1, 并计算出式6。
Figure DEST_PATH_IMAGE118
最后将
Figure DEST_PATH_IMAGE119
发送给云平台服务器。如果
Figure DEST_PATH_IMAGE120
有效,云平台生成
Figure DEST_PATH_IMAGE121
,更新公开 密钥
Figure DEST_PATH_IMAGE122
。最后,云存储服务器在
Figure 125937DEST_PATH_IMAGE101
位置将
Figure 735910DEST_PATH_IMAGE027
替换为
Figure 374833DEST_PATH_IMAGE028
,并且在
Figure 412059DEST_PATH_IMAGE083
中插入
Figure DEST_PATH_IMAGE123
本方案中的符号及其定义如表1所示:
表1
Figure DEST_PATH_IMAGE124
实施例二,请着重参照附图3所示,本发明方案的系统模型主要由三个部分组成:云存储平台、数据持有者以及数据使用者。云存储平台作为系统的核心部分,具有高效的数据计算功能,可以存储由数据持有者上传的由密文文件集合、文件索引以及哈希树构成的可验证数据库。数据持有者上传可供搜索的文件,预先使用关键词分词技术生成每个文件对应的关键词。数据使用者首先需要从数据持有者处获得一个属性认证,标志该用户的属性权限。
实施例三,请着重参照附图4所示,本发明方案在运行时可以划分为三个阶段:初 始化阶段、搜索阶段和动态更新阶段。其中,初始化阶段的参与者为数据拥有者、云存储服 务器和数据使用者,由数据拥有者根据明文数据生成密文、索引和可验证数据库上传至云 存储服务器,为数据使用者分配属性和私钥;搜索阶段的参与者为云存储服务器和数据使 用者,由数据使用者根据其属性和待搜索关键词生成陷门发送到云存储服务器,由云存储 服务器对陷门进行检验并执行搜索操作,将搜索结果和证明返回至数据使用者,由数据使 用者对搜索结果进行验证并通过后,完成搜索操作;动态更新阶段的参与者为数据拥有者 和云储存服务器,由数据使用者向云存储服务器请求待更新索引
Figure 831539DEST_PATH_IMAGE101
对应的记录,计算参数
Figure 120569DEST_PATH_IMAGE119
,由云储存服务器对相关记录进行更新。
上述结合附图对本发明进行了示例性描述,显然本发明具体实现并不受上述方式的限制,只要采用了本发明的方法构思和技术方案进行的这种非实质改进,或未经改进将本发明的构思和技术方案直接应用于其他场合的,均在本发明的保护范围之内。

Claims (1)

1.一种基于可验证数据库的物联网数据可搜索加密方法,其特征在于,包括以下步骤:
S1系统初始化阶段:数据拥有者生成文件加密密钥KF、属性加密密钥KA、节点加密密钥Ks,以及数据拥有者的设备身份认证密钥KDO;然后根据数据使用场景划分属性,生成属性集合AttributeList ,为授权设备分配属性,接着根据属性集合AtributeList、文档标识符和关键词生成数据库DB索引结构SI,按照索引结构构建默克尔树MHT,构成可验证数据库VDB;
S2陷门生成与搜索阶段:数据使用者首先生成与本设备属性一致的属性陷门stagUA,再为每个待搜索关键词生成关键词搜索陷门stagw,计算出对应的关键词搜索陷门、属性陷门stagUA并发送给云存储服务器,云存储服务器验证数据使用者的属性是否在可搜索的权限范围内,首先检查stagUA是否在布隆过滤器内,如果检查结果是存在的则再进行下面的步骤,若不在属性范围内,则结束此次搜索请求,云存储服务器接收到关键词搜索陷门并根据解析出的关键词搜索陷门在索引结构上运行搜索算法,取出与陷门匹配的密文文件,根据最新的公开密钥计算与搜索结果对应的向量承诺πX (T),将密文文件集和搜索结果证明τ反馈给数据使用者,搜索结果的正确性通过向量承诺πX (T)的特征得到,数据使用者先对证明进行解析;
S3验证阶段:数据使用者收到搜索结果和证明后,运行验证算法,基于最新的可验证数据库信息来验证搜索结果的完整性;
S4数据更新阶段:数据拥有者根据需要更新的内容类型包括属性、关键词、密文生成操作种类参数和更新索引;
所述步骤S3验证阶段中若搜索结果为空,数据使用者检查布隆过滤器中是否包含此关键词,若结果不为空,数据使用者解密搜索结果获取文件标识符,验证搜索结果是否正确,通过默克尔树MHT验证搜索结果的完整性;
所述步骤S3验证阶段中数据使用者解析搜索结果证明τ,通过系统公开参数中的附加信息检查证明τ的正确性,验证是否在最新的数据库上得到搜索结果;
所述步骤S3验证阶段中若运行该算法的是数据拥有者,还需检查向量承诺是否与设备私钥匹配;
所述步骤S4数据更新阶段中数据拥有者在对关键词、属性和密文进行动态更新时,需要根据更新内容的不同给出不同的操作类型参数Utype,在对属性和关键词进行更新时,需要生成与更新内容匹配的索引结构、默克尔树,同时更新布隆过滤器,在对密文进行更新时,数据拥有者需要根据原有密文V´x生成新的附加信息,与更新后的密文Vx起上传至云存储服务器,确认有效后更新密文和公开参数。
CN202210581347.4A 2022-05-26 2022-05-26 一种基于可验证数据库的物联网数据可搜索加密方法 Active CN114676449B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210581347.4A CN114676449B (zh) 2022-05-26 2022-05-26 一种基于可验证数据库的物联网数据可搜索加密方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210581347.4A CN114676449B (zh) 2022-05-26 2022-05-26 一种基于可验证数据库的物联网数据可搜索加密方法

Publications (2)

Publication Number Publication Date
CN114676449A CN114676449A (zh) 2022-06-28
CN114676449B true CN114676449B (zh) 2022-10-18

Family

ID=82080045

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210581347.4A Active CN114676449B (zh) 2022-05-26 2022-05-26 一种基于可验证数据库的物联网数据可搜索加密方法

Country Status (1)

Country Link
CN (1) CN114676449B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104052740A (zh) * 2014-05-22 2014-09-17 西安理工大学 云存储中可验证的基于词典的可搜索加密方法
CN108388807A (zh) * 2018-02-28 2018-08-10 华南理工大学 一种支持偏好搜索和逻辑搜索的高效可验证的多关键字排序可搜索加密方法
CN109450935A (zh) * 2018-12-19 2019-03-08 河南科技大学 云存储中可验证的语义安全的多关键词搜索方法
CN110334526A (zh) * 2019-05-30 2019-10-15 西安电子科技大学 一种支持验证的前向安全可搜索加密存储系统及方法
CN111835500A (zh) * 2020-07-08 2020-10-27 浙江工商大学 基于同态加密与区块链的可搜索加密数据安全共享方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104052740A (zh) * 2014-05-22 2014-09-17 西安理工大学 云存储中可验证的基于词典的可搜索加密方法
CN108388807A (zh) * 2018-02-28 2018-08-10 华南理工大学 一种支持偏好搜索和逻辑搜索的高效可验证的多关键字排序可搜索加密方法
CN109450935A (zh) * 2018-12-19 2019-03-08 河南科技大学 云存储中可验证的语义安全的多关键词搜索方法
CN110334526A (zh) * 2019-05-30 2019-10-15 西安电子科技大学 一种支持验证的前向安全可搜索加密存储系统及方法
CN111835500A (zh) * 2020-07-08 2020-10-27 浙江工商大学 基于同态加密与区块链的可搜索加密数据安全共享方法

Also Published As

Publication number Publication date
CN114676449A (zh) 2022-06-28

Similar Documents

Publication Publication Date Title
CA3058013C (en) Managing sensitive data elements in a blockchain network
Yang et al. Lightweight and privacy-preserving delegatable proofs of storage with data dynamics in cloud storage
AU2019204712A1 (en) Managing sensitive data elements in a blockchain network
CN114826703B (zh) 基于区块链的数据搜索细粒度访问控制方法及系统
CN109617692A (zh) 一种基于区块链的匿名登陆方法及系统
KR102146940B1 (ko) 토큰 위변조 검증 방법
CN112287392B (zh) 一种具备保护隐私信息的智能合约实现方法及系统
CN112749417A (zh) 基于区块链的电子学位证照数据保护及共享系统
WO2022242572A1 (zh) 一种个人数字身份管理系统与方法
CN117240452A (zh) 一种基于区块链的高原数据安全共享方法
CN110851848B (zh) 对称可搜索加密的隐私保护方法
CN110188545B (zh) 一种基于链式数据库的数据加密方法及装置
Chakraborty et al. Integrity checking using third party auditor in cloud storage
Chakravarty et al. Blockchain-enhanced identities for secure interaction
CN116781332A (zh) 基于区块链的网络流量取证溯源方法及系统
CN114676449B (zh) 一种基于可验证数据库的物联网数据可搜索加密方法
Shahin et al. Big data platform privacy and security, a review
Blömer et al. Cloud architectures for searchable encryption
CN115048432A (zh) 基于布隆过滤器的模糊关键词公共审计方法
Joseph et al. Design a hybrid Optimization and Homomorphic Encryption for Securing Data in a Cloud Environment
CN113065146A (zh) 一种用于区块链数据保护的同态加密方法
Drăgan et al. Bootstrapping online trust: Timeline activity proofs
Du et al. Identity-based controlled delegated outsourcing data integrity auditing scheme
Avizheh et al. Privacy-Preserving Resource Sharing Using Permissioned Blockchains: (The Case of Smart Neighbourhood)
Venkatesh et al. Secure authorised deduplication by using hybrid cloud approach

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