2yの代わりにbcrypt 2a突然変異ハッシュを生成する方法は?

2yの代わりにbcrypt 2a突然変異ハッシュを生成する方法は?

私のLinuxコンピュータでは、htpasswordを使用してコマンドラインからbcryptハッシュを生成できます。

htpasswd -bnBC 10 "" password | tr -d ':\n'

ただし、「$2y$」を生成しますが、「$2a$」(bcrypt 2a)が必要です。どのように実装できますか?

ベストアンサー1

ユースケースに言及していませんが、通常は最新のhtpasswd実装の場合は、$ 2y $を使用してバリアントにタグを付けても$ 2a $互換ハッシュ(NULL終了、UTF-8エンコーディング)を生成します。

つまり、2y を 2a に変更すると動作します。

このStackOverflowの答えもっと詳しく:

2a、2x、2y、2bの間に違いはありません。実装を正しく作成すると、すべて同じ結果が出力されます。

すべての現代の以前のバリエーションは、OpenBSDとPHPの両方にバグがある実装から来ていますcrypt_blowfish。最新のプラットフォームを使用している場合は、ハッシュ形式を交換できます。

現代の移転(欠陥のある)ハッシュを生成する必要がある場合は、欠陥を修正する現代移転の実装を見つける必要があります。

おすすめ記事