Чтобы проверить блок, надо проверить все транзакци в блоке и наличие prev_block в цепочке. Чтобы убедиться, что prev_block есть в цепочке, его тоже надо проверить. И далее по рекурсии до самого первого блока, который проверяется другим способом его хеш считается общеизвестным и зашит в программу.
Большинству пользователей не обязательно загружать и проверять всю историю транзакций. Любая транзакция может быть проверена по заголовкам блоков и хешам Merkle Tree. Программе, не проверяющей историю, могут быть подсунуты заголовки фальшивых блоков. Однако, чтобы окупить создание, скажем, 6 фальшивых заголовков, надо кого-то кинуть на крупную сумму. Большинство пользователей не имеют столько битков.