<p>What would be the max number of bits that hashing hardware specifically designed for bitcoin mining would ever need to hash per operation?  For example:</p>

<p>block header = 80 bytes = 640 bits<br>
after first hash = 256 bits</p>

<p>To find merkle root:   256(per txn) x 2 = 512 bits</p>

<p>So is 640 bits the max input message size the hashing hardware needs to handle?</p>

CC BY-SA 3.0
2014-06-25T07:03:05.757Z
Note that 1. finding the Merkle root only needs to be done once per 4 billion hash attempts. 2. Most of the time just one branch needs to be calclated. 3. The main loop in SHA-256 calculation always works on a 2048-bit message schedule, so the initial message size might not have a great significance on hardware design.
Meni Rosenfeld
CC BY-SA 3.0
2014-06-25T19:51:48.603Z
SHA-256 operates on a 512 bit message block.  So I believe the hashing hardware can compute the initial block header hash with just two blocks.
Joe M
<asic><mining-hardware>
What is the maximum number of bits mining hardware ever needs to hash at one time?
Joe M
# What is the maximum number of bits mining hardware ever needs to hash at one time?

(Asked by: username_0 on 2014-06-25)

What would be the max number of bits that hashing hardware specifically designed for bitcoin mining would ever need to hash per operation? For example:

block header = 80 bytes = 640 bits  
after first hash = 256 bits

To find merkle root: 256(per txn) x 2 = 512 bits

So is 640 bits the max input message size the hashing hardware needs to handle?

**Tags:** asic, mining-hardware

> **Comments:**
> **username_1**: Note that 1. finding the Merkle root only needs to be done once per 4 billion hash attempts. 2. Most of the time just one branch needs to be calclated. 3. The main loop in SHA-256 calculation always works on a 2048-bit message schedule, so the initial message size might not have a great significance on hardware design.  
> **username_0**: SHA-256 operates on a 512 bit message block.  So I believe the hashing hardware can compute the initial block header hash with just two blocks.  

---

## 0 answers

