WO2017031967A1 - 比特币工作量证明哈希计算芯片优化的方法、装置和电路 - Google Patents

比特币工作量证明哈希计算芯片优化的方法、装置和电路 Download PDF

Info

Publication number
WO2017031967A1
WO2017031967A1 PCT/CN2016/074518 CN2016074518W WO2017031967A1 WO 2017031967 A1 WO2017031967 A1 WO 2017031967A1 CN 2016074518 W CN2016074518 W CN 2016074518W WO 2017031967 A1 WO2017031967 A1 WO 2017031967A1
Authority
WO
WIPO (PCT)
Prior art keywords
input
hash
input amount
computing chip
circuit
Prior art date
Application number
PCT/CN2016/074518
Other languages
English (en)
French (fr)
Inventor
詹克团
苏杰
吴忌寒
Original Assignee
北京比特大陆科技有限公司
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 北京比特大陆科技有限公司 filed Critical 北京比特大陆科技有限公司
Publication of WO2017031967A1 publication Critical patent/WO2017031967A1/zh

Links

Images

Classifications

    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators

Definitions

  • the operation method of digital cryptocurrency Bitcoin mining is shown in Figure 1.
  • the operation is performed by exhaustive random value 1nonce1, random value 2nonce2, and the random value nonce makes the final result of a series of hash hash operations smaller than the value corresponding to the current computational difficulty.
  • the random value 1nocne1, the random value 2nonce2 and the related data are obtained by the relevant hash operation of the agreement to obtain the transaction hash merkle_hash, the transaction hash merkle_hash high 32bit and 32bit nonce, and the 32bit variable network difficulty nbit, time ntime still
  • the other constants make up the 512-bit message data required for the sha256 operation.
  • the low 224 bit data and the 32 bit variable protocol version number ver constitute the 256 bit state required for the sha256 operation.
  • the general dedicated circuit accepts the task only to calculate the last two hash operations.
  • the Sha256 operation is divided into two parts: the extended circuit unit and the compressed circuit unit.
  • the extension is to generate 64 4-byte data (w0-w63) 64-round compression circuit unit operation by using 16 4-byte data of the message.
  • the general operation process is to change the random value 1nocne1, the random value 2nonce2, calculate the transaction root merkle_root, the transaction root merkle_root and the transaction tree to calculate the transaction hash merkle_hash, and calculate a transaction hash merkle_hash (intermediate result)
  • the value of the random number nonce is changed (the value of the 32-bit nonce is traversed) to find the data that meets the difficulty requirement.
  • the technical problem to be solved by the embodiments of the present invention is to provide a method, device and circuit for optimizing the bitcoin workload proof hash computing chip, which greatly reduces the power consumption of the circuit.
  • control parameters that combine the second input amount include the last 4 bytes of the transaction hash, time, and network difficulty.
  • the implementing method for changing the initial first input amount of the hash computing chip includes: The paying address of the first transaction, the signature provided by the pool, the random value 1 and/or the random value 2 are changed such that the last 4 bytes of the transaction hash in the first input are the same.
  • the transaction hash merkle_hash acquisition includes calculation of the hash root merkle_root and the transaction tree.
  • Specific random value 1nocne1, random value 2nonce2 calculates the hash root merkle_root, and stores the hash root merkle_root and its related information.
  • the transaction hash merkle_hash of the preset number of groups is obtained, the merkle_hash of the group is sent, and the value of the random number nonce is changed each time to find the difficulty requirement. The data until the random number nonce is exhausted, waiting to get the merkle_hash of the next sent group.
  • FIG. 6 there is shown a circuit for optimizing a bitcoin workload proof hash computing chip of the present invention, comprising at least two compression circuit units 601, an extension circuit unit 602 and an arithmetic circuit unit 603, the compression circuit unit 601 and The expansion circuit unit 602 is connected, the output end of the compression circuit unit 601 and the expansion circuit unit 602 is connected to the input end of the operation circuit unit 603, and the input end of the compression circuit unit 601 is connected to the first input amount, the compression The input of circuit unit 602 is coupled to a second input.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开的比特币工作量证明哈希计算芯片优化的方法、装置和电路,涉及密码计算、计算机网络和集成电路技术领域,其中所述比特币工作量证明哈希计算芯片优化的方法包括:周期性地保持哈希计算芯片的第二输入量不变,当第二输入量不变时,关闭与第二输入量对应的计算电路,改变哈希计算芯片初始的第一输入量,并获取对应的新的第一输入量,分别将各第一输入量与其对应的第二输入量以及随机数进行哈希运算,以寻找满足要求的工作量证明,所述各第一输入量包括所述初始的第一输入量和所述新的第一输入量。本发明提供的比特币工作量证明哈希计算芯片优化的方法、装置和电路,极大地降低电路的功耗。

Description

比特币工作量证明哈希计算芯片优化的方法、装置和电路 技术领域
本发明涉及密码计算、计算机网络和集成电路技术领域技术领域,特别是涉及一种比特币工作量证明哈希计算芯片优化的方法、装置和电路。
背景技术
数字加密货币比特币挖矿的运算方式参见图1,运算时通过穷举随机值1nonce1,随机值2nonce2,随机值nonce使得一系列哈希hash运算的最后结果小于当前运算难度对应的值,则成功找到一个符合协议的比特币区块。其中由随机值1nocne1,随机值2nonce2和相关数据通过进行符合协议的相关哈希运算得到交易哈希merkle_hash后,交易哈希merkle_hash的高32bit和32bit nonce,以及32bit变量网络难度nbit,时间ntime还有其他常数组成sha256运算需要的512bit消息数据。而低224bit数据和32bit变量协议版本号ver组成sha256运算需要的256bit状态。而一般的专用电路接受任务只计算最后的两次哈希运算。
其中,Sha256运算分为对扩展电路单元和压缩电路单元两个部分,扩展是用消息的16个4字节数据生成64个4字节数据(w0-w63)64轮压缩电路单元运算使用。结合图2的计算流程一般的运算过程是改变随机值1nocne1,随机值2nonce2,计算交易根merkle_root,交易根merkle_root和交易树进行计算获得交易哈希merkle_hash,计算出一个交易哈希merkle_hash(中间结果)后每次都改变随机数nonce的值(遍历32bit nonce的值)来寻找符合难度要求的数据。第一次哈希运算的扩展和压缩过程都需要每次变化。扩展电路单元部分由于随机数nonce的改变会不停变化,同时因为压缩电路单元的外部输入第一输入量midstate不变,但是由于扩展电路单元部分输入到压缩电路单元部分的w0-w63会不停变化,会导致压缩电路单元部分运 算不停变化。
当前的实现方法中,穷举计算的第一次哈希运算的输入:
1)得到一个新的midstate的值;
2)不停改变随机数nonce的值,来搜索符合条件的nonce;
3)回到第1)步,运算量多功耗大,目前需要本领域技术人员迫切解决的一个技术问题就是:如何能够创新地提出一种有效措施,满足实际应用的更多需求。
发明内容
本发明实施例所要解决的技术问题是提供一种比特币工作量证明哈希计算芯片优化的方法、装置和电路,极大地降低电路的功耗。
为了解决上述问题,本发明公开了一种比特币工作量证明哈希计算芯片优化的方法,包括:
周期性地保持哈希计算芯片的第二输入量不变;当第二输入量不变时,关闭与第二输入量对应的计算电路;
改变哈希计算芯片初始的第一输入量,并获取对应的新的第一输入量;
分别将各第一输入量与其对应的第二输入量以及随机数进行哈希运算,以寻找满足要求的工作量证明;所述各第一输入量包括所述初始的第一输入量和所述新的第一输入量。
进一步的,运算第一输入量的控制参数包括版本号、前一个块的哈希值、交易哈希、时间、网络难度以及填充位;其中,交易哈希的控制参数包括第一个交易的打款地址、矿池提供的签名、未确认交易所形成的哈希树、随机值1以及随机值2。
进一步的,组合第二输入量的控制参数包括交易哈希的后4个字节、时间和网络难度。
进一步的,所述改变哈希计算芯片初始的第一输入量的实现方法包括:改变版本号。
进一步的,所述改变哈希计算芯片初始的第一输入量的实现方法包括: 改变第一个交易的打款地址、矿池提供的签名、随机值1和\或随机值2,使得第一输入量中交易哈希的后4个字节相同。
进一步的,所述关闭与第二输入量对应的计算电路的实现方法包括:关闭与所述对应的计算电路相关的时钟电路。
本发明还公布了一种比特币工作量证明哈希计算芯片优化的装置,包括:
第一处理模块,用于周期性地保持哈希计算芯片的第二输入量不变;当第二输入量不变时,关闭与第二输入量对应的计算电路;
第二处理模块,用于改变哈希计算芯片初始的第一输入量,并获取对应的新的第一输入量;
第三处理模块,用于分别将各第一输入量与其对应的第二输入量以及随机数进行哈希运算,以寻找满足要求的工作量证明;所述各第一输入量包括所述初始的第一输入量和所述新的第一输入量。
本发明还公布了一种比特币工作量证明哈希计算芯片优化的电路,包括至少两个压缩电路单元、扩展电路单元和运算电路单元,所述压缩电路单元与扩展电路单元相连,所述压缩电路单元和扩展电路单元的输出端,连接所述运算电路单元的输入端,所述压缩电路单元的输入端连接第一输入量,所述压缩电路单元的输入端连接第二输入量。
与现有技术相比,本发明包括以下优点:
本发明提供的方案通过周期性的保持哈希计算芯片的第二输入量不变,改变哈希计算芯片的初始的第一输入量,进而获取对应的新的第一输入量,将初始的第一输入量和获取的各对应的新的第一输入量分别与其对应的第二输入量以及随机数进行哈希运算,以寻找满足要求的工作量证明,每个不变的第二输入量都会与N(N≥2)个第一输入量进行哈希运算,基于第二输入量不变时,与第二输入量对应的计算电路处于关闭状态,极大的降低了运算量和功耗。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是背景技术中所述的数字加密货币比特币挖矿的运算方式示意图;
图2是背景技术中所述的计算流程示意图;
图3是实施例一所述的一种比特币工作量证明哈希计算芯片优化的方法流程图;
图4是实施例一所述的计算流程图;
图5是实施例二所述的比特币工作量证明哈希计算芯片优化的装置示意图;
图6是实施例三所述的比特币工作量证明哈希计算芯片优化的电路示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
详细介绍本发明实施例提供的一种比特币工作量证明哈希计算芯片优化的方法。
参照图3,示出了本发明的一种比特币工作量证明哈希计算芯片优化的方法,包括:
S301,周期性地保持哈希计算芯片的第二输入量不变;当第二输入量不变时,关闭与第二输入量对应的计算电路;
S302,改变哈希计算芯片初始的第一输入量,并获取对应的新的第一输入量;
S303,分别将各第一输入量与其对应的第二输入量以及随机数进行哈希运算,以寻找满足要求的工作量证明;所述各第一输入量包括所述初始的第一输入量和所述新的第一输入量。
通过改变哈希计算芯片初始的第一输入量,周期性的保持第二输入量不变,进而获取对应的新的第一输入量,将初始的第一输入量和各新的第一输入量分别与其对应的第二输入量以及随机数进行哈希运算,以寻找满足要求的工作量证明。
具体实现过程中分别将N(N≥2)个第一输入量与第二输入量和随机数进行哈希运算,运算过程中每改变一次随机数,将其和第二输入量一起与N个第一输入量分别进行哈希运算,第二输入量周期性的保持不变,经过N次运算变化一次,第二输入量的运算量和运行时间就变成了1/N。当第二输入量不变的时候,关闭对应的计算电路,达到有效降低功耗的目的。应用中,通常采用关闭与所述对应的计算电路相关的时钟电路来实现计算电路的关闭。其中,所述第一输入量的控制参数包括版本号、前一个块的哈希值、交易哈希、时间、网络难度以及填充位;其中,交易哈希的控制参数包括第一个交易的打款地址、矿池提供的签名、未确认交易所形成的哈希树、随机值1以及随机值2。获取芯片初始的第一输入量的方式通过对第一输入量的控制参数进行运算得到。随机数由芯片控制变换。
更为具体的计算流程图参见图4,首先通过改变随机值1nocne1,随机值2nonce2寻找低32bit相同的交易哈希merkle_hash,如每次遍历随机值1nonce1的32bit和随机值2nonce2的某2bit计算出所有的交易哈希merkle_hash的结果,这样就有2^34个运算结果的交易哈希merkle_hash,然后对这些交易哈希merkle_hash按照最高位32bit来分组,这样平均每组有4个交易哈希merkle_hash(低32bit相同),然后按组下对交易哈希merkle_hash和随机数进行运算。其中,交易哈希merkle_hash的获得包括对哈希根merkle_root和交易树进行计算。具体的通过随机值1nocne1,随机值 2nonce2计算哈希根merkle_root,并存储哈希根merkle_root及其相关信息,当得到预设组数的交易哈希merkle_hash,发送成组的merkle_hash,每次都改变随机数nonce的值来寻找符合难度要求的数据,直到随机数nonce用尽,等待获取下一次发送成组的merkle_hash。
运算需要满足计算出来的交易哈希merkle_hash的低32bit相同的条件才能进行,实际应用中的一种实现方法是使用多个版本号ver来进行运算,也即改变版本号;
比特币协议中的版本号在正常情况下会同时共存两个版本号。这样每算出一个merkle_hash那么同时利用共存的两个或者多个版本号来进行多个midstate运算。
同时还可以通过寻找多个低32位(后4个字节)相同的交易哈希merkle_hash,然后进行运算,也即通过改变第一个交易的打款地址、矿池提供的签名、随机值1和\或随机值2来改变第一输入量,同时保证第二输入量不变。
补充介绍的,工作量证明(Proof-of-Work),为了在点对点的基础上构建一组分散化的时间戳服务器,仅仅像报纸或世界性新闻网络组一样工作是不够的,我们还需要一个类似于亚当·柏克(Adam Back)提出的哈希现金(Hashcash)6。在进行随机散列运算时,工作量证明机制引入了对某一个特定值的扫描工作,比方说SHA-256下,随机散列值以一个或多个0开始。那么随着0的数目的上升,找到这个解,所需要的工作量将呈指数增长,但是检验结果仅需要一次随机散列运算。我们在区块中补增一个随机数(Nonce),这个随机数要使得该给定区块的随机散列值出现了所需的那么多个0。我们通过反复尝试来找到这个随机数,找到为止。这样我们就构建了一个工作量证明机制。只要该CPU耗费的工作量能够满足该工作量证明机制,那么除非重新完成相当的工作量,该区块的信息就不可更改。由于之后的区块是链接在该区块之后的,所以想要更改该区块中的信息,就还需要重新完成之后所有区块的全部工作量。
同时,该工作量证明机制还解决了在集体投票表决时,谁是大多数的问 题。如果决定大多数的方式是基于IP地址的,一IP地址一票,那么如果有人拥有分配大量IP地址的权力,则该机制就被破坏了。而工作量证明机制的本质则是一CPU一票。“大多数”的决定表达为最长的链,因为最长的链包含了最大的工作量。如果大多数的CPU为诚实的节点控制,那么诚实的链条将以最快的速度延长,并超越其他的竞争链条。如果想要对业已出现的区块进行修改,攻击者必须重新完成该区块的工作量外加该区块之后所有区块的工作量,并最终赶上和超越诚实节点的工作量。设想一个较慢的攻击者试图赶上随后的区块,那么其成功概率将呈指数化递减。另一个问题是,硬件的运算速度在高速增长,且节点参与网络的程度会有所起伏。为了解决这个问题,工作量证明的难度(the proof-of-work difficulty)将采用移动平均目标的方法来确定,即令难度指向令每小时生成区块的速度为某一预设的平均数。如果区块生成的速度过快,那么难度就会提高。
近年来比特币作为一种极具价值的电子货币吸引着越来越多人的关注,越来越多的人关注并投资比特币,比特币使现金系统在点对点的环境下运行,网络通过随机散列(hashing)对全部交易加上时间戳(timestamps),将它们合并入一个不断延伸的基于随机散列的工作量证明(proof-of-work)的链条作为交易记录,该交易记录具有不可更改性。最长的链条不仅将作为被观察到的事件序列(sequence)的证明,而且被看做是来自CPU计算能力最大的池(pool)。只要大多数的CPU计算能力都没有打算合作起来对全网进行攻击,那么诚实的节点将会生成最长的、超过攻击者的链条。信息尽最大努力在全网传播即可,节点(nodes)可以随时离开和重新加入网络,并将最长的工作量证明链条作为在该节点离线期间发生的交易的证明。
具体的,运行该网络的步骤如下:
1)新的交易向全网进行广播;
2)每一个节点都将收到的交易信息纳入一个区块中;
3)每个节点都尝试在自己的区块中找到一个具有足够难度的工作量证明;
4)当一个节点找到了一个工作量证明,它就向全网进行广播;
5)当且仅当包含在该区块中的所有交易都是有效的且之前未存在过的,其他节点才认同该区块的有效性;
6)其他节点表示他们接受该区块,而表示接受的方法,则是在跟随该区块的末尾,制造新的区块以延长该链条,而将被接受区块的随机散列值视为先于新区快的随机散列值。
节点始终都将最长的链条视为正确的链条,并持续工作和延长它。如果有两个节点同时广播不同版本的新区块,那么其他节点在接收到该区块的时间上将存在先后差别。当此情形,他们将在率先收到的区块基础上进行工作,但也会保留另外一个链条,以防后者变成最长的链条。该僵局的打破要等到下一个工作量证明被发现,而其中的一条链条被证实为是较长的一条,那么在另一条分支链条上工作的节点将转换阵营,开始在较长的链条上工作。
所谓“新的交易要广播”,实际上不需要抵达全部的节点。只要交易信息能够抵达足够多的节点,那么他们将很快被整合进一个区块中。而区块的广播对被丢弃的信息是具有容错能力的。如果一个节点没有收到某特定区块,那么该节点将会发现自己缺失了某个区块,也就可以提出自己下载该区块的请求。
我们约定如此:每个区块的第一笔交易进行特殊化处理,该交易产生一枚由该区块创造者拥有的新的电子货币。这样就增加了节点支持该网络的激励,并在没有中央集权机构发行货币的情况下,提供了一种将电子货币分配到流通领域的一种方法。这种将一定数量新货币持续增添到货币系统中的方法,非常类似于耗费资源去挖掘金矿并将黄金注入到流通领域。此时,CPU的时间和电力消耗就是消耗的资源。另外一个激励的来源则是交易费(transaction fees)。如果某笔交易的输出值小于输入值,那么差额就是交易费,该交易费将被增加到该区块的激励中。只要既定数量的电子货币已经进入流通,那么激励机制就可以逐渐转换为完全依靠交易费,那么本货币系统就能够免于通货膨胀。
此外,基于SHA-256的原理是本领域技术人员所熟知的,这里不再对其进行补充介绍。
实施例二
详细介绍本发明实施例提供的一种比特币工作量证明哈希计算芯片优化的装置。
参见图5,示出了本发明的比特币工作量证明哈希计算芯片优化的装置,具体的包括:
第一处理模块501,用于周期性地保持哈希计算芯片的第二输入量不变;当第二输入量不变时,关闭与第二输入量对应的计算电路;
第二处理模块502,用于改变哈希计算芯片初始的第一输入量,并获取对应的新的第一输入量;
第三处理模块503,用于分别将各第一输入量与其对应的第二输入量以及随机数进行哈希运算,以寻找满足要求的工作量证明;所述各第一输入量包括所述初始的第一输入量和所述新的第一输入量。
实施例三
详细介绍本发明实施例提供的一种比特币工作量证明哈希计算芯片优化的电路。
参照图6,示出了本发明一种比特币工作量证明哈希计算芯片优化的电路,包括至少两个压缩电路单元601、扩展电路单元602和运算电路单元603,所述压缩电路单元601与扩展电路单元602相连,所述压缩电路单元601和扩展电路单元602的输出端,连接所述运算电路单元603的输入端,所述压缩电路单元601的输入端连接第一输入量,所述压缩电路单元602的输入端连接第二输入量。
本实施例中以N(N≥2)个压缩电路单元为例进行介绍,对应的压缩电路单元分别为第一压缩电路单元6011、第二压缩电路单元6012……第N压缩电路601N。N个压缩电路单元共享一个扩展电路单元,很简单的以N=2来进行说明,由于共享了压缩电路单元的扩展电路单元部分的电路规模下降为1/2且功耗也降为传统的1/2半。同理,N=n时,扩展电路单元部分的电路 规模下降为1/n且功耗也降为传统的1/n半。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
以上对本发明所提供的一种比特币工作量证明哈希计算芯片优化的方法、装置和电路,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的实现及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (8)

  1. 一种比特币工作量证明哈希计算芯片优化的方法,其特征在于,包括:
    周期性地保持哈希计算芯片的第二输入量不变;当第二输入量不变时,关闭与第二输入量对应的计算电路;
    改变哈希计算芯片初始的第一输入量,并获取对应的新的第一输入量;
    分别将各第一输入量与其对应的第二输入量以及随机数进行哈希运算,以寻找满足要求的工作量证明;所述各第一输入量包括所述初始的第一输入量和所述新的第一输入量。
  2. 根据权利要求1所述的方法,其特征在于,运算第一输入量的控制参数包括版本号、前一个块的哈希值、交易哈希、时间、网络难度以及填充位;其中,交易哈希的控制参数包括第一个交易的打款地址、矿池提供的签名、未确认交易所形成的哈希树、随机值1以及随机值2。
  3. 根据权利要求1所述的方法,其特征在于,组合第二输入量的控制参数包括交易哈希的后4个字节、时间和网络难度。
  4. 根据权利要求1所述方法,其特征在于,所述改变哈希计算芯片初始的第一输入量的实现方法包括:改变版本号。
  5. 根据权利要求1所述的方法,其特征在于,所述改变哈希计算芯片初始的第一输入量的实现方法包括:改变第一个交易的打款地址、矿池提供的签名、随机值1和\或随机值2,使得第一输入量中交易哈希的后4个字节相同。
  6. 根据权利要求1所述的方法,其特征在于,所述关闭与第二输入量对应的计算电路的实现方法包括:关闭与所述对应的计算电路相关的时钟电路。
  7. 一种比特币工作量证明哈希计算芯片优化的装置,其特征在于,包括:
    第一处理模块,用于周期性地保持哈希计算芯片的第二输入量不变;当第二输入量不变时,关闭与第二输入量对应的计算电路;
    第二处理模块,用于改变哈希计算芯片初始的第一输入量,并获取对应 的新的第一输入量;
    第三处理模块,用于分别将各第一输入量与其对应的第二输入量以及随机数进行哈希运算,以寻找满足要求的工作量证明;所述各第一输入量包括所述初始的第一输入量和所述新的第一输入量。
  8. 一种比特币工作量证明哈希计算芯片优化的电路,其特征在于,包括至少两个压缩电路单元、扩展电路单元和运算电路单元,所述压缩电路单元与扩展电路单元相连,所述压缩电路单元和扩展电路单元的输出端,连接所述运算电路单元的输入端,所述压缩电路单元的输入端连接第一输入量,所述压缩电路单元的输入端连接第二输入量。
PCT/CN2016/074518 2015-08-21 2016-02-25 比特币工作量证明哈希计算芯片优化的方法、装置和电路 WO2017031967A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510520251.7 2015-08-21
CN201510520251.7A CN105245327A (zh) 2015-08-21 2015-08-21 比特币工作量证明哈希计算芯片优化的方法、装置和电路

Publications (1)

Publication Number Publication Date
WO2017031967A1 true WO2017031967A1 (zh) 2017-03-02

Family

ID=55042840

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/074518 WO2017031967A1 (zh) 2015-08-21 2016-02-25 比特币工作量证明哈希计算芯片优化的方法、装置和电路

Country Status (2)

Country Link
CN (1) CN105245327A (zh)
WO (1) WO2017031967A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110430040A (zh) * 2019-07-31 2019-11-08 武汉芯昌科技有限公司 一种低功耗sha256算法中的消息扩展电路
CN111563277A (zh) * 2020-04-03 2020-08-21 上海坤振集成电路有限公司 一种区块链网络中的工作量证明方法以及一种区块链
CN113282803A (zh) * 2021-06-17 2021-08-20 浙江毫微米科技有限公司 工作量证明算法优化方法、装置、计算机设备和存储介质

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105245327A (zh) * 2015-08-21 2016-01-13 北京比特大陆科技有限公司 比特币工作量证明哈希计算芯片优化的方法、装置和电路
CN105741095A (zh) * 2016-01-29 2016-07-06 彭军红 一种区块链动态压缩存取方法
KR102050129B1 (ko) * 2016-05-03 2019-11-28 안규태 블록 검증을 위한 복수의 일방향 함수를 지원하는 블록 체인
CN106254339B (zh) * 2016-08-01 2019-05-07 北京比特大陆科技有限公司 挖矿业务的安全认证方法和系统
CN106407008B (zh) * 2016-08-31 2019-12-03 北京比特大陆科技有限公司 挖矿业务处理方法、装置和系统
CN106547620B (zh) * 2016-10-21 2020-05-19 杭州嘉楠耘智信息科技有限公司 一种任务处理方法及装置
CN106528292B (zh) * 2016-10-21 2022-04-22 上海嘉楠捷思信息技术有限公司 一种任务处理方法及装置
CN107579814A (zh) * 2017-08-03 2018-01-12 北京比特大陆科技有限公司 工作量证明的计算方法的装置、计算芯片、挖矿机
CN109829076B (zh) * 2017-08-22 2021-08-06 上海策赢网络科技有限公司 一种生成区块链的方法及设备
CN107528854B (zh) * 2017-09-20 2020-11-13 江苏通付盾科技有限公司 基于工作量证明的连接方法、系统、客户端及服务器
CN109905228B (zh) * 2017-12-07 2023-07-25 北京智云芯科技有限公司 一种实现哈希运算的专用计算电路
CN108322304B (zh) * 2018-02-28 2021-12-07 海峡小鹿有限公司 工作量证明的计算方法和装置、电子设备、程序和介质
CN108389044A (zh) * 2018-02-28 2018-08-10 北京比特大陆科技有限公司 工作量证明的计算方法和系统、电子设备、程序和介质
CN108777612B (zh) * 2018-05-18 2020-03-20 中科声龙科技发展(北京)有限公司 一种工作量证明运算芯片核心计算部件的优化方法和电路
CN109376115B (zh) * 2018-08-31 2020-09-15 北京智云芯科技有限公司 一种基于工作量证明的计算装置及计算方法
CN111082922B (zh) * 2018-10-18 2021-11-19 北京天能博信息科技有限公司 一种区块链的数据处理方法及相关设备
CN111352770A (zh) * 2020-02-27 2020-06-30 苏州市星际云通区块链科技有限公司 区块链备份系统、备份方法和区块链验证方法、验证系统
CN112925504A (zh) * 2021-02-20 2021-06-08 北京比特大陆科技有限公司 工作量证明的计算装置、asic芯片和工作量证明的计算方法
CN113296705B (zh) * 2021-05-27 2022-09-27 浙江萤火虫区块链科技有限公司 一种Filecoin中并行计算Poseidon Hash的架构系统
CN113282802B (zh) * 2021-06-17 2022-06-24 浙江毫微米科技有限公司 工作量证明算法优化方法、装置、计算机设备和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101201811A (zh) * 2006-12-11 2008-06-18 边立剑 用于soc的加解密协处理器、其实现方法及编程模型
CN101753291A (zh) * 2008-11-28 2010-06-23 佳能株式会社 哈希值计算装置及其方法
CN102037473A (zh) * 2008-06-23 2011-04-27 松下电器产业株式会社 信息处理装置、信息处理方法、实现它们的计算机程序及集成电路
CN105245327A (zh) * 2015-08-21 2016-01-13 北京比特大陆科技有限公司 比特币工作量证明哈希计算芯片优化的方法、装置和电路

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101303717B (zh) * 1995-02-13 2015-04-29 英特特拉斯特技术公司 用于安全交易管理和电子权利保护的系统和方法
CN101010690A (zh) * 2004-06-25 2007-08-01 佩珀尔硬币公司 支付处理方法和系统
TW200820108A (en) * 2006-05-24 2008-05-01 Ibm Method for automatically validating a transaction, electronic payment system and computer program
US20150006895A1 (en) * 2009-06-01 2015-01-01 Maidsafe Foundation Distributed network system
US20140279540A1 (en) * 2013-03-15 2014-09-18 Fulcrum Ip Corporation Systems and methods for a private sector monetary authority
EP3095044B1 (en) * 2013-11-19 2020-09-23 Top Galore Limited Block mining methods and apparatus
CN104850984B (zh) * 2014-05-13 2018-04-06 电子科技大学 一种离线电子货币支付的安全运行方法
CN203941481U (zh) * 2014-05-20 2014-11-12 广州市适马自动化控制科技有限公司 一种比特币挖矿机
CN104463001A (zh) * 2014-12-19 2015-03-25 比特卡国际有限公司 一种独立生成和保存加密数字货币私钥的方法及承载加密数字货币私钥的装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101201811A (zh) * 2006-12-11 2008-06-18 边立剑 用于soc的加解密协处理器、其实现方法及编程模型
CN102037473A (zh) * 2008-06-23 2011-04-27 松下电器产业株式会社 信息处理装置、信息处理方法、实现它们的计算机程序及集成电路
CN101753291A (zh) * 2008-11-28 2010-06-23 佳能株式会社 哈希值计算装置及其方法
CN105245327A (zh) * 2015-08-21 2016-01-13 北京比特大陆科技有限公司 比特币工作量证明哈希计算芯片优化的方法、装置和电路

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110430040A (zh) * 2019-07-31 2019-11-08 武汉芯昌科技有限公司 一种低功耗sha256算法中的消息扩展电路
CN110430040B (zh) * 2019-07-31 2024-01-30 武汉芯昌科技有限公司 一种低功耗sha256算法中的消息扩展电路
CN111563277A (zh) * 2020-04-03 2020-08-21 上海坤振集成电路有限公司 一种区块链网络中的工作量证明方法以及一种区块链
CN113282803A (zh) * 2021-06-17 2021-08-20 浙江毫微米科技有限公司 工作量证明算法优化方法、装置、计算机设备和存储介质
CN113282803B (zh) * 2021-06-17 2022-06-17 浙江毫微米科技有限公司 工作量证明算法优化方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
CN105245327A (zh) 2016-01-13

Similar Documents

Publication Publication Date Title
WO2017031967A1 (zh) 比特币工作量证明哈希计算芯片优化的方法、装置和电路
Lei et al. Groupchain: Towards a scalable public blockchain in fog computing of IoT services computing
Luu et al. A secure sharding protocol for open blockchains
WO2018076760A1 (zh) 基于区块链的交易事务处理方法、系统、电子装置及存储介质
Liu et al. SSHC: A secure and scalable hybrid consensus protocol for sharding blockchains with a formal security framework
US20170300877A1 (en) System and method for providing shared hash engines architecture for a bitcoin block chain
Kim et al. SCC: Storage compression consensus for blockchain in lightweight IoT network
WO2021189219A1 (en) Blockchain consensus method and system, and computer-readable storage medium
US20200322162A1 (en) Distributed Proof-of-Work for Sharded or Parallel Blockchains
WO2023071373A1 (zh) 一种区块链共识方法、装置、设备及存储介质
JP2019501458A (ja) データ処理方法及び装置
Hong et al. Scaling blockchain via layered sharding
US20230066467A1 (en) Method and apparatus for processing information of blockchain network, device and storage medium
CN113032370A (zh) 一种分区区块链系统的设计方法
WO2020142907A1 (zh) 基于有向无环图的区块创建、添加、账本建立方法和装置
WO2021070106A1 (en) Methods and devices for secure symbiotic mining
CN113067707A (zh) 基于区块链的数据处理方法、装置、设备及可读存储介质
Li et al. LB-Chain: Load-balanced and low-latency blockchain sharding via account migration
Li et al. ISCP: An Improved Blockchain Consensus Protocol.
Wan et al. AnonymousFox: An efficient and scalable blockchain consensus algorithm
Cherupally et al. Lightweight and Scalable DAG based distributed ledger for verifying IoT data integrity
WO2020229922A1 (en) Systems and methods for non-parallelised mining on a proof-of-work blockchain network
Ye et al. Garou: An efficient and secure off-blockchain multi-party payment hub
Li et al. A survey of state-of-the-art sharding blockchains: Models, components, and attack surfaces
Huang et al. Workload-based randomization byzantine fault tolerance consensus protocol

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16838230

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16838230

Country of ref document: EP

Kind code of ref document: A1