CN112906032A - 基于cp-abe与区块链的文件安全传输方法、系统及介质 - Google Patents
基于cp-abe与区块链的文件安全传输方法、系统及介质 Download PDFInfo
- Publication number
- CN112906032A CN112906032A CN202110276100.7A CN202110276100A CN112906032A CN 112906032 A CN112906032 A CN 112906032A CN 202110276100 A CN202110276100 A CN 202110276100A CN 112906032 A CN112906032 A CN 112906032A
- Authority
- CN
- China
- Prior art keywords
- agent
- abe
- file
- key
- files
- 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
-
- 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/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
- G06F21/46—Structures or tools for the administration of authentication by designing passwords or checking the strength of passwords
-
- 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/604—Tools and structures for managing or administering access control 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/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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Automation & Control Theory (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供了一种基于CP‑ABE与区块链的文件安全传输方法、系统及介质,包括:步骤1:用户对预设安全域内的代理发送跨网交换的请求;步骤2:代理对用户使用的账号密码进行认证;步骤3:认证后代理调用区块链智能合约验证发送端和接收端之间是否存在业务协同,若存在任务协同则返回主公钥;若不存在业务协同则返回错误信息;步骤4:代理生成AES对称密钥并对文件进行加密,根据主公钥使用CP‑ABE对该对称密钥进行加密,得到加密密钥;步骤5:跨网交换发送文件,使用安全传输层协议TLS加密通信进行传输,目标域代理把加密文件和加密密钥保存在本地。本发明实现去中心化的访问控制,解决了第三方平台带来的单点故障问题。
Description
技术领域
本发明涉及区块链,具体地,涉及一种基于CP-ABE与区块链的文件安全传输方法、系统及介质。
背景技术
目前基于CP-ABE(密文策略属性基加密系统)的访问控制系统通常采用第三方平台进行主私钥的生成与加解密,因而存在以下问题:一是单点故障,中心平台故障就会导致整个解密服务失效;二是只由第三方平台集中处理可能会存在安全问题导致密钥的滥用,而且审计不够透明。
专利文献CN109711184A(申请号:CN201811625849.2)公开了一种基于属性加密的区块链数据访问控制方法及装置,这种访问控制方法虽然解决了通过用户身份信息加密会导致用户身份信息泄露的风险,但需要第三方平台提供密钥管理服务,存在单点故障问题,一旦平台发生故障就会导致整个服务失效。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种基于CP-ABE与区块链的文件安全传输方法、系统及介质。
根据本发明提供的基于CP-ABE与区块链的文件安全传输方法,包括:
步骤1:用户对预设安全域内的代理发送跨网交换的请求;
步骤2:代理对用户使用的账号密码进行认证;
步骤3:认证后代理调用区块链智能合约验证发送端和接收端之间是否存在业务协同,若存在任务协同,则返回主公钥,执行步骤4;若不存在业务协同,则返回错误信息并终止步骤的执行;
步骤4:代理生成AES对称密钥并对文件进行加密,根据主公钥使用CP-ABE对该对称密钥进行加密,得到加密密钥;
步骤5:跨网交换发送文件,使用安全传输层协议TLS加密通信进行传输,目标域代理把加密文件和加密密钥保存在本地。
优选的,代理从本地读取加密文件和加密密钥,将加密密钥和接收端的用户属性作为参数,经TLS加密调用区块链智能合约,验证接收端的属性是否满足预设访问控制策略。
优选的,若满足预设访问控制策略,则通过CP-ABE对加密密钥进行解密,获得对称密钥;若不满足预设访问控制策略,返回错误信息。
优选的,接收端用获得的对称密钥解密加密文件,获得源文件。
根据本发明提供的基于CP-ABE与区块链的文件安全传输系统,包括:
模块M1:用户对预设安全域内的代理发送跨网交换的请求;
模块M2:代理对用户使用的账号密码进行认证;
模块M3:认证后代理调用区块链智能合约验证发送端和接收端之间是否存在业务协同,若存在任务协同,则返回主公钥,调用模块M4;若不存在业务协同,则返回错误信息并终止系统运行;
模块M4:代理生成AES对称密钥并对文件进行加密,根据主公钥使用CP-ABE对该对称密钥进行加密,得到加密密钥;
模块M5:跨网交换发送文件,使用安全传输层协议TLS加密通信进行传输,目标域代理把加密文件和加密密钥保存在本地。
优选的,代理从本地读取加密文件和加密密钥,将加密密钥和接收端的用户属性作为参数,经TLS加密调用区块链智能合约验证接收端的属性是否满足预设访问控制策略。
优选的,若满足预设访问控制策略,则通过CP-ABE对加密密钥进行解密,获得对称密钥;若不满足预设访问控制策略,返回错误信息。
优选的,接收端用获得的对称密钥解密加密文件,获得源文件。
根据本发明提供的一种存储有计算机程序的计算机可读存储介质,所述计算机程序被处理器执行时实现上述的方法的步骤。
与现有技术相比,本发明具有如下的有益效果:
本发明将区块链与CP-ABE技术结合起来,将对文件的访问控制放入区块链中作为智能合约的一部分,实现去中心化的访问控制,以解决现有技术所存在的第三方平台所带来的单点故障问题。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为访问控制模型结构图;
图2为文件加密流程;
图3为文件解密过程图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
实施例:
根据本发明提供的基于CP-ABE与区块链的文件安全传输方法,包括:步骤1:用户对预设安全域内的代理发送跨网交换的请求;步骤2:代理对用户使用的账号密码进行认证;步骤3:认证后代理调用区块链智能合约验证发送端和接收端之间是否存在业务协同,若存在任务协同,则返回主公钥,执行步骤4;若不存在业务协同,则返回错误信息并终止步骤的执行;步骤4:代理生成AES对称密钥并对文件进行加密,根据主公钥使用CP-ABE对该对称密钥进行加密,得到加密密钥;步骤5:跨网交换发送文件,使用安全传输层协议TLS加密通信进行传输,目标域代理把加密文件和加密密钥保存在本地。
代理从本地读取加密文件和加密密钥,将加密密钥和接收端的用户属性作为参数,经TLS加密调用区块链智能合约,验证接收端的属性是否满足预设访问控制策略。若满足预设访问控制策略,则通过CP-ABE对加密密钥进行解密,获得对称密钥;若不满足预设访问控制策略,返回错误信息。接收端用获得的对称密钥解密加密文件,获得源文件。
根据本发明提供的基于CP-ABE与区块链的文件安全传输系统,包括:模块M1:用户对预设安全域内的代理发送跨网交换的请求;模块M2:代理对用户使用的账号密码进行认证;模块M3:认证后代理调用区块链智能合约验证发送端和接收端之间是否存在业务协同,若存在任务协同,则返回主公钥,调用模块M4;若不存在业务协同,则返回错误信息并终止系统运行;模块M4:代理生成AES对称密钥并对文件进行加密,根据主公钥使用CP-ABE对该对称密钥进行加密,得到加密密钥;模块M5:跨网交换发送文件,使用安全传输层协议TLS加密通信进行传输,目标域代理把加密文件和加密密钥保存在本地。
代理从本地读取加密文件和加密密钥,将加密密钥和接收端的用户属性作为参数,经TLS加密调用区块链智能合约验证接收端的属性是否满足预设访问控制策略。若满足预设访问控制策略,则通过CP-ABE对加密密钥进行解密,获得对称密钥;若不满足预设访问控制策略,返回错误信息。接收端用获得的对称密钥解密加密文件,获得源文件。
根据本发明提供的一种存储有计算机程序的计算机可读存储介质,所述计算机程序被处理器执行时实现上述的方法的步骤。
实施例2:
实施例2是实施例1的优选例。
如图1,为本发明提供的一种基于CP-ABE与区块链的访问控制模型图,本发明还提供了一种文件安全传输方法,通过自定义属性实现细粒度的访问控制,并提供了跨域文件安全传输的机制。
具体的,本方法的身份认证分为四级认证:用户和域代理的认证、域代理和平台的认证、域代理之间的认证以及域代理和区块链网络的认证。
如图2,本发明使用区块链及其智能合约特性来实现去中心化的访问控制,其中文件加密过程的具体步骤包括:
步骤1:发起请求:用户对安全域内的代理进行跨网交换发送的请求;
步骤2:用户认证:代理对用户使用账号密码进行认证;
步骤3:智能合约调用:代理调用区块链智能合约验证两部门之间是否存在业务协同,通过则返回主公钥;
步骤4:加密:代理生成随机密钥,对文件进行加密,然后使用CP-ABE对密钥进行加密;
步骤5:跨网交换发送文件,使用TLS加密通信进行传输,目标域代理把加密文件和加密密钥保存在本地。
如图3,为本发明的文件解密过程图,本发明通过将区块链与CP-ABE技术结合起来,将对文件的访问控制放入区块链中作为智能合约的一部分,实现去中心化的访问控制,以解决现有技术所存在的第三方平台所带来的单点故障问题。
解密过程:
步骤1:用户对安全域内的代理发起文件接收的请求;
步骤2:代理对用户使用账号密码进行认证;
步骤3:代理从本地读取加密文件和加密密钥,然后将加密密钥和接收者的用户属性作为参数经TLS加密调用区块链智能合约验证接收者属性是否满足访问控制策略,若符合,用CP-ABE对加密密钥进行解密获得对称密钥;若不符合,返回错误信息;
步骤4:接收者用获得的对称密钥解密加密文件,获得源文件。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统、装置及其各个模块以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统、装置及其各个模块以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同程序。所以,本发明提供的系统、装置及其各个模块可以被认为是一种硬件部件,而对其内包括的用于实现各种程序的模块也可以视为硬件部件内的结构;也可以将用于实现各种功能的模块视为既可以是实现方法的软件程序又可以是硬件部件内的结构。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
Claims (9)
1.一种基于CP-ABE与区块链的文件安全传输方法,其特征在于,包括:
步骤1:用户对预设安全域内的代理发送跨网交换的请求;
步骤2:代理对用户使用的账号密码进行认证;
步骤3:认证后代理调用区块链智能合约验证发送端和接收端之间是否存在业务协同,若存在任务协同,则返回主公钥,执行步骤4;若不存在业务协同,则返回错误信息并终止步骤的执行;
步骤4:代理生成AES对称密钥并对文件进行加密,根据主公钥使用CP-ABE对该对称密钥进行加密,得到加密密钥;
步骤5:跨网交换发送文件,使用安全传输层协议TLS加密通信进行传输,目标域代理把加密文件和加密密钥保存在本地。
2.根据权利要求1所述的基于CP-ABE与区块链的文件安全传输方法,其特征在于,代理从本地读取加密文件和加密密钥,将加密密钥和接收端的用户属性作为参数,经TLS加密调用区块链智能合约,验证接收端的属性是否满足预设访问控制策略。
3.根据权利要求2所述的基于CP-ABE与区块链的文件安全传输方法,其特征在于,若满足预设访问控制策略,则通过CP-ABE对加密密钥进行解密,获得对称密钥;若不满足预设访问控制策略,返回错误信息。
4.根据权利要求3所述的基于CP-ABE与区块链的文件安全传输方法,其特征在于,接收端用获得的对称密钥解密加密文件,获得源文件。
5.一种基于CP-ABE与区块链的文件安全传输系统,其特征在于,包括:
模块M1:用户对预设安全域内的代理发送跨网交换的请求;
模块M2:代理对用户使用的账号密码进行认证;
模块M3:认证后代理调用区块链智能合约验证发送端和接收端之间是否存在业务协同,若存在任务协同,则返回主公钥,调用模块M4;若不存在业务协同,则返回错误信息并终止系统运行;
模块M4:代理生成AES对称密钥并对文件进行加密,根据主公钥使用CP-ABE对该对称密钥进行加密,得到加密密钥;
模块M5:跨网交换发送文件,使用安全传输层协议TLS加密通信进行传输,目标域代理把加密文件和加密密钥保存在本地。
6.根据权利要求5所述的基于CP-ABE与区块链的文件安全传输系统,其特征在于,代理从本地读取加密文件和加密密钥,将加密密钥和接收端的用户属性作为参数,经TLS加密调用区块链智能合约验证接收端的属性是否满足预设访问控制策略。
7.根据权利要求6所述的基于CP-ABE与区块链的文件安全传输系统,其特征在于,若满足预设访问控制策略,则通过CP-ABE对加密密钥进行解密,获得对称密钥;若不满足预设访问控制策略,返回错误信息。
8.根据权利要求7所述的基于CP-ABE与区块链的文件安全传输系统,其特征在于,接收端用获得的对称密钥解密加密文件,获得源文件。
9.一种存储有计算机程序的计算机可读存储介质,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110276100.7A CN112906032B (zh) | 2021-03-15 | 2021-03-15 | 基于cp-abe与区块链的文件安全传输方法、系统及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110276100.7A CN112906032B (zh) | 2021-03-15 | 2021-03-15 | 基于cp-abe与区块链的文件安全传输方法、系统及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112906032A true CN112906032A (zh) | 2021-06-04 |
CN112906032B CN112906032B (zh) | 2022-07-19 |
Family
ID=76105098
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110276100.7A Active CN112906032B (zh) | 2021-03-15 | 2021-03-15 | 基于cp-abe与区块链的文件安全传输方法、系统及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112906032B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114520720A (zh) * | 2022-03-22 | 2022-05-20 | 暨南大学 | 一种基于tls协议的多方认证区块链数据上链方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109120639A (zh) * | 2018-09-26 | 2019-01-01 | 众安信息技术服务有限公司 | 一种基于区块链的数据云存储加密方法及系统 |
US20190334704A1 (en) * | 2018-04-30 | 2019-10-31 | Innoplexus Ag | Authenticate transactions of secured file in blockchain |
CN110474893A (zh) * | 2019-07-30 | 2019-11-19 | 同济大学 | 一种异构跨信任域密态数据安全分享方法及系统 |
CN110636500A (zh) * | 2019-08-27 | 2019-12-31 | 西安电子科技大学 | 支持跨域数据共享的访问控制系统及方法、无线通信系统 |
US20200313856A1 (en) * | 2019-03-29 | 2020-10-01 | 0Chain, LLC | Systems and methods of blockchain platform for intermediaries and passwordless login |
CN111901302A (zh) * | 2020-06-28 | 2020-11-06 | 石家庄铁道大学 | 基于区块链的医疗信息属性加密访问控制方法 |
CN111914269A (zh) * | 2020-07-07 | 2020-11-10 | 华中科技大学 | 一种区块链和云存储环境下的数据安全共享方法和系统 |
-
2021
- 2021-03-15 CN CN202110276100.7A patent/CN112906032B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190334704A1 (en) * | 2018-04-30 | 2019-10-31 | Innoplexus Ag | Authenticate transactions of secured file in blockchain |
CN109120639A (zh) * | 2018-09-26 | 2019-01-01 | 众安信息技术服务有限公司 | 一种基于区块链的数据云存储加密方法及系统 |
US20200313856A1 (en) * | 2019-03-29 | 2020-10-01 | 0Chain, LLC | Systems and methods of blockchain platform for intermediaries and passwordless login |
CN110474893A (zh) * | 2019-07-30 | 2019-11-19 | 同济大学 | 一种异构跨信任域密态数据安全分享方法及系统 |
CN110636500A (zh) * | 2019-08-27 | 2019-12-31 | 西安电子科技大学 | 支持跨域数据共享的访问控制系统及方法、无线通信系统 |
CN111901302A (zh) * | 2020-06-28 | 2020-11-06 | 石家庄铁道大学 | 基于区块链的医疗信息属性加密访问控制方法 |
CN111914269A (zh) * | 2020-07-07 | 2020-11-10 | 华中科技大学 | 一种区块链和云存储环境下的数据安全共享方法和系统 |
Non-Patent Citations (3)
Title |
---|
MURAT YASIN K UBILAY: "CertLedger: A New PKI Mo del with Certificate Transpa rency Based on Blo ckchain", 《ARXIV》 * |
MURAT YASIN KUBILAY: "CertLedger: A new PKI model with Certifiate Transparency based on blockchain", 《ELSEVIER》 * |
YUNRU ZHANG: "BaDS: Blockchain-Based Architecture for Data Sharing with ABS and CP-ABE in IoT", 《HINDAWI》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114520720A (zh) * | 2022-03-22 | 2022-05-20 | 暨南大学 | 一种基于tls协议的多方认证区块链数据上链方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112906032B (zh) | 2022-07-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109918878B (zh) | 一种基于区块链的工业物联网设备身份认证及安全交互方法 | |
US8059818B2 (en) | Accessing protected data on network storage from multiple devices | |
CN1905436B (zh) | 保证数据交换安全的方法 | |
CN109120639A (zh) | 一种基于区块链的数据云存储加密方法及系统 | |
CN101515319B (zh) | 密钥处理方法、密钥密码学服务系统和密钥协商方法 | |
CN112686668A (zh) | 联盟链跨链系统及方法 | |
CN111371790B (zh) | 基于联盟链的数据加密发送方法、相关方法、装置和系统 | |
CN112532580B (zh) | 一种基于区块链及代理重加密的数据传输方法及系统 | |
US20100037053A1 (en) | Mobile station authentication in tetra networks | |
CN112487443A (zh) | 一种基于区块链的能源数据细粒度访问控制方法 | |
GB2404535A (en) | Secure transmission of data via an intermediary which cannot access the data | |
CN102546580A (zh) | 一种用户口令的更新方法、系统及装置 | |
CN113872760A (zh) | 一种sm9秘钥基础设施及安全系统 | |
CN110519222B (zh) | 基于一次性非对称密钥对和密钥卡的外网接入身份认证方法和系统 | |
CN116244750A (zh) | 一种涉密信息维护方法、装置、设备及存储介质 | |
CN111444268A (zh) | 一种基于区块链的数据加密方法 | |
WO2021170049A1 (zh) | 一种访问行为的记录方法、装置 | |
CN112906032B (zh) | 基于cp-abe与区块链的文件安全传输方法、系统及介质 | |
CN103856463A (zh) | 基于密钥交换协议的轻量目录访问协议实现方法和装置 | |
US8699710B2 (en) | Controlled security domains | |
CN210745178U (zh) | 一种身份认证系统 | |
CN114285557A (zh) | 通信加密方法、系统和装置 | |
CN112865968B (zh) | 数据密文托管方法、系统、计算机设备及存储介质 | |
CN106230595A (zh) | 一种可信平台控制模块的授权协议 | |
CN118450383A (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 |