CN115314321A - 基于区块链无需安全通道的可搜索加密系统和方法 - Google Patents
基于区块链无需安全通道的可搜索加密系统和方法 Download PDFInfo
- Publication number
- CN115314321A CN115314321A CN202211225999.0A CN202211225999A CN115314321A CN 115314321 A CN115314321 A CN 115314321A CN 202211225999 A CN202211225999 A CN 202211225999A CN 115314321 A CN115314321 A CN 115314321A
- Authority
- CN
- China
- Prior art keywords
- data
- file
- block chain
- terminal
- information
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及一种基于区块链无需安全通道的可搜索加密系统和方法,包括步骤:S1、数据拥有端将加密文件传送至分布式文件存储服务端,生成本地索引和本地关键词标识,授权数据使用端,将信息发送至区块链存储;S2、数据使用端加密形成检索令牌发送至区块链;S3、区块链验证数据使用端身份后检索并向数据拥有端发送检索请求和检索令牌;S4、数据拥有端将本地索引和文件解密密钥发送给数据使用端;S5、数据使用端向分布式文件存储服务端获得加密文件后解密。本发明只有被授权的数据使用端可检索并从分布式文件存储端获取文件信息,解决存储服务器信息泄露、多方交易不可信、数据拥有端对数据使用端权限控制和信息传输需要安全通道的问题。
Description
技术领域
本发明涉及网络信息安全传输的技术领域,特别是涉及一种基于区块链无需安全通道的可搜索加密系统和方法。
背景技术
在数据爆炸的当今社会,数据本地化存储已经不能满足业务需求,越来越多的数据需要被共享,数据拥有者为节约自身的资源开销,选择数据上云服务器。但这之间存在云服务器是否会出现信息泄露、数据使用者在从云服务器获取数据时信息是否安全可靠和数据拥有者对数据使用者权限控制等问题。
作为允许数据用户在密文空间进行关键字检索的一项新兴技术,可搜索加密技术正逐渐成为安全搜索领域的核心。然而,现有技术的可搜索加密方案中,由于加密数据的存储和检索均是由第三方服务器来完成,因此会存在数据隐私泄露、查询结果不可信、单点失效或数据存储低效等问题。
发明内容
为解决上述技术问题中的至少之一,本发明提出一种基于区块链无需安全通道的可搜索加密系统和方法。
本发明的目的通过以下技术方案实现:
本发明提供了一种基于区块链无需安全通道的可搜索加密系统,包括数据拥有端、数据使用端、区块链和分布式文件存储服务端,
所述数据拥有端:与数据使用端、区块链和分布式文件存储端交互通信,在本地存储文件信息,生成用于加密或解密文件信息的密钥,根据文件信息生成本地索引和本地关键词标识,将文件信息加密发送至分布式文件存储端,将本地关键词标识发送至区块链,对数据使用端的权限进行管理并将授权用户列表传送至区块链,接收区块链的检索结果并对数据使用端的身份进行验证,验证通过后向数据使用端发送本地索引信息;
所述数据使用端:与数据拥有端、区块链和分布式文件存储端交互通信,与数据拥有端、区块链进行密钥协商,根据需要检索文件的关键词生成检索令牌发送至区块链,接收数据拥有端的本地索引信息并向分布式文件存储端获取加密文件并解密;
所述区块链:与数据拥有端、数据使用端和分布式文件存储端交互通信,将涉及的交易数据上链,与数据拥有端和数据使用端进行密钥协商,通过智能合约存储数据拥有端的本地关键词标识,根据检索令牌对存储的数据拥有端信息进行检索,并将检索结果发送给数据拥有端;
所述分布式文件存储服务端:与数据拥有端和数据使用端交互通信,存储数据拥有端传送的文件信息,处理数据使用端的查询请求并根据查询请求返回对应的查询结果至数据使用端。
作为进一步的改进,所述数据拥有端对数据使用端的权限进行管理,包括数据拥有端对数据使用端权限的授权和权限的撤销。
本发明提供的一种基于区块链无需安全通道的可搜索加密系统,包括数据拥有端、数据使用端、区块链和分布式文件存储服务端,所述数据拥有端:与数据使用端、区块链和分布式文件存储端交互通信,在本地存储文件信息,生成用于加密或解密文件信息的密钥,根据文件信息生成本地索引和本地关键词标识,将文件信息加密发送至分布式文件存储端,将本地关键词标识发送至区块链,对数据使用端的权限进行管理并将授权用户列表传送至区块链,接收区块链的检索结果并对数据使用端的身份进行验证,验证通过后向数据使用端发送本地索引信息;所述数据使用端:与数据拥有端、区块链和分布式文件存储端交互通信,与数据拥有端、区块链进行密钥协商,根据需要检索文件的关键词生成检索令牌发送至区块链,接收数据拥有端的本地索引信息并向分布式文件存储端获取加密文件并解密;所述区块链:与数据拥有端、数据使用端和分布式文件存储端交互通信,将涉及的交易数据上链,与数据拥有端和数据使用端进行密钥协商,通过智能合约存储数据拥有端的本地关键词标识,根据检索令牌对存储的数据拥有端信息进行检索,并将检索结果发送给数据拥有端;所述分布式文件存储服务端:与数据拥有端和数据使用端交互通信,存储数据拥有端传送的文件信息,处理数据使用端的查询请求并根据查询请求返回对应的查询结果至数据使用端。本发明使数据拥有端放心地将数据加密后上传到分布式存储系统中,避免出现信息泄露的问题,数据使用端通过区块链查询搜索,使区块链、数据拥有端和数据使用端之间的交易不可篡改且相互可信,相互之间的信息传输无需安全通道,减少了不必要的传输代价。
本发明还提供一种基于区块链无需安全通道的可搜索加密方法,包括上述基于区块链无需安全通道的可搜索加密系统的任一项改进,方法包括如下步骤:
S1、数据拥有端通过密钥生成法生成文件加密密钥和文件解密密钥,通过加密密钥对文件信息进行加密形成加密文件后传送至分布式文件存储服务端存储,对本地文件信息采用索引加密法生成本地索引和本地关键词标识,将本地关键词标识和数据拥有端的用户标识一起发送至区块链进行位矩阵加密,同时进行数据使用端的用户授权,并将授权用户列表传送至区块链存储;
S2、数据使用端向区块链发送检索请求后协商密钥获得检索加密密钥,将需要检索文件的关键词通过检索加密密钥加密后形成检索令牌发送至区块链;
S3、区块链根据授权用户列表、数据使用端的用户标识和检索令牌验证数据使用端的身份,验证通过后通过智能合约解密位矩阵并向数据拥有端发送检索请求信息和检索令牌信息;
S4、数据拥有端根据检索请求信息验证数据使用端是否授权且检索令牌信息是否在本地索引信息中,如是则将本地索引信息和文件解密密钥发送给数据使用端;
S5、数据使用端根据本地索引信息向分布式文件存储服务端获得加密文件,通过文件解密密钥解密加密文件得到需要搜索的文件信息。
作为进一步的改进,所述步骤S1中,对本地文件信息采用索引加密法,包括如下步骤:
S11、数据拥有端将本地文件信息提取文件关键词;
S12、向区块链协商密钥获取关键词加密密钥对文件关键词进行加密。
作为进一步的改进,所述步骤S1中,区块链进行位矩阵加密,具体包括如下步骤:
S13、区块链的智能合约接收本地关键词标识后采用对应的关键词解密密钥解密后获得本地关键词并保存;
S14、根据数据拥有端的用户标识将产生的数据拥有端序号和对应的加密参数保存;
S15、根据数据拥有端的用户标识和本地关键词将产生的关键词序号和对应的加密参数保存;
S16、将关键词序号作为位矩阵元素的行号,将数据拥有端序号作为位矩阵元素的列号;
S17、对位矩阵每列的所有元素生成列加密密钥和列解密密钥并对应存储为密钥参数,通过列加密密钥依次加密每列所有比特。
作为进一步的改进,所述步骤S3中,区块链根据授权用户列表、数据使用端信息和检索令牌验证数据使用端的身份,具体包括如下步骤:
S31、区块链通过检索解密密钥解密检索令牌获得需要检索文件的关键词标识;
S32、检查数据使用端的用户标识是否在授权用户列表中,且需要检索文件的关键词标识是否存储在区块链的数据使用端信息对应的关键词标识中,如是则验证通过;否则禁止访问或者判断验证不通过是否因数据使用端的用户标识未在区块链的授权用户列表中,是则数据使用端向数据拥有端发送申请查看数据权限请求,数据拥有端对数据使用端授权后,在权限列表里添加数据使用端用户信息并更新权限列表,同时发送至区块链上以更新授权用户列表,区块链进行验证通过;
作为进一步的改进,所述步骤S3中,解密位矩阵,包括如下步骤:
S33、区块链的智能合约根据数据使用端信息和授权用户列表获得数据使用端可访问的数据拥有端信息,根据数据拥有端信息获得位矩阵元素对应列号及对应的密钥参数;
S34、根据需要检索文件的关键词标识获得位矩阵元素对应行号及对应的密钥参数;
S35、通过密钥参数对位矩阵解密获得需要检索文件的数据拥有端的用户标识和对应的本地关键词标识。
作为进一步的改进,所述步骤S1中,数据拥有端将加密文件传送至分布式文件存储服务端存储后,分布式文件存储服务端将加密文件通过哈希函数生成唯一的哈希值返回至数据拥有端,数据拥有端将返回的哈希值结合本地索引建立对应的本地索引存储关系。
作为进一步的改进,所述步骤S5中,所述本地索引信息包含从数据拥有端返回的加密文件的解密密钥和加密文件对应的唯一哈希值,数据使用端通过加密文件对应的唯一哈希值向分布式文件存储服务端获得加密文件。
作为进一步的改进,所述步骤S1中,密钥生成法包括使用对称加密算法生成加密密钥与解密密钥或非对称算法生成加密密钥与解密密钥。
本发明提供的基于区块链无需安全通道的可搜索加密方法,包括步骤:S1、数据拥有端通过密钥生成法生成文件加密密钥和文件解密密钥,通过加密密钥对文件信息进行加密形成加密文件后传送至分布式文件存储服务端存储,对本地文件信息采用索引加密法生成本地索引和本地关键词标识,将本地关键词标识和数据拥有端的用户标识一起发送至区块链进行位矩阵加密,同时进行数据使用端的用户授权,并将授权用户列表传送至区块链存储;S2、数据使用端向区块链发送检索请求后协商密钥获得检索加密密钥,将需要检索文件的关键词通过检索加密密钥加密后形成检索令牌发送至区块链;S3、区块链根据授权用户列表、数据使用端的用户标识和检索令牌验证数据使用端的身份,验证通过后通过智能合约解密位矩阵并向数据拥有端发送检索请求信息和检索令牌信息;S4、数据拥有端根据检索请求信息验证数据使用端是否授权且检索令牌信息是否在本地索引信息中,如是则将本地索引信息和文件解密密钥发送给数据使用端;S5、数据使用端根据本地索引信息向分布式文件存储服务端获得加密文件,通过文件解密密钥解密加密文件得到需要搜索的文件信息。本发明的方法通过将本地文件信息加密后存储至分布式文件存储端,避免本地文件信息的泄露,从本地文件信息提取生成本地索引和本地关键词标识上传至区块链,只有被授权的数据使用端可以检索并从分布式文件存储端获取文件信息,可以用于企业或个人数据的安全存取及共享,解决存储服务器信息泄露、多方交易不可信、数据拥有端对数据使用端权限控制和信息传输需要安全通道的问题。
附图说明
图1为本发明的系统交互示意图;
图2为本发明的索引加密示意图;
图3为本发明的区块链对位矩阵检索行号和列号示意图。
具体实施方式
本发明涉及名词解释:
区块链:区块链是一种由多方共同维护,使用密码学保证传输和访问安全,能够实现数据一致存储、难以篡改和防止抵赖的记账技术,也称为分布式账本技术。
智能合约:智能合约是一种特殊协议,旨在提供、验证及执行合约。是区块链被称之为“去中心化的”重要原因,它允许在不需要第三方的情况下,执行可追溯、不可逆转和安全的交易。包含了有关交易的所有信息,只有在满足要求后才会执行结果操作。
可搜索加密:可搜索加密旨在将数据文件进行加密后存储到云端,然后对密文进行检索的一种技术。
分布式文件存储系统:分布式文件存储系统是一个分布式的点到点超媒体协议。在该文件系统中,每个文件将会根据内容生成一个哈希值,在该系统中的文件将根据这个哈希值来进行索引,并且提前检验这个哈希值是否已经被存储过,如果被存储过,直接从其它节点读取它,不需要重复存储,一定程度上节约了空间。
伪随机函数(Pseudo-Random Function,PRF):是一类能够产生具有类随机性序列的函数。
哈希函数:哈希函数在密码学领域常常作为压缩函数使用,通过其压缩产生长度固定的数据。
结合图1 所示,本发明实施例提供一种基于区块链无需安全通道的可搜索加密系统,包括数据拥有端、数据使用端、区块链和分布式文件存储服务端,
所述数据拥有端:与数据使用端、区块链和分布式文件存储端交互通信,在本地存储文件信息,生成用于加密或解密文件信息的密钥,根据文件信息生成本地索引和本地关键词标识,将文件信息加密发送至分布式文件存储端,将本地关键词标识发送至区块链,对数据使用端的权限进行管理并将授权用户列表传送至区块链,权限管理包括对数据使用端权限的授权和权限的撤销,接收区块链的检索结果并对数据使用端的身份进行验证,验证通过后向数据使用端发送本地索引信息;
所述数据使用端:与数据拥有端、区块链和分布式文件存储端交互通信,与数据拥有端、区块链进行密钥协商,根据需要检索文件的关键词生成检索令牌发送至区块链,接收数据拥有端的本地索引信息并向分布式文件存储端获取加密文件并解密;
所述区块链:与数据拥有端、数据使用端和分布式文件存储端交互通信,将涉及的交易数据上链,与数据拥有端和数据使用端进行密钥协商,通过智能合约存储数据拥有端的本地关键词标识,根据检索令牌对存储的数据拥有端信息进行检索,并将检索结果发送给数据拥有端;
所述分布式文件存储服务端:与数据拥有端和数据使用端交互通信,存储数据拥有端传送的文件信息,处理数据使用端的查询请求并根据查询请求返回对应的查询结果至数据使用端。
本发明的基于区块链无需安全通道的可搜索加密系统使数据拥有端放心地将数据加密后上传到分布式存储系统中,避免出现信息泄露的问题,数据使用端通过区块链查询搜索,使区块链、数据拥有端和数据使用端之间的交易不可篡改且相互可信,相互之间的信息传输无需安全通道,减少了不必要的传输代价。
本发明实施例还提供一种基于区块链无需安全通道的可搜索加密方法,包括上述基于区块链无需安全通道的可搜索加密系统的任一种实施方式,具体包括如下步骤:
S1、数据拥有端通过密钥生成法生成文件加密密钥和文件解密密钥,本实施例中密钥生成法包括对称加密算法生成加密密钥与解密密钥或非对称算法生成加密密钥与解密密钥。对称加密算法生成的加密密钥与解密密钥相同,非对称算法生成的加密密钥与解密密钥不相同,根据信息交互的需要,在使用时进行选择。为确保加密文件后传送至分布式文件存储服务端的信息安全,此处采用非对称算法生成文件加密密钥和文件解密密钥,通过加密密钥对文件信息进行加密形成加密文件后传送至分布式文件存储服务端存储后,分布式文件存储服务端将加密文件通过哈希函数生成唯一的哈希值返回至数据拥有端,数据拥有端将返回的哈希值结合本地索引建立对应的本地索引存储关系。
对本地文件信息采用索引加密法生成本地索引和本地关键词标识,具体包括如下步骤:
S11、数据拥有端将本地文件信息提取文件关键词;
S12、向区块链协商密钥,区块链以非对称算法生成关键词加密密钥和关键词解密密钥,以确保关键词在加密后传输的安全性,数据拥有端获取关键词加密密钥对文件关键词进行加密,同时关键词解密密钥在区块链保存。
将本地关键词标识和数据拥有端的用户标识一起发送至区块链进行位矩阵加密,具体包括如下步骤:
本实施例中区块链首先进行初始化设置,包括初始化位矩阵δ,并将位矩阵中所有比特设置为0。创建空的哈希表、和其中,存储数据拥有端本地文件信息的关键词,存储数据拥有端信息,存储数据使用端信息。将位矩阵用于存储关键词标识个数的行号和用于存储数据拥有端个数的列号设置为0,接收来自数据拥有端的注册信息,表示数据使用端的唯一号,j表示数据拥有端序号,st表示区块链生成的加密参数,以便数据拥有端进行用户授权,并存入哈希表中。其中,n为数据拥有端序号总个数,以及关键词加密密钥。
S13、区块链的智能合约接收本地关键词标识后采用对应的关键词解密密钥解密后获得本地关键词并保存;
S14、根据数据拥有端的用户标识将产生的数据拥有端序号和对应的加密参数保存;
S15、根据数据拥有端的用户标识和本地关键词将产生的关键词序号和对应的加密参数保存
S16、将关键词序号作为位矩阵元素的行号,将数据拥有端序号作为位矩阵元素的列号;
S17、对位矩阵每列的所有元素生成列加密密钥和列解密密钥并对应存储为密钥参数,通过列加密密钥依次加密每列所有比特。
将本地关键词标识和数据拥有端的用户标识一起发送至区块链进行位矩阵加密,结合图2所示,本实施例的具体实现方式如下:
首先由数据拥有端执行如下内容:
把加密关键词标识、j和λ发送给区块链,由区块链执行的内容如下:
接收加密关键词标识、j和λ
同时数据拥有端do进行数据使用端du的用户授权,并将授权用户列表传送至区块链存储,数据拥有端对数据使用端的用户授权包括权限授权和权限撤销。
数据拥有端对数据使用端权限授权时,数据使用端先向区块链执行注册操作,随机选择一个整数rd并连同数据使用端的唯一号即注册请求发送至区块链,注册成功后区块链上存储着数据使用端相应的可访问数据拥有端集合和随机参数rd。数据使用端向数据拥有端请求权限时,需要将授权请求以及和数字签名发送给数据拥有端。发送请求后如果收到数据拥有端的授权确认后,将数据使用端本地的可访问数据拥有端集合更新,即将数据拥有端的唯一号添加到列表中。数据拥有端接收到数据使用端授权请求后先通过数据使用端发送的数字签名验证身份,验证成功后更新数据拥有端本地授权用户列表并将授权确认信息、和发送给区块链和数据使用端,区块链根据收到的注册请求,将数据使用端信息表更新,设置中键为的随机数rd值为,初始化中键为的。
数据拥有端对数据使用端权限撤销时,数据拥有端先在本地更新已授权数据使用者列表,将中要撤销的数据使用端的删掉后,把权限删除命令以及和发送给区块链和数据使用端,区块链根据收到的权限删除命令,将数据使用端信息表更新,将中值为的列表中删除,数据使用端收到权限删除命令后,更新本地的已被授权数据拥有者列表,将中的删除。
S2、数据使用端向区块链发送检索请求后协商密钥,区块链采用非对称算法生成检索加密密钥和检索解密密钥,数据使用端获得检索加密密钥,将需要检索文件的关键词通过检索加密密钥加密后形成检索令牌发送至区块链,结合图3所示,数据使用端具体执行如下内容:
S3、区块链根据授权用户列表、数据使用端的用户标识和检索令牌验证数据使用端的身份,具体包括如下步骤:
S31、区块链通过检索解密密钥解密检索令牌获得需要检索文件的关键词标识;
S32、检查数据使用端的用户标识是否在授权用户列表中,且需要检索文件的关键词标识是否存储在区块链的数据使用端信息对应的关键词标识中,如是则验证通过;否则禁止访问或者判断验证不通过是否因数据使用端的用户标识未在区块链的授权用户列表中,是则数据使用端向数据拥有端发送申请查看数据权限请求,数据拥有端对数据使用端授权后,在权限列表里添加数据使用端用户信息并更新权限列表,同时发送至区块链上以更新授权用户列表,区块链进行验证通过。
验证通过后通过智能合约解密位矩阵并向数据拥有端发送检索请求信息和检索令牌信息,解密位矩阵具体包括如下步骤:
S33、区块链的智能合约根据数据使用端信息和授权用户列表获得数据使用端可访问的数据拥有端信息,根据数据拥有端信息获得位矩阵元素对应列号及对应的密钥参数;
S34、根据需要检索文件的关键词标识获得位矩阵元素对应行号及对应的密钥参数;
S35、通过密钥参数对位矩阵解密获得需要检索文件的数据拥有端的用户标识和对应的本地关键词标识。
区块链具体执行如下内容:
返回⊥
把检索请求信息和检索令牌信息发送给数据拥有端
end
S4、数据拥有端根据检索请求信息验证数据使用端是否授权且检索令牌信息是否在本地索引信息中,如是则将本地索引信息和文件解密密钥发送给数据使用端,数据拥有端具体执行的内容如下:
S5、数据使用端根据本地索引信息向分布式文件存储服务端获得加密文件,通过文件解密密钥解密加密文件得到需要搜索的文件信息,数据使用端具体执行如下内容:
其中,F为关键词kw的查询结果,表示数据拥有端的本地索引信息,所述本地索引信息包含从数据拥有端返回的加密文件的解密密钥和加密文件对应的唯一哈希值,数据使用端通过加密文件对应的唯一哈希值向分布式文件存储服务端获得加密文件。
本发明中的基于区块链无需安全通道的可搜索加密方法通过将本地文件信息加密后存储至分布式文件存储端,避免本地文件信息的泄露,从文件信息提取生成本地索引和本地关键词标识上传至区块链,只有被授权的数据使用端可以检索并从分布式文件存储端获取文件信息,可以用于企业或个人数据的安全存取及共享,解决存储服务器信息泄露、多方交易不可信、数据拥有端对数据使用端权限控制和信息传输需要安全通道的问题。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种基于区块链无需安全通道的可搜索加密系统,其特征在于,包括数据拥有端、数据使用端、区块链和分布式文件存储服务端,
所述数据拥有端:与数据使用端、区块链和分布式文件存储端交互通信,在本地存储文件信息,生成用于加密或解密文件信息的密钥,根据文件信息生成本地索引和本地关键词标识,将文件信息加密发送至分布式文件存储端,将本地关键词标识发送至区块链,对数据使用端的权限进行管理并将授权用户列表传送至区块链,接收区块链的检索结果并对数据使用端的身份进行验证,验证通过后向数据使用端发送本地索引信息;
所述数据使用端:与数据拥有端、区块链和分布式文件存储端交互通信,与数据拥有端、区块链进行密钥协商,根据需要检索文件的关键词生成检索令牌发送至区块链,接收数据拥有端的本地索引信息并向分布式文件存储端获取加密文件并解密;
所述区块链:与数据拥有端、数据使用端和分布式文件存储端交互通信,将涉及的交易数据上链,与数据拥有端和数据使用端进行密钥协商,通过智能合约存储数据拥有端的本地关键词标识,根据检索令牌对存储的数据拥有端信息进行检索,并将检索结果发送给数据拥有端;
所述分布式文件存储服务端:与数据拥有端和数据使用端交互通信,存储数据拥有端传送的文件信息,处理数据使用端的查询请求并根据查询请求返回对应的查询结果至数据使用端。
2.如权利要求1所述的基于区块链无需安全通道的可搜索加密系统,其特征在于,所述数据拥有端对数据使用端的权限进行管理,包括数据拥有端对数据使用端权限的授权和权限的撤销。
3.一种基于区块链无需安全通道的可搜索加密方法,其特征在于,包括如权利要求1或2中所述的基于区块链无需安全通道的可搜索加密系统,方法包括如下步骤:
S1、数据拥有端通过密钥生成法生成文件加密密钥和文件解密密钥,通过加密密钥对文件信息进行加密形成加密文件后传送至分布式文件存储服务端存储,对本地文件信息采用索引加密法生成本地索引和本地关键词标识,将本地关键词标识和数据拥有端的用户标识一起发送至区块链进行位矩阵加密,同时进行数据使用端的用户授权,并将授权用户列表传送至区块链存储;
S2、数据使用端向区块链发送检索请求后协商密钥获得检索加密密钥,将需要检索文件的关键词通过检索加密密钥加密后形成检索令牌发送至区块链;
S3、区块链根据授权用户列表、数据使用端的用户标识和检索令牌验证数据使用端的身份,验证通过后通过智能合约解密位矩阵并向数据拥有端发送检索请求信息和检索令牌信息;
S4、数据拥有端根据检索请求信息验证数据使用端是否授权且检索令牌信息是否在本地索引信息中,如是则将本地索引信息和文件解密密钥发送给数据使用端;
S5、数据使用端根据本地索引信息向分布式文件存储服务端获得加密文件,通过文件解密密钥解密加密文件得到需要搜索的文件信息。
4.如权利要求3所述的基于区块链无需安全通道的可搜索加密方法,其特征在于,所述步骤S1中,对本地文件信息采用索引加密法,包括如下步骤:
S11、数据拥有端将本地文件信息提取文件关键词;
S12、向区块链协商密钥获取关键词加密密钥对文件关键词进行加密。
5.如权利要求4所述的基于区块链无需安全通道的可搜索加密方法,其特征在于,所述步骤S1中,区块链进行位矩阵加密,具体包括如下步骤:
S13、区块链的智能合约接收本地关键词标识后采用对应的关键词解密密钥解密后获得本地关键词并保存;
S14、根据数据拥有端的用户标识将产生的数据拥有端序号和对应的加密参数保存;
S15、根据数据拥有端的用户标识和本地关键词将产生的关键词序号和对应的加密参数保存;
S16、将关键词序号作为位矩阵元素的行号,将数据拥有端序号作为位矩阵元素的列号;
S17、对位矩阵每列的所有元素生成列加密密钥和列解密密钥并对应存储为密钥参数,通过列加密密钥依次加密每列所有比特。
6.如权利要求5所述的基于区块链无需安全通道的可搜索加密方法,其特征在于,所述步骤S3中,区块链根据授权用户列表、数据使用端信息和检索令牌验证数据使用端的身份,具体包括如下步骤:
S31、区块链通过检索解密密钥解密检索令牌获得需要检索文件的关键词标识;
S32、检查数据使用端的用户标识是否在授权用户列表中,且需要检索文件的关键词标识是否存储在区块链的数据使用端信息对应的关键词标识中,如是则验证通过;否则禁止访问或者判断验证不通过是否因数据使用端的用户标识未在区块链的授权用户列表中,是则数据使用端向数据拥有端发送申请查看数据权限请求,数据拥有端对数据使用端授权后,在权限列表里添加数据使用端用户信息并更新权限列表,同时发送至区块链上以更新授权用户列表,区块链进行验证通过。
7.如权利要求6所述的基于区块链无需安全通道的可搜索加密方法,其特征在于,所述步骤S3中,解密位矩阵,包括如下步骤:
S33、区块链的智能合约根据数据使用端信息和授权用户列表获得数据使用端可访问的数据拥有端信息,根据数据拥有端信息获得位矩阵元素对应列号及对应的密钥参数;
S34、根据需要检索文件的关键词标识获得位矩阵元素对应行号及对应的密钥参数;
S35、通过密钥参数对位矩阵解密获得需要检索文件的数据拥有端的用户标识和对应的本地关键词标识。
8.如权利要求3所述的基于区块链无需安全通道的可搜索加密方法,其特征在于,所述步骤S1中,数据拥有端将加密文件传送至分布式文件存储服务端存储后,分布式文件存储服务端将加密文件通过哈希函数生成唯一的哈希值返回至数据拥有端,数据拥有端将返回的哈希值结合本地索引建立对应的本地索引存储关系。
9.如权利要求8所述的基于区块链无需安全通道的可搜索加密方法,其特征在于,所述步骤S5中,所述本地索引信息包含从数据拥有端返回的加密文件的解密密钥和加密文件对应的唯一哈希值,数据使用端通过加密文件对应的唯一哈希值向分布式文件存储服务端获得加密文件。
10.如权利要求3所述的基于区块链无需安全通道的可搜索加密方法,其特征在于,所述步骤S1中,密钥生成法包括使用对称加密算法生成加密密钥与解密密钥或非对称算法生成加密密钥与解密密钥。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211225999.0A CN115314321B (zh) | 2022-10-09 | 2022-10-09 | 基于区块链无需安全通道的可搜索加密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211225999.0A CN115314321B (zh) | 2022-10-09 | 2022-10-09 | 基于区块链无需安全通道的可搜索加密方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115314321A true CN115314321A (zh) | 2022-11-08 |
CN115314321B CN115314321B (zh) | 2023-01-24 |
Family
ID=83867002
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211225999.0A Active CN115314321B (zh) | 2022-10-09 | 2022-10-09 | 基于区块链无需安全通道的可搜索加密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115314321B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116366283A (zh) * | 2023-02-07 | 2023-06-30 | 南京模砾半导体有限责任公司 | 一种基于对称加密的文件安全传输方法 |
CN115935429B (zh) * | 2022-12-30 | 2023-08-22 | 上海零数众合信息科技有限公司 | 一种数据处理方法、装置、介质以及电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111143471A (zh) * | 2019-12-27 | 2020-05-12 | 北京工业大学 | 一种基于区块链的密文检索方法 |
US20200202021A1 (en) * | 2018-12-21 | 2020-06-25 | International Business Machines Corporation | Dynamic entitlement for blockchain data |
CN113407627A (zh) * | 2021-06-17 | 2021-09-17 | 安徽师范大学 | 一种基于区块链的智能医疗网络系统及医疗数据共享方法 |
WO2022007889A1 (zh) * | 2020-07-08 | 2022-01-13 | 浙江工商大学 | 基于区块链与同态加密的可搜索加密数据共享方法及系统 |
CN114826703A (zh) * | 2022-04-11 | 2022-07-29 | 江苏大学 | 基于区块链的数据搜索细粒度访问控制方法及系统 |
-
2022
- 2022-10-09 CN CN202211225999.0A patent/CN115314321B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200202021A1 (en) * | 2018-12-21 | 2020-06-25 | International Business Machines Corporation | Dynamic entitlement for blockchain data |
CN111143471A (zh) * | 2019-12-27 | 2020-05-12 | 北京工业大学 | 一种基于区块链的密文检索方法 |
WO2022007889A1 (zh) * | 2020-07-08 | 2022-01-13 | 浙江工商大学 | 基于区块链与同态加密的可搜索加密数据共享方法及系统 |
CN113407627A (zh) * | 2021-06-17 | 2021-09-17 | 安徽师范大学 | 一种基于区块链的智能医疗网络系统及医疗数据共享方法 |
CN114826703A (zh) * | 2022-04-11 | 2022-07-29 | 江苏大学 | 基于区块链的数据搜索细粒度访问控制方法及系统 |
Non-Patent Citations (1)
Title |
---|
闫玺玺等: "基于区块链且支持验证的属性基搜索加密方案", 《通信学报》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115935429B (zh) * | 2022-12-30 | 2023-08-22 | 上海零数众合信息科技有限公司 | 一种数据处理方法、装置、介质以及电子设备 |
CN116366283A (zh) * | 2023-02-07 | 2023-06-30 | 南京模砾半导体有限责任公司 | 一种基于对称加密的文件安全传输方法 |
CN116366283B (zh) * | 2023-02-07 | 2023-08-18 | 南京模砾半导体有限责任公司 | 一种基于对称加密的文件安全传输方法 |
Also Published As
Publication number | Publication date |
---|---|
CN115314321B (zh) | 2023-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109040012B (zh) | 一种基于区块链的数据安全保护和共享方法与系统和应用 | |
CN115314321B (zh) | 基于区块链无需安全通道的可搜索加密方法 | |
CN110059503B (zh) | 可追溯的社交信息防泄露方法 | |
Kaaniche et al. | A secure client side deduplication scheme in cloud storage environments | |
CN103107889B (zh) | 一种可搜索的云计算环境数据加密存储系统和方法 | |
CN110046521A (zh) | 去中心化隐私保护方法 | |
KR100839220B1 (ko) | 암호화된 데이터베이스 검색 방법 및 그 시스템 | |
CN109543443A (zh) | 基于区块链的用户数据管理方法、装置、设备和存储介质 | |
CN108881195A (zh) | 基于云环境的数据安全共享方法和装置 | |
CN110837491B (zh) | 一种区块链金融大数据处理系统及方法 | |
CN109784931A (zh) | 一种基于区块链的数据查询平台的查询方法 | |
CN108768951A (zh) | 一种云环境下保护文件隐私的数据加密和检索方法 | |
CN112989375B (zh) | 一种分级优化加密无损隐私保护方法 | |
KR102399667B1 (ko) | 블록체인 기반 데이터 거래 및 보관을 위한 보안 시스템 및 그 방법 | |
KR20100062013A (ko) | 결합 키워드를 이용한 데이터 암호화 방법 및 데이터 검색방법 | |
CN110191153A (zh) | 基于区块链的社交通信方法 | |
CN109714170B (zh) | 一种联盟链中数据隔离方法及相应的联盟链系统 | |
CN114239046A (zh) | 数据共享方法 | |
CN112291071B (zh) | 一种适用于零信任网络的密码管理方法及系统 | |
JP4344957B2 (ja) | 処理分散システム、認証サーバ、分散サーバ及び処理分散方法 | |
CN115603934A (zh) | 基于区块链的多用户可搜索加密方法和装置 | |
CN113515759A (zh) | 一种基于区块链的电力终端数据访问控制方法及系统 | |
Ma et al. | CP‐ABE‐Based Secure and Verifiable Data Deletion in Cloud | |
US20220020019A1 (en) | Smart Contract-Based Electronic Contract Forensics Method and System | |
CN102714653B (zh) | 用于访问私人数字内容的系统和方法 |
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 |