1. ホーム
  2. セキュリティ技術の探検
  3. 秘密のカギ クリプト(暗号化)について
  4. 暗号アルゴリズム

暗号アルゴリズム

暗号アルゴリズムは、データを保護し、不正アクセスやデータ漏洩から防ぐための基本的な手段です。暗号アルゴリズムは主に、対称暗号アルゴリズムと非対称暗号アルゴリズムに分類され、それぞれ異なる用途と特性を持ちます。

対称暗号アルゴリズム

AES (Advanced Encryption Standard)
高いセキュリティを提供し、広く利用されています。
DES (Data Encryption Standard)
古く、現在は安全でないと考えられています。
3DES (Triple Data Encryption Standard)
DESの改良版で、データを3回暗号化します。

非対称暗号アルゴリズム

RSA
公開鍵と秘密鍵のペアを利用し、広く利用されています。
ECC (Elliptic Curve Cryptography)
低い計算コストで高いセキュリティを提供します。
ElGamal
鍵交換やデジタル署名に利用されます。

ハッシュ関数

ハッシュ関数は任意長のデータを固定長のハッシュ値に変換する暗号技術です。データの一部が変わるとハッシュ値も大きく変わり、元のデータをハッシュ値から復元することは計算上不可能です。セキュリティ分野でデータの完全性確認や認証に広く利用されています。

MD5 (Message Digest Algorithm 5)
  • 出力長さ: 128ビット(16バイト)
  • 用途: ファイルのチェックサム(チェックデータ)、データの一意性の確認
  • 特性:
    • 速度が速い。
    • 衝突耐性が低い。つまり、別々のデータで同じハッシュ値が出る可能性がある。
  • 注意点: セキュリティにはあまり向いていない。今はあまり使われない。
SHA-1 (Secure Hash Algorithm 1)
  • 出力長さ: 160ビット(20バイト)
  • 用途: SSL/TLS 通信、データの一意性と完全性の確認
  • 特性:
    • MD5よりも衝突耐性が高いが、今日のコンピューターの能力で衝突を見つけることが可能。
  • 注意点: セキュリティに関する用途では今は推奨されていない。
SHA-256 (Secure Hash Algorithm 256-bit)
  • 出力長さ: 256ビット(32バイト)
  • 用途: 暗号通貨(Bitcoinなど)、高度なセキュリティが求められる場面
  • 特性:
    • 高い衝突耐性と安全性。
    • MD5やSHA-1よりも処理速度は遅いが、セキュリティが高い。

以下のハッシュ計算機を使って、任意の文字列からSHA-1とSHA-256のハッシュ値を計算しましょう。テキストを入力して「ハッシュ値を計算」ボタンを押すだけで、文字列のハッシュ値が表示されます。ハッシュ関数の実際の動作を体験してみてください。

任意の文字列のハッシュ値を計算

SHA-1:

SHA-256:

注釈: MD5は、別々のデータで同じハッシュ値が出る可能性があり、現在はあまり使われていません。