CN110149316A - 一种区块链的发布方法及装置 - Google Patents

一种区块链的发布方法及装置 Download PDF

Info

Publication number
CN110149316A
CN110149316A CN201910336749.6A CN201910336749A CN110149316A CN 110149316 A CN110149316 A CN 110149316A CN 201910336749 A CN201910336749 A CN 201910336749A CN 110149316 A CN110149316 A CN 110149316A
Authority
CN
China
Prior art keywords
chain
block chain
node
verified
dynamic 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.)
Granted
Application number
CN201910336749.6A
Other languages
English (en)
Other versions
CN110149316B (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.)
Shanghai Zhongan Information Technology Service Co ltd
Original Assignee
Zhongan Information Technology Service 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 Zhongan Information Technology Service Co Ltd filed Critical Zhongan Information Technology Service Co Ltd
Priority to CN201910336749.6A priority Critical patent/CN110149316B/zh
Publication of CN110149316A publication Critical patent/CN110149316A/zh
Application granted granted Critical
Publication of CN110149316B publication Critical patent/CN110149316B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • 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
    • 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/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • 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
    • H04L9/3247Cryptographic 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
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种区块链的发布方法,包括区块链的部署方法,该部署方法包括:S1:获取待部署区块链的集群的各节点信息以及区块链的代码包;S2:根据预设的哈希算法对代码包进行哈希运算,生成哈希值,并存储哈希值、代码包的版本号以及时间戳;S3:获取自定义的动态参数,根据节点信息、动态参数以及哈希值生成所述区块链的配置文件,其中,动态参数至少包括加密算法;S4:将配置文件以及预先编辑的脚本文件推送到所述节点对应的目录下,并存储部署结果。本发明通过提供自由切换加密算法发布区块链群集,提高区块链操作的灵活性,且可以批量部署集群的节点,通过可控的自由选择加密算法提高发布区块链群集的高效性。

Description

一种区块链的发布方法及装置
技术领域
本发明涉及区块链技术领域,特别涉及一种区块链的发布方法及装置。
背景技术
区块链(BlockChain)技术是近年来在金融科技(FinTech)领域出现的一种新兴技术,其独特的去中心化、信息不可篡改、多节点集体维护性、公开性、隐私保护等属性,在基于不可信的互联网中,能记录提供可信的交易信息数据。
区块链主要包括了P2P网络、密码学、共识机制、智能合约四个组成部分,通过四个领域的技术整合保证其独有的特性。当前区块链群集发布时主要存在以下的问题:当前区块链集群发布方式局限于单种加密算法,面对当前复杂的应用场景表现单一,缺乏多元性。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种区块链的发布方法及装置,以克服现有技术中区块链集群发布方式局限于单种加密算法,面对当前复杂的应用场景表现单一,缺乏多元性等问题。
为解决上述一个或多个技术问题,本发明采用的技术方案是:
一方面,提供了一种区块链的发布方法,所述方法包括区块链的部署方法,所述部署方法包括如下步骤:
S1:获取待部署区块链的集群的各节点信息以及所述区块链的代码包;
S2:根据预设的哈希算法对所述代码包进行哈希运算,生成哈希值,并存储所述哈希值、所述代码包的版本号以及时间戳;
S3:获取自定义的动态参数,根据所述节点信息、动态参数以及哈希值生成所述区块链的配置文件,其中,所述动态参数至少包括加密算法;
S4:将所述配置文件以及预先编辑的脚本文件推送到所述节点对应的目录下,并存储部署结果。
进一步的,所述步骤S3具体包括:
获取自定义的动态参数,所述动态参数包括加密算法、区块链的ID、用户ID、应用层访问区块链的端口号以及P2P节点间通信的端口号;
结合所述节点信息、所述哈希值以及所述区块链的ID、用户ID、应用层访问区块链的端口号和P2P节点间通信的端口号生成所述区块链的配置文件。
进一步的,所述步骤S3还包括:
基于所述加密算法,生成所述各节点的公私钥,并且根据所述公私钥生成所述各节点的地址;
选定任一节点作为CA节点,通过所述CA节点的私钥与其他各节点的公钥对相应的节点进行CA签名,获取签名;
将所述各节点的公私钥、地址以及签名写入所述配置文件。
进一步的,所述方法还包括:
接收所述节点发出的指令以及与所述指令对应的报文,验证所述报文中的相关信息,验证通过后,调用与所述指令相应的脚本文件,执行相应的操作。
进一步的,所述指令包括链启动、链停止、链重置、链更新、链清理以及链状态。
进一步的,所述脚本文件包括启动脚本、停止脚本、重置脚本、更新脚本、清理脚本以及状态脚本。
另一方面,提供了一种区块链的发布装置,所述装置包括:
API接口:用于获取待部署区块链的集群的各节点信息以及所述区块链的代码包;
计算模块,用于根据预设的哈希算法对所述代码包进行哈希运算,生成哈希值,并存储所述哈希值、所述代码包的版本号以及时间戳;
加密组件,用于提供多种加密算法;
链部署模块,用于获取自定义的动态参数,根据所述节点信息、动态参数以及哈希值生成所述区块链的配置文件,其中,所述动态参数至少包括加密算法;
所述链部署模块还用于将所述配置文件以及预先编辑的脚本文件推送到所述节点对应的目录下;
数据库,用于存储所述哈希值、所述代码包的版本号以及时间戳,以及用于存储部署结果。
进一步的,所述链部署模块包括:
参数输入单元,用于获取自定义的动态参数,所述动态参数包括加密算法、区块链的ID、用户ID、应用层访问区块链的端口号以及P2P节点间通信的端口号;
配置生成单元,用于结合所述节点信息、所述哈希值以及所述区块链的ID、用户ID、应用层访问区块链的端口号和P2P节点间通信的端口号生成所述区块链的配置文件。
进一步的,所述链部署模块还包括:
计算单元,用于基于所述加密算法,生成所述各节点的公私钥,并且根据所述公私钥生成所述各节点的地址;
CA认证单元,用于选定任一节点作为CA节点,通过所述CA节点的私钥与其他各节点的公钥对相应的节点进行CA签名,获取签名;
信息写入单元,用于将所述各节点的公私钥、地址以及签名写入所述配置文件。
进一步的,所述装置还包括:
链启动模块,用于接收所述节点发出链启动指令以及与所述链启动指令对应的报文,验证所述报文中的相关信息,验证通过后,调用启动脚本文件,执行相应的操作;
链停止模块,用于接收所述节点发出链停止指令以及与所述链停止指令对应的报文,验证所述报文中的相关信息,验证通过后,调用停止脚本文件,执行相应的操作;
链重置模块,用于接收所述节点发出链重置指令以及与所述链重置指令对应的报文,验证所述报文中的相关信息,验证通过后,调用重置脚本文件,执行相应的操作;
链更新模块,用于接收所述节点发出链更新指令以及与所述链更新指令对应的报文,验证所述报文中的相关信息,验证通过后,调用更新脚本文件,执行相应的操作;
链清理模块,用于接收所述节点发出链清理指令以及与所述链清理指令对应的报文,验证所述报文中的相关信息,验证通过后,调用清理脚本文件,执行相应的操作;
链状态模块,用于接收所述节点发出链状态指令以及与所述链状态指令对应的报文,验证所述报文中的相关信息,验证通过后,调用状态脚本文件,执行相应的操作。
本发明实施例提供的技术方案带来的有益效果是:
1、本发明实施例提供的区块链的发布方法及装置,提供自由切换加密算法发布区块链群集,提高区块链操作的灵活性;
2、本发明实施例提供的区块链的发布方法及装置,可以批量部署集群的节点,通过可控的自由选择加密算法提高发布区块链群集的高效性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据一示例性实施例示出的区块链的发布方法中区块链的部署方法的流程图;
图2是根据一示例性实施例示出的区块链的发布装置的结构示意图;
图3是根据另一示例性实施例示出的区块链的发布装置的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是根据一示例性实施例示出的区块链的发布方法中区块链的部署方法的流程图,参照图1所示,该部署方法包括如下步骤:
S1:获取所述区块链的待部署集群的各节点信息以及所述区块链的代码包。
具体的,本发明实施例中,通过区块链的发布装置进行区块链的相关发布操作,可以批量部署区块链集群的节点,可以达到一分钟内部署几万节点。启动发布装置的发布服务后,将区块链的待部署集群的各节点信息添加至发布装置中,生成节点列表后存储至发布装置的数据库。发布装置还需要获取待部署区块链的代码包,作为一种较优的实施方式,区块链的代码包可以采用二进制包的格式。这里需要说明的是,本发明实施例中,添加节点信息至发布装置实现的功能是免密登录。即发布机到远程的链节点登录、访问、操作都是不需要登录密码的。免密登录,本质上是使用了“公钥登录”。原理很简单,就是用户将自己的公钥储存在远程主机上。登录的时候,远程主机会向用户发送一段随机字符串,用户用自己的私钥加密后,再发回来。远程主机用事先储存的公钥进行解密,如果成功,就证明用户是可信的,直接允许登录,不再要求密码。
S2:根据预设的哈希算法对所述代码包进行哈希运算,生成哈希值,并存储所述哈希值、所述代码包的版本号以及时间戳。
具体的,发布装置中可以根据实际需求,预先内置一种哈希算法。采用该哈希算法对代码包进行哈希运算,生成区块链代码包的哈希值,然后将该哈希值、代码包的版本号以及时间戳等信息存储至发布装置的数据库中,以供后续查询以及使用。
S3:获取自定义的动态参数,根据所述节点信息、动态参数以及哈希值生成所述区块链的配置文件,其中,所述动态参数至少包括加密算法。
具体的,根据用户的具体需求自定义加密算法等动态参数,然后结合节点信息、动态参数以及哈希值等信息生成待部署区块链的配置文件。发布装置可以提供多种加密算法,包括ed25519、secp256k1、国密算法等。加密算法的选择可以根据实际的业务需求进行自由切换。即不同的业务对区块链上加密算法的要求是不一样的,比如供应链金融用的加密算法为ed25519和secp256k1等。这里需要说明的是,本发明实施例中,设置可以根据实际的业务需求自由切换加密算法,从而提高区块链操作的灵活性。
S4:将所述配置文件以及预先编辑的脚本文件推送到所述节点对应的目录下,并存储部署结果。
具体的,预先编辑的相关链操作的对应的脚本文件,本发明实施例中,脚本文件采用的是shell脚本文件。配置文件生成后,将配置文件以及预先编辑的脚本文件推送到节点对应的目录下,即部署完成,将部署结果存储在发布装置的数据库中。部署结果包括链配置信息(即配置文件)、链操作状态、主机信息、链节点服务进程号、代码的hash值、链节点的用户名和密码、版本信息等。这里需要说明的是,本发明实施例中,脚本文件与节点对应的目录均存储在与发布装置不同的服务器,需要使用某一脚本文件时,发布装置远程调用该脚本文件即可。
作为一种较优的实施方式,本发明实施例中,所述步骤S3具体包括:
获取自定义的动态参数,所述动态参数包括加密算法、区块链的ID、用户ID、应用层访问区块链的端口号以及P2P节点间通信的端口号。
具体的,根据业务需求定义好需要的加密算法,并自定义好区块链的ID、用户ID、应用层访问区块链的端口号以及P2P节点间通信的端口号等参数。其中,本发明实施例中,需要设置区块链的ID是唯一的,即不同的区块链对应不同的区块链ID,用户ID即为部署该区块链的用户。应用层访问区块链的端口号以及P2P节点间通信的端口号也需要定义为不重复的端口号。示例如下:
″chain_id″:″chain_test″,//自定义区块链ID
″user_id″:″xxxx″,//用户名
″pkg_md5″:″01c626b07163a7b86ba95a176523d88e″,//二进制包的hash
″rpc_port″:46657,//自定义不重复的端口号,提供给应用层访问的链端口号
″p2p_port即:46656,//自定义不重复的端口号,P2P节点之间通信的端口号
″crypto″:″加密组件″,//例如ed25519、secp256k1、sm2-5(国密算法)。
结合所述节点信息、所述哈希值以及所述区块链的ID、用户ID、应用层访问区块链的端口号和P2P节点间通信的端口号生成所述区块链的配置文件。
具体的,结合上述步骤获取的节点信息、区块链代码包的哈希值以及区块链的ID、用户ID、应用层访问区块链的端口号和P2P节点间通信的端口号等信息,生成区块链的配置文件。示例如下:
假设链节点列表addr_list包括如下三个节点:″IP1″、″IP2″和″IP3″,则生成的配置文件如下:
作为一种较优的实施方式,本发明实施例中,所述步骤S3还包括:
基于所述加密算法,生成所述各节点的公私钥,并且根据所述公私钥生成所述各节点的地址。
具体的,首先基于选取的加密算法,利用该加密算法生成待部署的各节点的公私钥,然后根据各节点的公私钥生成各节点的地址。
选定任一节点作为CA节点,通过所述CA节点的私钥与其他各节点的公钥对相应的节点进行CA签名,获取签名。
具体的,由于区块链节点只有通过CA签名认证后,方可加入集群成为链节点,从而才能对外提供链服务。因此,本发明实施例中,从集群中选定任一节点作为CA节点,通过CA节点的私钥与其他链节点的公钥对相应的节点进行CA签名,获取相应节点的签名。
将所述各节点的公私钥、地址以及签名写入所述配置文件。
作为一种较优的实施方式,本发明实施例中,所述方法还包括:
接收所述节点发出的指令以及与所述指令对应的报文,验证所述报文中的相关信息,验证通过后,调用与所述指令相应的脚本文件,执行相应的操作。
具体的,本发明实施例中,还包括通过发布装置执行其他链操作。报文中必须包括区块链的ID以及用户ID等信息,然后查询发布装置的数据库,比对该区块链的ID以及用户ID与数据库中存储的信息是否一致,若一致,则验证通过,调用与指令相应的脚本文件,执行与指令相应的操作。由于一台发布装置可以管理多条区块链,不同的区块链的账户不同,维护人员的账户也不同,每条区块链对应的链节点列表(即机器列表)也不同,因此需要以区块链的ID来区分不同的链,以用户ID来区分是哪个用户发出的指令。这里需要说明的是,本发明实施例中,报文中还需包括链节点列表信息。链节点列表信息是通过添加链节点接口,将IP列表存入到数据库中的。因为每个链ID都对应着多个链节点,因此在链维护时(比如某个链节点停止维护或者某个链节点更新操作),就填写对应维护链节点的IP地址即可。
作为一种较优的实施方式,本发明实施例中,所述指令包括链启动、链停止、链重置、链更新、链清理以及链状态。
具体的,除了可以进行链部署(即区块链的部署)以外,还可以进行链启动、链停止、链重置、链更新、链清理以及链状态等操作。本发明实施例中,预先设置了触发各个操作的指令,如设置链启动的触发指令为“start”、链停止的触发指令为“stop”、链重置的触发指令为“reset”、链更新的触发指令为“update”、链清理的触发指令为“clean”、链状态的触发指令为“status”等。
这里需要说明的是,链启动或链停止指令对应的是区块链的启动或停止操作。链重置指令对应的是将链节点的链数据库文件删除。链更新指令对应的是区块链的更新,此时只需将更新的区块链代码包发送给发布装置,重复区块链部署的流程,即可完成链更新。链清理指令对应的是将区块链相关的配置文件、数据库文件删除。链状态指令对应的是通过链底层对外提供的RPC接口(应用层访问区块链的端口)获取链上高度,来确定集群中链节点的状态是否保持一致。
作为一种较优的实施方式,本发明实施例中,所述脚本文件包括启动脚本、停止脚本、重置脚本、更新脚本、清理脚本以及状态脚本。
具体的,本发明实施例中,脚本文件采用的是shell脚本文件,且脚本文件存储在与发布装置不同的服务器上,当需要使用某一脚本文件时,发布装置远程调用该脚本文件即可。
图2是根据一示例性实施例示出的区块链的发布装置的结构示意图,参照图2所示,该装置包括:
API接口:用于获取待部署区块链的集群的各节点信息以及所述区块链的代码包;
计算模块,用于根据预设的哈希算法对所述代码包进行哈希运算,生成哈希值,并存储所述哈希值、所述代码包的版本号以及时间戳;
加密组件,用于提供多种加密算法;链部署模块,用于自定义动态参数,根据所述节点信息、动态参数以及哈希值生成所述区块链的配置文件,其中,所述自定义动态参数至少包括选择加密算法;
所述链部署模块还用于将所述配置文件以及预先编辑的脚本文件推送到所述节点对应的目录下;
数据库,用于存储所述哈希值、所述代码包的版本号以及时间戳,以及用于存储部署结果。
具体的,本发明实施例中的区块链的发布装置的加密组件可提供多种加密算法,加密算法的选择可以根据实际的业务需求进行自由切换,可以提高区块链操作的灵活性。进一步的,所述链部署模块包括:
参数输入单元,用于获取自定义的动态参数,所述动态参数包括加密算法、区块链的ID、用户ID、应用层访问区块链的端口号以及P2P节点间通信的端口号;
配置生成单元,用于结合所述节点信息、所述哈希值以及所述区块链的ID、用户ID、应用层访问区块链的端口号和P2P节点间通信的端口号生成所述区块链的配置文件。
进一步的,所述链部署模块还包括:
计算单元,用于基于所述加密算法,生成所述各节点的公私钥,并且根据所述公私钥生成所述各节点的地址;
CA认证单元,用于选定任一节点作为CA节点,通过所述CA节点的私钥与其他各节点的公钥对相应的节点进行CA签名,获取签名;
信息写入单元,用于将所述各节点的公私钥、地址以及签名写入所述配置文件。
图3是根据另一示例性实施例示出的区块链的发布装置的结构示意图,参照图3所示,进一步的,所述装置还包括:
链启动模块,用于接收所述节点发出链启动指令以及与所述链启动指令对应的报文,验证所述报文中的相关信息,验证通过后,调用启动脚本文件,执行相应的操作;
链停止模块,用于接收所述节点发出链停止指令以及与所述链停止指令对应的报文,验证所述报文中的相关信息,验证通过后,调用停止脚本文件,执行相应的操作;
链重置模块,用于接收所述节点发出链重置指令以及与所述链重置指令对应的报文,验证所述报文中的相关信息,验证通过后,调用重置脚本文件,执行相应的操作;
链更新模块,用于接收所述节点发出链更新指令以及与所述链更新指令对应的报文,验证所述报文中的相关信息,验证通过后,调用更新脚本文件,执行相应的操作;
链清理模块,用于接收所述节点发出链清理指令以及与所述链清理指令对应的报文,验证所述报文中的相关信息,验证通过后,调用清理脚本文件,执行相应的操作;
链状态模块,用于接收所述节点发出链状态指令以及与所述链状态指令对应的报文,验证所述报文中的相关信息,验证通过后,调用状态脚本文件,执行相应的操作。
综上所述,本发明实施例提供的技术方案带来的有益效果是:
1、本发明实施例提供的区块链的发布方法及装置,提供自由切换加密算法发布区块链群集,提高区块链操作的灵活性;
2、本发明实施例提供的区块链的发布方法及装置,通过可控的自由选择加密算法提高发布区块链群集的高效性。
需要说明的是:上述实施例提供的区块链的发布装置在触发发布业务时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的区块链的发布装置与区块链的发布方法实施例属于同一构思,即该装置是基于该区块链的发布方法的,其具体实现过程详见方法实施例,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种区块链的发布方法,其特征在于,所述方法包括区块链的部署方法,所述部署方法包括如下步骤:
S1:获取待部署区块链的集群的各节点信息以及所述区块链的代码包;
S2:根据预设的哈希算法对所述代码包进行哈希运算,生成哈希值,并存储所述哈希值、所述代码包的版本号以及时间戳;
S3:获取自定义的动态参数,根据所述节点信息、动态参数以及哈希值生成所述区块链的配置文件,其中,所述动态参数至少包括加密算法;
S4:将所述配置文件以及预先编辑的脚本文件推送到所述节点对应的目录下,并存储部署结果。
2.根据权利要求1所述的区块链的发布方法,其特征在于,所述步骤S3具体包括:
获取自定义的动态参数,所述动态参数包括加密算法、区块链的ID、用户ID、应用层访问区块链的端口号以及P2P节点间通信的端口号;
结合所述节点信息、所述哈希值以及所述区块链的ID、用户ID、应用层访问区块链的端口号和P2P节点间通信的端口号生成所述区块链的配置文件。
3.根据权利要求1或2所述的区块链的发布方法,其特征在于,所述步骤S3还包括:
基于所述加密算法,生成所述各节点的公私钥,并且根据所述公私钥生成所述各节点的地址;
选定任一节点作为CA节点,通过所述CA节点的私钥与其他各节点的公钥对相应的节点进行CA签名,获取签名;
将所述各节点的公私钥、地址以及签名写入所述配置文件。
4.根据权利要求1或2所述的区块链的发布方法,其特征在于,所述方法还包括:
接收所述节点发出的指令以及与所述指令对应的报文,验证所述报文中的相关信息,验证通过后,调用与所述指令相应的脚本文件,执行相应的操作。
5.根据权利要求4所述的区块链的发布方法,其特征在于,所述指令包括链启动、链停止、链重置、链更新、链清理以及链状态。
6.根据权利要求5所述的区块链的发布方法,其特征在于,所述脚本文件包括启动脚本、停止脚本、重置脚本、更新脚本、清理脚本以及状态脚本。
7.一种区块链的发布装置,其特征在于,所述装置包括:
API接口:用于获取待部署区块链的集群的各节点信息以及所述区块链的代码包;
计算模块,用于根据预设的哈希算法对所述代码包进行哈希运算,生成哈希值,并存储所述哈希值、所述代码包的版本号以及时间戳;
加密组件,用于提供多种加密算法;
链部署模块,用于获取自定义的动态参数,根据所述节点信息、动态参数以及哈希值生成所述区块链的配置文件,其中,所述动态参数至少包括加密算法;
所述链部署模块还用于将所述配置文件以及预先编辑的脚本文件推送到所述节点对应的目录下;
数据库,用于存储所述哈希值、所述代码包的版本号以及时间戳,以及用于存储部署结果。
8.根据权利要求7所述的区块链的发布装置,其特征在于,所述链部署模块包括:
参数输入单元,用于获取自定义的动态参数,所述动态参数包括加密算法、区块链的ID、用户ID、应用层访问区块链的端口号以及P2P节点间通信的端口号;
配置生成单元,用于结合所述节点信息、所述哈希值以及所述区块链的ID、用户ID、应用层访问区块链的端口号和P2P节点间通信的端口号生成所述区块链的配置文件。
9.根据权利要求7或8所述的区块链的发布装置,其特征在于,所述链部署模块还包括:
计算单元,用于基于所述加密算法,生成所述各节点的公私钥,并且根据所述公私钥生成所述各节点的地址;
CA认证单元,用于选定任一节点作为CA节点,通过所述CA节点的私钥与其他各节点的公钥对相应的节点进行CA签名,获取签名;
信息写入单元,用于将所述各节点的公私钥、地址以及签名写入所述配置文件。
10.根据权利要求7或8所述的区块链的发布装置,其特征在于,所述装置还包括:
链启动模块,用于接收所述节点发出链启动指令以及与所述链启动指令对应的报文,验证所述报文中的相关信息,验证通过后,调用启动脚本文件,执行相应的操作;
链停止模块,用于接收所述节点发出链停止指令以及与所述链停止指令对应的报文,验证所述报文中的相关信息,验证通过后,调用停止脚本文件,执行相应的操作;
链重置模块,用于接收所述节点发出链重置指令以及与所述链重置指令对应的报文,验证所述报文中的相关信息,验证通过后,调用重置脚本文件,执行相应的操作;
链更新模块,用于接收所述节点发出链更新指令以及与所述链更新指令对应的报文,验证所述报文中的相关信息,验证通过后,调用更新脚本文件,执行相应的操作;
链清理模块,用于接收所述节点发出链清理指令以及与所述链清理指令对应的报文,验证所述报文中的相关信息,验证通过后,调用清理脚本文件,执行相应的操作;
链状态模块,用于接收所述节点发出链状态指令以及与所述链状态指令对应的报文,验证所述报文中的相关信息,验证通过后,调用状态脚本文件,执行相应的操作。
CN201910336749.6A 2019-04-22 2019-04-22 一种区块链的发布方法及装置 Active CN110149316B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910336749.6A CN110149316B (zh) 2019-04-22 2019-04-22 一种区块链的发布方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910336749.6A CN110149316B (zh) 2019-04-22 2019-04-22 一种区块链的发布方法及装置

Publications (2)

Publication Number Publication Date
CN110149316A true CN110149316A (zh) 2019-08-20
CN110149316B CN110149316B (zh) 2022-05-17

Family

ID=67594386

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910336749.6A Active CN110149316B (zh) 2019-04-22 2019-04-22 一种区块链的发布方法及装置

Country Status (1)

Country Link
CN (1) CN110149316B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110601896A (zh) * 2019-09-20 2019-12-20 腾讯科技(深圳)有限公司 一种基于区块链节点的数据处理方法以及设备
CN111008827A (zh) * 2019-11-25 2020-04-14 深圳前海微众银行股份有限公司 一种跨链交易签名方法及装置
CN111541553A (zh) * 2020-07-08 2020-08-14 支付宝(杭州)信息技术有限公司 区块链一体机的可信启动方法及装置
CN112765586A (zh) * 2021-01-12 2021-05-07 湖北宸威玺链信息技术有限公司 一种基于区块链的部署文件分发方法、设备和存储介质
CN112787849A (zh) * 2020-12-28 2021-05-11 杭州趣链科技有限公司 区块链状态的管控方法、装置、终端及存储介质
CN113220503A (zh) * 2021-05-19 2021-08-06 中国银行股份有限公司 基于区块链的共建代码备份库的处理方法及***
US20210328767A1 (en) * 2020-07-08 2021-10-21 Alipay (Hangzhou) Information Technology Co., Ltd. Hash updating methods and apparatuses of blockchain integrated station
CN114401090A (zh) * 2021-12-08 2022-04-26 杭州趣链科技有限公司 静态页面访问方法、***、装置、设备及存储介质
CN115037468A (zh) * 2022-04-25 2022-09-09 深圳市美的支付科技有限公司 区块链的加密方法以及节点设备、存储介质

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2007203641A8 (en) * 2000-01-21 2007-08-23 Sony Computer Entertainment Inc. Data processing apparatus and data processing method
CN106250721A (zh) * 2016-07-28 2016-12-21 杭州云象网络技术有限公司 一种基于区块链的电子版权保护方法
CN107077557A (zh) * 2016-12-29 2017-08-18 深圳前海达闼云端智能科技有限公司 软件应用程序发布和验证的方法及装置
CN107094077A (zh) * 2017-04-21 2017-08-25 杭州秘猿科技有限公司 一种不限制签名算法的许可链账户***
CN108768988A (zh) * 2018-05-17 2018-11-06 深圳前海微众银行股份有限公司 区块链访问控制方法、设备及计算机可读存储介质
CN108833081A (zh) * 2018-06-22 2018-11-16 中国人民解放军国防科技大学 一种基于区块链的设备组网认证方法
CN108848058A (zh) * 2018-05-07 2018-11-20 众安信息技术服务有限公司 智能合约处理方法及区块链***
CN108881391A (zh) * 2018-04-24 2018-11-23 杨豫森 一种分布式计算存储发热装置及其运行方法
CN109104287A (zh) * 2018-07-27 2018-12-28 众安信息技术服务有限公司 在区块链中进行通信的方法和装置
CN109272315A (zh) * 2018-08-22 2019-01-25 杭州秘猿科技有限公司 一种用于数据交互的智能终端、辨识方法及辨识***
CN109376551A (zh) * 2018-02-13 2019-02-22 李茗 数字版权区块链、数字内容摘要信息计算方法和计算机设备

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2007203641A8 (en) * 2000-01-21 2007-08-23 Sony Computer Entertainment Inc. Data processing apparatus and data processing method
CN106250721A (zh) * 2016-07-28 2016-12-21 杭州云象网络技术有限公司 一种基于区块链的电子版权保护方法
CN107077557A (zh) * 2016-12-29 2017-08-18 深圳前海达闼云端智能科技有限公司 软件应用程序发布和验证的方法及装置
CN107094077A (zh) * 2017-04-21 2017-08-25 杭州秘猿科技有限公司 一种不限制签名算法的许可链账户***
CN109376551A (zh) * 2018-02-13 2019-02-22 李茗 数字版权区块链、数字内容摘要信息计算方法和计算机设备
CN108881391A (zh) * 2018-04-24 2018-11-23 杨豫森 一种分布式计算存储发热装置及其运行方法
CN108848058A (zh) * 2018-05-07 2018-11-20 众安信息技术服务有限公司 智能合约处理方法及区块链***
CN108768988A (zh) * 2018-05-17 2018-11-06 深圳前海微众银行股份有限公司 区块链访问控制方法、设备及计算机可读存储介质
CN108833081A (zh) * 2018-06-22 2018-11-16 中国人民解放军国防科技大学 一种基于区块链的设备组网认证方法
CN109104287A (zh) * 2018-07-27 2018-12-28 众安信息技术服务有限公司 在区块链中进行通信的方法和装置
CN109272315A (zh) * 2018-08-22 2019-01-25 杭州秘猿科技有限公司 一种用于数据交互的智能终端、辨识方法及辨识***

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110601896A (zh) * 2019-09-20 2019-12-20 腾讯科技(深圳)有限公司 一种基于区块链节点的数据处理方法以及设备
CN111008827A (zh) * 2019-11-25 2020-04-14 深圳前海微众银行股份有限公司 一种跨链交易签名方法及装置
US20210328767A1 (en) * 2020-07-08 2021-10-21 Alipay (Hangzhou) Information Technology Co., Ltd. Hash updating methods and apparatuses of blockchain integrated station
CN111541553A (zh) * 2020-07-08 2020-08-14 支付宝(杭州)信息技术有限公司 区块链一体机的可信启动方法及装置
US11616636B2 (en) 2020-07-08 2023-03-28 Alipay (Hangzhou) Information Technology Co., Ltd. Hash updating methods and apparatuses of blockchain integrated station
US11604633B2 (en) 2020-07-08 2023-03-14 Alipay (Hangzhou) Information Technology Co., Ltd. Trusted startup methods and apparatuses of blockchain integrated station
CN111541553B (zh) * 2020-07-08 2021-08-24 支付宝(杭州)信息技术有限公司 区块链一体机的可信启动方法及装置
CN112787849B (zh) * 2020-12-28 2022-05-24 杭州趣链科技有限公司 区块链状态的管控方法、装置、终端及存储介质
CN112787849A (zh) * 2020-12-28 2021-05-11 杭州趣链科技有限公司 区块链状态的管控方法、装置、终端及存储介质
CN112765586A (zh) * 2021-01-12 2021-05-07 湖北宸威玺链信息技术有限公司 一种基于区块链的部署文件分发方法、设备和存储介质
CN113220503A (zh) * 2021-05-19 2021-08-06 中国银行股份有限公司 基于区块链的共建代码备份库的处理方法及***
CN113220503B (zh) * 2021-05-19 2024-04-16 中国银行股份有限公司 基于区块链的共建代码备份库的处理方法及***
CN114401090A (zh) * 2021-12-08 2022-04-26 杭州趣链科技有限公司 静态页面访问方法、***、装置、设备及存储介质
CN115037468A (zh) * 2022-04-25 2022-09-09 深圳市美的支付科技有限公司 区块链的加密方法以及节点设备、存储介质

Also Published As

Publication number Publication date
CN110149316B (zh) 2022-05-17

Similar Documents

Publication Publication Date Title
CN110149316A (zh) 一种区块链的发布方法及装置
US11657036B2 (en) Methods and apparatus for a distributed database that enables deletion of events
AU2020205231B2 (en) Methods and apparatus for efficiently implementing a distributed database within a network
WO2022193985A1 (zh) 一种数据处理方法、装置、设备及存储介质
US10931449B2 (en) System and method for updating data in blockchain
US11082207B2 (en) Blockchain platform as a service (BPaaS)
CN110311782A (zh) 个人信息的零知识证明方法、***及存储介质
CN109858272A (zh) 基于区块链的黑名单数据处理***
CN110059055A (zh) 一种基于分布式私有云的文件存储及读取方法及装置
US20110264782A1 (en) Systems and methods for improved multisite management of converged communication systems and computer systems
CN115208665B (zh) 一种基于区块链的种质资源数据安全共享方法及***
CN113259456B (zh) 跨链交互方法及装置
JP2022528765A (ja) スマートコントラクトでidベースのキー管理を実現する方法および装置
CN112835977A (zh) 一种基于区块链的数据库管理方法及***
WO2022048359A1 (zh) 一种数据归档方法、装置、电子设备和存储介质
CN105847279A (zh) 分布式数据处理方法及数据中心
CN103957174A (zh) 语义交换机松耦合***进行信息处理的方法
CN113259454B (zh) 跨链交互方法及装置
Damiani et al. An experimental evaluation of multi-key strategies for data outsourcing
CN109474706B (zh) 一种数据安全集中服务方法和***
CN103957173A (zh) 语义交换机
CN110992182A (zh) 区块链钱包的交易方法及***
CN113067838B (zh) 跨链交互方法及装置
CN109271139A (zh) 一种基于缓存中间件的规范化处理方法及装置
JP2004159230A (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
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20240306

Address after: Room 1179, W Zone, 11th Floor, Building 1, No. 158 Shuanglian Road, Qingpu District, Shanghai, 201702

Patentee after: Shanghai Zhongan Information Technology Service Co.,Ltd.

Country or region after: China

Address before: 518000 Room 201, building A, No. 1, Qian Wan Road, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong (Shenzhen Qianhai business secretary Co., Ltd.)

Patentee before: ZHONGAN INFORMATION TECHNOLOGY SERVICE Co.,Ltd.

Country or region before: China

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240415

Address after: Room 1179, W Zone, 11th Floor, Building 1, No. 158 Shuanglian Road, Qingpu District, Shanghai, 201702

Patentee after: Shanghai Zhongan Information Technology Service Co.,Ltd.

Country or region after: China

Address before: 518000 Room 201, building A, No. 1, Qian Wan Road, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong (Shenzhen Qianhai business secretary Co., Ltd.)

Patentee before: ZHONGAN INFORMATION TECHNOLOGY SERVICE Co.,Ltd.

Country or region before: China

TR01 Transfer of patent right