セキュリティ編 第5章 / 全13章
暗号化とHTTPSとは
Encryption ・ TLS ・ 公開鍵
盗まれても読めなくする鍵付きの郵便受け。誰でも投函できる(公開鍵)が、取り出せるのは鍵を持つ家の人だけ(秘密鍵)。
図とさわれるデモで確かめる →
ポイント
- 通信の暗号化:HTTPS(TLS)で、途中で盗み見されても読めないようにする
- 保存の暗号化:PCやサーバーのディスク、データベースの中身を暗号化しておく
- 暗号化の強さは、鍵をどう守るかで決まる
名前の由来
en-中にkryptos隠された(ギリシャ語)
データを「隠された」形に変えること。鍵を持つ人だけが元に戻せる(復号)。
仕事の現場では
ブラウザのアドレス欄の鍵マークは「通信が暗号化されている」印で、「そのサイトが安全・本物」という意味ではありません。偽サイトでも鍵マークは付きます。ノートPCは、紛失に備えてディスクの暗号化を必ずオンにしましょう。
くわしく(正確な話)
- 暗号化と復号に同じ鍵を使うのが共通鍵暗号、別々の鍵を使うのが公開鍵暗号。
- サイトの持ち主を証明するのが電子証明書。認証局が発行する。
- パスワードは暗号化ではなく、元に戻せない形(ハッシュ)にして保存するのが基本。
- 鍵は専用のサービス(KMS・Key Vault など)で管理し、プログラムの中に書かない。
うまれ:通信を暗号化する SSL は1995年ごろに Netscape 社が作り、1999年に TLS として標準化された。
この章の用語(意味と語源)
- 暗号化 / 復号 Encryption / Decryption
データを、鍵を持つ人にしか読めない形に変えること/元に戻すこと。
語源en(中に)+ ギリシャ語 kryptos(隠された)。de- は「元に戻す」。
- HTTPS / TLS ティーエルエス
Webの通信を暗号化する仕組み。
アドレス欄の鍵マークは「通信が暗号化されている」印で、「サイトが本物」という意味ではありません。
語源Transport Layer Security(運ぶ層の安全)の頭文字。前身は SSL(Secure Sockets Layer)。
- 公開鍵暗号 / 電子証明書 Public Key Cryptography / Certificate
公開してよい鍵と秘密の鍵の2つを使う暗号/サイトや人の身元を証明するデータ。
語源public(公開の)+ key(鍵)。certificate はラテン語 certificare(確かにする)から。
- ハッシュ Hash
データから、元に戻せない決まった長さの値を作ること。
パスワードは、ハッシュにして保存するのが基本です。同じ入力からは必ず同じ値になるので、照合に使えます。
語源hash(細かく刻む)。ハッシュドビーフの hash と同じ言葉です。
- 鍵の管理(KMS) Key Management Service
暗号の鍵やパスワードなどの秘密の情報を、安全に保管・管理するサービス。
語源Key Management Service(鍵管理サービス)の頭文字。vault は「金庫室」。