CN115118426A - 区块链系统的数据处理方法、装置、设备及存储介质 - Google Patents
区块链系统的数据处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN115118426A CN115118426A CN202210239588.0A CN202210239588A CN115118426A CN 115118426 A CN115118426 A CN 115118426A CN 202210239588 A CN202210239588 A CN 202210239588A CN 115118426 A CN115118426 A CN 115118426A
- Authority
- CN
- China
- Prior art keywords
- parameter
- transaction data
- target
- ciphertext
- password parameter
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 18
- 238000012795 verification Methods 0.000 claims abstract description 55
- 238000012545 processing Methods 0.000 claims abstract description 29
- 238000000034 method Methods 0.000 claims description 42
- 238000004590 computer program Methods 0.000 claims description 23
- 238000005538 encapsulation Methods 0.000 claims description 17
- 230000001960 triggered effect Effects 0.000 claims description 16
- 238000004806 packaging method and process Methods 0.000 claims description 5
- 238000004458 analytical method Methods 0.000 claims description 3
- 238000012858 packaging process Methods 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 15
- 238000004891 communication Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 6
- 230000005236 sound signal Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002427 irreversible effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Classifications
-
- 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
- H04L9/3247—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 involving digital 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- 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
-
- 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
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- 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
- H04L63/0876—Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
-
- 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/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1078—Resource delivery mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/72—Signcrypting, i.e. digital signing and encrypting simultaneously
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Power Engineering (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本申请实施例提供一种区块链系统的数据处理方法、装置、设备及存储介质。在本申请实施例中,客户端在封装用户提交的原始交易数据时,结合系统级密码参数管理智能合约和客户端的区块链账户信息参与数据封装过程中的加密处理和签名处理,并在数据封装过程中封装了较多的数据信息,以便区块链节点可以对来源于客户端的目标交易数据进行多维度的安全性验证,进而保证安全可信的交易数据才可以加入至区块链系统中,保证了区块链系统的数据安全性和可信度,在一定程度上使得区块链系统成为可信区块链系统。
Description
技术领域
本申请涉及区块链技术领域,尤其涉及一种区块链系统的数据处理方法、装置、设备及存储介质。
背景技术
区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算范式。
目前,区块链系统主要包括客户端和区块链节点。用户通过客户端提交交易请求,与客户端连接的区块链节点对交易请求中的交易数据进行验证,并在验证通过后,将交易数据广播至区块链系统中,以供区块链系统中具有区块生成功能的区块链节点将交易数据打包至区块中,并向区块链系统广播区块,以供区块链系统将区块加入至区块链上进行存储。
实际应用中,任一区块链节点可能会接收到不同来源的交易数据,例如,由客户端提交的交易数据,或者,由其他区块链节点转发的由客户端产生的交易数据。由于任一区块链节点接收到的交易数据来源较多,若不加强对交易数据的数据安全管理,很容易降低区块链网络的数据安全性,进而影响区块链系统的可信度。于是,如何保证区块链网络的数据安全性成为亟待解决的技术问题。
发明内容
本申请的多个方面提供一种区块链系统的数据处理方法、装置、设备及存储介质,用以保证安全可信的交易数据才可以加入至区块链系统中,保证区块链系统的数据安全性和可信度。
本申请实施例提供一种区块链系统的数据处理方法,应用于区块链系统中的客户端,该方法包括:根据用户触发的交易请求,获取原始交易数据、系统级密码参数管理智能合约的第一智能合约ID和客户端的区块链账户信息,区块链账户信息包括:目标区块链账户标识和至少一个账户参数;根据目标区块链账户标识,调用第一智能合约ID对应的系统级密码参数管理智能合约,获取目标密码参数ID及其对应的第一密码参数密文,系统级密码参数管理智能合约中保存有至少一个密码参数ID及其对应的密码参数密文和区块链账户标识;根据至少一个账户参数,结合目标密码参数ID及其对应的第一密码参数密文,对原始交易数据进行加密处理,得到交易数据密文;根据至少一个账户参数,对目标密码参数ID和交易数据密文进行数字签名,得到签名结果;对交易数据密文、签名结果、目标密码参数ID、第一智能合约 ID和客户端的区块链账户信息进行数据封装,得到目标交易数据,并将目标交易数据发送至区块链网络中。
本申请实施例还提供一种区块链系统的数据处理方法,应用于区块链系统中的第一区块链节点,该方法包括:接收目标交易数据,目标交易数据来自于客户端;对目标交易数据进行解析,以获取目标交易数据中包含的数据信息;若数据信息包括交易数据密文及其对应的签名结果,客户端的区块链账户信息及其对应的目标密码参数ID,以及第一智能合约ID,区块链账户信息包括目标区块链账户标识和至少一个账户参数,则根据至少一个账户参数对签名结果进行签名验证;根据目标区块链账户标识和目标密码参数 ID,调用第一智能合约ID对应的系统级密码参数管理智能合约,以判断系统级密码参数管理智能合约中是否包含目标密码参数ID及其对应的第一密码参数密文;系统级密码参数管理智能合约中保存有至少一个密码参数ID及其对应的密码参数密文和区块链账户标识;若包含,且签名结果通过验签,则根据第一密码参数密文,对交易数据密文进行解密,得到原始交易数据。
本申请实施例还提供一种区块链系统的数据处理装置,包括:获取模块,用于根据用户触发的交易请求,获取原始交易数据、系统级密码参数管理智能合约的第一智能合约ID和客户端的区块链账户信息,区块链账户信息包括:目标区块链账户标识和至少一个账户参数;调用模块,用于根据目标区块链账户标识,调用第一智能合约ID对应的系统级密码参数管理智能合约,获取目标密码参数ID及其对应的第一密码参数密文,系统级密码参数管理智能合约中保存有至少一个密码参数ID及其对应的密码参数密文和区块链账户标识;加密模块,用于根据至少一个账户参数,结合目标密码参数ID及其对应的第一密码参数密文,对原始交易数据进行加密处理,得到交易数据密文;数字签名模块,用于根据至少一个账户参数,对目标密码参数ID和交易数据密文进行数字签名,得到签名结果;封装模块,用于对交易数据密文、签名结果、目标密码参数ID、第一智能合约ID和客户端的区块链账户信息进行数据封装,得到目标交易数据,并将目标交易数据发送至区块链网络中。
本申请实施例还提供一种区块链系统的数据处理装置,包括:获取模块,用于接收目标交易数据,目标交易数据来自于客户端;解析模块,用于对目标交易数据进行解析,以获取目标交易数据中包含的数据信息;
验证模块,用于若数据信息包括交易数据密文及其对应的签名结果,客户端的区块链账户信息及其对应的目标密码参数ID,以及第一智能合约ID,区块链账户信息包括目标区块链账户标识和至少一个账户参数,则根据至少一个账户参数对签名结果进行签名验证;调用模块,用于根据目标区块链账户标识和目标密码参数ID,调用第一智能合约 ID对应的系统级密码参数管理智能合约,以判断系统级密码参数管理智能合约中是否包含目标密码参数ID及其对应的第一密码参数密文;系统级密码参数管理智能合约中保存有至少一个密码参数ID及其对应的密码参数密文和区块链账户标识;解密模块,用于若包含,且签名结果通过验签,则根据第一密码参数密文,对交易数据密文进行解密,得到原始交易数据。
本申请实施例还提供一种电子设备,包括:存储器和处理器;存储器,用于存储计算机程序;处理器耦合至存储器,用于执行计算机程序以用于执行区块链系统的数据处理方法中的步骤。
本申请实施例还提供一种存储有计算机程序的计算机存储介质,当计算机程序被处理器执行时,致使处理器能够实现区块链系统的数据处理方法中的步骤。
在本申请实施例中,客户端在封装用户提交的原始交易数据时,结合系统级密码参数管理智能合约和客户端的区块链账户信息参与数据封装过程中的加密处理和签名处理,并在数据封装过程中封装了较多的数据信息,以便区块链节点可以对来源于客户端的目标交易数据进行多维度的安全性验证,进而保证安全可信的交易数据才可以加入至区块链系统中,保证了区块链系统的数据安全性和可信度,在一定程度上使得区块链系统成为可信区块链系统。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的一种区块链系统的结构示意图;
图2为本申请实施例提供的一种区块链系统的数据处理方法的流程示意图;
图3为本申请实施例提供的另一种区块链系统的数据处理方法的流程示意图;
图4为本申请实施例提供的一种区块链系统的数据处理装置的结构示意图;
图5为本申请实施例提供的另一种区块链系统的数据处理装置的结构示意图;
图6为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
针对现有区块链网络的数据安全性不高的技术问题,本申请实施例提供一种区块链系统的数据处理方法、装置、设备及存储介质,在本申请实施例中,客户端在封装用户提交的原始交易数据时,结合系统级密码参数管理智能合约和客户端的区块链账户信息参与数据封装过程中的加密处理和签名处理,并在数据封装过程中封装了较多的数据信息,以便区块链节点可以对来源于客户端的目标交易数据进行多维度的安全性验证,进而保证安全可信的交易数据才可以加入至区块链系统中,保证了区块链系统的数据安全性和可信度,在一定程度上使得区块链系统成为可信区块链系统。
首先对本申请所涉及的名词进行解释:
P2P(Peer-to-peer networking)网络:又称为对等式网络,或者点对点网络,网络的参与者共享他们所拥有的一部分硬件资源(诸如处理能力、存储能力、网络连接能力和打印机等),这些共享资源通过网络提供服务和内容,能被其它对等节点(Peer)直接访问而无需经过中间实体。
智能合约(Smart contract):是一种旨在以信息化方式传播、验证或执行合同的计算机协议。智能合约允许在没有第三方的情况下进行可信交易,这些交易可追踪且不可逆转。从本质上讲,这些自动合约的工作原理类似于其它计算机程序的if-then语句。智能合约只是以这种方式与真实世界的资产进行交互。当一个预先编好的条件被触发时,智能合约执行相应的合同条款。
结合图1介绍本申请实施例提供的区块链系统。在本申请实施例中,区块链系统的对象主要分为:客户端、区块链节点、区块产生节点。其中,各个区块链节点通过P2P(Peerto Peer) 对等网络建立连接,以形成区块链网络。值得注意的是,在本申请实施例中,区块产生节点是专门负责产生区块的工作节点,与通过P2P(Peer to Peer)对等网络建立连接的区块链节点不同。各个区块产生节点可与关联的区块链节点进行通信连接,各个区块产生节点独立于区块链网络之外,并不属于区块链网络中的节点。
该区块链系统的工作流程大致是:用户通过客户端向区块链网络中的区块链节点发送交易请求;区块链网络中区块链节点响应交易请求对交易数据进行验证,验证成功后,区块链网络中区块链节点向区块产生节点发送产生区块请求;区块产生节点响应产生区块请求根据交易数据进行产生区块,以生成包括交易数据的区块,并向区块链网络中的区块链节点发送区块,区块链网络中的区块链节点将区块加入至区块链中。
在本申请实施例中,区块链节点或区块产生节点可以是终端设备或服务器。其中,终端设备可以是硬件也可以是软件。当终端设备为硬件时,终端设备例如为手机、平板电脑、台式计算机、可穿戴式智能设备、智能家居设备等。当终端设备为软件时,其可以安装在上述列举的硬件设备中,此时,终端设备例如为多个软件模块或单个软件模块等,本申请实施例并不限制。服务器可以是硬件也可以是软件。当服务器为硬件时,该服务器为单个服务器或多个服务器组成的分布式服务器集群。当服务器为软件时,可以为多个软件模块或单个软件模块等,本申请实施例并不限制。
应当理解的是,图1中的客户端、区块链节点和区块产生节点的数量仅仅是示意性的。实际应用中,根据实际需求部署任意数量的客户端、区块链节点和区块产生节点。另外,图 1中的n为正整数。
在本申请实施例中,对区块链网络的类型不做限制,例如可以是公有区块链(Public Block Chains)、私有区块链(Private Block Chains)、联盟区块链和许可区块链等等。其中,公有区块链具有公开部署的特点,任何人都可以随意参加;私有区块链具有私有部署的特点,限制在某个组织内部使用;联盟区块链和许可区块链均具有私有部署的特点,多组织多机构共同使用,具有准入和权限管理机制。
在本申请实施例中,客户端、区块链节点以及区块产生节点等不同角色的对象负责不同的任务。示例性的,客户端负责的任务例如可以但不限于:1)产生并签名交易数据;2)将交易数据发送给节点;3)根据业务需要,调用区块链节点所提供的区块链访问接口,以实现所需的业务能力。示例性的,区块链节点负责的任务例如可以但不限于:1)接收客户端产生的交易数据或其他区块链节点转发的交易数据,对交易数据进行验证后缓存或转发到其他区块链节点;2)构建预签名区块并发送给区块产生节点,接收区块产生节点处理并签名后的完整区块或其他区块链节点转发的完整区块,对完整区块进行验证后存储或转发到其他区块链节点;3)为客户端提供访问区块链网络的各种接口。示例性的,区块产生节点负责的任务例如可以但不限于:1)接收区块链节点发送的预签名区块,并进行验证;2)对验证通过的预签名区块进行共识计算,组成完整区块并签名;3)返回完整区块给区块链节点。
在本申请实施例中,为了进一步增强区块链系统的可信度,考虑对象角色和对象负责的任务等因素,对区块链系统各个对象的链上行为进行管控。其中,链上行为是指对象可在区块链系统中进行的操作行为,链上行为的类别大致包括:读取、调用、产生区块、部署、管理等。相应的,链上行为权限包括读取权限、调用权限、产生区块权限、部署权限和管理权限。
其中,具有读取权限的对象可以读取区块链系统中的信息,例如包括获取交易数据、获取区块、访问系统级智能合约或者业务级智能合约的读类型接口;
具有调用权限的对象可以调用业务级智能合约的写类型接口;具有产生区块权限的对象可以产生区块;例如,可以产生预签名区块或者产生基于预签名区块产生的完整区块;具有部署权限的对象可以部署业务级智能合约;具有管理权限的对象可以调用系统级智能合约的写类型接口,以完成区块链系统的管理操作。
进一步可选的,区块链节点可配置的权限范围可以包括:读取权限和产生区块权限。客户端可配置的权限范围可以包括:读取权限、调用权限、部署权限和管理权限。区块产生节点可配置的权限范围可以包括:产生区块。
在本申请实施例中,区块链节点上可以提供系统级智能合约和业务级智能合约。系统级智能合约是指写在区块链上创世区块中的智能合约,用于管理区块链系统本身的智能合约,按照管理范围进行划分,系统级智能合约可以包括系统级账户管理智能合约、系统级密码参数管理智能合约和系统级联盟管理智能合约。业务级智能合约是指由客户端通过交易部署在区块链上除创世区块之外的其他区块中的智能合约。业务级智能合约可以是任何功能的智能合约,可以根据实际应用需求进行开发。
其中,系统级账户管理智能合约主要用于维护和管理客户端、区块链节点和区块产生节点的链上行为权限。示例性的,调用系统级账户管理智能合约提供的写类型接口,可以在系统级账户管理智能合约中配置区块链系统中各个对象的区块链账户标识及其链上行为权限。调用系统级账户管理智能合约提供的读类型接口,可以查询系统级账户管理智能合约中预先配置的区块链系统中各个对象的区块链账户标识及其链上行为权限。
系统级密码参数管理智能合约主要用于维护和管理可信的密码参数。在本实施例中,预先在系统级密码参数管理智能合约中保存有至少一个密码参数ID及其对应的密码参数密文和区块链账户标识。值得注意的是,同一个密码参数ID可以关联多个区块链账户标识以及每个区块链账户标识关联的密码参数密文。客户端可以向部署有第一智能合约ID对应的系统级密码参数管理智能合约的区块链节点发送读请求,该读请求中至少包括客户端自身的目标区块链账户标识和第一智能合约ID,节点根据读请求执行系统级密码参数管理智能合约,系统级密码参数管理智能合约调用读类型接口,以从保存的至少一个密码参数ID及其对应的密码参数密文和区块链账户标识中,获取目标区块链账户标识对应的目标密码参数ID及其第一密码参数密文。
系统级联盟管理智能合约主要用于维护和管理可信的联盟网络。值得注意的是,可以将整个区块链系统划分为多个不同相互间隔离的联盟网络。示例性的,调用系统级联盟管理智能合约提供的写类型接口,可以在系统级联盟管理智能合约中配置可信的联盟标识。调用系统级联盟管理智能合约提供的读类型接口,可以查询系统级联盟管理智能合约中预先配置的可信的联盟标识。其中,联盟标识用于标识同一个区块链系统中不同联盟网络的唯一性,不同联盟网络具有不同的联盟标识。
图2为本申请实施例提供的一种区块链系统的数据处理方法的流程示意图。该方法的执行主体为客户端,如图2所示,该方法包括以下步骤:
201、根据用户触发的交易请求,获取原始交易数据、系统级密码参数管理智能合约的第一智能合约ID和客户端的区块链账户信息,区块链账户信息包括:目标区块链账户标识和至少一个账户参数。
202、根据目标区块链账户标识,调用第一智能合约ID对应的系统级密码参数管理智能合约,获取目标密码参数ID及其对应的第一密码参数密文,系统级密码参数管理智能合约中保存有至少一个密码参数ID及其对应的密码参数密文和区块链账户标识。
203、根据至少一个账户参数,结合目标密码参数ID及其对应的第一密码参数密文,对原始交易数据进行加密处理,得到交易数据密文。
204、根据至少一个账户参数,对目标密码参数ID和交易数据密文进行数字签名,得到签名结果。
205、对交易数据密文、签名结果、目标密码参数ID、第一智能合约ID和客户端的区块链账户信息进行数据封装,得到目标交易数据,并将目标交易数据发送至区块链网络中。
在本实施例中,客户端对用户触发的交易请求进行解析,可获取到的数据信息例如包括但不限于:原始交易数据、若干个智能合约ID(Identity document,标识)和联盟网络标识。其中,不同智能合约ID所标识的智能合约不同,不同联盟网络标识所标识的联盟网络不同。
在本实施例中,客户端从交易请求解析出的若干个智能合约ID中获取第一智能合约ID,该第一智能合约ID标识系统级密码参数管理智能合约。另外,客户端还获取本地保存的自身的区块链账户信息。客户端的区块链账户信息例如包括但不限于:目标区块链账户标识和至少一个账户参数。其中,目标区块链账户标识用于标识客户端在区块链系统中的唯一性,例如可以包括但不限于:专属于客户端自身的公钥,或者,采用现有的算法对专属于客户端自身的公钥进行计算所得到的区块链地址。客户端的区块链账户信息可以包括若干个账户参数,若干个账户参数例如可以包括但不限于:专属于客户端自身的公钥、私钥或区块链地址。
在本实施例中,预先在系统级密码参数管理智能合约中保存有至少一个密码参数ID及其对应的密码参数密文和区块链账户标识。值得注意的是,同一个密码参数ID可以关联多个区块链账户标识以及每个区块链账户标识关联的密码参数密文。客户端可以向部署有第一智能合约ID对应的系统级密码参数管理智能合约的区块链节点发送读请求,该读请求中至少包括客户端自身的目标区块链账户标识和第一智能合约ID,节点根据读请求执行系统级密码参数管理智能合约,系统级密码参数管理智能合约调用读类型接口,以从保存的至少一个密码参数ID及其对应的密码参数密文和区块链账户标识中,获取目标区块链账户标识对应的目标密码参数ID及其第一密码参数密文。
在本实施例中,系统级密码参数管理智能合约可以有效地管理和维护区块链系统中各个对象对应的密码参数ID及其第一密码参数密文。通过调用系统级密码参数管理智能合约获取客户端封装原始交易数据所需的目标密码参数ID及其第一密码参数密文,可以有效提升数据封装结果的安全性。
在本实施例中,客户端可以从至少一个账户参数中选择任一个或多个账户参数参与加密处理。为了便于理解,将参与加密处理的账户参数称作为第一账户参数。进一步可选的,为了进一步提高数据安全性,步骤203的可选实现方式是:客户端采用第一账户参数对第一密码参数密文进行解密,得到第一密码参数;客户端生成第二密码参数,并利用第一密码参数加密第二密码参数,得到第二密码参数密文,以及利用第二密码参数对原始交易数据进行加密,得到交易数据密文。
值得注意的是,利用调用系统级密码参数管理智能合约所得的第一密码参数对用于加密原始交易数据的第二密码参数进行加密,在第二密码参数密文跟随交易数据密文发送至区块链节点之后,也需调用系统级密码参数管理智能合约才能完成对第二密码参数密文的解密,进而有效地增加了交易数据密文的解密难度,保证了交易数据的数据安全性。
在本实施例中,客户端可以从至少一个账户参数中选择任一个或多个账户参数参与加密处理。为了便于理解,将参与数字签名的账户参数称作为第二账户参数。实际应用中,可以采用第二账户参数对第一智能合约ID、目标密码参数ID、第二密码参数密文和交易数据密文中至少一种进行数字签名。当然,为了进一步提高数据安全性,步骤203 的实现方式是:采用第二账户参数对第一智能合约ID、目标密码参数ID、第二密码参数密文和交易数据密文进行数字签名,得到签名结果。
在本实施例中,客户端在数据封装时,可以按照实际需求选择需要封装的数据信息。例如,客户端可以对交易数据密文、签名结果、目标密码参数ID、第一智能合约ID和客户端的区块链账户信息进行数据封装,得到目标交易数据。又例如,客户端可以将交易数据密文、第二密码参数密文、客户端的区块链账户信息、第一智能合约ID、签名结果、目标密码参数ID进行数据封装,得到目标交易数据。又例如,客户端在数据封装时,可以从交易请求中获取原始交易数据所属目标联盟网络对应的目标联盟网络标识;将交易数据密文、第二密码参数密文、客户端的区块链账户信息、第一智能合约ID、签名结果、目标密码参数ID、目标联盟网络对应的目标联盟网络标识进行数据封装,得到目标交易数据。值得注意的是,目标交易数据封装的数据信息越多,后续节点在对来源于客户端的目标交易数据进行多维度的安全性验证,进而保证安全的交易数据才可以加入至区块链网络中,保证了区块链网络的数据安全性,提升了区块链系统的可信度。
客户端在对用户提交的原始交易数据封装得到目标交易数据之后,客户端将目标交易数据发送至区块链网络中,以使区块链网络中其他区块链节点可以获取到目标交易数据,并对目标交易数据进行相关的数据处理。
为了便于理解,以表1所示的数据结构为例介绍一种在实际应用中的目标交易数据。
表1
实际应用中,客户端响应用户触发的交易请求,从用户触发的交易请求中可以分别解析出联盟网络标识、智能合约ID和原始交易数据,以及获取本地保存的客户端的区块链账户信息;接着,根据客户端的区块链账户和系统级密码参数管理智能合约的智能合约ID调用系统级密码参数管理智能合约,获取与客户端的区块链账户对应的目标密码参数ID及其第一密码参数密文;接着,客户端利用区块链账户信息中的私钥对第一密码参数密文进行解密,得到目标密码参数ID对应的第一密码参数,接着,客户端生成第二密码参数,并利用第一密码参数加密第二密码参数,得到第二密码参数密文;接着,客户端利用第二密码参数对原始交易数据进行加密,得到交易数据密文;接着,客户端将交易数据密文、第二密码参数密文、客户端的区块链账户信息、第一智能合约ID、签名结果、目标密码参数ID、目标联盟网络对应的目标联盟网络标识进行数据封装,得到目标交易数据。
本申请实施例提供的区块链系统的数据处理方法,客户端在封装用户提交的原始交易数据时,结合系统级密码参数管理智能合约和客户端的区块链账户信息参与数据封装过程中的加密处理和签名处理,并在数据封装过程中封装了较多的数据信息,以便区块链节点可以对来源于客户端的目标交易数据进行多维度的安全性验证,进而保证安全可信的交易数据才可以加入至区块链系统中,保证了区块链系统的数据安全性和可信度,在一定程度上使得区块链系统成为可信区块链系统。
图3为本申请实施例提供的另一种区块链系统的数据处理方法的流程示意图。该方法的执行主体为区块链系统中的第一区块链节点,第一区块链节点为任意的区块链节点。如图3 所示,该方法包括以下步骤:
301、接收目标交易数据,目标交易数据来自于客户端。
302、对目标交易数据进行解析,以获取目标交易数据中包含的数据信息。
303、若数据信息包括交易数据密文及其对应的签名结果,客户端的区块链账户信息及其对应的目标密码参数ID,以及第一智能合约ID,区块链账户信息包括目标区块链账户标识和至少一个账户参数,则根据至少一个账户参数对签名结果进行签名验证。
304、根据目标区块链账户标识和目标密码参数ID,调用第一智能合约ID对应的系统级密码参数管理智能合约,以判断系统级密码参数管理智能合约中是否包含目标密码参数ID及其对应的第一密码参数密文;系统级密码参数管理智能合约中保存有至少一个密码参数ID及其对应的密码参数密文和区块链账户标识。
305、若包含,且签名结果通过验签,则根据第一密码参数密文,对交易数据密文进行解密,得到原始交易数据。
在本实施例中,第一区块链节点可以与其已建立数据传输通道的客户端发送的目标交易数据,也可以接收由其他区块链节点转发的客户端所发送的目标交易数据,也可以对区块产生节点或其他区块链节点发送的新区块中的来源于客户端的目标交易数据,但并不以此为例。
第一区块链节点接收到目标交易数据之后,对目标交易数据进行解析,以获取目标交易数据中包含的数据信息。第一区块链节点根据目标交易数据中包含的数据信息对目标交易数据的安全性进行验证。具体而言,若解析到目标交易数据包括以下数据信息:交易数据密文及其对应的签名结果,客户端的区块链账户信息及其对应的目标密码参数 ID,以及第一智能合约ID,则结合上述数据信息对签名结果进行签名验证,以及调用系统级密码参数管理智能合约验证目标密码参数ID的合法性,并在签名验证结果为验证通过和目标密码参数ID验证为合法后,第一区块链节点再对交易数据密文进行解密,以获得原始交易数据,以保证合法交易数据加入至区块链网络中,保证区块链网络的数据安全性和区块链系统的可信度。当然,在签名验证结果为验证未通过或者目标密码参数ID 验证为不合法时,第一区块链节点认为接收到的目标交易数据是非法交易数据,并丢弃该非法交易数据,以阻止非法交易数据加入至区块链网络中,影响区块链网络的数据安全性,降低区块链系统的可信度。
值得注意的是,步骤303和步骤304可以顺序执行或者并行执行,本申请实施例对此不做限制。
在本实施例中,根据客户端进行数字签名所使用的账户参数确定第一区块链节点进行签名验证所使用的账户参数。具体而言,在客户端使用第二账户参数进行数字签名的情况下,第一区块链节点从客户端的区块链账户信息中获取与第二账户参数对应的第三账户参数对签名结果进行签名验证。其中,签名结果可以是客户端对第二账户参数对第一智能合约ID、目标密码参数ID、第二密码参数密文和交易数据密文中一个或多个进行数字签名得到的。当然,参与数字签名的数据信息越多,越有可能提高数据安全性。
在本实施例中,预先在系统级密码参数管理智能合约中保存有至少一个密码参数ID 及其对应的密码参数密文和区块链账户标识。
第一区块链节点从目标交易数据中获取到目标密码参数ID、第一智能合约ID和客户端的区块链账户信息后,根据客户端的区块链账户信息中目标区块链账户标识和目标密码参数ID,调用第一智能合约ID对应的系统级密码参数管理智能合约,以判断系统级密码参数管理智能合约中是否包含目标密码参数ID及其对应的第一密码参数密文。
进一步可选的,第一区块链节点在根据第一密码参数密文,对交易数据密文进行解密,得到原始交易数据之前,还可以:根据数据信息,分析目标交易数据的数据结构,并确定目标交易数据的数据结构为设定数据结构。
值得说明的是,设定数据结构可以根据实际需要指定,例如,设定数据结构需要前述实施例中表1中所列举的字段中的多个字段。
在本实施例中,在进行签名验证和目标密码参数ID的合法性验证的基础上,增设目标交易数据的数据结构是否为设定数据结构的验证,进而从更多维度验证目标交易数据的合法性,有利于保证区块链网络的数据安全性和区块链系统的可信度。
进一步可选的,在客户端的区块链账户信息的至少一个账户参数包括第一账户参数和第二账户参数的情况下,若从目标交易数据解析得到的数据信息还包括第二密码参数密文;相应地,第一区块链节点根据第一密码参数密文,对交易数据密文进行解密,得到原始交易数据的方式为:采用第一账户参数对第一密码参数密文进行解密,得到第一密码参数;利用第一密码参数对第二密码参数密文进行解密,得到第二密码参数;利用第二密码参数对交易数据密文进行解密,得到原始交易数据。
实际应用中,目标交易数据中封装的数据信息可以按照实际应用需求设置,例如,目标交易数据可能还封装有以下数据信息:目标联盟网络标识、标识系统级联盟管理智能合约的第二智能合约ID以及标识系统级账户管理智能合约的第三智能合约ID。进一步可选的,出于从更多维度验证目标交易数据的合法性的考虑,第一区块链节点在根据第一密码参数密文,对交易数据密文进行解密,得到原始交易数据之前,还包括执行以下至少一种操作:根据目标交易数据中包括的目标联盟网络标识和第二智能合约ID,调用系统级联盟管理智能合约,以确定目标联盟网络标识是否为所述系统级联盟管理智能合约中预先配置的可信的联盟网络标识;其中,系统级联盟管理智能合约中预先配置了至少一个可信的联盟网络标识,不同可信的联盟网络标识用于标识不同的可可信的联盟网络,不同可信的联盟网络来源于对区块链系统进行划分得到的联盟网络;根据目标区块链账户标识和目标交易数据中的第三智能合约ID,调用系统级账户管理智能合约,以确定客户端的链上行为权限是否包含对系统级密码参数管理智能合约的调用权限;若至少一种判断操作的判断结果均为是,则执行根据第一密码参数密文,对交易数据密文进行解密,得到原始交易数据的操作。
实际应用中,目标交易数据中可能未写入智能合约ID,例如,具有管理权限或者部署权限的客户端在部署业务级智能合约或者对区块链系统的各个对象的链上行为权限进行管理时,第一区块链节点所接收的目标交易数据中不包括任何一个智能合约ID。针对这种情形,第一区块链节点根据目标区块链账户标识调用系统级账户管理智能合约,以确定客户端的链上行为权限是否包含管理权限或者部署权限。若客户端的链上行为权限包括管理权限或者部署权限,第一区块链节点也会将来源于客户端的原始交易数据作为合法交易数据进行存储、转发或其他数据处理。
为了便于理解,以目标交易数据为表1所示的数据结构为例介绍一种在实际应用中的第一区块链节点执行区块链系统的数据处理方法的工作原理。具体而言,首先,第一区块链节点接收直接或间接来源于客户端的交易请求,交易请求中携带有目标交易数据,目标交易数据中封装有:ChainID字段、ContractID字段、EncryptedCipherPara字段、SystemCipherParaID 字段、EncryptedData字段、ClientPara字段以及Signature字段等多个字段。接着,第一区块链节点从目标交易数据的数据结构是否合法、ChainID字段记录的联盟网络是否存在、 SystemCipherParaID字段所关联的密码参数是否存在、结合ClientPara字段和ContractID字段判断客户端的链上行为权限、验证Signature字段记录的签名结果等多个维度验证目标交易数据的合法性。
其中,第一区块链节点验证目标交易数据的数据结构是否合法时,可以根据目标交易数据中所封装的多个字段以及每个字段的字段值是否为空,验证目标交易数据的数据结构是否合法。具体的,除ContractID字段的字段值可以为空之外,其他字段的字段值都不为空的情况下,验证目标交易数据的数据结构合法。若除ContractID字段的字段值可以为空之外,其他字段的字段值为空的情况下,验证目标交易数据的数据结构不合法。
第一区块链节点验证ChainID字段记录的区块链网络是否存在时,根据ChainID字段记录的联盟网络标识和第二智能合约ID,调用系统级联盟管理智能合约,以确定联盟网络标识对应的联盟网络是否为预先配置的可信的联盟网络;其中,系统级联盟管理智能合约中预先配置了至少一个可信的联盟网络标识,不同联盟网络标识用于标识不同的可信的联盟网络。若存在ChainID字段记录的联盟网络,确定在该维度上目标交易数据通过合法性验证;若不存在ChainID字段记录的联盟网络,确定在该维度上目标交易数据未通过合法性验证。
第一区块链节点验证SystemCipherParaID字段所关联的密码参数是否存在时,可以根据ClientPara字段中记录的目标区块链账户标识SystemCipherParaID字段记录的目标密码参数ID,调用ContractID字段记录的第一智能合约ID对应的系统级密码参数管理智能合约,以判断系统级密码参数管理智能合约中是否包含目标密码参数ID及其对应的第一密码参数密文。若系统级密码参数管理智能合约中包含目标密码参数ID及其对应的第一密码参数密文,确定在该维度上目标交易数据通过合法性验证;若系统级密码参数管理智能合约中不包含目标密码参数ID及其对应的第一密码参数密文,确定在该维度上目标交易数据未通过合法性验证。
第一区块链节点结合ClientPara字段和ContractID字段判断客户端的链上行为权限。第一区块链节点结合ClientPara字段记录的目标区块链账户标识,调用系统级密码参数管理智能合约,获取目标区块链账户标识对应的客户端的链上行为权限。若ContractID字段的字段值为空,则在目标区块链账户标识对应的客户端的链上行为权限包括管理权限或者部署权限时,确定在该维度上目标交易数据通过合法性验证;在目标区块链账户标识对应的客户端的链上行为权限不包括管理权限或者部署权限时,确定在该维度上目标交易数据不通过合法性验证。若ContractID字段的字段值为不为空,则在目标区块链账户标识对应的客户端的链上行为权限包括调用权限时,确定在该维度上目标交易数据通过合法性验证;在目标区块链账户标识对应的客户端的链上行为权限不包括调用权限时,确定在该维度上目标交易数据未通过合法性验证。
第一区块链节点验证Signature字段记录的签名结果时,可以根据ClientPara字段中记录的某些账户参数对Signature字段记录的签名结果进行签名验证。若签名验证通过,确定在该维度上目标交易数据通过合法性验证。若签名验证未通过,确定在该维度上目标交易数据未通过合法性验证。
本申请实施例提供的区块链系统的数据处理方法,区块链节点结合系统级密码参数管理智能合约和客户端的区块链账户信息参与来源于客户端的目标交易数据的解密处理和签名验证处理,并由于客户端在数据封装过程中封装了较多的数据信息,区块链节点可以对来源于客户端的目标交易数据进行多维度的安全性验证,进而保证安全可信的交易数据才可以加入至区块链系统中,保证了区块链系统的数据安全性和可信度,在一定程度上使得区块链系统成为可信区块链系统。
图4为本申请实施例提供的一种区块链系统的数据处理装置的结构示意图。如图4所示,该装置包括:
获取模块41,用于根据用户触发的交易请求,获取原始交易数据、系统级密码参数管理智能合约的第一智能合约ID和客户端的区块链账户信息,区块链账户信息包括:目标区块链账户标识和至少一个账户参数;
调用模块42,用于根据目标区块链账户标识,调用第一智能合约ID对应的系统级密码参数管理智能合约,获取目标密码参数ID及其对应的第一密码参数密文,系统级密码参数管理智能合约中保存有至少一个密码参数ID及其对应的密码参数密文和区块链账户标识;
加密模块43,用于根据至少一个账户参数,结合目标密码参数ID及其对应的第一密码参数密文,对原始交易数据进行加密处理,得到交易数据密文;
数字签名模块44,用于根据至少一个账户参数,对目标密码参数ID和交易数据密文进行数字签名,得到签名结果;
封装模块45,用于对交易数据密文、签名结果、目标密码参数ID、第一智能合约ID和客户端的区块链账户信息进行数据封装,得到目标交易数据,并将目标交易数据发送至区块链网络中。
进一步可选的,获取模块41根据用户触发的交易请求,获取原始交易数据、系统级密码参数管理智能合约的第一智能合约ID和客户端的区块链账户信息时,具体用于:从用户触发的交易请求中解析出原始交易数据和第一智能合约ID;并获取本地保存的客户端的区块链账户信息。
进一步可选的,至少一个账户参数包括第一账户参数,则加密模块43根据至少一个账户参数,结合目标密码参数ID及其对应的第一密码参数密文,对原始交易数据进行加密处理,得到交易数据密文时,具体用于:采用第一账户参数对第一密码参数密文进行解密,得到第一密码参数;生成第二密码参数,并利用第一密码参数加密第二密码参数,得到第二密码参数密文,以及利用第二密码参数对原始交易数据进行加密,得到交易数据密文。
进一步可选的,至少一个账户参数还包括第二账户参数,数字签名模块44根据至少一个账户参数,对目标密码参数ID和交易数据密文进行数字签名,得到签名结果时,具体用于:
采用第二账户参数对第一智能合约ID、目标密码参数ID、第二密码参数密文和交易数据密文进行数字签名,得到签名结果。
进一步可选的,封装模块45对交易数据密文、签名结果、目标密码参数ID、第一智能合约ID和客户端的区块链账户信息进行数据封装,得到目标交易数据时,具体用于:从交易请求中获取原始交易数据所属目标联盟网络对应的目标联盟网络标识;将交易数据密文、第二密码参数密文、客户端的区块链账户信息、第一智能合约ID、签名结果、目标密码参数ID、目标联盟网络对应的目标联盟网络标识进行数据封装,得到目标交易数据。
对于上述实施例中的图4所示装置其中各个模块、单元执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图5为本申请实施例提供的另一种区块链系统的数据处理装置的结构示意图。如图5所示,该装置包括:
获取模块51,用于接收目标交易数据,目标交易数据来自于客户端;
解析模块52,用于对目标交易数据进行解析,以获取目标交易数据中包含的数据信息;
验证模块53,用于若数据信息包括交易数据密文及其对应的签名结果,客户端的区块链账户信息及其对应的目标密码参数ID,以及第一智能合约ID,区块链账户信息包括目标区块链账户标识和至少一个账户参数,则根据至少一个账户参数对签名结果进行签名验证;
调用模块54,用于根据目标区块链账户标识和目标密码参数ID,调用第一智能合约 ID对应的系统级密码参数管理智能合约,以判断系统级密码参数管理智能合约中是否包含目标密码参数ID及其对应的第一密码参数密文;系统级密码参数管理智能合约中保存有至少一个密码参数ID及其对应的密码参数密文和区块链账户标识;
解密模块55,用于若包含,且签名结果通过验签,则根据第一密码参数密文,对交易数据密文进行解密,得到原始交易数据。
进一步可选的,在解密模块55根据第一密码参数密文,对交易数据密文进行解密,得到原始交易数据之前,解析模块52还用于:根据数据信息,分析目标交易数据的数据结构,并确定目标交易数据的数据结构为设定数据结构。
进一步可选的,至少一个账户参数包括第一账户参数和第二账户参数,数据信息还包括第二密码参数密文;相应地,解密模块55根据第一密码参数密文,对交易数据密文进行解密,得到原始交易数据时,具体用于:采用第一账户参数对第一密码参数密文进行解密,得到第一密码参数;利用第一密码参数对第二密码参数密文进行解密,得到第二密码参数;利用第二密码参数对交易数据密文进行解密,得到原始交易数据。
进一步可选的,至少一个账户参数还包括与第二账户参数对应的第三账户参数,验证模块53根据至少一个账户参数对签名结果进行签名验证时,具体用于:根据第三账户参数对签名结果进行签名验证,签名结果是根据第二账户参数对第一智能合约ID、目标密码参数ID、第二密码参数密文和交易数据密文进行数字签名得到的。
进一步可选的,在解密模块55根据第一密码参数密文,对交易数据密文进行解密,得到原始交易数据之前,验证模块53还用于执行以下至少一种操作:根据目标交易数据中包括的目标联盟网络标识和第二智能合约ID,调用系统级联盟管理智能合约,以确定目标联盟网络标识是否为所述系统级联盟管理智能合约中预先配置的可信的联盟网络标识;
;根据目标区块链账户标识和目标交易数据中的第三智能合约ID,调用系统级账户管理智能合约,以确定客户端的链上行为权限是否包含对系统级密码参数管理智能合约的调用权限;若至少一种判断操作的判断结果均为是,则触发解密模块55执行根据第一密码参数密文,对交易数据密文进行解密,得到原始交易数据的操作。
对于上述实施例中的图5所示装置其中各个模块、单元执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
需要说明的是,上述实施例所提供方法的各步骤的执行主体均可以是同一设备,或者,该方法也由不同设备作为执行主体。比如,步骤201至步骤205的执行主体可以为设备A;又比如,步骤201和202的执行主体可以为设备A,步骤203至步骤205的执行主体可以为设备B;等等。
另外,在上述实施例及附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如201、202等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
图6为本申请实施例提供的一种电子设备的结构示意图。如图6所示,该装置包括:存储器61和处理器62;
存储器61,用于存储计算机程序,并可被配置为存储其它各种数据以支持在计算平台上的操作。这些数据的示例包括用于在计算平台上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。
存储器61可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
处理器62,与存储器61耦合,用于执行存储器61中的计算机程序,以用于:根据用户触发的交易请求,获取原始交易数据、系统级密码参数管理智能合约的第一智能合约ID和客户端的区块链账户信息,区块链账户信息包括:目标区块链账户标识和至少一个账户参数;根据目标区块链账户标识,调用第一智能合约ID对应的系统级密码参数管理智能合约,获取目标密码参数ID及其对应的第一密码参数密文,系统级密码参数管理智能合约中保存有至少一个密码参数ID及其对应的密码参数密文和区块链账户标识;根据至少一个账户参数,结合目标密码参数ID及其对应的第一密码参数密文,对原始交易数据进行加密处理,得到交易数据密文;根据至少一个账户参数,对目标密码参数ID和交易数据密文进行数字签名,得到签名结果;对交易数据密文、签名结果、目标密码参数ID、第一智能合约ID和客户端的区块链账户信息进行数据封装,得到目标交易数据,并将目标交易数据发送至区块链网络中;
或者,处理器62,与存储器61耦合,用于执行存储器61中的计算机程序,以用于:
接收目标交易数据,目标交易数据来自于客户端;对目标交易数据进行解析,以获取目标交易数据中包含的数据信息;若数据信息包括交易数据密文及其对应的签名结果,客户端的区块链账户信息及其对应的目标密码参数ID,以及第一智能合约ID,区块链账户信息包括目标区块链账户标识和至少一个账户参数,则根据至少一个账户参数对签名结果进行签名验证;根据目标区块链账户标识和目标密码参数ID,调用第一智能合约ID 对应的系统级密码参数管理智能合约,以判断系统级密码参数管理智能合约中是否包含目标密码参数ID及其对应的第一密码参数密文;系统级密码参数管理智能合约中保存有至少一个密码参数ID及其对应的密码参数密文和区块链账户标识;若包含,且签名结果通过验签,则根据第一密码参数密文,对交易数据密文进行解密,得到原始交易数据。
进一步,如图6所示,该电子设备还包括:通信组件63、显示器64、电源组件65、音频组件66等其它组件。图6中仅示意性给出部分组件,并不意味着电子设备只包括图 6所示组件。另外,图6中虚线框内的组件为可选组件,而非必选组件,具体可视排产设备的产品形态而定。本实施例的电子设备可以实现为台式电脑、笔记本电脑、智能手机或IOT设备等终端设备,也可以是常规服务器、云服务器或服务器阵列等服务端设备。若本实施例的电子设备实现为台式电脑、笔记本电脑、智能手机等终端设备,可以包含图6中虚线框内的组件;若本实施例的电子设备实现为常规服务器、云服务器或服务器阵列等服务端设备,则可以不包含图6中虚线框内的组件。
关于处理器执行各动作的详细实施过程可参见前述方法实施例或设备实施例中的相关描述,在此不再赘述。
相应地,本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,计算机程序被执行时能够实现上述方法实施例中可由电子设备执行的各步骤。
相应地,本申请实施例还提供一种计算机程序产品,包括计算机程序/指令,当计算机程序/指令被处理器执行时,致使处理器能够实现上述方法实施例中可由电子设备执行的各步骤。
上述通信组件被配置为便于通信组件所在设备和其他设备之间有线或无线方式的通信。通信组件所在设备可以接入基于通信标准的无线网络,如WiFi,2G、3G、4G/LTE、5G等移动通信网络,或它们的组合。在一个示例性实施例中,通信组件经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
上述显示器包括屏幕,其屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与触摸或滑动操作相关的持续时间和压力。
上述电源组件,为电源组件所在设备的各种组件提供电力。电源组件可以包括电源管理系统,一个或多个电源,及其他与为电源组件所在设备生成、管理和分配电力相关联的组件。
上述音频组件,可被配置为输出和/或输入音频信号。例如,音频组件包括一个麦克风 (MIC),当音频组件所在设备处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器或经由通信组件发送。在一些实施例中,音频组件还包括一个扬声器,用于输出音频信号。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/ 或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/ 或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器 (CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (14)
1.一种区块链系统的数据处理方法,其特征在于,应用于区块链系统中的客户端,所述方法包括:
根据用户触发的交易请求,获取原始交易数据、系统级密码参数管理智能合约的第一智能合约ID和客户端的区块链账户信息,所述区块链账户信息包括:目标区块链账户标识和至少一个账户参数;
根据所述目标区块链账户标识,调用所述第一智能合约ID对应的系统级密码参数管理智能合约,获取目标密码参数ID及其对应的第一密码参数密文,所述系统级密码参数管理智能合约中保存有至少一个密码参数ID及其对应的密码参数密文和区块链账户标识;
根据所述至少一个账户参数,结合所述目标密码参数ID及其对应的第一密码参数密文,对所述原始交易数据进行加密处理,得到交易数据密文;
根据所述至少一个账户参数,对所述目标密码参数ID和所述交易数据密文进行数字签名,得到签名结果;
对所述交易数据密文、所述签名结果、所述目标密码参数ID、所述第一智能合约ID和所述客户端的区块链账户信息进行数据封装,得到目标交易数据,并将所述目标交易数据发送至区块链网络中。
2.根据权利要求1所述的方法,其特征在于,根据用户触发的交易请求,获取原始交易数据、系统级密码参数管理智能合约的第一智能合约ID和客户端的区块链账户信息,包括:
从用户触发的交易请求中解析出所述原始交易数据和所述第一智能合约ID;并获取本地保存的所述客户端的区块链账户信息。
3.根据权利要求1所述的方法,其特征在于,所述至少一个账户参数包括第一账户参数,则根据所述至少一个账户参数,结合所述目标密码参数ID及其对应的第一密码参数密文,对所述原始交易数据进行加密处理,得到交易数据密文,包括:
采用所述第一账户参数对所述第一密码参数密文进行解密,得到第一密码参数;
生成第二密码参数,并利用所述第一密码参数加密所述第二密码参数,得到第二密码参数密文,以及利用第二密码参数对所述原始交易数据进行加密,得到交易数据密文。
4.根据权利要求3所述的方法,其特征在于,所述至少一个账户参数还包括第二账户参数,根据所述至少一个账户参数,对所述目标密码参数ID和所述交易数据密文进行数字签名,得到签名结果,包括:
采用所述第二账户参数对所述第一智能合约ID、所述目标密码参数ID、所述第二密码参数密文和所述交易数据密文进行数字签名,得到签名结果。
5.根据权利要求4所述的方法,其特征在于,对所述交易数据密文、所述签名结果、所述目标密码参数ID、所述第一智能合约ID和所述客户端的区块链账户信息进行数据封装,得到目标交易数据,包括:
从所述交易请求中获取所述原始交易数据所属目标联盟网络对应的目标联盟网络标识;
将所述交易数据密文、所述第二密码参数密文、所述客户端的区块链账户信息、所述第一智能合约ID、所述签名结果、所述目标密码参数ID、所述目标联盟网络标识进行数据封装,得到目标交易数据。
6.一种区块链系统的数据处理方法,其特征在于,应用于区块链系统中的第一区块链节点,所述方法包括:
接收目标交易数据,所述目标交易数据来自于客户端;
对所述目标交易数据进行解析,以获取所述目标交易数据中包含的数据信息;
若所述数据信息包括交易数据密文及其对应的签名结果,所述客户端的区块链账户信息及其对应的目标密码参数ID,以及第一智能合约ID,所述区块链账户信息包括目标区块链账户标识和至少一个账户参数,则根据所述至少一个账户参数对所述签名结果进行签名验证;
根据所述目标区块链账户标识和所述目标密码参数ID,调用所述第一智能合约ID对应的系统级密码参数管理智能合约,以判断所述系统级密码参数管理智能合约中是否包含所述目标密码参数ID及其对应的第一密码参数密文;所述系统级密码参数管理智能合约中保存有至少一个密码参数ID及其对应的密码参数密文和区块链账户标识;
若包含,且所述签名结果通过验签,则根据所述第一密码参数密文,对所述交易数据密文进行解密,得到原始交易数据。
7.根据权利要求6所述的方法,其特征在于,根据所述第一密码参数密文,对所述交易数据密文进行解密,得到原始交易数据之前,还包括:
根据所述数据信息,分析所述目标交易数据的数据结构,并确定所述目标交易数据的数据结构为设定数据结构。
8.根据权利要求6所述的方法,其特征在于,所述至少一个账户参数包括第一账户参数和第二账户参数,所述数据信息还包括第二密码参数密文;
相应地,根据所述第一密码参数密文,对所述交易数据密文进行解密,得到原始交易数据,包括:
采用所述第一账户参数对所述第一密码参数密文进行解密,得到第一密码参数;利用所述第一密码参数对所述第二密码参数密文进行解密,得到第二密码参数;
利用所述第二密码参数对所述交易数据密文进行解密,得到原始交易数据。
9.根据权利要求8所述的方法,其特征在于,所述至少一个账户参数还包括与第二账户参数对应的第三账户参数,根据所述至少一个账户参数对所述签名结果进行签名验证,包括:
根据所述第三账户参数对所述签名结果进行签名验证,所述签名结果是根据所述第二账户参数对所述第一智能合约ID、目标密码参数ID、所述第二密码参数密文和所述交易数据密文进行数字签名得到的。
10.根据权利要求6-9任一项所述的方法,其特征在于,在根据所述第一密码参数密文,对所述交易数据密文进行解密,得到原始交易数据之前,还包括执行以下至少一种操作:
根据所述目标交易数据中包括的目标联盟网络标识和第二智能合约ID,调用系统级联盟管理智能合约,以确定所述目标联盟网络标识是否为所述系统级联盟管理智能合约中预先配置的可信的联盟网络标识;
根据所述目标区块链账户标识和所述目标交易数据中的第三智能合约ID,调用系统级账户管理智能合约,以确定所述客户端的链上行为权限是否包含对所述系统级密码参数管理智能合约的调用权限;
若所述至少一种判断操作的判断结果均为是,则执行根据所述第一密码参数密文,对所述交易数据密文进行解密,得到原始交易数据的操作。
11.一种区块链系统的数据处理装置,其特征在于,包括:
获取模块,用于根据用户触发的交易请求,获取原始交易数据、系统级密码参数管理智能合约的第一智能合约ID和客户端的区块链账户信息,所述区块链账户信息包括:目标区块链账户标识和至少一个账户参数;
调用模块,用于根据所述目标区块链账户标识,调用所述第一智能合约ID对应的系统级密码参数管理智能合约,获取目标密码参数ID及其对应的第一密码参数密文,所述系统级密码参数管理智能合约中保存有至少一个密码参数ID及其对应的密码参数密文和区块链账户标识;
加密模块,用于根据所述至少一个账户参数,结合所述目标密码参数ID及其对应的第一密码参数密文,对所述原始交易数据进行加密处理,得到交易数据密文;
数字签名模块,用于根据所述至少一个账户参数,对所述目标密码参数ID和所述交易数据密文进行数字签名,得到签名结果;
封装模块,用于对所述交易数据密文、所述签名结果、所述目标密码参数ID、所述第一智能合约ID和所述客户端的区块链账户信息进行数据封装,得到目标交易数据,并将所述目标交易数据发送至区块链网络中。
12.一种区块链系统的数据处理装置,其特征在于,包括:
获取模块,用于接收目标交易数据,所述目标交易数据来自于客户端;
解析模块,用于对所述目标交易数据进行解析,以获取所述目标交易数据中包含的数据信息;
验证模块,用于若所述数据信息包括交易数据密文及其对应的签名结果,所述客户端的区块链账户信息及其对应的目标密码参数ID,以及第一智能合约ID,所述区块链账户信息包括目标区块链账户标识和至少一个账户参数,则根据所述至少一个账户参数对所述签名结果进行签名验证;
调用模块,用于根据所述目标区块链账户标识和所述目标密码参数ID,调用所述第一智能合约ID对应的系统级密码参数管理智能合约,以判断所述系统级密码参数管理智能合约中是否包含所述目标密码参数ID及其对应的第一密码参数密文;所述系统级密码参数管理智能合约中保存有至少一个密码参数ID及其对应的密码参数密文和区块链账户标识;
解密模块,用于若包含,且所述签名结果通过验签,则根据所述第一密码参数密文,对所述交易数据密文进行解密,得到原始交易数据。
13.一种电子设备,其特征在于,包括:存储器和处理器;所述存储器,用于存储计算机程序;所述处理器耦合至所述存储器,用于执行所述计算机程序以用于执行权利要求1-10任一项所述方法中的步骤。
14.一种存储有计算机程序的计算机存储介质,其特征在于,当所述计算机程序被处理器执行时,致使所述处理器能够实现权利要求1-10任一项所述方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210239588.0A CN115118426A (zh) | 2022-03-11 | 2022-03-11 | 区块链系统的数据处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210239588.0A CN115118426A (zh) | 2022-03-11 | 2022-03-11 | 区块链系统的数据处理方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115118426A true CN115118426A (zh) | 2022-09-27 |
Family
ID=83325157
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210239588.0A Pending CN115118426A (zh) | 2022-03-11 | 2022-03-11 | 区块链系统的数据处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115118426A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116361271A (zh) * | 2023-05-09 | 2023-06-30 | 中航信移动科技有限公司 | 一种区块链数据修改迁移方法、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110580414A (zh) * | 2019-11-08 | 2019-12-17 | 支付宝(杭州)信息技术有限公司 | 基于区块链账户的隐私数据查询方法及装置 |
US20200169388A1 (en) * | 2019-07-31 | 2020-05-28 | Alibaba Group Holding Limited | Providing data authorization based on blockchain |
CN111507815A (zh) * | 2020-04-20 | 2020-08-07 | 腾讯科技(深圳)有限公司 | 基于区块链的信息获取方法、装置、设备及存储介质 |
-
2022
- 2022-03-11 CN CN202210239588.0A patent/CN115118426A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200169388A1 (en) * | 2019-07-31 | 2020-05-28 | Alibaba Group Holding Limited | Providing data authorization based on blockchain |
CN110580414A (zh) * | 2019-11-08 | 2019-12-17 | 支付宝(杭州)信息技术有限公司 | 基于区块链账户的隐私数据查询方法及装置 |
CN111507815A (zh) * | 2020-04-20 | 2020-08-07 | 腾讯科技(深圳)有限公司 | 基于区块链的信息获取方法、装置、设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
MICHAEL CHRISTOPHER XENYA等: "Decentralized Distributed Blockchain Ledger for Financial Transaction Backup Data", 《2019 INTERNATIONAL CONFERENCE ON CYBER SECURITY AND INTERNET OF THINGS (ICSIOT)》, 9 April 2020 (2020-04-09) * |
冯浩铭等: "一种金融级安全的区块链资产交易系统", 《信息通信技术与政策》, 15 January 2020 (2020-01-15) * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116361271A (zh) * | 2023-05-09 | 2023-06-30 | 中航信移动科技有限公司 | 一种区块链数据修改迁移方法、电子设备及存储介质 |
CN116361271B (zh) * | 2023-05-09 | 2024-01-23 | 中航信移动科技有限公司 | 一种区块链数据修改迁移方法、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108768630B (zh) | 区块链节点的加密通信方法和系统 | |
CN108737430B (zh) | 区块链节点的加密通信方法和系统 | |
KR101508360B1 (ko) | 데이터 전송 장치 및 방법, 그리고 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체 | |
US11303431B2 (en) | Method and system for performing SSL handshake | |
CN112581126A (zh) | 基于区块链的平台数据管理方法、装置及存储介质 | |
US20180367540A1 (en) | Controlling access to content | |
KR101883816B1 (ko) | 클라이언트 디바이스 상에서의 다수의 디지털 저작권 관리 프로토콜 지원 기술 | |
US10680805B2 (en) | Data encryption control using multiple controlling authorities | |
US20040117623A1 (en) | Methods and apparatus for secure data communication links | |
KR20170057549A (ko) | 해시함수 기반의 대규모 동시 전자서명 서비스 시스템 및 그 방법 | |
CN107342861B (zh) | 一种数据处理方法、装置及系统 | |
CA2829233C (en) | Method and system for hypertext transfer protocol digest authentication | |
CN109450620B (zh) | 一种移动终端中共享安全应用的方法及移动终端 | |
KR20200028786A (ko) | Ssp 단말과 서버가 디지털 인증서를 협의하는 방법 및 장치 | |
WO2024198933A1 (zh) | 私钥保护和服务端访问方法、系统、设备及存储介质 | |
CN114553590A (zh) | 数据传输方法及相关设备 | |
CN111901287B (zh) | 一种为轻应用提供加密信息的方法、装置和智能设备 | |
US20240205204A1 (en) | Data transmission protocol execution methods and apparatuses | |
CN114520726A (zh) | 基于区块链数据的处理方法和装置、处理器及电子设备 | |
CN115118426A (zh) | 区块链系统的数据处理方法、装置、设备及存储介质 | |
CN115114630A (zh) | 一种数据共享方法、装置及电子设备 | |
CN117118628A (zh) | 电力物联网轻量级身份认证方法、装置及电子设备 | |
CN109492359B (zh) | 一种用于身份认证的安全网络中间件及其实现方法和装置 | |
Nagy et al. | Peershare: A system secure distribution of sensitive data among social contacts | |
JP7191999B2 (ja) | ミニプログラムパッケージ送信方法、装置、電子機器コンピュータ可読媒体およびコンピュータプログラム製品 |
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 |