Skip to content

Latest commit

ย 

History

History
59 lines (32 loc) ยท 2.67 KB

File metadata and controls

59 lines (32 loc) ยท 2.67 KB

TLS/SSL HandShake


HTTPS์—์„œ ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„๊ฐ„ ํ†ต์‹  ์ „
SSL ์ธ์ฆ์„œ๋กœ ์‹ ๋ขฐ์„ฑ ์—ฌ๋ถ€๋ฅผ ํŒ๋‹จํ•˜๊ธฐ ์œ„ํ•ด ์—ฐ๊ฒฐํ•˜๋Š” ๋ฐฉ์‹

image


์ง„ํ–‰ ์ˆœ์„œ

  1. ํด๋ผ์ด์–ธํŠธ๋Š” ์„œ๋ฒ„์—๊ฒŒ client hello ๋ฉ”์‹œ์ง€๋ฅผ ๋‹ด์•„ ์„œ๋ฒ„๋กœ ๋ณด๋‚ธ๋‹ค. ์ด๋•Œ ์•”ํ˜ธํ™”๋œ ์ •๋ณด๋ฅผ ํ•จ๊ป˜ ๋‹ด๋Š”๋ฐ, ๋ฒ„์ „, ์•”ํ˜ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜, ์••์ถ• ๋ฐฉ์‹ ๋“ฑ์„ ๋‹ด๋Š”๋‹ค.


  2. ์„œ๋ฒ„๋Š” ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๋ณด๋‚ธ ์•”ํ˜ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ์••์ถ• ๋ฐฉ์‹์„ ๋ฐ›๊ณ , ์„ธ์…˜ ID์™€ CA ๊ณต๊ฐœ ์ธ์ฆ์„œ๋ฅผ server hello ๋ฉ”์‹œ์ง€์™€ ํ•จ๊ป˜ ๋‹ด์•„ ์‘๋‹ตํ•œ๋‹ค. ์ด CA ์ธ์ฆ์„œ์—๋Š” ์•ž์œผ๋กœ ํ†ต์‹  ์ดํ›„ ์‚ฌ์šฉํ•  ๋Œ€์นญํ‚ค๊ฐ€ ์ƒ์„ฑ๋˜๊ธฐ ์ „, ํด๋ผ์ด์–ธํŠธ์—์„œ handshake ๊ณผ์ • ์† ์•”ํ˜ธํ™”์— ์‚ฌ์šฉํ•  ๊ณต๊ฐœํ‚ค๋ฅผ ๋‹ด๊ณ  ์žˆ๋‹ค.


  3. ํด๋ผ์ด์–ธํŠธ ์ธก์€ ์„œ๋ฒ„์—์„œ ๋ณด๋‚ธ CA ์ธ์ฆ์„œ์— ๋Œ€ํ•ด ์œ ํšจํ•œ ์ง€ CA ๋ชฉ๋ก์—์„œ ํ™•์ธํ•˜๋Š” ๊ณผ์ •์„ ์ง„ํ–‰ํ•œ๋‹ค.


  4. CA ์ธ์ฆ์„œ์— ๋Œ€ํ•œ ์‹ ๋ขฐ์„ฑ์ด ํ™•๋ณด๋˜์—ˆ๋‹ค๋ฉด, ํด๋ผ์ด์–ธํŠธ๋Š” ๋‚œ์ˆ˜ ๋ฐ”์ดํŠธ๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ์„œ๋ฒ„์˜ ๊ณต๊ฐœํ‚ค๋กœ ์•”ํ˜ธํ™”ํ•œ๋‹ค. ์ด ๋‚œ์ˆ˜ ๋ฐ”์ดํŠธ๋Š” ๋Œ€์นญํ‚ค๋ฅผ ์ •ํ•˜๋Š”๋ฐ ์‚ฌ์šฉ์ด ๋˜๊ณ , ์•ž์œผ๋กœ ์„œ๋กœ ๋ฉ”์‹œ์ง€๋ฅผ ํ†ต์‹ ํ•  ๋•Œ ์•”ํ˜ธํ™”ํ•˜๋Š”๋ฐ ์‚ฌ์šฉ๋œ๋‹ค.


  5. ๋งŒ์•ฝ 2๋ฒˆ ๋‹จ๊ณ„์—์„œ ์„œ๋ฒ„๊ฐ€ ํด๋ผ์ด์–ธํŠธ ์ธ์ฆ์„œ๋ฅผ ํ•จ๊ป˜ ์š”๊ตฌํ–ˆ๋‹ค๋ฉด, ํด๋ผ์ด์–ธํŠธ์˜ ์ธ์ฆ์„œ์™€ ํด๋ผ์ด์–ธํŠธ์˜ ๊ฐœ์ธํ‚ค๋กœ ์•”ํ˜ธํ™”๋œ ์ž„์˜์˜ ๋ฐ”์ดํŠธ ๋ฌธ์ž์—ด์„ ํ•จ๊ป˜ ๋ณด๋‚ด์ค€๋‹ค.


  6. ์„œ๋ฒ„๋Š” ํด๋ผ์ด์–ธํŠธ์˜ ์ธ์ฆ์„œ๋ฅผ ํ™•์ธ ํ›„, ๋‚œ์ˆ˜ ๋ฐ”์ดํŠธ๋ฅผ ์ž์‹ ์˜ ๊ฐœ์ธํ‚ค๋กœ ๋ณตํ˜ธํ™” ํ›„ ๋Œ€์นญ ๋งˆ์Šคํ„ฐ ํ‚ค ์ƒ์„ฑ์— ํ™œ์šฉํ•œ๋‹ค.


  7. ํด๋ผ์ด์–ธํŠธ๋Š” handshake ๊ณผ์ •์ด ์™„๋ฃŒ๋˜์—ˆ๋‹ค๋Š” finished ๋ฉ”์‹œ์ง€๋ฅผ ์„œ๋ฒ„์— ๋ณด๋‚ด๋ฉด์„œ, ์ง€๊ธˆ๊นŒ์ง€ ๋ณด๋‚ธ ๊ตํ™˜ ๋‚ด์—ญ๋“ค์„ ํ•ด์‹ฑ ํ›„ ๊ทธ ๊ฐ’์„ ๋Œ€์นญํ‚ค๋กœ ์•”ํ˜ธํ™”ํ•˜์—ฌ ๊ฐ™์ด ๋‹ด์•„ ๋ณด๋‚ด์ค€๋‹ค.


  8. ์„œ๋ฒ„๋„ ๋™์ผํ•˜๊ฒŒ ๊ตํ™˜ ๋‚ด์šฉ๋“ค์„ ํ•ด์‹ฑํ•œ ๋’ค ํด๋ผ์ด์–ธํŠธ์—์„œ ๋ณด๋‚ด์ค€ ๊ฐ’๊ณผ ์ผ์น˜ํ•˜๋Š” ์ง€ ํ™•์ธํ•œ๋‹ค. ์ผ์น˜ํ•˜๋ฉด ์„œ๋ฒ„๋„ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ finished ๋ฉ”์‹œ์ง€๋ฅผ ์ด๋ฒˆ์— ๋งŒ๋“  ๋Œ€์นญํ‚ค๋กœ ์•”ํ˜ธํ™”ํ•˜์—ฌ ๋ณด๋‚ธ๋‹ค.


  9. ํด๋ผ์ด์–ธํŠธ๋Š” ํ•ด๋‹น ๋ฉ”์‹œ์ง€๋ฅผ ๋Œ€์นญํ‚ค๋กœ ๋ณตํ˜ธํ™”ํ•˜์—ฌ ์„œ๋กœ ํ†ต์‹ ์ด ๊ฐ€๋Šฅํ•œ ์‹ ๋ขฐ๋ฐ›์€ ์‚ฌ์šฉ์ž๋ž€ ๊ฑธ ์ธ์ง€ํ•˜๊ณ , ์•ž์œผ๋กœ ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„๋Š” ํ•ด๋‹น ๋Œ€์นญํ‚ค๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ ๋ฐ›์„ ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค.



[์ฐธ๊ณ  ์ž๋ฃŒ]