データ侵害があった場合 2010 年代初頭には、時折の脅威から永続的な現実へと変化しましたが、被害者団体、サイバーセキュリティ研究者、法執行機関、一般の人々が各事件の影響を評価するにつれて、ある疑問が何度も浮上しました。それは、どのパスワード ハッシュ アルゴリズムがユーザーのパスワードを保護するために使用されるターゲット?
答えが SHA-1 のような欠陥のある暗号機能だった場合、暗号化スクランブルがまったく行われていない平文で保存されたパスワードの悪夢は言うまでもありませんが、被害者はさらに心配する必要がありました。パスワードを解読し、ユーザーのアカウントに直接アクセスし、他の場所でそのパスワードを試して、ユーザーがパスワードを再利用していないかどうかを確認します。 ただし、その答えが bcrypt として知られるアルゴリズムであれば、パニックに陥ることが少なくとも 1 つ減ります。
Bcrypt は今年 25 周年を迎えますが、共同発明者の 1 人である Niels Provos 氏は、振り返ってみると、オープンソースでの入手可能性と、長寿の原動力となった技術的特徴のおかげで、このアルゴリズムには常に良いエネルギーがあったと述べています。 プロボス氏はWIREDに次のように語った。 アルゴリズムの振り返り 彼は今週、Usenix ;login: でそれを公開しました。 しかし、多くのデジタル主力製品と同様に、現在では、scrypt や Argon2 として知られるハッシュ アルゴリズムなど、bcrypt に代わるより堅牢で安全な代替手段が存在します。 プロボス氏自身は、四半世紀の節目はbcryptにとって十分なものであり、次の大きな誕生日を祝う前に人気が落ちてしまうことを望んでいる、と述べている。
bcrypt のバージョンは、1997 年 6 月にオープン ソース オペレーティング システム OpenBSD 2.1 とともに初めて出荷されました。当時、米国はまだ暗号化に対して厳しい輸出制限を課していました。 しかし、ドイツで育ったプロボス氏は、ドイツに住み、勉強しながらその開発に取り組みました。
「私が非常に驚いたのは、それがどれほど人気になったかということです」と彼は言います。 「部分的にはそう思う [it’s] それはおそらく、現実の問題を実際に解決していたからであり、オープンソースであり輸出規制を受けていなかったからでもあるでしょう。 そして、最終的には全員が他のすべての言語で独自の実装を行うことになりました。 そのため、最近では、パスワード ハッシュを実行したい場合に、bcrypt が操作可能なすべての言語で利用できるようになる予定です。しかし、もう 1 つ興味深いのは、それが 25 年経った今でも有効であるということです。 それはまさにクレイジーです。」
Provos は、スタンフォード大学のシステム セキュリティ教授である David Mazieres とともに bcrypt を開発しました。Mazieres は、Provos と bcrypt で共同研究した当時、マサチューセッツ工科大学に留学していました。 2 人はオープンソース コミュニティを通じて知り合い、OpenBSD に取り組んでいました。
ハッシュ化されたパスワードは、アルゴリズムを介して暗号化され、読み取り可能なパスワードから理解できないスクランブルに変換されます。 これらのアルゴリズムは「一方向関数」であり、実行は簡単ですが、ハッシュを作成した人であっても、解読または「解読」するのは非常に困難です。 ログイン セキュリティの場合、ユーザーがパスワードを選択すると、使用しているプラットフォームがそのハッシュを作成し、その後アカウントにサインインするときに、システムがユーザーが入力したパスワードを取得してハッシュするという考え方です。 、そしてその結果をアカウントのファイルにあるパスワード ハッシュと比較します。 ハッシュが一致すると、ログインは成功します。 このように、サービスはパスワード自体ではなく、比較のためにハッシュのみを収集します。