While developing a Ruby on Rails application using a commonly used authentication library named devise, I noticed from the prefix
$2a$ of the produced password hashes in the application database that it's using a bcrypt variant.
I read up about crypt and bcrypt on Wikipedia and noticed that newer variants of bcrypt are supposed to produce a prefix of
$2y$ because a non-OpenBSD implementation by someone named Solar Designer had a "major security flaw" in 2011 and therefore it is unclear if the
$2a$ hashes were produced by a secure implemenation.
I found out that devise is using a C and Java binding named bcrypt-ruby which indeed bundles a C-implementation copied from John the Ripper which is stated to be written by a Solar Designer. Now I'm wondering if this implementation may still vulnerable to this "major security flaw".
Can anyone bring light to this topic?
The version history of the file at the crypt repository of the John the Ripper project, from which the file seems to have originated, may help answer my question.