I did research on Blockchain timestamp and timejacking attack last week.

I have completed the course Stanford CS166 and shared my notes via Evernote.

Blockchain Timestamp Research

  • Discussion on CKB Block Timestamp Improvements

  • Bitcoin’s Block Timestamp Protection Rules | BitMEX Blog

    • Two hours is only a small fraction of the difficulty adjustment cycle, two weeks.
  • culubas: Timejacking & Bitcoin

    • Block timestamp is valid if
      • it is greater than median of previous 11 blocks
      • it is less than or equal to network time + 2h
    • Network time = local time + median offset from 5~200 peers
      • Max allowed adjustment is 70 minutes.
    • “Poison Pill” Block
      • Make a group of nodes 70 minutes faster, the target 70 minutes slower. That’s a 140 minutes gap, and the max allowed future block time offset is 2 hours.
    • Solutions
      • Use the node’s system time instead of the network time to determine the upper limit of block timestamps and when creating blocks.
      • Tighten the acceptable time ranges.
      • The node’s network time could be restricted to a value within 30 minutes.
      • Use only trusted peers.
      • Use the median block chain time exclusively when validating blocks.