[Ethereum] Why is Geth’s “fast” sync now the default, whereas before it wasn’t

fast-syncgo-ethereumsynchronization

As of version 1.6.0, the default method used by Geth for syncing the chaindata is "fast":

The default sync mode is –syncmode=fast, for full sync please use
–syncmode=full.

Previously, the default was "full", with the user having to explicitly pass the --fast flag to bring about a "fast" sync.

In answer to a previous question, Why isn't fast sync the default?, it was stated that:

…Fast sync indeed has one additional weakness compared to full sync.
As long as an attacker can keep you isolated from the main chain (e.g.
infect your router), it may construct an arbitrary state that your
node will believe

Is this weakness no longer the case, and if so, why not?

Best Answer

The default is now "snap" sync which completes in about 4 or 5 hours for me on a SATA SSD.