知っておくべきこと
- Secure Hash Algorithm 1 (SHA-1) は、データの信頼性を検証するために使用されるアルゴリズムの一種です。
- 使用例としては、パスワード認証やファイル検証などが挙げられます。
- 特別な計算機を使用すると、テキストまたはファイルの SHA-1 チェックサムを見つけることができます。
この記事では、SHA-1 の意味、SHA-1 が使用される方法と理由、さらに SHA-1 チェックサムを生成する方法について説明します。
誰かの誕生日を見つけるにはどうすればよいですか
SHA-1とは何ですか?
SHA-1 (Secure Hash Algorithm 1 の略) は、いくつかの暗号化ハッシュ関数の 1 つです。
ファイルが変更されていないことを確認するために最もよく使用されます。これは、 チェックサム ファイルが送信される前に送信され、宛先に到着したらもう一度送信されます。
両方のチェックサムが同一である場合にのみ、送信されたファイルは本物であると見なされます。
デビッド・シルバーマン/ゲッティイメージズニュース/ゲッティイメージズ
SHA ハッシュ関数の歴史と脆弱性
SHA-1 は、セキュア ハッシュ アルゴリズム (SHA) ファミリの 4 つのアルゴリズムのうちの 1 つにすぎません。ほとんどは米国家安全保障局 (NSA) によって開発され、米国標準技術研究所 (NIST) によって公開されました。
SHA-0 のメッセージ ダイジェスト (ハッシュ値) サイズは 160 ビットで、このアルゴリズムの最初のバージョンでした。そのハッシュ値の長さは 40 桁です。 1993 年に「SHA」という名前で公開されましたが、セキュリティ上の欠陥のため 1995 年にすぐに SHA-1 に置き換えられたため、多くのアプリケーションでは使用されませんでした。
SHA-1 は、この暗号化ハッシュ関数の 2 回目の反復です。これも 160 ビットのメッセージ ダイジェストを持ち、SHA-0 で見つかった弱点を修正することでセキュリティを強化しようとしました。しかし、2005 年に SHA-1 も安全ではないことが判明しました。
SHA-1 に暗号の弱点が発見されると、NIST は 2006 年に連邦政府機関に 2010 年までに SHA-2 の使用を採用するよう奨励する声明を発表し、2011 年に NIST によって正式に非推奨になりました。SHA-2 は SHA-2 よりも強力です。 1 であり、現在のコンピューティング能力では SHA-2 に対する攻撃が発生する可能性は低いです。
連邦政府機関だけでなく、Google、Mozilla、Microsoft などの企業さえも、SHA-1 SSL 証明書の受け入れを停止する計画を開始しているか、すでにその種のページの読み込みをブロックしています。
GoogleはSHA-1衝突の証拠を持っている そのため、このメソッドは、パスワード、ファイル、またはその他のデータに関するものであっても、一意のチェックサムを生成する際の信頼性が低くなります。ユニークな 2 つをダウンロードできます PDF からのファイル 粉々になった これがどのように機能するかを確認してください。このページの下部にある SHA-1 計算ツールを使用して両方のチェックサムを生成すると、異なるデータが含まれているにもかかわらず、値がまったく同じであることがわかります。
SHA-2 と SHA-3
SHA-2 は、SHA-1 の数年後の 2001 年に公開されました。これには、さまざまなダイジェスト サイズの 6 つのハッシュ関数 (SHA-224、SHA-256、SHA-384、SHA-512、SHA-512/224、および SHA-512/256) が含まれています。
NSA 以外のデザイナーによって開発され、 2015年にNISTによってリリースされました は、SHA-3 (旧名 Keccak) と呼ばれる、セキュア ハッシュ アルゴリズム ファミリの別のメンバーです。
以前のバージョンが以前のバージョンを置き換えることを目的としていたように、SHA-3 は SHA-2 を置き換えることを目的としたものではありません。代わりに、SHA-0、SHA-1、および MD5 の別の代替として開発されました。
SHA-1はどのように使用されますか?
SHA-1 が使用される実際の例の 1 つは、Web サイトのログイン ページにパスワードを入力するときです。これはユーザーが知らないうちにバックグラウンドで行われますが、Web サイトがユーザーのパスワードが本物であることを安全に確認するために使用する方法である可能性があります。
ブルートゥーススピーカーをグーグルホームグループに追加
この例では、よくアクセスする Web サイトにログインしようとしていると想像してください。ログオンを要求するたびに、ユーザー名とパスワードを入力する必要があります。
Web サイトで SHA-1 暗号化ハッシュ関数が使用されている場合、パスワードは入力後にチェックサムに変換されます。そのチェックサムは、パスワードを使用したかどうかに関係なく、現在のパスワードに関連する Web サイトに保存されているチェックサムと比較されます。サインアップしてからパスワードを変更していない場合、またはほんの少し前に変更したばかりの場合。 2 つが一致すると、アクセスが許可されます。そうでない場合は、パスワードが間違っていると言われます。
このハッシュ関数が使用される別の例は、ファイルの検証です。一部の Web サイトでは、ダウンロード ページにファイルのチェックサムが表示されているため、ダウンロードするときに自分でチェックサムをチェックして、ダウンロードしたファイルがダウンロードしようとしていたものと同じであることを確認できます。
この種の検証の実際の用途がどこにあるのか疑問に思うかもしれません。開発者の Web サイトからファイルの SHA-1 チェックサムはわかっているが、同じバージョンを別の Web サイトからダウンロードしたいというシナリオを考えてみましょう。その後、ダウンロード用の SHA-1 チェックサムを生成し、開発者のダウンロード ページからの本物のチェックサムと比較できます。
2 つが異なる場合は、ファイルの内容が同一ではないことを意味するだけでなく、できたファイル内にマルウェアが隠されている、データが破損してコンピュータのファイルに損傷を与える可能性がある、ファイルが実際のファイルに関連していない、などです。
ただし、ほんの少しの変更でも一意のチェックサム値が生成されるため、一方のファイルが他方のファイルよりも古いバージョンのプログラムを表していることを意味している可能性もあります。
Service Pack やその他のプログラムや更新プログラムをインストールする場合は、インストール中に一部のファイルが欠落していると問題が発生するため、2 つのファイルが同一であることを確認することもできます。
SHA-1 チェックサム計算機
特別な種類の計算機を使用して、ファイルまたは文字グループのチェックサムを決定できます。
例えば、 SHA1オンライン は、テキスト、記号、数字のグループの SHA-1 チェックサムを生成できる無料のオンライン ツールです。たとえば、次のペアが生成されます。
|_+_|同じウェブサイトには、 SHA1 ファイルのチェックサム テキストの代わりにファイルがある場合は、ツールを使用します。