CN115314321A - 基于区块链无需安全通道的可搜索加密系统和方法 - Google Patents

基于区块链无需安全通道的可搜索加密系统和方法 Download PDF

Info

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
Application number
CN202211225999.0A
Other languages
English (en)
Other versions
CN115314321B (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.)
Hunan Tianhe Guoyun Technology Co Ltd
Original Assignee
Hunan Tianhe Guoyun 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 Hunan Tianhe Guoyun Technology Co Ltd filed Critical Hunan Tianhe Guoyun Technology Co Ltd
Priority to CN202211225999.0A priority Critical patent/CN115314321B/zh
Publication of CN115314321A publication Critical patent/CN115314321A/zh
Application granted granted Critical
Publication of CN115314321B publication Critical patent/CN115314321B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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。创建空的哈希表
Figure 677633DEST_PATH_IMAGE001
Figure 378872DEST_PATH_IMAGE002
Figure 416098DEST_PATH_IMAGE003
其中,
Figure 366737DEST_PATH_IMAGE004
存储数据拥有端本地文件信息的关键词,
Figure 577138DEST_PATH_IMAGE002
存储数据拥有端信息,
Figure 195202DEST_PATH_IMAGE005
存储数据使用端信息。将位矩阵用于存储关键词标识个数的行号和用于存储数据拥有端个数的列号设置为0,接收来自数据拥有端的注册信息
Figure 137750DEST_PATH_IMAGE006
Figure 778947DEST_PATH_IMAGE007
表示数据使用端的唯一号,j表示数据拥有端序号,st表示区块链生成的加密参数,以便数据拥有端进行用户授权,并存入哈希表
Figure 465143DEST_PATH_IMAGE002
中。其中
Figure 265609DEST_PATH_IMAGE008
,n为数据拥有端序号总个数,以及关键词加密密钥。
S13、区块链的智能合约接收本地关键词标识后采用对应的关键词解密密钥解密后获得本地关键词并保存;
S14、根据数据拥有端的用户标识将产生的数据拥有端序号和对应的加密参数保存;
S15、根据数据拥有端的用户标识和本地关键词将产生的关键词序号和对应的加密参数保存
S16、将关键词序号作为位矩阵元素的行号,将数据拥有端序号作为位矩阵元素的列号;
S17、对位矩阵每列的所有元素生成列加密密钥和列解密密钥并对应存储为密钥参数,通过列加密密钥依次加密每列所有比特。
将本地关键词标识和数据拥有端的用户标识一起发送至区块链进行位矩阵加密,结合图2所示,本实施例的具体实现方式如下:
首先由数据拥有端执行如下内容:
从本地所有文件
Figure 379058DEST_PATH_IMAGE009
中提取关键词
Figure 569868DEST_PATH_IMAGE010
,其中,F为本地所有文件集合,f为本地文件,b为本地所有文件个数, W为关键词集合,w为关键词,a是关键词个数,m为关键词总个数。
循环所有的关键词
Figure 997438DEST_PATH_IMAGE011
和包含关键词的本地文件集合
Figure 324515DEST_PATH_IMAGE012
Figure 608865DEST_PATH_IMAGE013
Figure 349288DEST_PATH_IMAGE014
Figure 642866DEST_PATH_IMAGE015
其中,do为数据使用端,
Figure 27711DEST_PATH_IMAGE016
为关键词标识,Γ为本地索引,
Figure 482963DEST_PATH_IMAGE017
为关键词加密函数,G
Figure 382786DEST_PATH_IMAGE018
为获得加密参数的函数,
Figure 285582DEST_PATH_IMAGE019
为更新令牌的密钥参数,
Figure 852830DEST_PATH_IMAGE020
为关键词标识集合,
Figure 213404DEST_PATH_IMAGE021
为生成索引更新令牌函数,λ为索引更新令牌。
把加密关键词标识、j和λ发送给区块链,由区块链执行的内容如下:
接收加密关键词标识、j和λ
Figure 803785DEST_PATH_IMAGE022
Figure 439166DEST_PATH_IMAGE023
其中,
Figure 657658DEST_PATH_IMAGE024
表示解密函数,δ[i,j]表示位矩阵元素的行和列。
同时数据拥有端do进行数据使用端du的用户授权,并将授权用户列表传送至区块链存储,数据拥有端对数据使用端的用户授权包括权限授权和权限撤销。
数据拥有端对数据使用端权限授权时,数据使用端先向区块链执行注册操作,随机选择一个整数rd并连同数据使用端的唯一号即
Figure 720291DEST_PATH_IMAGE025
注册请求发送至区块链,注册成功后区块链上存储着数据使用端相应的可访问数据拥有端集合
Figure 329127DEST_PATH_IMAGE026
和随机参数rd。数据使用端向数据拥有端请求权限时,需要将授权请求以及
Figure 705882DEST_PATH_IMAGE025
和数字签名
Figure 982143DEST_PATH_IMAGE027
发送给数据拥有端。发送请求后如果收到数据拥有端的授权确认后,将数据使用端本地的可访问数据拥有端集合
Figure 950099DEST_PATH_IMAGE028
更新,即将数据拥有端的唯一号
Figure 374127DEST_PATH_IMAGE029
添加到列表
Figure 351310DEST_PATH_IMAGE028
中。数据拥有端接收到数据使用端授权请求后先通过数据使用端发送的数字签名
Figure 419760DEST_PATH_IMAGE027
验证身份,验证成功后更新数据拥有端本地授权用户列表
Figure 824197DEST_PATH_IMAGE030
并将授权确认信息、
Figure 407625DEST_PATH_IMAGE029
Figure 985237DEST_PATH_IMAGE025
发送给区块链和数据使用端,区块链根据收到的注册请求,将数据使用端信息表
Figure 236089DEST_PATH_IMAGE031
更新,设置
Figure 545848DEST_PATH_IMAGE031
中键为
Figure 819835DEST_PATH_IMAGE025
的随机数rd值为
Figure 138820DEST_PATH_IMAGE032
,初始化
Figure 306497DEST_PATH_IMAGE031
中键为
Figure 787156DEST_PATH_IMAGE025
Figure 345177DEST_PATH_IMAGE026
数据拥有端对数据使用端权限撤销时,数据拥有端先在本地更新已授权数据使用者列表
Figure 405537DEST_PATH_IMAGE030
,将
Figure 365402DEST_PATH_IMAGE030
中要撤销的数据使用端的
Figure 16964DEST_PATH_IMAGE025
删掉后,把权限删除命令以及
Figure 390176DEST_PATH_IMAGE029
Figure 50965DEST_PATH_IMAGE025
发送给区块链和数据使用端,区块链根据收到的权限删除命令,将数据使用端信息表
Figure 803020DEST_PATH_IMAGE031
更新,将
Figure 891062DEST_PATH_IMAGE031
中值为
Figure 423674DEST_PATH_IMAGE025
Figure 950470DEST_PATH_IMAGE033
列表中删除,数据使用端收到权限删除命令后,更新本地的已被授权数据拥有者列表
Figure 619349DEST_PATH_IMAGE028
,将
Figure 878292DEST_PATH_IMAGE028
中的
Figure 835884DEST_PATH_IMAGE029
删除。
S2、数据使用端向区块链发送检索请求后协商密钥,区块链采用非对称算法生成检索加密密钥和检索解密密钥,数据使用端获得检索加密密钥,将需要检索文件的关键词通过检索加密密钥加密后形成检索令牌发送至区块链,结合图3所示,数据使用端具体执行如下内容:
Figure 838475DEST_PATH_IMAGE034
将检索请求、
Figure 689756DEST_PATH_IMAGE025
和τ发送至区块链。
其中,kw为搜索关键词,
Figure 119601DEST_PATH_IMAGE035
为加密搜索关键词,
Figure 361226DEST_PATH_IMAGE036
为数据使用端生成的随机数,
Figure 105191DEST_PATH_IMAGE037
为生成检索令牌函数,τ为检索令牌。
S3、区块链根据授权用户列表、数据使用端的用户标识和检索令牌验证数据使用端的身份,具体包括如下步骤:
S31、区块链通过检索解密密钥解密检索令牌获得需要检索文件的关键词标识;
S32、检查数据使用端的用户标识是否在授权用户列表中,且需要检索文件的关键词标识是否存储在区块链的数据使用端信息对应的关键词标识中,如是则验证通过;否则禁止访问或者判断验证不通过是否因数据使用端的用户标识未在区块链的授权用户列表中,是则数据使用端向数据拥有端发送申请查看数据权限请求,数据拥有端对数据使用端授权后,在权限列表里添加数据使用端用户信息并更新权限列表,同时发送至区块链上以更新授权用户列表,区块链进行验证通过。
验证通过后通过智能合约解密位矩阵并向数据拥有端发送检索请求信息和检索令牌信息,解密位矩阵具体包括如下步骤:
S33、区块链的智能合约根据数据使用端信息和授权用户列表获得数据使用端可访问的数据拥有端信息,根据数据拥有端信息获得位矩阵元素对应列号及对应的密钥参数;
S34、根据需要检索文件的关键词标识获得位矩阵元素对应行号及对应的密钥参数;
S35、通过密钥参数对位矩阵解密获得需要检索文件的数据拥有端的用户标识和对应的本地关键词标识。
区块链具体执行如下内容:
首先接收数据使用端的检索请求、
Figure 14241DEST_PATH_IMAGE025
和τ
Figure 349408DEST_PATH_IMAGE038
Figure 409155DEST_PATH_IMAGE039
返回⊥
Figure 753549DEST_PATH_IMAGE040
循环
Figure 251526DEST_PATH_IMAGE033
中所有的
Figure 960856DEST_PATH_IMAGE029
Figure 442653DEST_PATH_IMAGE041
把检索请求信息和检索令牌信息发送给数据拥有端
end
其中,
Figure 653055DEST_PATH_IMAGE042
为解密检索令牌的函数。
S4、数据拥有端根据检索请求信息验证数据使用端是否授权且检索令牌信息是否在本地索引信息中,如是则将本地索引信息和文件解密密钥发送给数据使用端,数据拥有端具体执行的内容如下:
接收检索请求信息和检索令牌信息,检索请求信息中包括
Figure 5539DEST_PATH_IMAGE035
Figure 213666DEST_PATH_IMAGE025
Figure 854863DEST_PATH_IMAGE043
把检索结果、
Figure 13629DEST_PATH_IMAGE029
Figure 189395DEST_PATH_IMAGE045
<
Figure 380205DEST_PATH_IMAGE035
>发送给数据使用端
Figure 604513DEST_PATH_IMAGE046
S5、数据使用端根据本地索引信息向分布式文件存储服务端获得加密文件,通过文件解密密钥解密加密文件得到需要搜索的文件信息,数据使用端具体执行如下内容:
接收若干个数据拥有端的检索结果、
Figure 134852DEST_PATH_IMAGE029
Figure 684782DEST_PATH_IMAGE047
循环所有的检索结果、
Figure 425205DEST_PATH_IMAGE029
Figure 187624DEST_PATH_IMAGE047
Figure 634786DEST_PATH_IMAGE048
循环在关键词kw的查询结果中查找
Figure 293301DEST_PATH_IMAGE047
,如果找到,则从分布式文件存储端中获得对应的加密文件,将加密文件用数据拥有端发送的对应解密密钥解密。
其中,F为关键词kw的查询结果,
Figure 458703DEST_PATH_IMAGE049
表示数据拥有端的本地索引信息,所述本地索引信息包含从数据拥有端返回的加密文件的解密密钥和加密文件对应的唯一哈希值,数据使用端通过加密文件对应的唯一哈希值向分布式文件存储服务端获得加密文件。
本发明中的基于区块链无需安全通道的可搜索加密方法通过将本地文件信息加密后存储至分布式文件存储端,避免本地文件信息的泄露,从文件信息提取生成本地索引和本地关键词标识上传至区块链,只有被授权的数据使用端可以检索并从分布式文件存储端获取文件信息,可以用于企业或个人数据的安全存取及共享,解决存储服务器信息泄露、多方交易不可信、数据拥有端对数据使用端权限控制和信息传输需要安全通道的问题。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

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中,密钥生成法包括使用对称加密算法生成加密密钥与解密密钥或非对称算法生成加密密钥与解密密钥。
CN202211225999.0A 2022-10-09 2022-10-09 基于区块链无需安全通道的可搜索加密方法 Active CN115314321B (zh)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 江苏大学 基于区块链的数据搜索细粒度访问控制方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
Title
闫玺玺等: "基于区块链且支持验证的属性基搜索加密方案", 《通信学报》 *

Cited By (3)

* Cited by examiner, † Cited by third party
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