The next complication is having a system for checking passwords without a central server. Bitcoin solves this by using one-way functions (like the hash functions we met earlier) to compute the user’s “username” from their “password”: to prove that they own a “username,” users have to provide the “password” that turns into the “username” when run through those functions.

