[ad_1]
Bitcoin Core will typically connect with no less than 10 outbound friends (8 common, 2 blocks-only). It can ask the entire friends for his or her chaintips after which begin synchronizing the header chain for the chaintip with essentially the most work after selecting a single header sync peer. Solely when it has acquired all block headers of the peer and validated them to the extent doable, will it begin downloading blocks and advancing its energetic chaintip. So long as one in every of our node’s friends is trustworthy and caught up, we’d already be on our option to the precise chaintip.
A block whose timestamp is older than the median of the 11 previous blocks would merely be rejected on the header sync stage, so we should assume that the attacker is serving a blockchain that may be a week outdated.
If our node had been eclipsed and all of its friends had been providing solely a chaintip that’s older than every week, our node would synchronize that chaintip. Our node would stay in "initialblockdownload" state, as that solely disables as soon as the timestamp of the node’s energetic tip is not more than 24 hours prior to now. This is able to e.g. trigger the pockets GUI to show a warning that the node shouldn’t be caught up. The node would additionally begin making extra connections resulting from not making progress. If it finds any trustworthy peer, it would proceed synchronizing in direction of the precise greatest chain. If the eclipse assault persists, it would stall, however stay in IBD.
[ad_2]