why? i thought difficulty adjustments (and thereby block time) were agnostic of ‘real world’ time
Discussion
Well, then you thought wrong. There is a 2 hour margin in which miners can lie/be wrong/differ in opinion about time.
Bitcoin has its own oracle problem (because anything like this type of system needs an oracle). But Bitcoin uses the one thing that is hard to lie about, time. So it is workable that miners are the oracle, telling us the time of a block.
The network needs some sort of bench mark to measure how long blocks take. It could have been an arbitrary number but Unix time is good enough. The network allows +/- 2 hours so for the block timestamp.
I don’t think it really matters that much.
How could it be any arbitrary number?
Bitcoin doesn’t “know” what time it is. The genesis block could have used 0 as the first time stamp and as long as the next block was within 2 hours of that it would be accepted. All the nodes sync up using something that they will reasonably agree on as their current time so it can measure how much time passed between blocks to determine the difficulty.
I’m probably not explaining it well!
I dont follow...
Miners tell Bitcoin (if you want to put it like that) what time it is, at each block. The point is that everyone observing can judge whether that time is correct (enough). And it cant be anything other that time, because how else would everyone agree on what the next difficulty target ought to be?
Yeah I figured I explained it badly.
Yes that is how it works I agree.
What I was saying is the actual value of the time matters less than the relative time between time stamps. Clock time is just what every computer will have to more or less agree on.
It was the assertion that the blocks use clock time being weird was what I was pushing back on.