知識の地図
街を歩くように、気になる分野から。ランドマークをタップで、その区画へ。
リストで見る(大 → 中 → 小の一覧)
- コンピュータの仕組み15 ユニット
コンピュータの中で何が起きているのか。部品からデータ、ソフトウェアまで。
- 0. コンピュータの全体像(部品マップ)1 ユニット
まず全体図。どんな部品が、どう組み合わさって1台になるかを1枚の図で俯瞰する。
- コンピュータの部品5 ユニット
コンピュータの中にどんな部品があり、それぞれ何をしているか。
- CPU(頭脳)1 ユニット
計算と指示を担う中心。
- メモリ(作業机)1 ユニット
今すぐ使うデータを広げておく場所。
- ストレージ(保管庫)1 ユニット
電源を切っても残る、長期の保管場所。
- マザーボード(土台)1 ユニット
部品どうしをつなぐ土台。
- GPU(描画・並列計算)1 ユニット
画面描画や大量の並列計算を担う。
- データの正体3 ユニット
0と1、文字コード、ファイル。データが何でできているか。
- ソフトウェアとOS2 ユニット
OSとアプリ、プログラムが動く仕組み。
- OSと実行の深掘り3 ユニット
OSの中身(カーネル・プロセス・権限)と、書いたプログラムが機械語になって動くまで。LinuxやDockerの土台になる階層。
- ネットワーク18 ユニット
スマホ/PCから相手まで、データが通る機械を1つずつたどって理解する(機械ごとの分類)。
- 0. 登場する機器の全体図1 ユニット
端末→制御ユニット→(無線=電磁波 / 有線=LANケーブル)→ルーター・GW・ONU…。出てくる機械を一覧+1枚の図で先に押さえる。
- 端末(スマホ・PC)2 ユニット
通信の出発点。中のネットワークインターフェースカード(NIC)が電気信号を作る。
- ネットワークインターフェースカード(NIC)1 ユニット
端末の中で通信を担う部品。データを電気/電波の信号に変換する入口。
- 有線でつなぐ(LANケーブル)1 ユニット
銅線や光ファイバで信号を運ぶ道。LANケーブル・ポート。
- 無線でつなぐ(Wi-Fi)1 ユニット
家の中で電波(電磁波)を飛ばしてルーターとつなぐ道。Wi-Fi・アンテナ・アクセスポイント。
- 宅内のネットワーク機器(役割が重なる/1台に統合されがち)3 ユニット
ルーター・GW・ONUは役割が近く、家庭では「ホームゲートウェイ」1台にまとまっていることも多い。まず違いを分けて、次に統合を理解する。
- ルーター1 ユニット
行き先を見て正しい方向へ振り分ける機械。家と外の分かれ道。
- ゲートウェイ(GW)1 ユニット
違うネットワークどうしの出入口。外の世界へ出る門。ルーターが兼ねることも多い。
- ONU(光回線終端装置)1 ユニット
光ファイバの光信号と、家の中の電気信号を変換する機械。ルーター一体型も多い。
- 外への有線ルート(電柱→サーバ)1 ユニット
家を出た光ファイバが電柱・地下管路を通り、プロバイダの局舎を経て相手のサーバまで届くまで。
- モバイル回線(4G・5G)1 ユニット
スマホの電波が電磁波で基地局まで届き、キャリア網を通ってサーバへ。家のWi-Fiとは別ルート。
- 電磁波の仕組み1 ユニット
そもそも電磁波とは何か。電場と磁場が波で前進する仕組みを、初級→中級→上級で深掘りする。
- 通信の階層モデル1 ユニット
通信を役割ごとの層に分けて捉える考え方(OSI・TCP/IP)。データを層ごとに包む「カプセル化」で全体を貫く背骨。
- アドレスと名前解決2 ユニット
どの機器・どのアプリに届けるかを決める住所(IP・ポート・NAT)と、名前をIPに変える仕組み(DNS)。
- 安全な通信3 ユニット
公衆網の上で盗聴・改ざんを防いで通信する仕組み。VPN・IPsecのトンネルと、通信を絞るファイアウォール。
- Webサービスの仕組み27 ユニット
毎日使うサービスの裏側。スマホから処理される順に、ブラウザ→システム構成をたどる。
- 0. 1リクエストの流れ(全体図)2 ユニット
「ボタンを押す→画面が返る」まで、ブラウザ・API・フロント・バック・DB・インフラをどう通るかを1枚の図で俯瞰する。
- ブラウザの仕組み2 ユニット
手元での最初の処理。検索・表示・レンダリングなど、ブラウザ側で起きること。
- Webサービスのシステム構成22 ユニット
サービスを支える仕組みを「役割(何があるか)」と「基盤(どこで動かすか)」の2軸で見る。
- サーバの役割(何があるか)9 ユニット
リクエストが通る役割と、その周辺の部品。フロント→(API)→バック→DB。
- フロントサーバ1 ユニット
利用者に画面(見た目)を返す入口。
- API(フロントとバックの会話)1 ユニット
画面と中身がやり取りする「窓口」。決められた形でお願いして、決められた形で返す約束。
- バックエンドサーバ1 ユニット
処理・判断・業務ロジックを担う中身。
- DBサーバ1 ユニット
データを貯め、探し、守る保管係(表形式の構造データ)。
- ストレージサーバ1 ユニット
画像・動画・ファイルなど大きな塊を置く保管庫(オブジェクトストレージ)。DBとは役割が違う。
- 入口(ロードバランサ/WAF)1 ユニット
アクセスを複数のサーバに振り分けて混雑・故障に強くし(LB)、あやしいリクエストを弾く(WAF)入口の係。
- CDN(配信を速く)1 ユニット
画像・CSS・JSなど変わらないものを、世界中に分散した“利用者の近くの倉庫”から配る。エッジの層。
- キャッシュ(Redis等・処理を速く)1 ユニット
よく使う答えを手元に置いてDBまで行かずに返す、高速な一時保存。CDNとは役割が違う。
- 非同期処理(キュー・ジョブ)1 ユニット
重い処理を後回しにして順番にこなす仕組み。メール送信や集計など。
- 動かす基盤(インフラ)3 ユニット
サーバ群を載せる土台。自社で持つ(オンプレ)か、借りる(クラウド)か。
- オンプレミス(自社で持つ)1 ユニット
サーバを自前で用意して運用するやり方。
- クラウド(借りる)2 ユニット
必要な分だけ借りて使う土台。増減が自在。
- セキュリティ10 ユニット
Webサービスを守る仕組み。認証・認可を中心に、Web特有の守りをまとめる。
- 認証(ログインシステム)2 ユニット
「誰か」を確かめる仕組み。パスワード・セッション・OAuth・多要素認証など。
- 認可(ログイン後の権限)1 ユニット
ログインした後、「何ができるか」を決める仕組み。ロール・権限・アクセス制御。
- Webの中のセキュリティ6 ユニット
入力の扱いや秘密情報など、Web開発で守るべき代表的なポイント。
- 入力の検証(バリデーション)1 ユニット
外から来た値を信用せず確かめる。すべての守りの土台。
- XSS(クロスサイトスクリプティング)1 ユニット
他人のブラウザで悪いスクリプトを動かされる攻撃と、その防ぎ方。
- CSRF(意図しない操作の送信)1 ユニット
ログイン中を悪用して勝手に操作させる攻撃と、その対策。
- SQLインジェクション1 ユニット
入力を通じてDBに不正な命令を送り込む攻撃と、その防ぎ方。
- 秘密情報の扱い(APIキー・環境変数)1 ユニット
鍵やパスワードをコードに直書きしない。安全な保管と受け渡し。
- サービス別の構成例1 ユニット
具体的なサービスがどんな構成で動いているか。
- セキュリティ15 ユニット
守りの仕組み。考え方・暗号・攻撃と防御を理解する(実務の認証・認可はWebサービス側)。
- 0. 全体像(何を・何から守る)1 ユニット
守る対象(データ・お金・本人)と脅威(盗聴・なりすまし・改ざん)の地図を先に描く。
- セキュリティの考え方1 ユニット
機密性・完全性・可用性など、何をどう守るかの基本原則。
- 暗号の仕組み5 ユニット
盗み見られても大丈夫にする暗号化の原理(共通鍵・公開鍵・HTTPSなど)。
- 共通鍵暗号1 ユニット
同じ鍵で施錠・開錠する方式。速いが、鍵の受け渡しが課題。
- 公開鍵暗号1 ユニット
公開鍵で施錠し秘密鍵で開錠する方式。鍵の受け渡し問題を解く。
- ハッシュ(要約と改ざん検知)1 ユニット
データを固定長の指紋に変換。元に戻せない性質で、改ざん検知やパスワード保管に使う。
- 電子署名・証明書1 ユニット
「本物であること」を証明する仕組み。HTTPSの鍵マークの正体。
- 攻撃と防御7 ユニット
どんな攻撃があり、どう守るか。代表的な手法と、その歴史(変遷)に分けて学ぶ。
- 代表的な攻撃手法5 ユニット
いま気をつけるべき攻撃の種類と、それぞれの防ぎ方。
- マルウェア(ウイルス・不正プログラム)1 ユニット
勝手に動く悪いプログラムの種類と、感染の入口・防ぎ方。
- 人をだます攻撃(フィッシング等)1 ユニット
技術ではなく人の心のスキを突く攻撃。フィッシング・なりすまし・詐欺。
- 不正アクセス・侵入1 ユニット
弱いところを突いて中に入り込む攻撃と、その防ぎ方。
- サービス妨害(DoS・DDoS)1 ユニット
大量アクセスでサービスを止める攻撃と、その受け流し方。
- 攻撃と防御の歴史(変遷)1 ユニット
攻撃と防御がどのように発展してきたかの流れ。
- 個人情報とプライバシー1 ユニット
自分のデータがどう集められ・使われるか。守るための考え方と設定。
- インフラと実行環境7 ユニット
アプリを「どこで・どう動かすか」。仮想化・コンテナ・クラウドのネットワーク、そして開発から運用までを自動化する仕組み。
- 仮想化の仕組み1 ユニット
1台の物理マシンを複数に見せる技術。VMとハイパーバイザ。コンテナやクラウドの土台。
- コンテナ1 ユニット
OSのカーネルを共有したまま実行環境を隔離する軽量な箱。Dockerとイメージの仕組み。
- オーケストレーション1 ユニット
たくさんのコンテナを自動で配置・復旧・増減させる仕組み。Kubernetes。
- クラウドのネットワーク1 ユニット
クラウド上に論理的に区切った自分専用のネットワーク。VPC・サブネット・セキュリティグループ。
- 開発と運用の自動化3 ユニット
変更を安全に届け続ける仕組み。バージョン管理(Git)・CI/CD・コードで基盤を定義するIaC。