Web
- Web:World Wide Web(WWW)・・・蜘蛛の巣
- Web構成
- Web・ブラウザ 生まれ
- Web 発展
- クライアントサーバ型・・・Webアプリケーションで利用
- HTTP 仕組み
- HTTPレスポンス
- URL (Uniform Resource Locator)
- HTTPメソッド
- Webアプリケーション
- Webアプリケーション 構成
- IPとドメイン
- グローバルIPアドレス
- プライベートIPアドレス
- ルータ
- TCP/IP
- IPパケット
- ウェルノウンポート
- 主なプロトコル
- 電子署名のしくみ
- 電子証明書
- 認証局(Certication Authority)
- HTTPS=HTTP+(SSL、TLS)
Web:World Wide Web(WWW)・・・蜘蛛の巣
インターネットをにより各テキスト文書を結び付けて、文書間で閲覧できるようにした仕組み
Web構成
- クライアント:ユーザが閲覧要求するコンピュータ
- サーバ:要求に対して情報を提供するコンピュータ
Web・ブラウザ 生まれ
- ブラウザ「モザイク(Mosaic)」誕生・・・HTML文書閲覧用ソフトウェア+「テキストと画像」同時に表示可能
Web 発展
Web1.0:ブラウザで必要な情報を検索し、サーバで情報を提供。一方通行。Web2.0:サーバを介したブラウザとの双方向のやり取り可能に。
Web3.0:ブロックチェーンやP2P(Peer to Peer)などの技術。次世代の分散型インターネット ※現在
P2P(Peer to Peer)
- 複数コンピュータ同士が対等な立場で相互にやり取りする方法
- ブロックチェーン利用。
クライアントサーバ型・・・Webアプリケーションで利用
複数のコンピュータをサーバを介してつなぐ方法。中央集中管理。⭕サーバで一括管理:情報共有やサービスの変更、機器の増強が容易
❌サーバ障害時、全部に影響する。
HTTP 仕組み
Web専用のプロトコル流れ
以下の2つを1セットで行う
1. Webクライアント(ブラウザ):HTTPリクエストWebサーバ
2. Webサーバ:HTTPレスポンスWebクライアント(ブラウザ)
HTTPレスポンス
返信
構成
ステータスライン + ヘッダ部 + ボディ部
ステータスコード
200:OK 成功
302:Found 宛先リソースの変更
404:Not found 宛先なし
500:Internal Server Error サーバ内部のエラー発生
URL (Uniform Resource Locator)
特定されたリソースの場所を示すURI(Uniform Resource Identifier)
宛先対象となるリソースを一意に識別する値(識別子)URL と実質的に同じ
URN(Uniform Resource Name)
「名前」により永続的(persistent)に特定する識別子URL、URIと実質的に同じ
HTTPメソッド
- GET リソース情報 取得
- POST 新リソース情報 送信
- PUT 新リソース情報で置き換え
- PATCH 一部を新リソース情報で置き換え
- DELETE リソース情報 削除
Webアプリケーション
Web(ブラウザとアプリケーションサーバのやり取り)を利用し、アプリケーションを利用する仕組みWebアプリケーション 構成
- Webサーバ:Webクライアントとやり取りするサーバ側のソフトウェア
- アプリケーションサーバ:リクエストによりプログラム処理するソフトウエア。Webサーバ兼用が多い。送り返すHTTPレスポンスには、処理結果+HTML+CSS+JavaScriptが組み込まれる
- データベースサーバ:データベース管理システムで管理し、SQLでアプリケーションサーバとやり取りする
- 本番環境:Heroku、AWSなど
IPとドメイン
IPアドレス:インターネット上の住所ドメイン:IPアドレス(数字の羅列)を人間用にわかりやすく表記。
DNSサーバ
- IPアドレスとドメインの対応づけをする
- 階層構造に配置、ドメインの階層ごとに問い合わせが起きる
- Chromeのデベロッパーツール>Networkタブ > Timing:DNSサーバとのやりとりにかかった時間
グローバルIPアドレス
インターネット上で世界全体に使用できるアドレスプライベートIPアドレス
私的な空間のIPアドレスルータ
- アドレス変換の機能:各機器のプライベートIPアドレスを、一つのグローバルIPアドレスに変換し使いまわす。
- ルーティング(経路選択):最も適切な送信ルートで送信。
TCP/IP
TCP (Transmission Control Protocol)IP (Internet Protocol):IPルーティング、番号付けしながらパケットに分割
IPパケット
送信方法
パケットを配送手段ごとの入れ物に入れ、中継所経由し、宛先IPアドレスに到着、開封する
フレームの大きさに合わせて分割され、ルーティングという仕組みによって最適な経路を経由して送り届けられ、受信側で復元される。
UDP (User Datagram Protocol)
信頼性は低いが、通信速度が高速のプロトコル。音楽や動画配信のリアルタイム用アプリケーション向き
ウェルノウンポート
サーバアプリケーションに対して、あらかじめ決められたポート番号代表ウェルノウンポート番号
主なプロトコル
FTP (File Transfer Protocol):ファイル転送のプロトコルFTPS(File Transfer Protocol over SSL/TLS):FTP+SSH(SFTP,SSL/TLS)
SMTP(Simple Mail Transfer Protocol):メール送信のプロトコル
POP(Post Office Protocol):メール受信のプロトコル
SSH(Secure Shell):リモート操作のプロトコル(暗号化「ハイブリッド暗号方式」付き)
WebSocket:チャットなどの双方向通信のプロトコル
電子署名のしくみ
保証内容
- 作成本人からの文書メッセージ
- メッセージが改ざんされていない
電子署名の流れ
1. 送信文書メッセージからハッシュ値A生成
2. ハッシュ値Aを暗号化した暗号文と送信文書を送信 ※秘密鍵
3. 受信者が、受信したメッセージからハッシュ値Bを生成
4. 受信した暗号文を復号化し、得たハッシュ値Bとハッシュ値Aで正当性を検証
※公開鍵により、受け取る本人しか復号化ができない仕組みで情報漏洩防止
電子証明書
公開鍵が、認証局(Certication Authority)により正当な所有者のものである証明書。1. 認証局へ電子証明書の発行依頼を申請(必要書類を提供)。
2. 認証局は、提供された必要書類などから、申請者が本人であることを確認。
3. 本人確認後、認証局は、申請者からの秘密鍵と公開鍵のペアを紐づけて電子証明書を発行。
※秘密鍵と公開鍵のペアは、申請者が生成、認証局の場合もあり。
認証局(Certication Authority)
パブリック認証局:認証局
プライベート認証局:特定の組織内などで発行する電子証明書をインストールすることで利用
HTTPS=HTTP+(SSL、TLS)
SSL(Secure Socket Layer):共通鍵による暗号化通信※共通鍵をわたすとき
TLS(Transport Layer Security):SSL進化版
共通鍵
暗号化や復号化が速い。1つで暗号化や復号化可能