対称暗号化 vs 非対称暗号化:ブロックチェーンの世界の二つの鍵

robot
概要作成中

Bitcoinウォレットにはなぜ公開鍵と秘密鍵の2つの鍵が必要なのか、考えたことはありますか?今日は暗号化学の中で最も重要な2つの概念を解説します。

一言で違いを説明する

対称暗号化:一つの鍵が一つの錠を開ける。アリスとボブは同じ鍵を共有し、アリスはそれを使って暗号化し、ボブは同じ鍵を使って復号する。

非対称暗号化:1つの公開鍵、1つの秘密鍵。アリスはボブの公開鍵を使って暗号化し、ボブの秘密鍵だけがそれを解くことができる。公開鍵は自由に共有できるが、秘密鍵はしっかり隠しておかなければならない。

鍵の長さの秘密

ここに見落とされがちな点があります——セキュリティ強度は直接比較できません

  • 対称暗号化:128-256ビットで十分です(例えばAES-256)
  • 非対称暗号化:2048ビットまたは4096ビットが同等の安全強度に達するために必要です

なぜですか?それは、非対称暗号化の公開鍵と秘密鍵の間に数学的な関連性(通常は大きな数の因数分解問題)があるからです。ハッカーはこのパターンを利用して破ることができます。対称暗号化にはこのような数学的な欠陥はありません。

速い vs 安全、魚とクマの足

対称暗号化の利点:非常に高速で、計算リソースの消費が少ない。アメリカ政府がAESで機密文書を暗号化するのはこの理由です。

対称暗号化の欠点:鍵の配布は悪夢です。あなたは安全に鍵をBobに送らなければなりませんが、ハッカーが途中でそれを傍受する可能性もあります。

非対称暗号化の利点:公開鍵は自由に広めることができ、秘密鍵は自分が持つ。たとえハッカーが公開鍵を手に入れても無意味——まるで特定のメールアドレスを知っているがパスワードがないようなものだ。

非対称暗号化の欠点:遅くて計算リソースを消費します。大量のデータが非対称暗号化を使用すると、サーバーがクラッシュします。

実戦アプリケーションはどのようなものか

Pure Symmetry: 古代軍の暗号書。 送信者と受信者は、暗号化と復号化のために同じブックを保持します。

純粋な非対称:暗号化されたメール。あなたは誰かの公開鍵でメールを暗号化して送信し、相手は秘密鍵で解読します。

ハイブリッドプラン(最も賢い): HTTPS/TLSプロトコルはこうやって機能します——

  1. 先に非対称暗号化を使用して"セッションキー"を交換します。
  2. その後、このセッション鍵(対称)を使用してデータ転送を暗号化します。

なぜですか?それは、接続を確立する際に非対称(安全)を使用し、データを送信する際に対称(高速)を使用するからです。魚とクマの掌の両方を得ました。

ブロックチェーンの真実

よくある誤解:Bitcoinは非対称暗号化を使用しています。

真実:Bitcoinの公開鍵-秘密鍵のペアはデータを暗号化するためのものではなく、署名検証のために使用されます。これは非対称暗号学のもう一つの用途であり、暗号化とは異なります。

Bitcoinで使用される署名アルゴリズムはECDSA(楕円曲線デジタル署名アルゴリズム)と呼ばれ、データの暗号化には関与しません。ただ"この取引は確かに私が発信したものである"ことを証明します。

もしBitcoin取引を暗号化する必要がある場合、それは別の話であり、追加の暗号化層が必要です。

まとめ

対称暗号化と非対称暗号化には絶対的な「どちらが優れている」というものはなく、それぞれ異なる適用シーンがあります。現代のセキュリティシステムのトレンドはミックスです:非対称を使用して信頼のチャネルを構築し、対称を使用して転送速度を保証します。これがHTTPSが安全でありながら高速である理由でもあります。

BTC0.96%
原文表示
このページには第三者のコンテンツが含まれている場合があり、情報提供のみを目的としております(表明・保証をするものではありません)。Gateによる見解の支持や、金融・専門的な助言とみなされるべきものではありません。詳細については免責事項をご覧ください。
  • 報酬
  • コメント
  • リポスト
  • 共有
コメント
0/400
コメントなし
  • ピン
いつでもどこでも暗号資産取引
qrCode
スキャンしてGateアプリをダウンロード
コミュニティ
日本語
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)