Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
SSl と仲良くなるやり方
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
mickey
September 09, 2016
Technology
1
3.7k
SSl と仲良くなるやり方
mickey
September 09, 2016
Tweet
Share
More Decks by mickey
See All by mickey
超Redisマスターになる話
happysiro
0
110
BINDからの卒業
happysiro
1
2.5k
Other Decks in Technology
See All in Technology
AIが実装する時代、人間は仕様と検証を設計する
gotalab555
1
190
Cosmos World Foundation Model Platform for Physical AI
takmin
0
970
Claude_CodeでSEOを最適化する_AI_Ops_Community_Vol.2__マーケティングx_AIはここまで進化した.pdf
riku_423
2
610
こんなところでも(地味に)活躍するImage Modeさんを知ってるかい?- Image Mode for OpenShift -
tsukaman
1
170
Red Hat OpenStack Services on OpenShift
tamemiya
0
130
pool.ntp.orgに ⾃宅サーバーで 参加してみたら...
tanyorg
0
590
SREが向き合う大規模リアーキテクチャ 〜信頼性とアジリティの両立〜
zepprix
0
480
(技術的には)社内システムもOKなブラウザエージェントを作ってみた!
har1101
0
170
今こそ学びたいKubernetesネットワーク ~CNIが繋ぐNWとプラットフォームの「フラッと」な対話
logica0419
5
400
旅先で iPad + Neovim で iOS 開発・執筆した話
zozotech
PRO
0
100
広告の効果検証を題材にした因果推論の精度検証について
zozotech
PRO
0
210
Codex 5.3 と Opus 4.6 にコーポレートサイトを作らせてみた / Codex 5.3 vs Opus 4.6
ama_ch
0
200
Featured
See All Featured
Heart Work Chapter 1 - Part 1
lfama
PRO
5
35k
エンジニアに許された特別な時間の終わり
watany
106
230k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
34k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
440
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
240
The browser strikes back
jonoalderson
0
400
The Invisible Side of Design
smashingmag
302
51k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
470
Rails Girls Zürich Keynote
gr2m
96
14k
Transcript
ࡾπݡҰ(.01&1"#0JOD ϖύϘςοΫΧϯϑΝϨϯε 44-ͱྑ͘ͳΔΓํ
ΠϯϑϥΤϯδχΞ ࡾπݡҰ!NJDLFZ ٕज़෦Πϯϑϥάϧʔϓ
ΠϯϑϥΤϯδχΞ ࡾπݡҰ!NJDLFZ ٕज़෦Πϯϑϥάϧʔϓ
Χϥʔϛʔγϣοϓ
None
44-ͬͯͳΜͩΖ͏ʁ
None
44-Λར༻͢Δͱ
ใͷվ͟Μ
ใͷ౪Έݟ
Λ͙ࣄ͕Ͱ͖·͢
͜ΕΛͲ͏࣮ͬͯݱͨ͠ͷ͔ʁ
࣮ͷঢ়گ wαϒυϝΠϯͷৗ࣌44-Խ wATIPQQSPKQAυϝΠϯ ͨͱ͑ɼFYBNQMFTIPQ QSPKQ ͷৗ࣌44-ԽΛߦ͍·͢ wಠࣗυϝΠϯ FYBNQMFDPN ͷৗ࣌44-Խ wಠࣗυϝΠϯ
FYBNQMFDPN ͷৗ࣌44-Խ
શମͷߏ
ߏ Ҏલͷߏ ࠓͷߏ -PBE#BMBODFS "QQMJDBUJPO 4FSWFS "QQMJDBUJPO 4FSWFS -PBE#BMBODFS 3FWFSTF
1SPYZ 3FWFSTF 1SPYZ "QQMJDBUJPO 4FSWFS "QQMJDBUJPO 4FSWFS
-PBE#BMBODFS 3FWFSTF 1SPYZ 3FWFSTF 1SPYZ "QQMJDBUJPO 4FSWFS "QQMJDBUJPO 4FSWFS ಛ
-PBE#BMBODFS 3FWFSTF 1SPYZ 3FWFSTF 1SPYZ "QQMJDBUJPO 4FSWFS "QQMJDBUJPO 4FSWFS
1SPYZΛஔ͍ͨཧ༝ wେྔͷূ໌ॻΛཧͨ࣌͠ɼϝϞϦফඅྔ͕૿͑ͯ͠·͏ wେྔʹূ໌ॻΛಡΈࠐΉͷͰɼ̍ͭͷϓϩηε͋ͨΓ ͷϝϞϦফඅྔ͕૿͑·͢ ϓϩηε .BOBHFS ϓϩηε ϓϩηε
1SPYZΛஔ͍ͨཧ༝ w"QBDIFϦΫΤετ͝ͱʹɼϓϩηε͕૿͑·͢ wͳͷͰɼϓϩηε͕ଠ͍ͬͯΔͱશମͱͯ͠ϝϞϦফඅ ྔ͕૿͑·͢ ϓϩηε .BOBHFS ϓϩηε ϓϩηε
1SPYZΛஔ͍ͨཧ༝ wOHJOYͩͱɼ୯ҰͷϓϩηεͰϦΫΤετΛॲཧ͢Δํ ࣜͷͳͷͰɼϝϞϦফඅྔ͕૿͑·ͤΜ w·ͨɼࠓޙɼಠࣗυϝΠϯͷৗ࣌44-ରԠͰɼ OHY@NSVCZΛ༻͍ͨಈతͳূ໌ॻͷಡΈࠐΈΛߦ͍ͨ ͔͔ͬͨΒͰ͢
ͭͷΈ͕͋Γ·ͨ͠
ύϑΥʔϚϯε
ύϑΥʔϚϯεͷݒ೦ w1SPYZͷΦʔόʔϔου w1SPYZͱ"QQMJDBUJPOαʔόʔͷ௨৴͕༨ܭʹൃੜ͢Δࣄ ʹΑΔϨΠςϯγͷ૿Ճ w44-Խʹͱͳ͏Φʔόʔϔου w҉߸Խͱ෮߸ʹϦιʔεΛফඅ͢ΔࣄʹΑΔεϧʔϓοτͷ Լ w44-ͷηογϣϯͷཱ֬ʹΑΔϨΠςϯγͷ૿Ճ
ҰͭҰͭݕূ͍͖ͯ͠·ͨ͠
ݕূํ๏ wෛՙࢼݧΛ࣮ࢪ͠ɼεϧʔϓοτͱϨΠςϯγΛௐࠪ͠·ͨ͠ wෳͷαʔόʔ͔ΒෛՙΛ͔͚ΔͨΊɼ-0$645 IUUQ MPDVTUJP ͱ͍͏πʔϧΛ༻͍·ͨ͠
1SPYZʹΑΔΦʔόʔϔου w ݕূͨ݁͠Ռɼ΄ͱΜͲѱԽ ͠·ͤΜͰͨ͠ w 1SPYZͱ"QQMJDBUJPO4FSWFS ͕ಉ͡%$ʹ͔͋ͬͨΒͰ͢ -PBE#BMBODFS 3FWFSTF 1SPYZ
3FWFSTF 1SPYZ "QQMJDBUJPO 4FSWFS "QQMJDBUJPO 4FSWFS %BUB$FOUFS
҉߸Խ෮߸ԽʹΑΔΦʔόʔϔου wௐࠪͨ͠ͱ͜Ζɼ҉߸Խͱ෮߸Խʹ͙Β͍$16ར༻ ͕૿Ճ͢Δͱ͍͏͜ͱͰͨ͠ w࣮ࡍʹෛՙࢼݧΛͯ͠Έͨͱ͜Ζɼ1SPYZࣗମͷෛՙ͕େ ͖͘ͳΔ͜ͱ͋Γ·ͤΜͰͨ͠ IUUQTXXXJNQFSJBMWJPMFUPSHPWFSDMPDLJOHTTMIUNM
Γηογϣϯཱ֬ͷΦʔόʔϔου
ηογϣϯཱ֬ͷΦʔόʔϔου )551 44- )5514 GET / Client Server HTTP 3FTQPODF
Client Hello TLS/SSL Session Establish Client Server Server Hello Certificate Server Key Exchange Server Hello Done Client Key Exchange Change Cipher Spec Finished Change Cipher Spec Finished GET / HTTP 3FTQPODF
ͲͷΑ͏ʹղফͨ͠ͷ͔
4FTTJPO3FTVNQUJPO wҰཱ֬ͨ͠ηογϣϯΛ࠶ར༻͢ΔͨΊͷΈͰ͢ wҎԼͷछྨ͕͋Γ·͢ wαʔόʔଆͰηογϣϯใΛ֮͑Δํࣜ w4FTTJPO$BDIF wΫϥΠΞϯτଆͰηογϣϯใΛ֮͑Δํࣜ w4FTTJPO5JDLFU
4FTTJPO$BDIF w44-ͷηογϣϯͷཱ֬ʹඞཁͳใΛ$BDIF͢Δ ͷͰ͢ wෳͷαʔόʔΛར༻͢ΔͳΒɼԿΒ͔ͷํ๏Ͱ $BDIFΛڞ༗͢Δඞཁ͕͋Γ·͢ w/HJOYͰɼ͜ͷڞ༗ͷͨΊͷʹରԠ͍ͯ͠· ͤΜ
4FTTJPO5JDLFU w 4FSWFS͕อଘ͢ΔηογϣϯใΛ ҉߸Խͯ͠ɼΫϥΠΞϯτʹૹΓɼΫ ϥΠΞϯτ͕ηογϣϯΛΩϟογϡ ͢Δͱ͍͏ΈͰ͢ Client Hello TLS/SSL Session
Establish Client Server Server Hello Finished Finished New Session Ticket
4FTTJPO5JDLFU w࠶։͢Δ࣌ɼ w$MJFOU͕$MJFOU)FMMPͱͱ ʹ4FTTJPO5JDLFUΛ 4FSWFSʹૹΔ wͦͷޙɼෳ߹ͱݕূʹޭ͢ ΕηογϣϯΛ࠶։͢Δ Client Hello TLS/SSL
Session Establish Client Server Server Hello Change Cipher Spec Finished Change Cipher Spec Finished Session Ticket
4FTTJPO5JDLFULFZͷఆظతͳߋ৽ w4FTTJPO5JDLFULFZ͕࿙Ӯ͢Δͱɼ44-௨৴͕ղಡͰ͖ͯ͠· ͍·͢ w͜ͷͨΊɼ4FTTJPO5JDLFULFZɼఔͰߋ৽͢Δ͜ͱ͕ਪ ͞Ε͍ͯ·͢ wגࣜձࣾϝϧΧϦͷ$POTVMΛར༻ͨ͠ࣄྫΛࢀߟʹ̍ຖʹߋ ৽͍ͯ͠·͢ IUUQUFDINFSDBSJDPNFOUSZ
݁Ռ
ৗ࣌44-Խ͍ͯ͠ͳ͍αʔό ৗ࣌44-Խͨ͠αʔό ݱ࣮ͷύϑΥʔϚϯε w44-Խ͢ΔલͱಉͱϨΠςϯγʹͳΓ·ͨ͠
44-ͷධՁ w44-Λ҆શੑͳͲͰධՁͨ͠ͱ͜Ζɼ" Ͱͨ͠
·ͱΊ
·ͱΊ w44-ͱྑ͘͢Δʹ͍͔ͭ͘ͷίπ͕ඞ༻Ͱ͢ w͜ͷൃදͰɼେྔͷূ໌ॻΛѻ͏ͳΒɼOHJOYΛར༻ͨ͠΄͏͕ྑ͍͜ ͱ w·ͨɼOHY@NSVCZΛར༻͢Εɼಈతʹূ໌ॻΛಡΈࠐΊΔ͜ͱ wύϑΥʔϚϯεΛམͱ͞ͳ͍ͨΊʹ4FTTJPO5DJLFUΛར༻ͨ͠΄͏͕ྑ ͍ wʹ͍ͭͯհ͠·ͨ͠
ࠓޙ wಠࣗυϝΠϯʹ͓͚Δৗ࣌44-ͷఏڙʹ͚ɼ։ൃΛਐΊ ͍͖ͯ·͢ w·ͨɼͲ͔͜ͰɼಠࣗυϝΠϯͷ࣌ͷΛհͰ͖ͨΒͱ ࢥ͍·͢