How is password hashing/encryption performed?
Why does Drupal 8 use PHPass / sha-512?


PHPass was originally implemented in Drupal 7, with custom code in order to use sha-512 instead of md5 which was used by other implementations at the time, and then ported to Drupal 8.
Drupal 8 originally supported older versions of PHP where the password functions were not available, and didn't yet use composer to adopt an existing polyfill.
It was (and still is) a low priority to update the hashing service after it was initially ported from Drupal 7.


Would it be difficult to use Blowfish instead?

There's a module for that - as mentioned in the issue you linked the PHP Password module replaces the core service with one that understands legacy hashes, but will upgrade them to bcrypt when possible.