15

I have see questions about the longest delay between blocks and am aware of some blocks that occur in short succession. However I rarely see many blocks occurring very close to each other (which I suppose is normal since the average time between blocks is 10 minutes)

What is the highest number of blocks that have ever occurred in 1 hour?

How can I search the blockchain to answer this question for myself?

1 Answer 1

11

Most likely, you'll have to download all the block headers. The easiest way is to get them here. Note each block is 80 bytes so it's roughly a 30 MB download.

Next, what you're going to need to parse these block headers and make an array of timestamps. You can then write a program to parse these block headers and find the 3600-second interval that produced the most blocks.

Here's some sample code (Python 2):

data = open('blockchain_headers').read()
timestamps = []
for i in range(len(data//80)):
   timestamps.append(int(data[i*80+68:i*80+72][::-1].encode('hex'), 16))
max_height = len(timestamps)
best = 0
for i in xrange(max_height):
    for j in xrange(i+1, max_height):
        if timestamps[j] - timestamps[i] > 3600:
            if j - i > best:
                best = j - i
                print("%s: %s", (i, best))
            break

According to the program the most number of mined blocks in one hour is 61 blocks which started at block 65710 and ended at 65770 all within an hour on July 12, 2010.

2
  • 1
    If you can trust block header times...
    – morsecoder
    Jun 1, 2016 at 18:50
  • Agreed. There's no real way to verify block header times, though, since they propagate through the network.
    – Jimmy Song
    Jun 1, 2016 at 19:08

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.