CN106789908B - 区块链中区块共识建立方法及系统 - Google Patents

区块链中区块共识建立方法及系统 Download PDF

Info

Publication number
CN106789908B
CN106789908B CN201611047682.7A CN201611047682A CN106789908B CN 106789908 B CN106789908 B CN 106789908B CN 201611047682 A CN201611047682 A CN 201611047682A CN 106789908 B CN106789908 B CN 106789908B
Authority
CN
China
Prior art keywords
block
numerical value
processing
cryptographic hash
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.)
Active
Application number
CN201611047682.7A
Other languages
English (en)
Other versions
CN106789908A (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.)
Jiangsu Payegis Technology Co Ltd
Original Assignee
Jiangsu Payegis Technology 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 Jiangsu Payegis Technology Co Ltd filed Critical Jiangsu Payegis Technology Co Ltd
Priority to CN201611047682.7A priority Critical patent/CN106789908B/zh
Publication of CN106789908A publication Critical patent/CN106789908A/zh
Application granted granted Critical
Publication of CN106789908B publication Critical patent/CN106789908B/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/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, 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/401Transaction verification
    • 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/3236Cryptographic 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 using cryptographic hash functions
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Accounting & Taxation (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Power Engineering (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种区块链中区块共识建立方法及系统。本发明中挖矿节点依据预设区块格式对各自的交易池中的交易信息进行打包,得到多个区块后,对多个区块的整体内容或部分内容进行签名处理,得到签名消息,并将多个区块和多个签名消息广播至区块链网络,完整节点和挖矿节点对监听到的多个区块的整体内容或部分内容分别进行哈希处理,得到多个第二哈希值,将多个第二哈希值与多个所述第一哈希值进行比较,得到与每个第二哈希值相对应的签名信息,对多个签名信息进行数值化处理,依据预设选择机制从多个数值中选择一个数值,将该数值对应的签名信息对应的区块组装至区块链,减轻了挖矿节点的负担,同时也降低了将区块组装至区块链时,校验的工作量。

Description

区块链中区块共识建立方法及系统
技术领域
本发明涉及互联网技术领域,具体涉及一种区块链中区块共识建立方法 及系统。
背景技术
所有的传统支付系统都依赖于一个中心认证机构,依靠中心机构提供的 结算服务来验证并处理所有的交易。区块链没有中心机构,几乎所有的完整 节点都有一份公共总帐的备份,这份总帐可以被视为认证过的记录。
区块链并不是由一个中心机构创造的,它是由区块链网络中的所有节点 各自独立竞争完成的。区块链网络中的所有节点,依靠着节点间的不稳定的 网络连接所传输的信息,最终得出同样的结果并维护了同一个公共总帐。换 句话说,共识是数以千计的独立节点遵守了简单的规则通过异步交互自发形 成的产物。
现有的区块共识指:挖矿节点通过完成工作量证明算法的验算,将交易 记录独立打包进新区块,挖矿节点和完整节点独立的对新区块进行校验并组 装进区块链,在工作量证明机制下选择累计工作量最大的区块组装至区块链。
其中,挖矿节点独立完成工作量证明算法的验算简称为算力证明,这种 算力证明会消耗大量计算机资源,使得挖矿节点所承担的验证工作量非常大, 严重增加了挖矿节点的负担,而且挖矿节点和完整节点独立的对新区块进行 校验的过程也较为复杂,现有技术中缺少一种简化计算量,快速将区块组装 至区块链的技术方案。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分 地解决上述问题的区块链中区块共识建立方法和相应的区块链中区块共识建 立系统。
根据本发明的一个方面,提供了一种区块链中区块共识建立方法,方法 包括:
区块链网络中的挖矿节点依据预设区块格式对各自的交易池中的交易信 息进行打包处理,得到多个区块;
挖矿节点对多个区块的整体内容或部分内容进行签名处理,得到多个签 名消息,并将多个区块和多个签名消息广播至区块链网络,其中,签名消息 包括第一哈希值和签名信息,第一哈希值为区块的整体内容或部分内容的哈 希值;
区块链网络中的完整节点和挖矿节点监听在区块链网络中广播的多个区 块和多个签名消息,对监听到的多个区块的整体内容或部分内容分别进行哈 希处理,得到多个第二哈希值,将多个第二哈希值与多个第一哈希值进行比 较,得到与每个第二哈希值相对应的签名信息;
区块链网络中的完整节点和挖矿节点对多个签名信息进行数值化处理, 得到签名信息对应的数值,依据预设选择机制从多个数值中选择一个数值, 将该数值对应的签名信息对应的区块组装至区块链。
根据本发明的另一方面,提供了一种区块链中区块共识建立系统,应用 于区块链网络,系统包括:
挖矿节点,用于依据预设区块格式对各自的交易池中的交易信息进行打 包处理,得到多个区块;对多个区块的整体内容或部分内容分别进行签名处 理,得到多个签名消息,并将多个区块和多个签名消息广播至区块链网络, 其中,签名消息包括第一哈希值和签名信息,第一哈希值为区块的整体内容 或部分内容的哈希值;
完整节点和挖矿节点,用于监听在区块链网络中广播的多个区块和多个 签名消息,对监听到的多个区块的整体内容或部分内容分别进行哈希处理, 得到多个第二哈希值,将多个第二哈希值与多个第一哈希值进行比较,得到 与每个第二哈希值相对应的签名信息;对多个签名信息进行数值化处理,得 到签名信息对应的数值,依据预设选择机制从多个数值中选择一个数值,将 该数值对应的签名信息对应的区块组装至区块链。
根据本发明提供的方案,挖矿节点依据预设区块格式对各自的交易池中 的交易信息进行打包,在得到多个区块后,对多个区块的整体内容或部分内 容进行签名处理,得到签名消息,其中签名消息包括第一哈希值和签名信息, 第一哈希值为区块的整体内容或部分内容的哈希值,并将多个区块和多个签 名消息广播至区块链网络,完整节点和挖矿节点对监听到的多个区块的整体 内容或部分内容分别进行哈希处理,得到多个第二哈希值,将多个第二哈希 值与多个所述第一哈希值进行比较,得到与每个第二哈希值相对应的签名信 息,对多个签名信息进行数值化处理,得到所述签名信息对应的数值,依据 预设选择机制从多个数值中选择一个数值,将该数值对应的签名信息对应的 区块组装至区块链,在打包过程中无需再进行工作量算法的计算,降低了挖 矿节点的工作量,减轻了挖矿节点的负担,根据重新建立的区块共识,同时 也降低了完整节点和挖矿节点将区块组装至区块链时校验的工作量,此外, 还节省了区块被组装至区块链的时间,更重要的是,无需改变区块链网络的 整体架构。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技 术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它 目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本 领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的, 而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示 相同的部件。在附图中:
图1示出了根据本发明一个实施例的区块链中区块共识建立方法的流程 示意图;
图2示出了根据本发明一个实施例的区块链中区块共识建立系统的结构 示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示 了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不 应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地 理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了根据本发明一个实施例的区块链中区块共识建立方法的流程 示意图。如图1所示,该方法包括以下步骤:
步骤S100,区块链网络中的挖矿节点依据预设区块格式对各自的交易池 中的交易信息进行打包处理,得到多个区块。
在本发明实施例中,交易池用于暂存尚未被加入到区块的交易信息,而 区块链网络中挖矿节点用于负责将暂存于交易池中的交易信息打包生成区 块,其中,交易池中的交易信息是校验通过的交易信息,具体地,挖矿节点 在接收到广播至区块链网络后的交易信息后进行校验,将通过校验的交易信 息暂存至交易池。
在现有技术中,挖矿节点是按照表1描述的区块结构和表2描述的区块 头结构来对各自的交易池中的交易信息进行打包处理的。
表1-区块结构:
大小 字段 描述
4字节 区块大小 用字节表示的该字段之后的区块大小
80字节 区块头 组成区块头的几个字段
1-9(可变整数) 交易计数器 交易的数量
可变的 交易 记录在区块里的交易信息
表2-区块头结构:
挖矿节点按照上述区块结构和区块头结构对各自的交易池中的交易信息 进行打包处理时,需要独立完成工作量证明算法的计算,然而这种计算工作 量非常大,非常消耗计算机资源,严重增加了挖矿节点的负担,挖矿节点在 完成工作量证明算法的计算,将交易信息打包,生成区块后,完整节点和挖 矿节点将选择工作量最大的区块组装至区块链。
为了能够解决挖矿节点计算工作量证明算法时,计算工作量过大的问题, 本发明对区块链网络中的挖矿节点对各自的交易池中的交易信息进行打包处 理时,所依据的区块格式进行了更改,这里挖矿节点将依据预设区块格式对 各自的交易池中的交易信息进行打包处理,其中,区块结构如表1所示,但 是对区块头结构进行了调整,删除了用于工作量证明算法的难度目标和用于 工作量证明算法的计数器。本发明所依据的区块头如表3所示。
表3-区块头结构:
大小 字段 描述
4字节 版本 版本号,用于跟踪软件/协议的更新
32字节 父区块哈希值 引用区块链中父区块的哈希值
32字节 Merkle根 该区块中交易的Merkle树根的哈希值
4字节 时间戳 该区块产生的近似时间(精确到秒的Unix时间戳)
挖矿节点依据表1描述的区块结构和表3描述的区块头结构来对各自的 交易池中的交易信息进行打包处理时,无需进行工作量证明算法的计算,这 样明显减轻了挖矿节点的负担。
在本发明实施例中,区块链网络中会存在多个挖矿节点,多个挖矿节点 在打包交易池中的交易信息时,可能会同时引用同一个父区块,也就是说, 多个新区块指向了同一个父区块,此时就需要从多个新区块中选择一个区块 组装至区块链,举例说明,区块链网络中存在挖矿节点1、2、3,这三个挖矿 节点在对其各自的交易池中的交易信息进行打包处理时,都引用了父区块13, 也就是说,挖矿节点1、2、3在对其各自的交易池中的交易信息打包处理后 得到区块141、142、143,然而,区块141、142、143中,只有一个区块可以被 组装至区块链,具体可以采用如下方法步骤进行选择:
步骤S101,挖矿节点对多个区块的整体内容或部分内容进行签名处理, 得到多个签名消息,并将多个区块和多个签名消息广播至区块链网络,其中, 签名消息包括第一哈希值和签名信息,第一哈希值为区块的整体内容或部分 内容的哈希值。
具体地,挖矿节点在依据预设区块格式对各自的交易池中的交易信息进 行打包处理得到多个区块后,需要对区块的整体内容或部分内容进行签名处 理,其中区块的整体内容可以是整个区块,区块的部分内容可以是区块头, 也就是说,挖矿节点可以对多个区块或多个区块的区块头进行签名处理,在 本发明实施例中,仅对区块的区块头进行签名处理,可以减少工作量。
在本发明的一种可选实施方式中,挖矿节点可以对多个区块进行签名处 理,得到多个区块的签名消息,其中,签名处理过程包括:哈希处理和加密 处理,更为具体地,挖矿节点可以先对多个区块进行哈希处理,得到区块的 哈希值,即第一哈希值,然后再利用挖矿节点的私钥对第一哈希值进行加密 处理,得到签名信息,也就是说,签名消息包括第一哈希值和签名信息,在 得到多个签名消息后,挖矿节点将多个区块和多个签名消息广播至区块链网 络。
在本发明的另一种可选实施方式中,挖矿节点可以对多个区块的区块头 进行签名处理,得到多个区块头的签名消息,其中,签名处理过程包括:哈 希处理和加密处理,更为具体地,挖矿节点可以先对多个区块的区块头进行 哈希处理,得到区块头的哈希值,即第一哈希值,然后再利用挖矿节点的私 钥对第一哈希值进行加密处理,得到签名信息,也就是说,签名消息包括第 一哈希值和签名信息,在得到多个签名消息后,挖矿节点将多个区块和多个 签名消息广播至区块链网络。
举例说明,在根据步骤S100得到区块141、142、143后,挖矿节点1、2、 3可以分别对区块141、142、143进行签名处理,或者对区块141、142、143的 区块头进行签名处理,得到对应的签名消息,例如,签名消息141、142、143, 然后将区块141、142、143和相应的签名消息141、142、143广播至区块链网络。
步骤S102,区块链网络中的完整节点和挖矿节点监听在区块链网络中广 播的多个区块和多个签名消息,对监听到的多个区块的整体内容或部分内容 分别进行哈希处理,得到多个第二哈希值,将多个第二哈希值与多个第一哈 希值进行比较,得到与每个第二哈希值相对应的签名信息。
在区块链网络中有多个完整节点和挖矿节点,区块链网络中的完整节点 和挖矿节点监听在区块链网络中广播的多个区块和多个签名消息,在监听到 多个区块和多个签名消息后,对监听到的多个区块或多个区块的区块头分别 进行哈希处理,这里选择是对区块还是区块头进行哈希处理,取决于步骤S101 中是对区块还是区块头进行签名处理,若在步骤S101中挖矿节点是对区块进 行签名处理,则在本步骤中,完整节点和挖矿节点将对监听到的多个区块分 别进行哈希处理,得到多个第二哈希值;若在步骤S101中挖矿节点是对区块 头进行签名处理,则在本步骤中,完整节点和挖矿节点将对监听到的多个区 块的区块头分别进行哈希处理,得到多个第二哈希值。
在得到多个第二哈希值后,需要将多个第二哈希值与多个第一哈希值进 行比较,具体地,这里的比较是为了找到与第二哈希值相等的第一哈希值, 进而得到与每个第二哈希值相对应的签名信息,也就是将签名信息与区块进 行关联。
举例说明,完整节点和挖矿节点监听到广播至区块链网络中的区块141、 142、143和相应的签名消息141、142、143,然后对区块141、142、143或区块 141、142、143的区块头分别进行哈希处理,得到多个第二哈希值,然后将多 个哈希值与签名消息141、142、143中的第一哈希值进行比较,得到与每个第 二哈希值相对应的签名信息。
对监听到的多个区块的整体内容或部分内容分别进行哈希处理所采用的 算法这里不做具体限定,本领域技术人员可以根据实际需要选择合适的算法 来计算多个区块的整体内容或部分内容的哈希值。
步骤S103,区块链网络中的完整节点和挖矿节点对多个签名信息进行数 值化处理,得到签名信息对应的数值,依据预设选择机制从多个数值中选择 一个数值,将该数值对应的签名信息对应的区块组装至区块链。
具体地,在得到与每个第二哈希值相对应的签名信息后,区块链网络中 的完整节点和挖矿节点对多个签名信息进行数值化处理,主要是将签名信息 转换为可度量的数值,方便从中选择一个数值,然后将该数值对应的签名信 息对应的区块组装至区块链。具体的,这里的数值化处理可以是哈希处理, 哈希处理随机性较强并且分布较均匀,并且哈希值定长易于比较,保证了区 块选择的随机性,当然数字化处理也可以是其他类型,本发明实施例对此不 加以限定。
在本发明实施例中,将依据预设选择机制从多个数值中选择一个数值, 例如,可以从多个数值中选择最小的数值,将该最小的数值对应的签名信息 对应的区块组装至区块链;还可以从多个数值中选择最大的数值,将该最大 的数值对应的签名信息对应的区块组装至区块链;还可以对多个数值进行均 值处理,得到平均值,分别计算多个数值与平均值的差值,根据差值从多个 数值中选择与平均值的差值最小的数值,将与平均值的差值最小的数值对应 的签名信息对应的区块组装至区块链。
举例说明,区块链网络中的完整节点和挖矿节点对签名消息141、142、 143中的签名信息进行数值化处理,得到签名信息对应的数值,然后依据预设 选择机制从三个数值中选择一个数值,具体提,可以从三个数值中选择最小 的数值,将该数值对应的签名信息对应的区块,例如区块141组装至区块链。
由此可见,本发明中挖矿节点依据预设区块格式对各自的交易池中的交 易信息进行打包,在得到多个区块后,对多个区块的整体内容或部分内容进 行签名处理,得到签名消息,其中签名消息包括第一哈希值和签名信息,第 一哈希值为区块的整体内容或部分内容的哈希值,并将多个区块和多个签名 消息广播至区块链网络,完整节点和挖矿节点对监听到的多个区块的整体内 容或部分内容分别进行哈希处理,得到多个第二哈希值,将多个第二哈希值 与多个所述第一哈希值进行比较,得到与每个第二哈希值相对应的签名信息, 对多个签名信息进行数值化处理,得到所述签名信息对应的数值,依据预设 选择机制从多个数值中选择一个数值,将该数值对应的签名信息对应的区块 组装至区块链,在打包过程中无需再进行工作量算法的计算,降低了挖矿节 点的工作量,减轻了挖矿节点的负担,根据重新建立的区块共识,同时也降 低了完整节点和挖矿节点将区块组装至区块链时校验的工作量,此外,还节 省了区块被组装至区块链的时间,更重要的是,无需改变区块链网络的整体 架构。
图2示出了根据本发明一个实施例的区块链中区块共识建立系统的结构 示意图。该系统应用于区块链网络,如图2所示,该系统200包括:挖矿节 点210和完整节点220。
挖矿节点210,用于依据预设区块格式对各自的交易池中的交易信息进行 打包处理,得到多个区块;对多个区块的整体内容或部分内容分别进行签名 处理,得到多个签名消息,并将多个区块和多个签名消息广播至区块链网络, 其中,签名消息包括第一哈希值和签名信息,第一哈希值为区块的整体内容 或部分内容的哈希值;
完整节点220和挖矿节点210,用于监听在区块链网络中广播的多个区块 和多个签名消息,对监听到的多个区块的整体内容或部分内容分别进行哈希 处理,得到多个第二哈希值,将多个第二哈希值与多个第一哈希值进行比较, 得到与每个第二哈希值相对应的签名信息;对多个签名信息进行数值化处理, 得到签名信息对应的数值,依据预设选择机制从多个数值中选择一个数值, 将该数值对应的签名信息对应的区块组装至区块链。
可选地,完整节点220和挖矿节点210进一步用于:从多个数值中选择 最小的数值。
可选地,完整节点220和挖矿节点210进一步用于:从多个数值中选择 最大的数值。
可选地,完整节点220和挖矿节点210进一步用于:对多个数值进行均 值处理,得到平均值;分别计算多个数值与平均值的差值;根据差值从多个 数值中选择与平均值的差值最小的数值。
可选地,挖矿节点210进一步用于:对多个区块进行签名处理,得到多 个区块的签名消息;
完整节点220和挖矿节点210进一步用于:对监听到的多个区块分别进 行哈希处理,得到多个第二哈希值。
可选地,挖矿节点210进一步用于:对多个区块的区块头进行签名处理, 得到多个区块头的签名消息;
完整节点220和挖矿节点210进一步用于:对监听到的多个区块的区块 头分别进行哈希处理,得到多个第二哈希值。
由此可见,本发明中挖矿节点依据预设区块格式对各自的交易池中的交 易信息进行打包,在得到多个区块后,对多个区块的整体内容或部分内容进 行签名处理,得到签名消息,其中签名消息包括第一哈希值和签名信息,第 一哈希值为区块的整体内容或部分内容的哈希值,并将多个区块和多个签名 消息广播至区块链网络,完整节点和挖矿节点对监听到的多个区块的整体内 容或部分内容分别进行哈希处理,得到多个第二哈希值,将多个第二哈希值 与多个所述第一哈希值进行比较,得到与每个第二哈希值相对应的签名信息, 对多个签名信息进行数值化处理,得到所述签名信息对应的数值,依据预设 选择机制从多个数值中选择一个数值,将该数值对应的签名信息对应的区块 组装至区块链,在打包过程中无需再进行工作量算法的计算,降低了挖矿节 点的工作量,减轻了挖矿节点的负担,根据重新建立的区块共识,同时也降 低了完整节点和挖矿节点将区块组装至区块链时校验的工作量,此外,还节 省了区块被组装至区块链的时间,更重要的是,无需改变区块链网络的整体 架构。
至此,本领域技术人员应认识到,虽然本文已详尽示出和描述了本发明 的多个示例性实施例,但是,在不脱离本发明精神和范围的情况下,仍可根 据发明公开的内容直接确定或推导出符合本发明原理的许多其他变型或修 改。因此,本发明的范围应该被理解和认定为覆盖了所有这些其他变型或修 改。
本领域技术人员应当理解,本发明的实施方式可以实现为一种系统、装 置、设备、方法或计算机程序产品。此外,本发明也不针对任何特定编程语 言,应当明白,可以利用各种编程语言实现本发明描述的内容,并且上面对 特定语言所做的描述是为了披露本发明的最佳实施方式。
此外,尽管在附图中以特定顺序描述了本发明实施操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示 的操作才能实现期望的结果。可以省略某些步骤,将多个步骤合并为一个步 骤执行,或者将一个步骤分成多个步骤执行。
综上所述,应用本发明所述的区块链中区块共识建立方法及系统,挖矿 节点在打包过程中无需再进行工作量算法的计算,降低了挖矿节点的工作量, 减轻了挖矿节点的负担,根据重新建立的区块共识,同时也降低了完整节点 和挖矿节点在将区块组装至区块链时校验的工作量,此外,还节省了区块被 组装至区块链的时间,更重要的是,无需改变区块链网络的整体架构。
以上对本发明的方法和具体实施方法进行了详细的介绍,并给出了相应 的实施例。当然,除上述实施例外,本发明还可以有其它实施方式,凡采用 等同替换或等效变换形成的技术方案,均落在本发明所要保护的范围之内。

Claims (12)

1.一种区块链中区块共识建立方法,其特征在于,所述方法包括:
区块链网络中的挖矿节点依据预设区块格式对各自的交易池中的交易信息进行打包处理,得到多个区块;
所述挖矿节点对所述多个区块的整体内容或部分内容进行签名处理,得到多个签名消息,并将所述多个区块和多个签名消息广播至区块链网络,其中,所述签名消息包括第一哈希值和签名信息,所述第一哈希值为区块的整体内容或部分内容的哈希值;
区块链网络中的完整节点和挖矿节点监听在所述区块链网络中广播的所述多个区块和多个签名消息,在所述多个签名消息是所述挖矿节点对所述多个区块的整体内容进行签名处理而得到的情况下,则对监听到的多个区块的整体内容分别进行哈希处理,得到多个第二哈希值,在所述多个签名消息是所述挖矿节点对所述多个区块的部分内容进行签名处理而得到的情况下,则对监听到的多个区块的部分内容分别进行哈希处理,得到多个第二哈希值;将多个第二哈希值与多个所述第一哈希值进行比较,得到与每个第二哈希值相对应的签名信息;
区块链网络中的完整节点和挖矿节点对多个签名信息进行数值化处理,得到所述签名信息对应的数值,依据预设选择机制从多个数值中选择一个数值,将该数值对应的签名信息对应的区块组装至区块链。
2.根据权利要求1所述的方法,其特征在于,所述依据预设选择机制从多个数值中选择一个数值进一步包括:
从所述多个数值中选择最小的数值。
3.根据权利要求1所述的方法,其特征在于,所述依据预设选择机制从多个数值中选择一个数值进一步包括:
从所述多个数值中选择最大的数值。
4.根据权利要求1所述的方法,其特征在于,所述依据预设选择机制从多个数值中选择一个数值进一步包括:
对所述多个数值进行均值处理,得到平均值;
分别计算多个数值与平均值的差值;
根据差值从所述多个数值中选择与平均值的差值最小的数值。
5.根据权利要求1-4任一项所述的方法,其特征在于,对所述多个区块的整体内容分别进行签名处理,得到多个签名消息进一步包括:
对所述多个区块进行签名处理,得到多个区块的签名消息;
所述对监听到的多个区块的整体内容分别进行哈希处理,得到多个第二哈希值进一步包括:
对监听到的多个区块分别进行哈希处理,得到多个第二哈希值。
6.根据权利要求1-4任一项所述的方法,其特征在于,对所述多个区块的部分内容分别进行签名处理,得到多个签名消息进一步包括:
对所述多个区块的区块头进行签名处理,得到多个区块头的签名消息;
所述对监听到的多个区块的部分内容分别进行哈希处理,得到多个第二哈希值进一步包括:
对监听到的多个区块的区块头分别进行哈希处理,得到多个第二哈希值。
7.一种区块链中区块共识建立系统,应用于区块链网络,其特征在于,所述系统包括:
挖矿节点,用于依据预设区块格式对各自的交易池中的交易信息进行打包处理,得到多个区块;对所述多个区块的整体内容或部分内容分别进行签名处理,得到多个签名消息,并将所述多个区块和多个签名消息广播至区块链网络,其中,所述签名消息包括第一哈希值和签名信息,所述第一哈希值为区块的整体内容或部分内容的哈希值;
完整节点和挖矿节点,用于监听在所述区块链网络中广播的所述多个区块和多个签名消息,在所述多个签名消息是所述挖矿节点对所述多个区块的整体内容进行签名处理而得到的情况下,则对监听到的多个区块的整体内容分别进行哈希处理,得到多个第二哈希值,在所述多个签名消息是所述挖矿节点对所述多个区块的部分内容进行签名处理而得到的情况下,则对监听到的多个区块的部分内容分别进行哈希处理,得到多个第二哈希值;将多个第二哈希值与多个所述第一哈希值进行比较,得到与每个第二哈希值相对应的签名信息;对多个签名信息进行数值化处理,得到所述签名信息对应的数值,依据预设选择机制从多个数值中选择一个数值,将该数值对应的签名信息对应的区块组装至区块链。
8.根据权利要求7所述的系统,其特征在于,所述完整节点和挖矿节点进一步用于:从所述多个数值中选择最小的数值。
9.根据权利要求7所述的系统,其特征在于,所述完整节点和挖矿节点进一步用于:从所述多个数值中选择最大的数值。
10.根据权利要求7所述的系统,其特征在于,所述完整节点和挖矿节点进一步用于:
对所述多个数值进行均值处理,得到平均值;
分别计算多个数值与平均值的差值;
根据差值从所述多个数值中选择与平均值的差值最小的数值。
11.根据权利要求7-10任一项所述的系统,其特征在于,所述挖矿节点进一步用于:对所述多个区块进行签名处理,得到多个区块的签名消息;
所述完整节点和挖矿节点进一步用于:对监听到的多个区块分别进行哈希处理,得到多个第二哈希值。
12.根据权利要求7-10任一项所述的系统,其特征在于,所述挖矿节点进一步用于:对所述多个区块的区块头进行签名处理,得到多个区块头的签名消息;
所述完整节点和挖矿节点进一步用于:对监听到的多个区块的区块头分别进行哈希处理,得到多个第二哈希值。
CN201611047682.7A 2016-11-23 2016-11-23 区块链中区块共识建立方法及系统 Active CN106789908B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611047682.7A CN106789908B (zh) 2016-11-23 2016-11-23 区块链中区块共识建立方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611047682.7A CN106789908B (zh) 2016-11-23 2016-11-23 区块链中区块共识建立方法及系统

Publications (2)

Publication Number Publication Date
CN106789908A CN106789908A (zh) 2017-05-31
CN106789908B true CN106789908B (zh) 2019-09-06

Family

ID=58974266

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611047682.7A Active CN106789908B (zh) 2016-11-23 2016-11-23 区块链中区块共识建立方法及系统

Country Status (1)

Country Link
CN (1) CN106789908B (zh)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107294729B (zh) * 2017-07-25 2020-03-13 中国联合网络通信集团有限公司 区块链中不同节点之间的通信方法及装置
CN107370606A (zh) * 2017-07-26 2017-11-21 中山大学 一种基于区块链的微博多重签名方法
CN107566124B (zh) * 2017-08-24 2020-06-19 深圳市易成自动驾驶技术有限公司 基于哈希运算的共识建立方法、区块链系统及存储介质
CN108241926B (zh) * 2017-08-25 2020-07-10 杭州复杂美科技有限公司 一种区块链授权共识方法
CN107733651B (zh) * 2017-09-11 2020-06-19 联动优势科技有限公司 一种区块链生成方法、节点及系统
CN107819749A (zh) 2017-10-26 2018-03-20 平安科技(深圳)有限公司 基于以太坊的区块链系统和交易数据处理方法
CN108243241B (zh) * 2017-11-10 2019-10-15 杭州复杂美科技有限公司 一种区块链交易的存储方式及排队方式
CN107911819B (zh) * 2017-11-30 2020-11-27 江苏通付盾科技有限公司 基于手机号码选取打包节点的方法及系统
CN108023896B (zh) * 2017-12-28 2020-09-08 江苏通付盾科技有限公司 区块同步方法及系统
CN110210967A (zh) * 2018-02-28 2019-09-06 成都高新信息技术研究院 一种高速、变频的区块链pos共识计算方法与系统
CN110298657A (zh) * 2018-03-21 2019-10-01 中思博安科技(北京)有限公司 一种区块链共识方法、相关装置及系统
CN108521414A (zh) * 2018-03-30 2018-09-11 深圳市优课在线教育有限公司 一种实现在线应用平台过程行为数据互信的方法
CN108512652B (zh) * 2018-04-02 2021-04-09 陆雷钦 基于时间证明的去中心化共识方法、系统及区块链系统
CN108512861A (zh) * 2018-04-18 2018-09-07 北京百悟科技有限公司 一种云平台的认证方法和装置、计算机可读存储介质
CN108550038A (zh) * 2018-04-18 2018-09-18 杭州秘猿科技有限公司 一种应用于区块链的数据传播系统及方法
CN110458709B (zh) * 2018-04-28 2022-12-30 腾讯科技(深圳)有限公司 资源转移信息的传输方法和装置、存储介质、电子装置
CN108765150A (zh) * 2018-05-11 2018-11-06 中国联合网络通信集团有限公司 交易信息处理方法及存储节点
CN108737430B (zh) * 2018-05-25 2020-07-17 全链通有限公司 区块链节点的加密通信方法和系统
US11120434B2 (en) * 2018-06-08 2021-09-14 AnApp Technologies Limited System and method for securing transaction in a blockchain network
CN108880795A (zh) * 2018-06-22 2018-11-23 方亚南 一种区块链安全机制及装置
CN109087111A (zh) * 2018-08-31 2018-12-25 深圳付贝科技有限公司 基于区块链的共识验证方法、挖矿机及区块链系统
CN109040783A (zh) * 2018-09-11 2018-12-18 北京朗达和顺科技有限公司 一种视频防伪系统、方法及装置
CN112968883B (zh) * 2018-09-27 2023-04-07 福建福链科技有限公司 一种安全性高的区块链异构共识方法及终端
CN109672661A (zh) * 2018-10-09 2019-04-23 中南林业科技大学 一种基于区块链的防篡改隐蔽通信方法、系统及平台
CN109525648A (zh) * 2018-10-26 2019-03-26 全链通有限公司 区块链共识机制、设备及计算机可读存储介质
CN109542883B (zh) * 2018-10-30 2021-06-01 广州斯拜若科技有限公司 一种基于区块链的信息查重方法
TWI682346B (zh) * 2018-11-12 2020-01-11 柯賓漢數位金融科技有限公司 區塊鏈的產生方法及系統
CN110020854B (zh) 2018-11-27 2020-11-17 创新先进技术有限公司 一种基于多个区块链网络的数据存证方法及系统
CN110166237A (zh) * 2019-05-31 2019-08-23 杭州时戳信息科技有限公司 一种基于区块链的密钥分发方法及系统
CN110225044B (zh) * 2019-06-17 2020-11-27 北京瑞策科技有限公司 在区块链上的验证方法及装置
CN110336816B (zh) * 2019-07-05 2021-08-17 深圳市九链科技有限公司 一种使用通信证明作为区块链共识的方法
CN110704464B (zh) * 2019-09-12 2022-07-08 广州蚁比特区块链科技有限公司 一种分叉问题的处理方法及装置
CN112600866A (zh) * 2019-10-02 2021-04-02 陈小虎 一种简明高效的串联服务工作量证明的方案
CN111062721B (zh) * 2019-12-31 2023-12-12 南京金宁汇科技有限公司 一种应用于区块链的签名方法、系统及存储介质
CN113381863A (zh) * 2020-03-10 2021-09-10 本无链科技(深圳)有限公司 一种用于区块链的招呼型广播系统及方法
CN113098692B (zh) * 2021-04-06 2023-07-28 湖北央中巨石信息技术有限公司 一种多方在相同预制规则下的同步共识算法、系统及介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105488665A (zh) * 2015-11-25 2016-04-13 布比(北京)网络技术有限公司 一种去中心化的交易方法
CN105719185A (zh) * 2016-01-22 2016-06-29 杭州复杂美科技有限公司 区块链的数据对比及共识方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160164884A1 (en) * 2014-12-05 2016-06-09 Skuchain, Inc. Cryptographic verification of provenance in a supply chain

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105488665A (zh) * 2015-11-25 2016-04-13 布比(北京)网络技术有限公司 一种去中心化的交易方法
CN105719185A (zh) * 2016-01-22 2016-06-29 杭州复杂美科技有限公司 区块链的数据对比及共识方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
区块链技术发展现状与展望;袁勇、王飞跃;《自动化学报》;20160430;第42卷(第4期);487-488

Also Published As

Publication number Publication date
CN106789908A (zh) 2017-05-31

Similar Documents

Publication Publication Date Title
CN106789908B (zh) 区块链中区块共识建立方法及系统
JP7292365B2 (ja) ブロックチェーンからのデータのセキュアな抽出のための暗号方法及びシステム
CN107396360A (zh) 区块验证方法及装置
CN107832624A (zh) 一种基于区块链的可视化签名系统和方法
CN110458554B (zh) 区块链上基于身份的数据快速交易方法
CN104243456B (zh) 适用于云计算的基于sm2算法的签名及解密方法和系统
CN103259788B (zh) 针对安全协议的形式化建模及验证方法
CN110601816B (zh) 一种区块链系统中轻量级节点控制方法及装置
WO2016120975A1 (ja) データ集計分析システム及びその方法
CN110532806A (zh) 标书管理方法、系统及计算机可读存储介质
WO2019101235A3 (en) Methods and devices for testing signature verification for blockchain system
CN110365662B (zh) 业务审批方法及装置
MX2019004201A (es) Sistema y metodo para proteccion de informacion.
CN106161415B (zh) 一种信息处理方法及移动群智感知应用平台
CN110113334B (zh) 基于区块链的合同处理方法、设备及存储介质
CN110148003A (zh) 一种碳排放权交易方法及系统
CN114650134A (zh) 一种基于秘密共享的纵向隐私保护逻辑回归方法
Chen et al. ARMOR: A secure combinatorial auction for heterogeneous spectrum
CN110827121A (zh) 基于区块链的电子投标方法、设备及存储介质
CN110599175A (zh) 一种区块处理方法及相关设备
CN111125781A (zh) 一种文件签名方法、装置和文件签名验证方法、装置
CN109462540A (zh) 邮件存证方法、装置和系统
CN109472602A (zh) 一种验证交易的方法、一种节点及一种区块链系统
Zhang et al. SSBAS-FA: A secure sealed-bid e-auction scheme with fair arbitration based on time-released blockchain
CN104821884B (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