区块链的隐私数据加解密方法、装置、设备和存储介质制造方法及图纸

技术编号:21577069 阅读:27 留言:0更新日期:2019-07-10 16:56
本发明专利技术实施例公开了一种区块链的隐私数据加解密方法、装置、设备和存储介质。该方法包括:区块链系统交互过程中的第一交互端,对区块数据进行数据级加密或数据级解密,作为待交互信息;所述第一交互端将所述待交互信息进行接口级加密,形成接口级加密交互信息;所述第一交互端将所述接口级加密交互信息发送给第二交互端,其中,所述接口级加密交互信息用于供所述第二交互端进行接口级解密以获取所述待交互信息。本发明专利技术实施例兼顾了链数据隔离的数据级加密和交互过程隔离的接口级加密,保护更加全面。

Secret Data Encryption and Decryption Method, Device, Equipment and Storage Media of Block Chain

【技术实现步骤摘要】
区块链的隐私数据加解密方法、装置、设备和存储介质
本专利技术实施例涉及区块链数据加密技术,尤其涉及一种区块链的隐私数据加密方法、解密方法、装置、设备和存储介质。
技术介绍
在传统商品交换过程中,交易双方往往互相不信任。例如海鲜商贩会谎称昨日购进的海鲜为当天新捕捞的,而海鲜馆又很难去查证,因此通常引入一个第三方机构来担当中心控制的角色。然而,在现实的很多交易过程中,这个第三方机构很难找到,即使有,传统的系统也很难记录并追踪商品的流通过程,因为流程过程的记录容易被篡改。在这样的背景下,区块链技术应运而生。区块链是一种去中心化的分布式数据库,区块链所涉及每个节点都拥有一份完整的区块链数据,具有可追溯历史记录,历史变更不可修改等优势,在金融交易、资产风控管理、征信等领域有着广阔前景。然而,由于区块链涉及的节点均维护一份完整数据,使得所有节点均能看到区块链交易过程涉及用户的所有信息,如身份证号,账户号等,导致隐私信息容易泄露。传统的区块链数据隐私保护方法,往往是采取同一个密钥对区块链系统内所有区块链数据进行加密,在一定程度上保护了该区块链系统内数据不被系统外所获知。但是,该区块链系统内的区块链之间没能做到隐私隔离。而不同的区块链往往属于不同的业务线,彼此之间的数据保密性也是很重要的,所以现有的区块链数据隐私保护方案并不能满足多层次的隐私保护需求。
技术实现思路
本专利技术实施例提供一种区块链的隐私数据加密方法、解密方法、装置、设备和存储介质,以实现对区块链隐私数据的多层次保护。第一方面,本专利技术实施例提供了一种区块链的隐私数据加密方法,包括:区块链系统交互过程中的第一交互端,对区块数据进行数据级加密或数据级解密,作为待交互信息;所述第一交互端将所述待交互信息进行接口级加密,形成接口级加密交互信息;所述第一交互端将所述接口级加密交互信息发送给第二交互端,其中,所述接口级加密交互信息用于供所述第二交互端进行接口级解密以获取所述待交互信息。第二方面,本专利技术实施例还提供了一种区块链的隐私数据解密方法,包括:区块链系统交互过程中的第二交互端,接收第一交互端发送的接口级加密交互信息;对所述接口级加密交互信息进行接口级解密,以获取待交互信息;其中,所述待交互信息为所述第一交互端经过数据级加密或数据级解密的区块数据。第三方面,本专利技术实施例还提供了一种区块链的隐私数据加密装置,配置于区块链系统交互过程中的第一交互端,包括:数据级加解密模块,用于对区块数据进行数据级加密或数据级解密,作为待交互信息;接口级加密模块,用于将所述待交互信息进行接口级加密,形成接口级加密交互信息;交互信息发送模块,用于将所述接口级加密交互信息发送给第二交互端,其中,所述接口级加密交互信息用于供所述第二交互端进行接口级解密以获取所述待交互信息。第四方面,本专利技术实施例还提供了一种区块链的隐私数据解密装置,配置于区块链系统交互过程中的第二交互端,包括:交互信息接收模块,用于接收第一交互端发送的接口级加密交互信息;接口级解密模块,用于对所述接口级加密交互信息进行接口级解密,以获取待交互信息;其中,所述待交互信息为所述第一交互端经过数据级加密或数据级解密的区块数据。第五方面,本专利技术实施例还提供了一种计算机设备,所述设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本专利技术任意实施例所提供的区块链的隐私数据加密方法。第六方面,本专利技术实施例还提供了一种计算机设备,所述设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本专利技术任意实施例所提供的区块链的隐私数据解密方法。第七方面,本专利技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如本专利技术任意实施例所提供的区块链的隐私数据加密方法。第八方面,本专利技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如本专利技术任意实施例所提供的区块链的隐私数据解密方法。本实施例所提供的技术方案具有以下优点:1)链数据隔离。本专利技术实施例在向区块链写入区块数据时,采取区块写入者在这条区块链上的数据级加密,由于不同区块链以及不同写入者的数据级密钥不同,从而达到链数据相互隔离的目的,也避免了因一个数据级密钥泄露导致全部数据泄露的问题;2)隐私保护更全面。本专利技术实施例在区块数据采用了数据级加密方式,在系统间接口交互时使用了接口级加密手段,进一步增加了密钥破解难度,保护了区块链系统的隐私数据。附图说明图1为本专利技术实施例一提供的区块链的隐私数据加密方法的流程图;图2是本专利技术实施例二提供的区块链的隐私数据加密方法的流程图;图3是本专利技术实施例三提供的区块链的隐私数据加密方法的流程图;图4是本专利技术实施例四提供的区块链的隐私数据加密方法的流程图;图5是本专利技术实施例五提供的区块链的隐私数据解密方法的流程图;图6是本专利技术实施例六提供的区块链的隐私数据加密装置的结构示意图;图7是本专利技术实施例七提供的区块链的隐私数据解密装置的结构示意图;图8是本专利技术实施例八提供的计算机设备的结构示意图。具体实施方式下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。实施例一图1为本专利技术实施例一提供的一种区块链的隐私数据加密方法的流程图,本实施例可适用于区块链系统中各个主体交互过程,特别是涉及区块链数据的交互过程,能够起到对区块链的隐私数据进行保护的作用。为便于理解技术方案,首先介绍区块链系统。本专利技术实施例所涉及的区块链系统包括平台、节点和操作端这三类模块。每个模块都是独立运行的主体。平台核心计算设备,起到总体管理的作用,例如能够负责各种密钥和公私钥的生成、证书颁发、管理区块链和用户元信息等功能,带有人机交互界面,供管理人员进行设置和查询等操作;节点,即区块链节点,为计算设备,负责区块链上区块数据的编辑和存储,通常不带人机交互界面;操作端,与节点一般是一一对应的应用程序客户端,也可以多个操作端设置在一个节点上,或者一个操作端拥有几个节点,操作端带有人机交互界面,供用户输入和查询区块链,只展示其对应节点上的区块链数据。本专利技术实施例所涉及的区块链由链头和若干区块构成,每个区块由区块头和区块体构成。链头主要包含:1)链ID;2)链拥有者ID;3)链状态(启用、暂停、废弃);4)创建时间戳;5)所有参与者概要信息;8)末尾区块编号等。区块头主要包含:1)链ID;2)区块编号;3)创建时间戳;4)区块hash(即区块头与加密前区块体一起计算的hash值);5)前一区块的hash;6)前一区块的编号;7)当前区块写入者ID;8对称密钥等。区块体就是具体的交易业务数据。当然,本领域技术人员可以理解,上述所列出的链头和区块头中的详细信息,仅用于举例以形象理解区块链,并不用于限制区块链中必须包含上述数据信息,可以根据实际区块链的需要进行信息设置。基于上述所介绍的区块链系统和区块链结构,本实施例所提供的区本文档来自技高网...

【技术保护点】
1.一种区块链的隐私数据加密方法,其特征在于,包括:区块链系统交互过程中的第一交互端,对区块数据进行数据级加密或数据级解密,作为待交互信息;所述第一交互端将所述待交互信息进行接口级加密,形成接口级加密交互信息;所述第一交互端将所述接口级加密交互信息发送给第二交互端,其中,所述接口级加密交互信息用于供所述第二交互端进行接口级解密以获取所述待交互信息。

【技术特征摘要】
1.一种区块链的隐私数据加密方法,其特征在于,包括:区块链系统交互过程中的第一交互端,对区块数据进行数据级加密或数据级解密,作为待交互信息;所述第一交互端将所述待交互信息进行接口级加密,形成接口级加密交互信息;所述第一交互端将所述接口级加密交互信息发送给第二交互端,其中,所述接口级加密交互信息用于供所述第二交互端进行接口级解密以获取所述待交互信息。2.根据权利要求1所述的方法,其特征在于,所述第一交互端对所述待交互信息进行接口级加密,形成接口级加密交互信息包括:所述第一交互端生成第一对称密钥DK,并使用对称加密算法,对所述待交互信息data进行加密,得到对称加密交互信息data’;所述第一交互端使用非对称加密算法,及所述第二交互端的接口级非对称加密公钥Res_P对DK进行加密,得到第一加密对称密钥DK’;其中,所述data’和DK’作为所述接口级加密交互信息。3.根据权利要求2所述的方法,其特征在于,还包括:在第一交互端与第二交互端发起交互时,基于分配给所述第一交互端的证书建立交互通道。4.根据权利要求2所述的方法,其特征在于,在得到加密对称密钥DK’之后,还包括:所述第一交互端使用签名计算算法,将所述data’、DK’和己方的接口级非对称加密私钥Req_S进行签名计算,以产生签名Sign;所述第一交互端发送所述Sign给所述第二交互端,用于所述第二交互端根据所述Sign进行签名验证。5.根据权利要求4所述的方法,其特征在于:所述第一交互端和第二交互端为区块链系统中的平台、节点或操作端;所述接口级非对称加密公钥和私钥由平台产生,并将其中的私钥分配给对应的交互端,将其中的公钥提供给所述区块链系统中的各交互端。6.根据权利要求1所述的方法,其特征在于,区块链系统交互过程中的第一交互端,对区块数据进行数据级加密或数据级解密,作为待交互信息包括:所述第一交互端在发起交易操作时,作为区块写入者产生区块数据,对所述区块数据进行数据级加密,作为待交互信息并在本地存储;和/或所述第一交互端接收到区块读取请求时,作为区块写入者对本地存储的待读取区块数据进行数据级解密,并将解密后的区块数据作为所述待交互信息。7.根据权利要求6所述的方法,其特征在于:所述第一交互端在发起交易操作时,作为区块写入者产生区块数据,对所述区块数据进行数据级加密,作为待交互信息包括:在第一交互端发起交易操作时,作为区块写入者产生区块体数据;所述第一交互端生成第二对称密钥Syn_K,并采用所述Syn_K和对称加密算法,对所述区块体数据进行加密,得到区块体密文数据;所述第一交互端使用己方的数据级非对称加密公钥Syn_P和非对称加密算法,对所述Syn_K进行加密,得到第二加密对称密钥Syn_K’;所述第一交互端形成区块头字段,将区块头字段和区块体数据进行哈希计算,并将哈希值填充到区块头中的哈希字段,以完善所述区块头;所述第一交互端将所述区块体密文数据和区块头写入区块,作为所述待交互信息;相应的,所述第一交互端接收到区块读取请求时,作为区块写入者对本地存储的待读取区块数据进行数据级解密,并将解密后的区块数据作为所述待交互信息包括:所述第一交互端接收到第二交互端发起的区块读取请求后,作为区块写入者从本地存储的待读取区块数据中读取区块体密文数据和区块头;所述区块写入者使用己方的数据级非对称加密私钥Syn_S和非对称加密算法,对区块头中的Syn_K’进行解密,获取所述Syn_K;所述区块写入者使用所述Syn_K和对称加密算法,对所述区块体密文数据进行解密,得到区块体,作为解密后的区块数据。8.根据权利要求7所述的方法,其特征在于:所述Syn_S和Syn_P由平台在节点加入区块链时分配。9.根据权利要求1所述的方法,其特征在于,还包括:区块链系统中的平台通过系统接口接收访问账户申请;所述平台根据所述访问账户申请,建立访问账...

【专利技术属性】
技术研发人员:李丰钱坤肖伟王云鹏徐栋张伟赵猛张辰朱琨
申请(专利权)人:百度在线网络技术北京有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1