Cryptology Academy · レッスン

公開鍵暗号の概念

鍵ペア、公開鍵の配布、秘密鍵の秘匿性を理解します。

レッスン 1/413 ステップ

「公開鍵暗号の概念」はCoddyKit上の無料Cryptology Academyレッスンです。 これはレッスン1/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはCryptology Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Cryptology Academyコースには全4レッスンが含まれています。

ようこそ

公開鍵暗号は、古くから存在した鍵配送問題を解決しました。このレッスンでは、鍵ペア、公開鍵と秘密鍵の違い、そして信頼モデルについて理解します。

鍵配送問題

1976年以前は、2者が安全に通信する前に秘密鍵を交換する必要がありました。そのためには安全な通信路が必要でした。しかし、安全な通信路があるなら、そもそもなぜ暗号化する必要があるのでしょうか?

鍵ペアの概念

非対称暗号では、数学的に関連付けられた鍵ペアを使用します。公開鍵は全員と共有でき、秘密鍵は決して共有しません。これらは逆の操作を行います。Enc(pub, M) → C、Dec(priv, C) → Mです。

一方向性トラップドア関数

公開鍵暗号は、トラップドア付き一方向性関数に依存しています。順方向の計算(大きな素数の乗算)は簡単ですが、トラップドア(素因数)がなければ逆方向の計算(積の素因数分解)は現実的な時間では実行できません。

公開鍵による機密性

AliceがBobに秘密のメッセージを送りたい場合、Bobの公開鍵で暗号化します。復号できるのはBobの秘密鍵だけです。EveはBobの公開鍵を見ることはできますが、メッセージを復号できません。

秘密鍵による認証

Bobは秘密鍵でメッセージに署名することで、自分の身元を証明します。Bobの公開鍵を持つ人なら誰でも署名を検証できます。偽造には秘密鍵が必要なため、安全に管理されていれば実行は現実的ではありません。

非対称暗号と対称暗号の速度比較

RSA-2048による暗号化は、AES-128より約100,000倍遅くなります。そのため、非対称暗号は短い対称鍵の暗号化にだけ使い、その後の大量データの処理はAESで行います。これがハイブリッド暗号です。

鍵ペア生成の概要

RSAでは、2つの大きな素数p、qを選びます。ECCでは、楕円曲線上でランダムなスカラーkを選びます。どちらも鍵ペアを生成します。秘密鍵はランダムな秘密値であり、公開鍵はそこから導出されます。

信頼と公開鍵の配布

ある公開鍵が本当にAliceのものだと、どうすれば確認できるでしょうか?信頼できる第三者が必要です。認証局(CA)がAliceの公開鍵に署名して証明書を作成します。これがPKIです。

信頼の輪

PGPは、友人同士が互いの鍵に署名する分散型の信頼の輪を使用します。Carolを信頼していて、CarolがBobの鍵に署名しているなら、Bobの鍵も信頼できます。中央のCAは必要ありません。

公開鍵基盤(PKI)の概要

PKIは、公開鍵証明書の発行、配布、失効、検証を行うための基盤です。TLSはPKIに依存しています。ブラウザの信頼ストアには、約150個のルートCA証明書が含まれています。

理解度チェック

Bobだけが読める暗号化メッセージを送るには、どの鍵で暗号化しますか?

まとめ

公開鍵暗号の概念が明確になりました。次はRSA鍵を手順に沿って生成し、数学的な操作を追っていきます。
無料で開始

AI チューターと学ぶ Cryptology Academy — 無料

ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。

コース
67
レッスン
261

よくある質問

「公開鍵暗号の概念」レッスンは無料ですか?

はい。「公開鍵暗号の概念」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Cryptology Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Cryptology Academyコースには全4レッスンが含まれています。

「公開鍵暗号の概念」で何を学びますか?

鍵ペア、公開鍵の配布、秘密鍵の秘匿性を理解します。 ブラウザで直接実行するハンズオンコードでCryptology Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Cryptology Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのCryptology Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/4です。

「公開鍵暗号の概念」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このCryptology Academyレッスンでコードを書いて実行できますか?

はい。すべてのCryptology Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. 公開鍵暗号の概念
  2. RSA鍵生成をステップごとに学ぶ
  3. RSA暗号化と復号の数学
  4. RSAの実世界での用途と鍵サイズ
← Cryptology Academyに戻る