「Web技術の基本」を読みました(2)
勉強記録
今日は「Web技術の基本」という本を読みました。イラスト図解式なので、内容がとてもわかりやすかったです。
重要そうなところをまとめました。(長いので記事を3つに分けています)
暗号化
通信の盗難や不正侵入の対策として、暗号化がある。
元のデータ(平文)を暗号化の手段(暗号化アルゴリズム)で暗号文にする。
暗号文を平文に戻すことを復号と呼ぶ。
・通信経路で暗号化
通信経路自体を暗号化しておくと、通信を盗聴されても内容が読み取られない。
もし盗聴が成功したとしても、内容が読み取れないので被害を出さないようにすることができる。
・保存データの暗号化
サーバーへの不法侵入が成功すると、サーバーの中の情報を簡単に取得できてしまう。
だから機密性の高いデータはサーバー内に保存するときに暗号化すると良い。
データを保存するときに暗号化し、使うときには復号する。
パスワードのように復号しなくても正しいかどうかの比較に利用できればいいものであれば、ハッシュ化して保存する方法もある。
公開鍵証明書
機密性の高い情報をやりとりするとき、アクセスしているWebサイトが本物か確認したい。
やりとりの相手が本物であることを証明するのが公開鍵証明書(一般にSSL証明書とも呼ばれる)。
公開鍵証明書は、HTTPS通信に使うための公開鍵の持ち主を証明すること、公開鍵の持ち主が実在することの2つの役割がある。
・自己証明書(オレオレ証明書)
公開鍵証明書の発行には、発行費用や審査のために時間がかかる。
試験的に公開鍵証明書を利用したい場合には、自らを認証局とした公開鍵証明書を作成することができる。
認証
本人確認処理のことを認証と呼ぶ。
もともとはそれぞれのサイトで独自に実装していたが、利用するサイトが増えて来るとアカウント管理が大変になってきた。
・認証API
認証処理を標準化したプロトコル。複数の企業が提供する認証サービスを同じ手順で利用することができる。
認可
ユーザーごとの権限に従って利用できるサービスの許可を行うことを認可と呼ぶ。
・OAuth(オーオース)
認可のみで認証は行わない。
利用したいサービスは「リソース」と呼ばれ、クライアントとなるサイトがリソースオーナーの許可を受け、リソースサーバーのサイトのサービスを利用する。