暗号化の基礎

luagate/crypto-basics暗号化の基礎21セキュリティ

上から下へ、全 21 枚そのまま並べています。

発表モードで開く

暗号化の基礎

暗号化の基礎

なぜ・どうやって情報を隠すのか

1
1

目次

今日の流れ

1. なぜ暗号化が必要か

2. 暗号化とは — 平文と暗号文

3. 鍵という考え方

4. 共通鍵と公開鍵(さわり)

5. まとめと振り返り

2
2
暗号化の基礎 - イントロ

今日のゴール

この時間で身につけてほしいことです。

  • 暗号化が「なぜ必要か」を説明できる
  • 平文と暗号文の関係をイメージできる
  • 鍵が何の役割を果たすか分かる
  • 共通鍵と公開鍵の違いをざっくりつかむ
  • やってはいけないこと(自作暗号など)が分かる
10
3
暗号化の基礎 - なぜ必要か

なぜ暗号化が必要か

情報をそのまま送ると、途中で誰かに見られたり書き換えられたりする危険があります。

  • 通信の途中で中身を盗み見られる(盗聴)
  • 内容をこっそり書き換えられる(改ざん)
  • 相手が本物かどうか分からない(なりすまし)
  • パスワードやカード番号が漏れると被害が大きい
  • だから「読めなくして送る」必要がある
11
4
暗号化の基礎 - 暗号化とは

暗号化とは

読める情報を、鍵がなければ読めない形に変えることです。

暗号化(Encryption)

読める状態のデータ(平文)を、決まった手順と鍵を使って読めない形(暗号文)に変換すること。元に戻すことを復号という。

平文(ひらぶん) 読める元のデータ

暗号文 読めなくした後のデータ

暗号化 平文 → 暗号文

復号 暗号文 → 平文(正しい鍵が必要)

12
5
暗号化の基礎 - 暗号化とは

暗号化と復号の流れ

送る前に隠し、受け取った側が鍵で元に戻す、という往復で成り立ちます。

1. 平文

「会議は15時」という読める文

2. 暗号化

鍵を使って読めない暗号文に変える

3. 送信

暗号文のまま相手へ送る(途中で見られても安全)

4. 復号

受け取った側が鍵で元の平文に戻す

13
6

暗号化の基礎 - 鍵

2

第2部 鍵という考え方

隠す・戻すの中心にあるもの

20
7
暗号化の基礎 - 鍵

鍵(key)とは

暗号化と復号で使う、秘密の情報です。これがないと元に戻せません。

鍵(キー / Key)

暗号化や復号のときに使う秘密の情報。同じ手順でも、鍵が違えば結果も変わる。鍵を知らない人は暗号文を元に戻せない。

手順(アルゴリズム)は公開されていてよい

秘密にすべきなのは「鍵」のほう

鍵が漏れると暗号の意味がなくなる

鍵が長いほど破られにくい傾向がある

21
8
暗号化の基礎 - 鍵

鍵 = 金庫のダイヤルに似ている

金庫の作り(手順)は知られていても、暗証番号(鍵)を知らなければ開けられません。

金庫の作り
  • 仕組みは公開されている
  • 誰でも構造は知っている
暗証番号(鍵)
  • 本人だけが知る秘密
  • これがないと開かない
中身(平文)
  • 守りたい大切な情報
  • 鍵を持つ人だけ取り出せる
22
9
暗号化の基礎 - 鍵

身近な暗号の例(昔から今へ)

暗号は古くからあり、文字をずらす単純なものから、現代の数学的なものへ進化してきました。

シーザー暗号

文字を決まった数だけずらす昔の暗号。例えば3つずらすと A→D、B→E になる。「ずらす数」が鍵にあたる。仕組みが単純なので今では簡単に破られるが、暗号の発想を学ぶ入り口として有名。現代の暗号は、これをはるかに複雑で数学的に強いものへ発展させたもの。

イメージ
23
10

暗号化の基礎 - 2つの方式

3

第3部 2つの方式

鍵が1本か、2本か

30
11
暗号化の基礎 - 2つの方式

共通鍵方式(1本の鍵)

暗号化と復号に、同じ1本の鍵を使う方式です。

共通鍵方式(対称鍵)

暗号化するときも復号するときも、まったく同じ鍵を使う方式。鍵が1本なのでシンプルで高速。

施錠と解錠が同じ鍵

処理が速くシンプル

相手にどう鍵を渡すかが課題

この課題は次回じっくり扱う

31
12
暗号化の基礎 - 2つの方式

公開鍵方式(2本の鍵)

対になる2本の鍵を使い分ける方式です。今日はさわりだけ。

公開鍵方式(非対称鍵)

対になった2本の鍵(公開鍵と秘密鍵)を使う方式。片方で施錠したものは、もう片方でしか開けられない。鍵を配っても安全に使える。

公開鍵 みんなに配ってよい鍵

秘密鍵 自分だけが持つ鍵

鍵を渡す問題を解決できる

共通鍵より処理は遅い

32
13
暗号化の基礎 - 2つの方式

2つの方式の比較

それぞれに得意・不得意があり、実際は組み合わせて使われます。

共通鍵方式
公開鍵方式

鍵の数

1本(同じ鍵)

2本(公開・秘密のペア)

速さ

速い

遅い

鍵を渡す問題

渡し方が課題

配っても安全

主な使いどころ

データ本体の暗号化

鍵の受け渡し・署名

33
14
暗号化の基礎 - 2つの方式

どこで使われている?

暗号化は、私たちが毎日使うサービスの裏側で働いています。

HTTPS
  • Webサイトの通信を暗号化
  • 鍵マークの正体
SSH
  • サーバーへの安全なログイン
  • 鍵認証で守る
保存データ
  • スマホやPCの中身を暗号化
  • 盗難時の情報漏れを防ぐ
34
15

暗号化の基礎 - 注意点

4

第4部 やってはいけないこと

安全な暗号の使い方

40
16
暗号化の基礎 - 注意点

暗号を扱うときの心得

暗号は「自分で発明しない」のが鉄則です。実績ある方式を正しく使います。

やってはいけない

  • 暗号を自作する
  • 古くて弱い方式を使い続ける
  • 鍵をコードに直接書き込む
  • 鍵を使い回す・短くする
  • 手順を秘密にして安心する

こうする

  • 実績ある標準の方式を使う
  • ライブラリに任せる
  • 鍵は安全な場所に保管する
  • 鍵は十分な長さにする
  • 守るのは手順でなく鍵だと心得る
41
17
暗号化の基礎 - まとめ
クイズ

振り返りクイズ

今日の内容を確認しましょう。

暗号方式について、正しい考え方はどれ?

A
手順を秘密にすれば安全なので自作するべき
B
秘密にすべきは鍵で、実績ある標準方式を使うべき
C
鍵は短いほど安全になる
D
暗号化すれば復号は誰でもできる
50
18
暗号化の基礎 - まとめ
答え

振り返りクイズ 解答

暗号方式について、正しい考え方はどれ?

A
手順を秘密にすれば安全なので自作するべき
B
秘密にすべきは鍵で、実績ある標準方式を使うべき
C
鍵は短いほど安全になる
D
暗号化すれば復号は誰でもできる

暗号は手順(アルゴリズム)を公開しても、鍵さえ秘密なら安全という考え方が基本です。だから自作せず、広く検証された標準の方式を使い、鍵を厳重に守るのが正解です。

51
19
暗号化の基礎 - まとめ

質疑・次回予告

今日のまとめと、次に学ぶテーマです。質問があればここで受け付けます。

今日のおさらい
  • 暗号化は平文を読めない形に変えること
  • 守るべきは手順でなく鍵
  • 共通鍵と公開鍵の2方式がある
次回予告
  • 共通鍵暗号方式 〜1本の鍵で速く守る〜
  • 鍵をどう渡すかの問題に踏み込む
52
20
"

暗号化は「読める情報を、鍵がなければ読めない形に変えること」。守るべきは手順ではなく鍵。この土台があれば、HTTPSもSSHも同じ景色で見えてきます。

暗号化の基礎

53
21