SlideShare a Scribd company logo
1 of 13
AWSを学ぶ上で必要となる 
前提知識 
- インフラ基礎知識(SSL) -
SSL概要 
 TCP/IPでデータを暗号化して送受信するプロトコルの 
一つ。 
 データを送受信する一対の機器間で通信を暗号化し、 
他の機器による成りすましやデータの盗み見、改竄な 
どを防ぐことができる。 
 公開鍵証明書による通信相手の認証と、共通鍵暗号に 
よる通信の暗号化、ハッシュ関数による改竄検知など 
の機能を提供する。
公開鍵暗号方式 
 秘密鍵と公開鍵をペアで作成 
 公開鍵の方は相手に渡し、秘密鍵は自分で保管 
 一方の鍵で暗号化したものは、もう一方の鍵でし 
か復号できない 
こんにち 
は 
こんにち 
は 
(2$GFgkxd 
暗号化復号化 
sdf&fd45% 
元気? 元気? 
復号化暗号化
SSLの利用例 
 HTTP通信を安全に行いたい! 
→HTTPS 
 接続するクライアントを限定したい! 
→クライアント証明書
HTTPS
HTTPSとは 
 HTTPS(Hypertext Transfer Protocol Secure) は、メッ 
セージを平文のままで送受信する標準のHTTPと異 
なり、SSLプロトコルの上でHTTP通信を行う。 
 サーバの認証・通信内容の暗号化・改竄検出など 
によりなりすましや盗聴などの攻撃を防ぐことが 
できる。 
 HTTPSでは、標準のポート番号として443が使われ 
る。
鍵と証明書の作成 
①opensslでサーバー秘密鍵を作成 
┌───────┐ 
│サーバー秘密鍵│ 
└───────┘ 
↓②opensslで公開鍵を作成 
┌───────┐ 
│サーバー公開鍵│ 
└───────┘ 
↓③公開鍵をCA(認証局)に渡す 
┌─┬───────┐ 
│証│サーバー公開鍵│──┐④認証局で、認証局のCA秘密鍵で暗号化 
│明├───────┤ │ された署名を追加。これが証明書 
│書│ 署名│←─┘ 
└─┴───────┘ 
↓ 
⑤証明書がCA(認証局)から返される。 
⑥サーバに証明書を設定
証明書とは 
証明書作成時②CA秘密鍵で暗号化 
┌─┬───────┐ 
│証│サーバー公開鍵│──→①ハッシュ値算出1001 → %3fg44g# 
│明├───────┤ │ 
│書│ 署名│←────────────────┘③署名として埋め込み 
└─┴───────┘ 
証明書検証時 
┌─┬───────┐ 
│証│サーバー公開鍵│──→①ハッシュ値算出1001 ──────┐ 
│明├───────┤ │ 
│書│ 署名│──→②署名%3fg44g# ─→ 1001 ────┴→④比較 
└─┴───────┘ 
③CA公開鍵で復号化
通信の流れ 
サーバー秘密鍵発行済み証明書の一覧 
サーバー証明書CA公開鍵、CA秘密鍵 
┌───────┐ ┌───────┐ ┌───────┐ 
│クライアント│ │ サーバー│ │ CA(認証局) │ 
└───┬───┘ └───┬───┘ └───┬───┘ 
│ ①https request │ │ 
├──────────→│ │ 
│←──────────│ │ 
│ ②証明書送信│ │ 
│ │ ③CA公開鍵要求│ 
│───────────┼──────────→│ 
│←──────────┼───────────┤ 
│ │ ④認証局のCA公開鍵│ 
⑤証明書の署名を│ │ 
認証局のCA公開鍵で│ │ 
復号し署名の妥当性│ │ 
を確認│ │ 
│ │ │ 
⑥乱数を生成│ │ 
乱数より共通鍵生成│ │ 
│ │ │ 
⑦乱数をサーバーの│ │ 
公開鍵で暗号化│ │ 
│ │ │ 
│⑧暗号化された共通鍵│ │ 
│ を送信│ │ 
├──────────→│ │ 
│ │ │ 
│ ⑨乱数を│ │ 
│ サーバの秘密鍵で復号│ 
│ │ │ 
│ ⑩乱数より共通鍵作成│ 
│ │ │ 
│ ⑪共通鍵を使って│ │ 
│ 暗号化通信│ │ 
│←─────────→│ │
クライアント認証
クライアント認証とは 
 サーバにアクセスする際にクライアント証明書を提 
示することで身元を証明・確認することができる。 
 身元を確認したクライアントのみに、通信を許可す 
ることで特定の端末のみからのアクセス制御を行う 
ことができる。
鍵と証明書の作成 
①opensslでCL(クライアント)秘密鍵を作成 
┌────┐ 
│CL秘密鍵│ 
└────┘ 
↓②opensslで公開鍵を作成 
┌────┐ 
│CL公開鍵│ 
└────┘ 
↓③公開鍵をCA(認証局)に渡す 
┌─┬────┐ 
│証│CL公開鍵│──┐④認証局で、認証局のCA秘密鍵で暗号化された 
│明├────┤ │ 署名を追加。これが証明書 
│書│署名│←─┘ 
└─┴────┘ 
↓ 
⑤証明書がCA(認証局)から返される。 
⑥クライアントに証明書と、CL秘密鍵を設定
通信の流れ 
CL秘密鍵発行済み証明書の一覧 
クライアント証明書CA公開鍵、CA秘密鍵 
┌───────┐ ┌───────┐ ┌───────┐ 
│クライアント│ │ サーバー│ │ CA(認証局) │ 
└───┬───┘ └───┬───┘ └───┬───┘ 
│ ①request │ │ 
├──────────→│ │ 
│←──────────┤ │ 
│ ②証明書要求│ │ 
├──────────→│ ④CA公開鍵要求│ 
│ ③証明書送信├──────────→│ 
│ │←──────────┤ 
│ │ ⑤認証局のCA公開鍵│ 
│ │ │ 
│ ⑥証明書の署名を│ 
│ 認証局のCA公開鍵で│ 
│ 復号し署名の妥当性│ 
│ を確認│ 
│ │ │ 
│ ⑦乱数を生成│ 
│ 乱数より共通鍵生成│ 
│ │ │ 
│ ⑧乱数をクライアントの│ 
│ CL公開鍵で暗号化│ 
│ │ │ 
│⑨暗号化された乱数│ │ 
│ を送信│ │ 
│←──────────┤ │ 
│ │ │ 
⑩乱数をクライアントの│ │ 
CL秘密鍵で復号│ │ 
│ │ │ 
⑪乱数より共通鍵作成│ │ 
│ ⑫共通鍵を使って│ │ 
│ 暗号化通信│ │ 
│←─────────→│ │

More Related Content

Viewers also liked

awsを学ぶ上で必要となる前提知識(DB)
awsを学ぶ上で必要となる前提知識(DB)awsを学ぶ上で必要となる前提知識(DB)
awsを学ぶ上で必要となる前提知識(DB)聡 大久保
 
1 Linux入門 第6章 Webサーバーの概要
1 Linux入門 第6章 Webサーバーの概要1 Linux入門 第6章 Webサーバーの概要
1 Linux入門 第6章 Webサーバーの概要Enpel
 
クラウドネイティブが行なういまどきWebサービス開発
クラウドネイティブが行なういまどきWebサービス開発クラウドネイティブが行なういまどきWebサービス開発
クラウドネイティブが行なういまどきWebサービス開発Yuuji Arakaki
 
3ヶ月間 IoT をやって感じたこと
3ヶ月間 IoT をやって感じたこと3ヶ月間 IoT をやって感じたこと
3ヶ月間 IoT をやって感じたことkakakikikeke
 
Awsで構築したのだよ 03 ec2インスタンスに設定したタグをサーバから取得
Awsで構築したのだよ 03 ec2インスタンスに設定したタグをサーバから取得Awsで構築したのだよ 03 ec2インスタンスに設定したタグをサーバから取得
Awsで構築したのだよ 03 ec2インスタンスに設定したタグをサーバから取得聡 大久保
 
Awsで構築したのだよ 02 ec2インスタンスから自分のインスタンスidを取得
Awsで構築したのだよ 02 ec2インスタンスから自分のインスタンスidを取得Awsで構築したのだよ 02 ec2インスタンスから自分のインスタンスidを取得
Awsで構築したのだよ 02 ec2インスタンスから自分のインスタンスidを取得聡 大久保
 
Awsで構築したのだよ 04 ec2インスタンス起動時にホスト名を変更
Awsで構築したのだよ 04 ec2インスタンス起動時にホスト名を変更Awsで構築したのだよ 04 ec2インスタンス起動時にホスト名を変更
Awsで構築したのだよ 04 ec2インスタンス起動時にホスト名を変更聡 大久保
 
iOSバージョン差異(iOS6まで)
iOSバージョン差異(iOS6まで)iOSバージョン差異(iOS6まで)
iOSバージョン差異(iOS6まで)聡 大久保
 
Webサーバ勉強会03
Webサーバ勉強会03Webサーバ勉強会03
Webサーバ勉強会03oranie Narut
 
マルウェアに学ぶ Apache+phpセキュリティ(ネット公開版)
マルウェアに学ぶ Apache+phpセキュリティ(ネット公開版)マルウェアに学ぶ Apache+phpセキュリティ(ネット公開版)
マルウェアに学ぶ Apache+phpセキュリティ(ネット公開版)takahashi-yugo
 
続マスタN対スレーブ1レプリケーションの作り方
続マスタN対スレーブ1レプリケーションの作り方続マスタN対スレーブ1レプリケーションの作り方
続マスタN対スレーブ1レプリケーションの作り方do_aki
 
Webサーバの基礎知識【編集済み】
Webサーバの基礎知識【編集済み】Webサーバの基礎知識【編集済み】
Webサーバの基礎知識【編集済み】Kikunaga Taishi
 
技術ドキュメント改善作戦 TDI-#1 Apache 設定ファイル(1)
技術ドキュメント改善作戦 TDI-#1 Apache 設定ファイル(1)技術ドキュメント改善作戦 TDI-#1 Apache 設定ファイル(1)
技術ドキュメント改善作戦 TDI-#1 Apache 設定ファイル(1)Mizuhiro Kaimai
 
恐るべきApache, Web勉強会@福岡
恐るべきApache, Web勉強会@福岡恐るべきApache, Web勉強会@福岡
恐るべきApache, Web勉強会@福岡Aya Komuro
 
10分で分かるバックアップとレプリケーション
10分で分かるバックアップとレプリケーション10分で分かるバックアップとレプリケーション
10分で分かるバックアップとレプリケーションTakashi Hoshino
 
Awsを学ぶ上で必要となる前提知識(DNS/LB)
Awsを学ぶ上で必要となる前提知識(DNS/LB)Awsを学ぶ上で必要となる前提知識(DNS/LB)
Awsを学ぶ上で必要となる前提知識(DNS/LB)聡 大久保
 
AWS入門編 EC2/ELBを使った、ブログシステム構築ハンズオントレーニング
AWS入門編 EC2/ELBを使った、ブログシステム構築ハンズオントレーニングAWS入門編 EC2/ELBを使った、ブログシステム構築ハンズオントレーニング
AWS入門編 EC2/ELBを使った、ブログシステム構築ハンズオントレーニング聡 大久保
 
Awsで構築したのだよ 06 ec2インスタンス起動時にCloudWatchのアラームを追加する
Awsで構築したのだよ 06 ec2インスタンス起動時にCloudWatchのアラームを追加するAwsで構築したのだよ 06 ec2インスタンス起動時にCloudWatchのアラームを追加する
Awsで構築したのだよ 06 ec2インスタンス起動時にCloudWatchのアラームを追加する聡 大久保
 
Awsで構築したのだよ 05 プロセス監視、メモリ使用率、ディスク使用率をCloudWatchのカスタムメトリクスに追加したい
Awsで構築したのだよ 05 プロセス監視、メモリ使用率、ディスク使用率をCloudWatchのカスタムメトリクスに追加したいAwsで構築したのだよ 05 プロセス監視、メモリ使用率、ディスク使用率をCloudWatchのカスタムメトリクスに追加したい
Awsで構築したのだよ 05 プロセス監視、メモリ使用率、ディスク使用率をCloudWatchのカスタムメトリクスに追加したい聡 大久保
 

Viewers also liked (20)

awsを学ぶ上で必要となる前提知識(DB)
awsを学ぶ上で必要となる前提知識(DB)awsを学ぶ上で必要となる前提知識(DB)
awsを学ぶ上で必要となる前提知識(DB)
 
1 Linux入門 第6章 Webサーバーの概要
1 Linux入門 第6章 Webサーバーの概要1 Linux入門 第6章 Webサーバーの概要
1 Linux入門 第6章 Webサーバーの概要
 
クラウドネイティブが行なういまどきWebサービス開発
クラウドネイティブが行なういまどきWebサービス開発クラウドネイティブが行なういまどきWebサービス開発
クラウドネイティブが行なういまどきWebサービス開発
 
3ヶ月間 IoT をやって感じたこと
3ヶ月間 IoT をやって感じたこと3ヶ月間 IoT をやって感じたこと
3ヶ月間 IoT をやって感じたこと
 
Awsで構築したのだよ 03 ec2インスタンスに設定したタグをサーバから取得
Awsで構築したのだよ 03 ec2インスタンスに設定したタグをサーバから取得Awsで構築したのだよ 03 ec2インスタンスに設定したタグをサーバから取得
Awsで構築したのだよ 03 ec2インスタンスに設定したタグをサーバから取得
 
OSC2012 OSC.DB Hadoop
OSC2012 OSC.DB HadoopOSC2012 OSC.DB Hadoop
OSC2012 OSC.DB Hadoop
 
Awsで構築したのだよ 02 ec2インスタンスから自分のインスタンスidを取得
Awsで構築したのだよ 02 ec2インスタンスから自分のインスタンスidを取得Awsで構築したのだよ 02 ec2インスタンスから自分のインスタンスidを取得
Awsで構築したのだよ 02 ec2インスタンスから自分のインスタンスidを取得
 
Awsで構築したのだよ 04 ec2インスタンス起動時にホスト名を変更
Awsで構築したのだよ 04 ec2インスタンス起動時にホスト名を変更Awsで構築したのだよ 04 ec2インスタンス起動時にホスト名を変更
Awsで構築したのだよ 04 ec2インスタンス起動時にホスト名を変更
 
iOSバージョン差異(iOS6まで)
iOSバージョン差異(iOS6まで)iOSバージョン差異(iOS6まで)
iOSバージョン差異(iOS6まで)
 
Webサーバ勉強会03
Webサーバ勉強会03Webサーバ勉強会03
Webサーバ勉強会03
 
マルウェアに学ぶ Apache+phpセキュリティ(ネット公開版)
マルウェアに学ぶ Apache+phpセキュリティ(ネット公開版)マルウェアに学ぶ Apache+phpセキュリティ(ネット公開版)
マルウェアに学ぶ Apache+phpセキュリティ(ネット公開版)
 
続マスタN対スレーブ1レプリケーションの作り方
続マスタN対スレーブ1レプリケーションの作り方続マスタN対スレーブ1レプリケーションの作り方
続マスタN対スレーブ1レプリケーションの作り方
 
Webサーバの基礎知識【編集済み】
Webサーバの基礎知識【編集済み】Webサーバの基礎知識【編集済み】
Webサーバの基礎知識【編集済み】
 
技術ドキュメント改善作戦 TDI-#1 Apache 設定ファイル(1)
技術ドキュメント改善作戦 TDI-#1 Apache 設定ファイル(1)技術ドキュメント改善作戦 TDI-#1 Apache 設定ファイル(1)
技術ドキュメント改善作戦 TDI-#1 Apache 設定ファイル(1)
 
恐るべきApache, Web勉強会@福岡
恐るべきApache, Web勉強会@福岡恐るべきApache, Web勉強会@福岡
恐るべきApache, Web勉強会@福岡
 
10分で分かるバックアップとレプリケーション
10分で分かるバックアップとレプリケーション10分で分かるバックアップとレプリケーション
10分で分かるバックアップとレプリケーション
 
Awsを学ぶ上で必要となる前提知識(DNS/LB)
Awsを学ぶ上で必要となる前提知識(DNS/LB)Awsを学ぶ上で必要となる前提知識(DNS/LB)
Awsを学ぶ上で必要となる前提知識(DNS/LB)
 
AWS入門編 EC2/ELBを使った、ブログシステム構築ハンズオントレーニング
AWS入門編 EC2/ELBを使った、ブログシステム構築ハンズオントレーニングAWS入門編 EC2/ELBを使った、ブログシステム構築ハンズオントレーニング
AWS入門編 EC2/ELBを使った、ブログシステム構築ハンズオントレーニング
 
Awsで構築したのだよ 06 ec2インスタンス起動時にCloudWatchのアラームを追加する
Awsで構築したのだよ 06 ec2インスタンス起動時にCloudWatchのアラームを追加するAwsで構築したのだよ 06 ec2インスタンス起動時にCloudWatchのアラームを追加する
Awsで構築したのだよ 06 ec2インスタンス起動時にCloudWatchのアラームを追加する
 
Awsで構築したのだよ 05 プロセス監視、メモリ使用率、ディスク使用率をCloudWatchのカスタムメトリクスに追加したい
Awsで構築したのだよ 05 プロセス監視、メモリ使用率、ディスク使用率をCloudWatchのカスタムメトリクスに追加したいAwsで構築したのだよ 05 プロセス監視、メモリ使用率、ディスク使用率をCloudWatchのカスタムメトリクスに追加したい
Awsで構築したのだよ 05 プロセス監視、メモリ使用率、ディスク使用率をCloudWatchのカスタムメトリクスに追加したい
 

Similar to AWSを学ぶ上で必要となる前提知識(SSL)

#mailerstudy 02 メールと暗号 - SSL/TLS -
#mailerstudy 02 メールと暗号 - SSL/TLS -#mailerstudy 02 メールと暗号 - SSL/TLS -
#mailerstudy 02 メールと暗号 - SSL/TLS -Takashi Takizawa
 
公開鍵、秘密鍵ってなに?
公開鍵、秘密鍵ってなに?公開鍵、秘密鍵ってなに?
公開鍵、秘密鍵ってなに?kenji4569
 
Wp sslandroot certificate
Wp sslandroot certificateWp sslandroot certificate
Wp sslandroot certificateYoshida Yuri
 
SSLの技術的な仕組みとサイトのSSL化について
SSLの技術的な仕組みとサイトのSSL化についてSSLの技術的な仕組みとサイトのSSL化について
SSLの技術的な仕組みとサイトのSSL化についてssuserb5e2a0
 
プロフェッショナルSSL/TLS 1.2章
プロフェッショナルSSL/TLS 1.2章プロフェッショナルSSL/TLS 1.2章
プロフェッショナルSSL/TLS 1.2章MITSUNARI Shigeo
 
『プロフェッショナルSSL/TLS』読書会3章
『プロフェッショナルSSL/TLS』読書会3章『プロフェッショナルSSL/TLS』読書会3章
『プロフェッショナルSSL/TLS』読書会3章MITSUNARI Shigeo
 
Developer Festa Sapporo 2016 | 誰もがIoTエンジニアになれる 〜IoT 通信プラットフォーム SORACOM〜
Developer Festa Sapporo 2016 | 誰もがIoTエンジニアになれる 〜IoT 通信プラットフォーム SORACOM〜Developer Festa Sapporo 2016 | 誰もがIoTエンジニアになれる 〜IoT 通信プラットフォーム SORACOM〜
Developer Festa Sapporo 2016 | 誰もがIoTエンジニアになれる 〜IoT 通信プラットフォーム SORACOM〜SORACOM,INC
 
Man-in-the-Middle Attack for SSH with Scala and JSch
Man-in-the-Middle Attack for SSH with Scala and JSchMan-in-the-Middle Attack for SSH with Scala and JSch
Man-in-the-Middle Attack for SSH with Scala and JSchAtsuhiko Yamanaka
 
#mailerstudy 02 暗号入門 (2012-02-22更新)
#mailerstudy 02 暗号入門 (2012-02-22更新)#mailerstudy 02 暗号入門 (2012-02-22更新)
#mailerstudy 02 暗号入門 (2012-02-22更新)Takashi Takizawa
 
SSLの最新トレンド
SSLの最新トレンドSSLの最新トレンド
SSLの最新トレンドJ-Stream Inc.
 
パーソナルデータエコシステムと暗号プロトコル技術 - OpenID Summit 2015
パーソナルデータエコシステムと暗号プロトコル技術 - OpenID Summit 2015パーソナルデータエコシステムと暗号プロトコル技術 - OpenID Summit 2015
パーソナルデータエコシステムと暗号プロトコル技術 - OpenID Summit 2015OpenID Foundation Japan
 
Professional SSL/TLS Reading Chapter 6
Professional SSL/TLS Reading Chapter 6Professional SSL/TLS Reading Chapter 6
Professional SSL/TLS Reading Chapter 6Shogo Hayashi
 
Vdi を より使いやすいインフラにするためのセキュリティ設計
Vdi を より使いやすいインフラにするためのセキュリティ設計Vdi を より使いやすいインフラにするためのセキュリティ設計
Vdi を より使いやすいインフラにするためのセキュリティ設計junichi anno
 
OAuthのHolder of Key Token
OAuthのHolder of Key TokenOAuthのHolder of Key Token
OAuthのHolder of Key TokenYuichi Nakamura
 
20191224 aws cloud9
20191224 aws cloud920191224 aws cloud9
20191224 aws cloud9yamamotomsc
 
IoT のセキュリティアーキテクチャと実装モデル on Azure
IoT のセキュリティアーキテクチャと実装モデル on AzureIoT のセキュリティアーキテクチャと実装モデル on Azure
IoT のセキュリティアーキテクチャと実装モデル on Azurejunichi anno
 
ただしくHTTPSを設定しよう!
ただしくHTTPSを設定しよう!ただしくHTTPSを設定しよう!
ただしくHTTPSを設定しよう!IIJ
 

Similar to AWSを学ぶ上で必要となる前提知識(SSL) (20)

#mailerstudy 02 メールと暗号 - SSL/TLS -
#mailerstudy 02 メールと暗号 - SSL/TLS -#mailerstudy 02 メールと暗号 - SSL/TLS -
#mailerstudy 02 メールと暗号 - SSL/TLS -
 
公開鍵、秘密鍵ってなに?
公開鍵、秘密鍵ってなに?公開鍵、秘密鍵ってなに?
公開鍵、秘密鍵ってなに?
 
Wp sslandroot certificate
Wp sslandroot certificateWp sslandroot certificate
Wp sslandroot certificate
 
SSLの技術的な仕組みとサイトのSSL化について
SSLの技術的な仕組みとサイトのSSL化についてSSLの技術的な仕組みとサイトのSSL化について
SSLの技術的な仕組みとサイトのSSL化について
 
Hipとは?
Hipとは?Hipとは?
Hipとは?
 
プロフェッショナルSSL/TLS 1.2章
プロフェッショナルSSL/TLS 1.2章プロフェッショナルSSL/TLS 1.2章
プロフェッショナルSSL/TLS 1.2章
 
『プロフェッショナルSSL/TLS』読書会3章
『プロフェッショナルSSL/TLS』読書会3章『プロフェッショナルSSL/TLS』読書会3章
『プロフェッショナルSSL/TLS』読書会3章
 
Developer Festa Sapporo 2016 | 誰もがIoTエンジニアになれる 〜IoT 通信プラットフォーム SORACOM〜
Developer Festa Sapporo 2016 | 誰もがIoTエンジニアになれる 〜IoT 通信プラットフォーム SORACOM〜Developer Festa Sapporo 2016 | 誰もがIoTエンジニアになれる 〜IoT 通信プラットフォーム SORACOM〜
Developer Festa Sapporo 2016 | 誰もがIoTエンジニアになれる 〜IoT 通信プラットフォーム SORACOM〜
 
SSL入門
SSL入門SSL入門
SSL入門
 
Man-in-the-Middle Attack for SSH with Scala and JSch
Man-in-the-Middle Attack for SSH with Scala and JSchMan-in-the-Middle Attack for SSH with Scala and JSch
Man-in-the-Middle Attack for SSH with Scala and JSch
 
#mailerstudy 02 暗号入門 (2012-02-22更新)
#mailerstudy 02 暗号入門 (2012-02-22更新)#mailerstudy 02 暗号入門 (2012-02-22更新)
#mailerstudy 02 暗号入門 (2012-02-22更新)
 
AWS KMSと鍵の話
AWS KMSと鍵の話AWS KMSと鍵の話
AWS KMSと鍵の話
 
SSLの最新トレンド
SSLの最新トレンドSSLの最新トレンド
SSLの最新トレンド
 
パーソナルデータエコシステムと暗号プロトコル技術 - OpenID Summit 2015
パーソナルデータエコシステムと暗号プロトコル技術 - OpenID Summit 2015パーソナルデータエコシステムと暗号プロトコル技術 - OpenID Summit 2015
パーソナルデータエコシステムと暗号プロトコル技術 - OpenID Summit 2015
 
Professional SSL/TLS Reading Chapter 6
Professional SSL/TLS Reading Chapter 6Professional SSL/TLS Reading Chapter 6
Professional SSL/TLS Reading Chapter 6
 
Vdi を より使いやすいインフラにするためのセキュリティ設計
Vdi を より使いやすいインフラにするためのセキュリティ設計Vdi を より使いやすいインフラにするためのセキュリティ設計
Vdi を より使いやすいインフラにするためのセキュリティ設計
 
OAuthのHolder of Key Token
OAuthのHolder of Key TokenOAuthのHolder of Key Token
OAuthのHolder of Key Token
 
20191224 aws cloud9
20191224 aws cloud920191224 aws cloud9
20191224 aws cloud9
 
IoT のセキュリティアーキテクチャと実装モデル on Azure
IoT のセキュリティアーキテクチャと実装モデル on AzureIoT のセキュリティアーキテクチャと実装モデル on Azure
IoT のセキュリティアーキテクチャと実装モデル on Azure
 
ただしくHTTPSを設定しよう!
ただしくHTTPSを設定しよう!ただしくHTTPSを設定しよう!
ただしくHTTPSを設定しよう!
 

More from 聡 大久保

Oculus Interaction SDK で物をつかむ編
Oculus Interaction SDK で物をつかむ編Oculus Interaction SDK で物をつかむ編
Oculus Interaction SDK で物をつかむ編聡 大久保
 
Oculus Interaction SDK でグラブまわりの設定方法
Oculus Interaction SDK でグラブまわりの設定方法Oculus Interaction SDK でグラブまわりの設定方法
Oculus Interaction SDK でグラブまわりの設定方法聡 大久保
 
空間を認識する - 取り込みから表示まで -
空間を認識する - 取り込みから表示まで -空間を認識する - 取り込みから表示まで -
空間を認識する - 取り込みから表示まで -聡 大久保
 
Photon Fusionのはじめの一歩
Photon Fusionのはじめの一歩Photon Fusionのはじめの一歩
Photon Fusionのはじめの一歩聡 大久保
 
Hololens2 MRTK2.7(OpenXR) でのビルド環境構築(環境設定からビルドまで)
Hololens2 MRTK2.7(OpenXR) でのビルド環境構築(環境設定からビルドまで)Hololens2 MRTK2.7(OpenXR) でのビルド環境構築(環境設定からビルドまで)
Hololens2 MRTK2.7(OpenXR) でのビルド環境構築(環境設定からビルドまで)聡 大久保
 
Hololens2でアカウント情報の取得
Hololens2でアカウント情報の取得Hololens2でアカウント情報の取得
Hololens2でアカウント情報の取得聡 大久保
 
HoloLens2とPCで、WebRTCで映像をやりとり
HoloLens2とPCで、WebRTCで映像をやりとりHoloLens2とPCで、WebRTCで映像をやりとり
HoloLens2とPCで、WebRTCで映像をやりとり聡 大久保
 
UnityでVRアプリ(Android Cardboard)を作る -準備編-
UnityでVRアプリ(Android Cardboard)を作る -準備編-UnityでVRアプリ(Android Cardboard)を作る -準備編-
UnityでVRアプリ(Android Cardboard)を作る -準備編-聡 大久保
 
VRでのUI設計のヒント
VRでのUI設計のヒントVRでのUI設計のヒント
VRでのUI設計のヒント聡 大久保
 
ハードサーフェイスモデリング勉強会(Blender2.79b編)
ハードサーフェイスモデリング勉強会(Blender2.79b編)ハードサーフェイスモデリング勉強会(Blender2.79b編)
ハードサーフェイスモデリング勉強会(Blender2.79b編)聡 大久保
 
Google Tangoで 現実世界を感じてみよう
Google Tangoで現実世界を感じてみようGoogle Tangoで現実世界を感じてみよう
Google Tangoで 現実世界を感じてみよう聡 大久保
 
仮想マシンを仮想空間で見る Cloud roadshow
仮想マシンを仮想空間で見る Cloud roadshow仮想マシンを仮想空間で見る Cloud roadshow
仮想マシンを仮想空間で見る Cloud roadshow聡 大久保
 
AWSのEC2の複数インスタンスからファイルを共有する方法
AWSのEC2の複数インスタンスからファイルを共有する方法AWSのEC2の複数インスタンスからファイルを共有する方法
AWSのEC2の複数インスタンスからファイルを共有する方法聡 大久保
 
Awsで構築したのだよ 01 ユーザのコンソール操作をログに残す
Awsで構築したのだよ 01 ユーザのコンソール操作をログに残すAwsで構築したのだよ 01 ユーザのコンソール操作をログに残す
Awsで構築したのだよ 01 ユーザのコンソール操作をログに残す聡 大久保
 
iOSで開発をはじめる前に
iOSで開発をはじめる前にiOSで開発をはじめる前に
iOSで開発をはじめる前に聡 大久保
 
iOSハンズオントレーニング通信(NSURLConnection/NSURLSession)編
iOSハンズオントレーニング通信(NSURLConnection/NSURLSession)編iOSハンズオントレーニング通信(NSURLConnection/NSURLSession)編
iOSハンズオントレーニング通信(NSURLConnection/NSURLSession)編聡 大久保
 
iOSハンズオントレーニング データの永続化編(SQLite3, NSUserDefaults)
iOSハンズオントレーニング データの永続化編(SQLite3, NSUserDefaults)iOSハンズオントレーニング データの永続化編(SQLite3, NSUserDefaults)
iOSハンズオントレーニング データの永続化編(SQLite3, NSUserDefaults)聡 大久保
 
iOSハンズオントレーニング Uikit編
iOSハンズオントレーニング Uikit編iOSハンズオントレーニング Uikit編
iOSハンズオントレーニング Uikit編聡 大久保
 
iOSハンズオントレーニング observer編 (delegate,notification,KVO)
iOSハンズオントレーニング observer編 (delegate,notification,KVO)iOSハンズオントレーニング observer編 (delegate,notification,KVO)
iOSハンズオントレーニング observer編 (delegate,notification,KVO)聡 大久保
 

More from 聡 大久保 (19)

Oculus Interaction SDK で物をつかむ編
Oculus Interaction SDK で物をつかむ編Oculus Interaction SDK で物をつかむ編
Oculus Interaction SDK で物をつかむ編
 
Oculus Interaction SDK でグラブまわりの設定方法
Oculus Interaction SDK でグラブまわりの設定方法Oculus Interaction SDK でグラブまわりの設定方法
Oculus Interaction SDK でグラブまわりの設定方法
 
空間を認識する - 取り込みから表示まで -
空間を認識する - 取り込みから表示まで -空間を認識する - 取り込みから表示まで -
空間を認識する - 取り込みから表示まで -
 
Photon Fusionのはじめの一歩
Photon Fusionのはじめの一歩Photon Fusionのはじめの一歩
Photon Fusionのはじめの一歩
 
Hololens2 MRTK2.7(OpenXR) でのビルド環境構築(環境設定からビルドまで)
Hololens2 MRTK2.7(OpenXR) でのビルド環境構築(環境設定からビルドまで)Hololens2 MRTK2.7(OpenXR) でのビルド環境構築(環境設定からビルドまで)
Hololens2 MRTK2.7(OpenXR) でのビルド環境構築(環境設定からビルドまで)
 
Hololens2でアカウント情報の取得
Hololens2でアカウント情報の取得Hololens2でアカウント情報の取得
Hololens2でアカウント情報の取得
 
HoloLens2とPCで、WebRTCで映像をやりとり
HoloLens2とPCで、WebRTCで映像をやりとりHoloLens2とPCで、WebRTCで映像をやりとり
HoloLens2とPCで、WebRTCで映像をやりとり
 
UnityでVRアプリ(Android Cardboard)を作る -準備編-
UnityでVRアプリ(Android Cardboard)を作る -準備編-UnityでVRアプリ(Android Cardboard)を作る -準備編-
UnityでVRアプリ(Android Cardboard)を作る -準備編-
 
VRでのUI設計のヒント
VRでのUI設計のヒントVRでのUI設計のヒント
VRでのUI設計のヒント
 
ハードサーフェイスモデリング勉強会(Blender2.79b編)
ハードサーフェイスモデリング勉強会(Blender2.79b編)ハードサーフェイスモデリング勉強会(Blender2.79b編)
ハードサーフェイスモデリング勉強会(Blender2.79b編)
 
Google Tangoで 現実世界を感じてみよう
Google Tangoで現実世界を感じてみようGoogle Tangoで現実世界を感じてみよう
Google Tangoで 現実世界を感じてみよう
 
仮想マシンを仮想空間で見る Cloud roadshow
仮想マシンを仮想空間で見る Cloud roadshow仮想マシンを仮想空間で見る Cloud roadshow
仮想マシンを仮想空間で見る Cloud roadshow
 
AWSのEC2の複数インスタンスからファイルを共有する方法
AWSのEC2の複数インスタンスからファイルを共有する方法AWSのEC2の複数インスタンスからファイルを共有する方法
AWSのEC2の複数インスタンスからファイルを共有する方法
 
Awsで構築したのだよ 01 ユーザのコンソール操作をログに残す
Awsで構築したのだよ 01 ユーザのコンソール操作をログに残すAwsで構築したのだよ 01 ユーザのコンソール操作をログに残す
Awsで構築したのだよ 01 ユーザのコンソール操作をログに残す
 
iOSで開発をはじめる前に
iOSで開発をはじめる前にiOSで開発をはじめる前に
iOSで開発をはじめる前に
 
iOSハンズオントレーニング通信(NSURLConnection/NSURLSession)編
iOSハンズオントレーニング通信(NSURLConnection/NSURLSession)編iOSハンズオントレーニング通信(NSURLConnection/NSURLSession)編
iOSハンズオントレーニング通信(NSURLConnection/NSURLSession)編
 
iOSハンズオントレーニング データの永続化編(SQLite3, NSUserDefaults)
iOSハンズオントレーニング データの永続化編(SQLite3, NSUserDefaults)iOSハンズオントレーニング データの永続化編(SQLite3, NSUserDefaults)
iOSハンズオントレーニング データの永続化編(SQLite3, NSUserDefaults)
 
iOSハンズオントレーニング Uikit編
iOSハンズオントレーニング Uikit編iOSハンズオントレーニング Uikit編
iOSハンズオントレーニング Uikit編
 
iOSハンズオントレーニング observer編 (delegate,notification,KVO)
iOSハンズオントレーニング observer編 (delegate,notification,KVO)iOSハンズオントレーニング observer編 (delegate,notification,KVO)
iOSハンズオントレーニング observer編 (delegate,notification,KVO)
 

Recently uploaded

【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 

Recently uploaded (9)

【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 

AWSを学ぶ上で必要となる前提知識(SSL)

  • 1. AWSを学ぶ上で必要となる 前提知識 - インフラ基礎知識(SSL) -
  • 2. SSL概要  TCP/IPでデータを暗号化して送受信するプロトコルの 一つ。  データを送受信する一対の機器間で通信を暗号化し、 他の機器による成りすましやデータの盗み見、改竄な どを防ぐことができる。  公開鍵証明書による通信相手の認証と、共通鍵暗号に よる通信の暗号化、ハッシュ関数による改竄検知など の機能を提供する。
  • 3. 公開鍵暗号方式  秘密鍵と公開鍵をペアで作成  公開鍵の方は相手に渡し、秘密鍵は自分で保管  一方の鍵で暗号化したものは、もう一方の鍵でし か復号できない こんにち は こんにち は (2$GFgkxd 暗号化復号化 sdf&fd45% 元気? 元気? 復号化暗号化
  • 4. SSLの利用例  HTTP通信を安全に行いたい! →HTTPS  接続するクライアントを限定したい! →クライアント証明書
  • 6. HTTPSとは  HTTPS(Hypertext Transfer Protocol Secure) は、メッ セージを平文のままで送受信する標準のHTTPと異 なり、SSLプロトコルの上でHTTP通信を行う。  サーバの認証・通信内容の暗号化・改竄検出など によりなりすましや盗聴などの攻撃を防ぐことが できる。  HTTPSでは、標準のポート番号として443が使われ る。
  • 7. 鍵と証明書の作成 ①opensslでサーバー秘密鍵を作成 ┌───────┐ │サーバー秘密鍵│ └───────┘ ↓②opensslで公開鍵を作成 ┌───────┐ │サーバー公開鍵│ └───────┘ ↓③公開鍵をCA(認証局)に渡す ┌─┬───────┐ │証│サーバー公開鍵│──┐④認証局で、認証局のCA秘密鍵で暗号化 │明├───────┤ │ された署名を追加。これが証明書 │書│ 署名│←─┘ └─┴───────┘ ↓ ⑤証明書がCA(認証局)から返される。 ⑥サーバに証明書を設定
  • 8. 証明書とは 証明書作成時②CA秘密鍵で暗号化 ┌─┬───────┐ │証│サーバー公開鍵│──→①ハッシュ値算出1001 → %3fg44g# │明├───────┤ │ │書│ 署名│←────────────────┘③署名として埋め込み └─┴───────┘ 証明書検証時 ┌─┬───────┐ │証│サーバー公開鍵│──→①ハッシュ値算出1001 ──────┐ │明├───────┤ │ │書│ 署名│──→②署名%3fg44g# ─→ 1001 ────┴→④比較 └─┴───────┘ ③CA公開鍵で復号化
  • 9. 通信の流れ サーバー秘密鍵発行済み証明書の一覧 サーバー証明書CA公開鍵、CA秘密鍵 ┌───────┐ ┌───────┐ ┌───────┐ │クライアント│ │ サーバー│ │ CA(認証局) │ └───┬───┘ └───┬───┘ └───┬───┘ │ ①https request │ │ ├──────────→│ │ │←──────────│ │ │ ②証明書送信│ │ │ │ ③CA公開鍵要求│ │───────────┼──────────→│ │←──────────┼───────────┤ │ │ ④認証局のCA公開鍵│ ⑤証明書の署名を│ │ 認証局のCA公開鍵で│ │ 復号し署名の妥当性│ │ を確認│ │ │ │ │ ⑥乱数を生成│ │ 乱数より共通鍵生成│ │ │ │ │ ⑦乱数をサーバーの│ │ 公開鍵で暗号化│ │ │ │ │ │⑧暗号化された共通鍵│ │ │ を送信│ │ ├──────────→│ │ │ │ │ │ ⑨乱数を│ │ │ サーバの秘密鍵で復号│ │ │ │ │ ⑩乱数より共通鍵作成│ │ │ │ │ ⑪共通鍵を使って│ │ │ 暗号化通信│ │ │←─────────→│ │
  • 11. クライアント認証とは  サーバにアクセスする際にクライアント証明書を提 示することで身元を証明・確認することができる。  身元を確認したクライアントのみに、通信を許可す ることで特定の端末のみからのアクセス制御を行う ことができる。
  • 12. 鍵と証明書の作成 ①opensslでCL(クライアント)秘密鍵を作成 ┌────┐ │CL秘密鍵│ └────┘ ↓②opensslで公開鍵を作成 ┌────┐ │CL公開鍵│ └────┘ ↓③公開鍵をCA(認証局)に渡す ┌─┬────┐ │証│CL公開鍵│──┐④認証局で、認証局のCA秘密鍵で暗号化された │明├────┤ │ 署名を追加。これが証明書 │書│署名│←─┘ └─┴────┘ ↓ ⑤証明書がCA(認証局)から返される。 ⑥クライアントに証明書と、CL秘密鍵を設定
  • 13. 通信の流れ CL秘密鍵発行済み証明書の一覧 クライアント証明書CA公開鍵、CA秘密鍵 ┌───────┐ ┌───────┐ ┌───────┐ │クライアント│ │ サーバー│ │ CA(認証局) │ └───┬───┘ └───┬───┘ └───┬───┘ │ ①request │ │ ├──────────→│ │ │←──────────┤ │ │ ②証明書要求│ │ ├──────────→│ ④CA公開鍵要求│ │ ③証明書送信├──────────→│ │ │←──────────┤ │ │ ⑤認証局のCA公開鍵│ │ │ │ │ ⑥証明書の署名を│ │ 認証局のCA公開鍵で│ │ 復号し署名の妥当性│ │ を確認│ │ │ │ │ ⑦乱数を生成│ │ 乱数より共通鍵生成│ │ │ │ │ ⑧乱数をクライアントの│ │ CL公開鍵で暗号化│ │ │ │ │⑨暗号化された乱数│ │ │ を送信│ │ │←──────────┤ │ │ │ │ ⑩乱数をクライアントの│ │ CL秘密鍵で復号│ │ │ │ │ ⑪乱数より共通鍵作成│ │ │ ⑫共通鍵を使って│ │ │ 暗号化通信│ │ │←─────────→│ │