A Checkpoint is the header hash permitted at a given height, thereby hardcoding the chain that the validating node must follow. If a node follows an alternative chain branch which reaches the same height, this branch can now be identified as such and rejected. This was initially designed to protect a node from following an alternative long branch, especially generated with low difficulty, which could be so long that it would challenge the available resources of the validating node.
Validation used to be skipped prior to checkpoints, but that is no longer the case. Validation is skipped up to "known blocks", but only if these are found in the strongest chain. Today, checkpoints don't reduce chain sync time.
What software is this question about? – Pieter Wuille – 2019-02-07T22:20:12.983
I'm asking about Bitcoin Core. Although the speedup I heard about was in reference to lcoin (the litecoin fork of bcoin). In that case I think checkpoints actually prevented the node from getting blocks from peers since the network is so much smaller and the checkpoints are "too far apart" – pinhead – 2019-02-08T01:50:55.930