30代専業主婦の独学エンジニア挑戦ブログ

実務未経験の30歳の専業主婦が独学でエンジニアを目指すブログです

「Web技術の基本」を読みました(2)

勉強記録 

今日は「Web技術の基本」という本を読みました。イラスト図解式なので、内容がとてもわかりやすかったです。

重要そうなところをまとめました。(長いので記事を3つに分けています)

 

 

暗号化

通信の盗難や不正侵入の対策として、暗号化がある。
元のデータ(平文)を暗号化の手段(暗号化アルゴリズムで暗号文にする。
暗号文を平文に戻すことを復号と呼ぶ。
 
・通信経路で暗号化
通信経路自体を暗号化しておくと、通信を盗聴されても内容が読み取られない。
もし盗聴が成功したとしても、内容が読み取れないので被害を出さないようにすることができる。
 
・保存データの暗号化
サーバーへの不法侵入が成功すると、サーバーの中の情報を簡単に取得できてしまう。
だから機密性の高いデータはサーバー内に保存するときに暗号化すると良い。
データを保存するときに暗号化し、使うときには復号する。
 
パスワードのように復号しなくても正しいかどうかの比較に利用できればいいものであれば、ハッシュ化して保存する方法もある。
ハッシュ化とは、ハッシュ関数で任意の長さの文字列を固定長の文字列(ハッシュ値)に変換すること。
 

公開鍵証明書

機密性の高い情報をやりとりするとき、アクセスしているWebサイトが本物か確認したい。
やりとりの相手が本物であることを証明するのが公開鍵証明書(一般にSSL証明書とも呼ばれる)。
公開鍵証明書は、HTTPS通信に使うための公開鍵の持ち主を証明すること、公開鍵の持ち主が実在することの2つの役割がある。
公開鍵証明書は認証局とよばれる第三者機関から発行される。
 
・自己証明書(オレオレ証明書
公開鍵証明書の発行には、発行費用や審査のために時間がかかる。
試験的に公開鍵証明書を利用したい場合には、自らを認証局とした公開鍵証明書を作成することができる。
 

認証

本人確認処理のことを認証と呼ぶ。
もともとはそれぞれのサイトで独自に実装していたが、利用するサイトが増えて来るとアカウント管理が大変になってきた。
そこで、GoogleFacebookTwitterなどのアカウント情報を利用して認証を行う技術が開発された。
 
・認証API
認証処理を提供する側(GoogleFacebookTwitter)は、処理の仕組みをAPIとして提供する(認証API)。
認証APIを利用するサイトは、認証APIから認証結果の通知をもらい、ログイン情報を扱うことなくユーザーの認証処理を行える。
 
認証処理を標準化したプロトコル。複数の企業が提供する認証サービスを同じ手順で利用することができる。
 

認可

ユーザーごとの権限に従って利用できるサービスの許可を行うことを認可と呼ぶ。
 
・OAuth(オーオース)
サイトをまたいだ認可を実現するために標準化されたプロトコル。(例えばFacebookの投稿を、Twitterにも投稿するなど)
認可のみで認証は行わない。
利用したいサービスは「リソース」と呼ばれ、クライアントとなるサイトがリソースオーナーの許可を受け、リソースサーバーのサイトのサービスを利用する。