CN113159766A - 数据保护方法、装置、系统、电子装置和存储介质 - Google Patents
数据保护方法、装置、系统、电子装置和存储介质 Download PDFInfo
- Publication number
- CN113159766A CN113159766A CN202110395793.1A CN202110395793A CN113159766A CN 113159766 A CN113159766 A CN 113159766A CN 202110395793 A CN202110395793 A CN 202110395793A CN 113159766 A CN113159766 A CN 113159766A
- Authority
- CN
- China
- Prior art keywords
- data
- transaction
- block chain
- key
- signature
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000004806 packaging method and process Methods 0.000 claims abstract description 10
- 238000004590 computer program Methods 0.000 claims description 15
- 238000010586 diagram Methods 0.000 description 18
- 238000005516 engineering process Methods 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 9
- 230000007246 mechanism Effects 0.000 description 9
- 230000008569 process Effects 0.000 description 7
- 238000013523 data management Methods 0.000 description 6
- 238000007726 management method Methods 0.000 description 5
- 230000003993 interaction Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 239000002994 raw material Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3825—Use of electronic signatures
-
- 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
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- 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/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
- G06Q20/4014—Identity check for transactions
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Accounting & Taxation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Storage Device Security (AREA)
Abstract
本申请涉及一种数据保护方法、装置、系统、电子装置和存储介质,其中,该数据保护方法包括:获取原始数据;基于SM9算法以及数据接收方的用户信息将所述原始数据进行加密,得到加密数据;根据所述加密数据封装区块链交易,并根据所述数据发送方的用户私钥对所述区块链交易进行签名,得到签名交易并上传至区块链。通过本申请,解决了区块链交易数据隐私泄露的问题,实现了对区块链交易内容的安全保护。
Description
技术领域
本申请涉及区块链技术领域,特别是涉及数据保护方法、装置、系统、电子装置和存储介质。
背景技术
区块链技术因其“去中心化”与“去信任化”等特点,可在可信第三方不参与的情况下与陌生节点之间进行安全的信息传递,从而可有效提高信息交互效率,降低交互成本,在比特币、供应链等领域具有较为广阔的应用前景。哈希算法以及数字签名算法在区块链中应用广泛,用以验证区块以及交易的正确性。区块链在实际场景中应用时,不仅仅需要核验节点的公钥地址,还要验证各个节点的真实身份。传统的PKI体制因为可信中心的权重过大,不符合区块链“去中心化”的特点。因此,无证书的加密与签名方案可以在区块链技术中得到应用。
隐私泄露是区块链技术中不容忽视的问题。与传统中心化结构不同,区块链机制不依赖特定中心节点处理和存储数据,因此可以避免恶意中心或因其他原因导致的中心信息泄露。单位了验证交易信息,区块链中所有的交易记录必须公开,因此将显著增加信息泄露风险。交易地址暴露于区块链环境中容易被跟踪查找。因为区块链技术与当前IT架构存在区别,以往的隐私保护方案并不适用。所以,区块链的隐私保护需要更具针对性的机制。
目前针对相关技术中区块链交易数据隐私泄露的问题,尚未提出有效的解决方案。
发明内容
在本实施例中提供了一种数据保护方法、装置、系统、电子装置和存储介质,以解决相关技术中区块链交易数据隐私泄露的问题。
第一个方面,在本实施例中提供了一种数据保护方法,应用于交易数据在区块链中广播之前,包括:
获取原始数据;
基于SM9算法以及数据接收方的用户信息将所述原始数据进行加密,得到加密数据;
根据所述加密数据封装区块链交易,并根据所述数据发送方的用户私钥对所述区块链交易进行签名,得到签名交易并上传至区块链。
在其中的一个实施例中,所述获取原始数据之前包括:获取所述数据发送方和所述数据接收方的用户信息,所述用户信息至少包括区块账户地址或用户指纹信息;根据所述用户信息获取数据发送方的第一公私钥对和数据接收方的第二公私钥对。
第二个方面,在本实施例中提供了一种数据保护方法,应用于交易数据在区块链中广播之后,包括:
从区块链上获取签名交易以及数据接收方的用户私钥;
根据所述签名交易以及所述数据接收方的用户私钥获取解密密钥;
根据所述解密密钥对所述签名交易中的加密数据进行解密,获取原始数据。
在其中的一个实施例中,所述根据所述签名交易以及所述数据接收方的用户私钥获取解密密钥包括:发送第一交易获取请求,基于所述交易获取请求获取签名交易;向所述签名交易添加所述数据接收方的用户私钥,得到第二交易获取请求;基于所述第二交易获取请求获取解密密钥。
第三个方面,在本实施例中提供了一种数据保护装置,应用于交易数据在区块链中广播之前,包括:
数据获取模块:用于获取原始数据;
加密模块:用于基于SM9算法以及数据接收方的用户信息将所述原始数据进行加密,得到加密数据;
签名模块:用于根据所述加密数据封装区块链交易,并根据所述数据发送方的用户私钥对所述区块链交易进行签名,得到签名交易并上传至区块链。
第四个方面,在本实施例中提供了一种数据保护装置,应用于交易数据在区块链中广播之后,包括:
交易获取模块:用于从区块链上获取签名交易以及数据接收方的用户私钥;
密钥获取模块:用于根据所述签名交易以及所述数据接收方的用户私钥获取解密密钥;
解密模块:用于根据所述解密密钥对所述签名交易中的加密数据进行解密,获取原始数据。
第五个方面,在本实施例中提供了一种数据保护系统,包括:数据发送设备、第一节点前置设备、SM9密钥中心、区块链服务器、第二节点前置设备以及数据接收设备,所述SM9密钥中心分别与所述数据发送设备以及数据接收设备连接,所述第一节点前置设备分别与所述数据发送设备以及区块链服务器连接,所述第二节点前置设备分别与所述数据接收设备以及区块链服务器连接;
所述数据发送设备用于获取原始数据,并将所述原始数据发送至所述SM9密钥中心;
所述SM9密钥中心用于将所述原始数据进行加密,并将加密后的加密数据通过数据发送设备发送至第一节点前置设备;
所述第一节点前置设备用于将所述加密数据封装成区块链交易,并根据数据发送方的用户私钥对所述区块链交易进行签名,得到签名交易并上传至区块链;
所述区块链服务器用于将所述签名交易推送至所述第二节点前置设备;
所述第二节点前置设备用于将所述区块链交易进行解封,获取加密数据并将所述加密数据发送至数据接收设备;
所述数据接收设备用于将所述加密数据以及数据接收方的用户私钥发送至所述SM9密钥中心获取解密密钥,得到所述原始数据;
所述SM9密钥中心还用于执行第一方面和第二方面中任一项所述的数据保护方法。
在其中的一个实施例中,所述SM9中心包括:密码管理模块和密码生成模块;
所述密码生成模块用于根据用户信息生成解密密码;
所述密码管理模块用于根据用户信息存储解密密码。
第六个方面,在本实施例中提供了一种电子装置,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一个方面和第二个方面所述的数据保护方法。
第七个方面,在本实施例中提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第个方面和第二个方面所述的数据保护方法。
与相关技术相比,在本实施例中提供的数据保护方法,通过获取原始数据;基于SM9算法以及数据接收方的用户信息将所述原始数据进行加密,得到加密数据;根据所述加密数据封装区块链交易,并根据所述数据发送方的用户私钥对所述区块链交易进行签名,得到签名交易并上传至区块链,解决了区块链交易数据隐私泄露的问题,实现了对区块链交易内容的安全保护。
本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是本实施例的数据保护方法的终端的硬件结构框图。
图2是本实施例的数据保护方法的流程图。
图3是根据本申请另一实施例的数据保护方法的数据发送示意图。
图4是另一实施例的数据保护方法的流程图。
图5是根据本申请另一实施例的数据保护方法的数据接收示意图。
图6是实施例的数据保护装置的结构框图。
图7是另一实施例的数据保护装置的结构框图。
图8是根据本申请另一实施例的数据保护系统的结构示意图。
图9是根据本申请实施例的数据保护系统的SM9密钥中心示意图。
具体实施方式
为更清楚地理解本申请的目的、技术方案和优点,下面结合附图和实施例,对本申请进行了描述和说明。
除另作定义外,本申请所涉及的技术术语或者科学术语应具有本申请所属技术领域具备一般技能的人所理解的一般含义。在本申请中的“一”、“一个”、“一种”、“该”、“这些”等类似的词并不表示数量上的限制,它们可以是单数或者复数。在本申请中所涉及的术语“包括”、“包含”、“具有”及其任何变体,其目的是涵盖不排他的包含;例如,包含一系列步骤或模块(单元)的过程、方法和系统、产品或设备并未限定于列出的步骤或模块(单元),而可包括未列出的步骤或模块(单元),或者可包括这些过程、方法、产品或设备固有的其他步骤或模块(单元)。在本申请中所涉及的“连接”、“相连”、“耦接”等类似的词语并不限定于物理的或机械连接,而可以包括电气连接,无论是直接连接还是间接连接。在本申请中所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。通常情况下,字符“/”表示前后关联的对象是一种“或”的关系。在本申请中所涉及的术语“第一”、“第二”、“第三”等,只是对相似对象进行区分,并不代表针对对象的特定排序。
在本实施例中提供的方法实施例可以在终端、计算机或者类似的运算装置中执行。比如在终端上运行,图1是本实施例的数据保护方法的终端的硬件结构框图。如图1所示,终端可以包括一个或多个(图1中仅示出一个)处理器102和用于存储数据的存储器104,其中,处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置。上述终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述终端的结构造成限制。例如,终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示出的不同配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如在本实施例中的数据保护方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由一个网络接收或者发送数据。上述的网络包括终端的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(NetworkInterface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
区块链是一个信息技术领域的术语,从本质上讲,它是一个贡献数据库,存储于其中的数据或信息,具有“不可伪造”“全程留痕”“可以追溯”“公开透明”“集体维护”等特征。基于这些特征,区块链技术奠定了坚实的“信任”基础,创造了可靠的“合作”机制,具有广阔的运用前景。
联盟链是区块链的一种,它是一种基于分布式数据存储、P2P、共识机制、加密算法等技术的新型应用模式。任何数据经过验证并且被添加至联盟链之后,便会永久存储,任何对单点上数据的篡改都是无效的,不会对整个系统产生作用,因此联盟链的数据稳定性和可靠性极高。但是由于联盟链数据对于所有人都是公开的,任何人都可以通过公开接口查询联盟链数据,并基于此开发应用,可以说整个联盟链系统信息高度透明,因此也不利于用户隐私的保护,如何对联盟链系统中的数据隐私信息进行保护,是目前亟待解决的问题。
在本实施例中提供了一种数据保护方法,应用于交易数据在区块链中广播之前,图2是本实施例的数据保护方法的流程图,如图2所示,该流程包括如下步骤:
步骤S201,获取原始数据。
具体的,原始数据是指用户之间需要进行分享的数据。当包含该数据的交易在区块链中传递时,该数据即为交易的内容。
步骤S202,基于SM9算法以及数据接收方的用户信息将所述原始数据进行加密,得到加密数据。
具体的,SM9算法是中华人民共和国政府采用的一种标识密码标准,由国家密码管理局发布。在商用密码体系中,SM9算法主要用于用户的身份认证。在其使用的过程中,SM9算法不需要申请数字证书。根据用户的标识信息以及SM9算法进行对原始数据进行加密。
步骤S203,根据所述加密数据封装区块链交易,并根据所述数据发送方的用户私钥对所述区块链交易进行签名,得到签名交易并上传至区块链。
交易是区块链的核心。原始数据需要封装成交易进而在区块链中传播。数据发送方要将自己的私钥对其发出的交易进行签名。采用私钥进行签名的作用是证明数据发送方的身份。
在其中的一个实施例中,所述获取原始数据之前包括:获取所述数据发送方和所述数据接收方的用户信息,所述用户信息至少包括区块账户地址或用户指纹信息;根据所述用户信息获取数据发送方的第一公私钥对和数据接收方的第二公私钥对。具体的,在数据发送方与数据接收方进行数据分享之前,数据发送发和数据接收方必须先生成自己的公私钥对和区块账户地址,为原始数据的加密和解密以及交易签名做准备。用户信息是指可证明用户身份的标识信息,包括但不限于用户的身份证号、邮件地址、社交账号以及人脸信息等。优选的,选择用户的区块账户地址或用户指纹信息作为用户信息。这是由于区块账户地址是联盟链中用户最常用的信息之一,联盟链中一般使用公私钥对来进行身份的识别,每个身份对应一个账户地址,该机制与SM9这种标识算法的契合度很高。
在其中的一个实施例中,图3是根据本申请另一实施例的数据保护方法的数据发送示意图,如图3所示,用户A即数据发送方,第三方应用A是指接入区块链服务器的系统,例如生产公司的ERP(Enterprise Resource Planning,企业资源计划)系统或原材料供应商的ERP系统都可,本申请不针对第三方应用的系统做具体限定,凡是可接入联盟链服务的系统均可。节点前置服务A是指分装区块链系统的相关接口,便于第三方应用更方便与区块链节点进行交互。数字管理合约是指运行在区块链中的智能合约,该智能合约为隐私数据管理合约,用于存储加密后的隐私数据。用户A发送数据的过程包括:用户A提供需要分享给用户B的原始数据,用户B是指接收原始数据的数据接收方。将原始数据发送给用户A使用的第三方应用A,第三方应用A受到原始数据后,通过SM9算法sdk,即SM9软件开发工具包,使用SM9密钥中心公开参数和用户B的账户地址作为密钥对原始数据进行加密,得到加密数据。第三方应用A将加密数据提交至节点前置服务进行组装,生成区块链交易并返回给第三方应用A。第三方应用A使用用户A预先生成的私钥对区块链交易进行签名,并将签名后的交易提交到区块链中的数据管理合约进行运算保存,完成数据上链。完成数据上链之后,向用户A返回上链成功提示,数据加密上链过程结束。
在另一个实施例中,本申请还提供了一种数据保护方法,应用于交易数据在区块链中广播之后,图4是另一实施例的数据保护方法的流程图,如图4所示,该流程包括如下步骤:
步骤S401,从区块链上获取签名交易以及数据接收方的用户私钥。
步骤S402,根据所述签名交易以及所述数据接收方的用户私钥获取解密密钥。
步骤S403,根据所述解密密钥对所述签名交易中的加密数据进行解密,获取原始数据。
在其中的一个实施例中,所述根据所述签名交易以及所述数据接收方的用户私钥获取解密密钥包括:发送第一交易获取请求,基于所述交易获取请求获取签名交易;向所述签名交易添加所述数据接收方的用户私钥,得到第二交易获取请求;基于所述第二交易获取请求获取解密密钥。
在其中的一个实施例中,图5是根据本申请另一实施例的数据保护方法的数据接收示意图,如图5所示,用户B即数据接收方,第三方应用B是指接入区块链服务器的系统,本申请不针对第三方应用的系统做具体限定。节点前置服务B是指分装区块链系统的相关接口,便于第三方应用更方便与区块链节点进行交互。数字管理合约是指运行在区块链中的智能合约,该智能合约为隐私数据管理合约,用于存储加密后的隐私数据。用户B接收原始数据的过程包括:用户B通过第三方应用B向节点前置服务B发出请求,请求查看与用户B自身相关的数据,节点前置服务B向数据管理合约提交该请求,数据管理合约将与用户B相关的隐私数据,该隐私数据为加密数据。通过节点前置服务B将加密数据发送至第三方应用B,第三方应用B获取到加密数据后,向SM9密钥中心发出获取解密密钥的请求,请求中需要附上用户B的私钥签名,SM9密钥中心验证签名,然后返回相关的解密密钥给第三方应用B,第三方应用B通过SM9算法sdk,即SM9软件开发工具,使用解密密钥对加密数据进行解密,得到原始数据并发送给用户B,使得用户B获取原始数据。
在其中一个实施例中,本申请所述的数据保护方法可应用于任何一种区块链,包括公有链、联盟链和私有链。区块链只是起到广播隐私数据的作用,不负责加密和解密,因而该方法可以适用于任何区块链系统,而不要求区块链系统做底层改造。优选的,联盟链中一般使用ECC算法的签名验签机制,还可通过对联盟链系统进行SM2改造,使其更符合国家商业化标准。SM2算法就是ECC椭圆曲线密码机制,但在签名、密钥交换方面不同与ECDSA、ECDH等国际标准,而是采取了更为安全的机制。SM2标准包括总则、数字签名算法、密钥交换协议以及公钥加密算法四个部分。其中,数字签名算法包括数字签名生成算法和验证算法。
通过上述步骤,用户通过联盟链系统来进行隐私数据的传递,通过SM9算法加解密技术来获取原数据。通过联盟链系统来保证数据的不可篡改性、稳定性以及可靠性,而联盟链中使用公私钥对来进行身份的识别,每个身份对应不同的一个账户定制,这种机制非常适合SM9这种标识算法,通过SM9算法对数据进行加解密处理来保证数据的隐私性、安全性,整个系统可以应用于任何需要隐私保护的行业,具有极大的商业价值。此外,本申请通过采用SM9算法,采用联盟链上常用的账户地址作为标识来进行加解密,避免了传统RSA技术中为了验证身份不断交互证书的过程,极大地提高了整个数据加密和解密的效率;并且,以SM9作为国家商用密码标准,对比其他算法,例如零知识证明等,更具备商业价值,安全性也更强。
需要说明的是,在上述流程中或者附图的流程图中示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
在本实施例中还提供了一种数据保护装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。以下所使用的术语“模块”、“单元”、“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管在以下实施例中所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图6是本实施例的数据保护装置的结构框图,如图6所示,该装置应用于交易数据在区块链中广播之前,包括:
数据获取模块10,用于获取原始数据。
加密模块20,用于基于SM9算法以及数据接收方的用户信息将所述原始数据进行加密,得到加密数据。
签名模块30,用于根据所述加密数据封装区块链交易,并根据所述数据发送方的用户私钥对所述区块链交易进行签名,得到签名交易并上传至区块链。
所述数据获取模块10,还用于获取所述数据发送方和所述数据接收方的用户信息,所述用户信息至少包括区块账户地址或用户指纹信息;根据所述用户信息获取数据发送方的第一公私钥对和数据接收方的第二公私钥对。
图7是另一实施例的数据保护装置的结构框图,如图7所示,该装置应用于交易数据在区块链中广播之后,包括:
交易获取模块40,用于从区块链上获取签名交易以及数据接收方的用户私钥。
密钥获取模块50,用于根据所述签名交易以及所述数据接收方的用户私钥获取解密密钥。
解密模块60,用于根据所述解密密钥对所述签名交易中的加密数据进行解密,获取原始数据。
所述密钥获取模块50,还用于发送第一交易获取请求,基于所述交易获取请求获取签名交易;向所述签名交易添加所述数据接收方的用户私钥,得到第二交易获取请求;基于所述第二交易获取请求获取解密密钥。
本实施例还提供了一种数据保护系统,包括:数据发送设备、第一节点前置设备、SM9密钥中心、区块链服务器、第二节点前置设备以及数据接收设备,所述SM9密钥中心分别与所述数据发送设备以及数据接收设备连接,所述第一节点前置设备分别与所述数据发送设备以及区块链服务器连接,所述第二节点前置设备分别与所述数据接收设备以及区块链服务器连接。
所述数据发送设备用于获取原始数据,并将所述原始数据发送至所述SM9密钥中心。
所述SM9密钥中心用于将所述原始数据进行加密,并将加密后的加密数据通过数据发送设备发送至第一节点前置设备。
所述第一节点前置设备用于将所述加密数据封装成区块链交易,并根据数据发送方的用户私钥对所述区块链交易进行签名,得到签名交易并上传至区块链。
所述区块链服务器用于将所述签名交易推送至所述第二节点前置设备。
所述第二节点前置设备用于将所述区块链交易进行解封,获取加密数据并将所述加密数据发送至数据接收设备。
所述数据接收设备用于将所述加密数据以及数据接收方的用户私钥发送至所述SM9密钥中心获取解密密钥,得到所述原始数据。
所述SM9密钥中心还用于上述任一实施例所述的数据保护方法。
在其中的一个实施例中,图8是根据本申请另一实施例的数据保护系统的结构示意图,如图8所示,该系统主要涉及两个系统的搭建与运行,包括:联盟链系统和SM9密钥中心系统,联盟链系统主要包括联盟链节点、节点前置服务、智能合约服务;SM9密钥中心系统采用C/S架构,节点前置服务提供区块链封装服务,开放sdk提供接入操作。
在其中的一个实施例中,SM9中心包括:密码管理模块和密码生成模块;所述密码生成模块用于根据用户信息生成解密密码;所述密码管理模块用于根据用户信息存储解密密码。图9是根据本申请实施例的数据保护系统的SM9密钥中心示意图,如图9所示,该SM9密钥中心是典型的C/S架构,C/S架构是指Client-Server架构,即服务器-客户机架构。C/S结构通常采取两层结构。服务器负责数据的管理,客户机负责完成与用户的交互任务。在本实施例中,SM9密钥中心sdk包括标识密码管理平台和SM9密码机。基于SM9密钥中心的重要性,该中心由联盟链内的主要成员搭建或者采用国家级SM9中心。一般的加密系统必须内置系统管理员,若管理员失窃,则整个区块链系统将完全暴露。而本实施例采用了联盟内自建或国家级的SM9中心,在安全性方面达到了国家级安全标准,数据安全性得到极大提升。
需要说明的是,上述各个模块可以是功能模块也可以是程序模块,既可以通过软件来实现,也可以通过硬件来实现。对于通过硬件来实现的模块而言,上述各个模块可以位于同一处理器中;或者上述各个模块还可以按照任意组合的形式分别位于不同的处理器中。
在本实施例中还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,获取原始数据。
S2,基于SM9算法以及数据接收方的用户信息将所述原始数据进行加密,得到加密数据。
S3,根据所述加密数据封装区块链交易,并根据所述数据发送方的用户私钥对所述区块链交易进行签名,得到签名交易并上传至区块链。
在另一个实施例中,上述处理器还可以被设置为通过计算机程序执行以下步骤:
S4,从区块链上获取签名交易以及数据接收方的用户私钥。
S5,根据所述签名交易以及所述数据接收方的用户私钥获取解密密钥。
S6,根据所述解密密钥对所述签名交易中的加密数据进行解密,获取原始数据。
需要说明的是,在本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,在本实施例中不再赘述。
此外,结合上述实施例中提供的数据保护方法,在本实施例中还可以提供一种存储介质来实现。该存储介质上存储有计算机程序;该计算机程序被处理器执行时实现上述实施例中的任意一种数据保护方法。
应该明白的是,这里描述的具体实施例只是用来解释这个应用,而不是用来对它进行限定。根据本申请提供的实施例,本领域普通技术人员在不进行创造性劳动的情况下得到的所有其它实施例,均属本申请保护范围。
显然,附图只是本申请的一些例子或实施例,对本领域的普通技术人员来说,也可以根据这些附图将本申请适用于其他类似情况,但无需付出创造性劳动。另外,可以理解的是,尽管在此开发过程中所做的工作可能是复杂和漫长的,但是,对于本领域的普通技术人员来说,根据本申请披露的技术内容进行的某些设计、制造或生产等更改仅是常规的技术手段,不应被视为本申请公开的内容不足。
“实施例”一词在本申请中指的是结合实施例描述的具体特征、结构或特性可以包括在本申请的至少一个实施例中。该短语出现在说明书中的各个位置并不一定意味着相同的实施例,也不意味着与其它实施例相互排斥而具有独立性或可供选择。本领域的普通技术人员能够清楚或隐含地理解的是,本申请中描述的实施例在没有冲突的情况下,可以与其它实施例结合。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对专利保护范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (10)
1.一种数据保护方法,应用于交易数据在区块链中广播之前,其特征在于,包括:
获取原始数据;
基于SM9算法以及数据接收方的用户信息将所述原始数据进行加密,得到加密数据;
根据所述加密数据封装区块链交易,并根据所述数据发送方的用户私钥对所述区块链交易进行签名,得到签名交易并上传至区块链。
2.根据权利要求1所述的数据保护方法,其特征在于,所述获取原始数据之前包括:
获取所述数据发送方和所述数据接收方的用户信息,所述用户信息至少包括区块账户地址或用户指纹信息;
根据所述用户信息获取数据发送方的第一公私钥对和数据接收方的第二公私钥对。
3.一种数据保护方法,应用于交易数据在区块链中广播之后,其特征在于,包括:
从区块链上获取签名交易以及数据接收方的用户私钥;
根据所述签名交易以及所述数据接收方的用户私钥获取解密密钥;
根据所述解密密钥对所述签名交易中的加密数据进行解密,获取原始数据。
4.根据权利要求3所述的数据保护方法,其特征在于,所述根据所述签名交易以及所述数据接收方的用户私钥获取解密密钥包括:
发送第一交易获取请求,基于所述交易获取请求获取签名交易;
向所述签名交易添加所述数据接收方的用户私钥,得到第二交易获取请求;
基于所述第二交易获取请求获取解密密钥。
5.一种数据保护装置,应用于交易数据在区块链中广播之前,其特征在于,包括:
数据获取模块:用于获取原始数据;
加密模块:用于基于SM9算法以及数据接收方的用户信息将所述原始数据进行加密,得到加密数据;
签名模块:用于根据所述加密数据封装区块链交易,并根据所述数据发送方的用户私钥对所述区块链交易进行签名,得到签名交易并上传至区块链。
6.一种数据保护装置,应用于交易数据在区块链中广播之后,其特征在于,包括:
交易获取模块:用于从区块链上获取签名交易以及数据接收方的用户私钥;
密钥获取模块:用于根据所述签名交易以及所述数据接收方的用户私钥获取解密密钥;
解密模块:用于根据所述解密密钥对所述签名交易中的加密数据进行解密,获取原始数据。
7.一种数据保护系统,其特征在于,包括:数据发送设备、第一节点前置设备、SM9密钥中心、区块链服务器、第二节点前置设备以及数据接收设备,所述SM9密钥中心分别与所述数据发送设备以及数据接收设备连接,所述第一节点前置设备分别与所述数据发送设备以及区块链服务器连接,所述第二节点前置设备分别与所述数据接收设备以及区块链服务器连接;
所述数据发送设备用于获取原始数据,并将所述原始数据发送至所述SM9密钥中心;
所述SM9密钥中心用于将所述原始数据进行加密,并将加密后的加密数据通过数据发送设备发送至第一节点前置设备;
所述第一节点前置设备用于将所述加密数据封装成区块链交易,并根据数据发送方的用户私钥对所述区块链交易进行签名,得到签名交易并上传至区块链;
所述区块链服务器用于将所述签名交易推送至所述第二节点前置设备;
所述第二节点前置设备用于将所述区块链交易进行解封,获取加密数据并将所述加密数据发送至数据接收设备;
所述数据接收设备用于将所述加密数据以及数据接收方的用户私钥发送至所述SM9密钥中心获取解密密钥,得到所述原始数据;
所述SM9密钥中心还用于执行权利要求1至4中任一项所述的数据保护方法。
8.根据权利要求7所述的数据保护系统,其特征在于,所述SM9中心包括:密码管理模块和密码生成模块;
所述密码生成模块用于根据用户信息生成解密密码;
所述密码管理模块用于根据用户信息存储解密密码。
9.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行权利要求1至4中任一项所述的数据保护方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4中任一项所述的数据保护方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110395793.1A CN113159766A (zh) | 2021-04-13 | 2021-04-13 | 数据保护方法、装置、系统、电子装置和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110395793.1A CN113159766A (zh) | 2021-04-13 | 2021-04-13 | 数据保护方法、装置、系统、电子装置和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113159766A true CN113159766A (zh) | 2021-07-23 |
Family
ID=76890236
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110395793.1A Pending CN113159766A (zh) | 2021-04-13 | 2021-04-13 | 数据保护方法、装置、系统、电子装置和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113159766A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113726510A (zh) * | 2021-08-30 | 2021-11-30 | 无锡井通网络科技有限公司 | 基于区块链的离线交易方法 |
CN113852469A (zh) * | 2021-09-24 | 2021-12-28 | 成都质数斯达克科技有限公司 | 区块链节点间数据传输方法、装置、设备及可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107911216A (zh) * | 2017-10-26 | 2018-04-13 | 矩阵元技术(深圳)有限公司 | 一种区块链交易隐私保护方法及系统 |
CN109409884A (zh) * | 2018-10-25 | 2019-03-01 | 北京安如山文化科技有限公司 | 一种基于sm9算法的区块链隐私保护方案和系统 |
CN110544101A (zh) * | 2019-09-10 | 2019-12-06 | 苏州阿尔山数字科技有限公司 | 基于sm9的联盟链身份认证方法 |
CN111027087A (zh) * | 2019-12-16 | 2020-04-17 | 智慧谷(厦门)物联科技有限公司 | 应用区块链助记词加密的企业信息管理系统及方法 |
CN111814191A (zh) * | 2020-08-24 | 2020-10-23 | 北京邮电大学 | 区块链隐私数据保护方法、装置及系统 |
-
2021
- 2021-04-13 CN CN202110395793.1A patent/CN113159766A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107911216A (zh) * | 2017-10-26 | 2018-04-13 | 矩阵元技术(深圳)有限公司 | 一种区块链交易隐私保护方法及系统 |
CN109409884A (zh) * | 2018-10-25 | 2019-03-01 | 北京安如山文化科技有限公司 | 一种基于sm9算法的区块链隐私保护方案和系统 |
CN110544101A (zh) * | 2019-09-10 | 2019-12-06 | 苏州阿尔山数字科技有限公司 | 基于sm9的联盟链身份认证方法 |
CN111027087A (zh) * | 2019-12-16 | 2020-04-17 | 智慧谷(厦门)物联科技有限公司 | 应用区块链助记词加密的企业信息管理系统及方法 |
CN111814191A (zh) * | 2020-08-24 | 2020-10-23 | 北京邮电大学 | 区块链隐私数据保护方法、装置及系统 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113726510A (zh) * | 2021-08-30 | 2021-11-30 | 无锡井通网络科技有限公司 | 基于区块链的离线交易方法 |
CN113852469A (zh) * | 2021-09-24 | 2021-12-28 | 成都质数斯达克科技有限公司 | 区块链节点间数据传输方法、装置、设备及可读存储介质 |
CN113852469B (zh) * | 2021-09-24 | 2024-03-22 | 成都质数斯达克科技有限公司 | 区块链节点间数据传输方法、装置、设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP4120114A1 (en) | Data processing method and apparatus, smart device and storage medium | |
Wang et al. | Blockchain-based anonymous authentication with key management for smart grid edge computing infrastructure | |
CN111083131B (zh) | 一种用于电力物联网感知终端轻量级身份认证的方法 | |
CN113783836B (zh) | 基于区块链和ibe算法的物联网数据访问控制方法及系统 | |
CN106357396B (zh) | 数字签名方法和系统以及量子密钥卡 | |
CN105162772B (zh) | 一种物联网设备认证与密钥协商方法和装置 | |
Choudhury et al. | A strong user authentication framework for cloud computing | |
CN108965230A (zh) | 一种安全通信方法、系统及终端设备 | |
CN106576043A (zh) | 病毒式可分配可信消息传送 | |
CN112543166B (zh) | 实名登录的方法及装置 | |
CN114710275B (zh) | 物联网环境下基于区块链的跨域认证和密钥协商方法 | |
CN114143117B (zh) | 数据处理方法及设备 | |
Li et al. | Design and implementation of an SM2-based security authentication scheme with the key agreement for smart grid communications | |
Ullah et al. | A secure NDN framework for Internet of Things enabled healthcare | |
CN113159766A (zh) | 数据保护方法、装置、系统、电子装置和存储介质 | |
Sadhukhan et al. | Cryptanalysis of an elliptic curve cryptography based lightweight authentication scheme for smart grid communication | |
Ayub et al. | Secure consumer-centric demand response management in resilient smart grid as industry 5.0 application with blockchain-based authentication | |
CN110166460B (zh) | 业务帐号的注册方法和装置、存储介质、电子装置 | |
CN113438650B (zh) | 基于区块链的网络设备认证方法及系统 | |
CN109302425A (zh) | 身份认证方法及终端设备 | |
WO2023116027A1 (zh) | 安全多方计算中的跨域身份验证方法及服务器 | |
Songshen et al. | Hash-Based Signature for Flexibility Authentication of IoT Devices | |
CN114095229B (zh) | 能源互联网的数据传输协议构建方法、装置和系统 | |
CN112560073A (zh) | 验证数据来源可靠性的方法、装置及系统 | |
Chen et al. | Research on Identity Authentication of IoT Devices based on Blockchain |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20210723 |
|
WD01 | Invention patent application deemed withdrawn after publication |