Yahoo’s security breach is worse than imagined. While initial rumors pegged the total number of affected users at 200 million, the company confirmed it’s actually more like 500 million. However, it seems that Yahoo did all the right things—it just didn’t do them well enough.
In a statement acknowledging the breach, Yahoo said “the vast majority” of accounts were secured with the bcrypt protocol. Bcrypt is a hashing function that slows hackers down. It’s also cross-platform, and portable across all operating systems and supported processors.
Bcrypt is built to withstand brute-force attacks by using an expensive key setup, and overwrites data three times before dumping data to protect against such attacks. While bcrypt works best with long, complex passwords, it requires only an 8-character password. Jeff Goldberg, the “Chief Defender Against The Dark Arts” at AgileBits (makers of the popular and very secure 1Password app for safeguarding data) said that bcrypt is “an extremely good choice” for hashing passwords:
By using bcrypt, Yahoo has done better than most. Bcrypt is a “slow hash,” meaning that it takes a lot of computation required to go from a password to the hash itself. So, instead of an attacker being able to guess a million passwords per second for a given hash, they can only guess a few tens of thousands of guesses per second.
While Agile Bits commends Yahoo’s use of bcrypt, but questions about the protocol’s application remain. In its press release regarding the attack, Yahoo said that hackers were able to grab “encrypted or unencrypted security questions and answers” in addition to “hashed passwords,” which can’t be deciphered. It’s reminiscent of Kickstarter’s own hack, where bcrypt also popped up, apparently as a mixed-use technology for the company.
Bcrypt is configurable, so its possible Yahoo just didn’t update its application of bcrypt to keep up with modern computational power. The first widespread use of bcrypt began in 1999, and Yahoo hasn’t shared any details on how it utilized bcrypt by the time the hack occurred in 2014.
Unfortunately, there’s no clear-cut solution for security on the web. The virtues of bcrypt are extolled by believers, but others prefer methods such as scrypt or PBKDF2. If nothing else, the Yahoo hack proves that remaining diligent about security online is nothing to take for granted.