Community

๐ŸŒ HTTPS ์˜ ์ž‘๋™ ์›๋ฆฌ

์˜ค๋Š˜๋‚  ์šฐ๋ฆฌ๋Š” ์ธํ„ฐ๋„ท์ด๋ผ๋Š” ๊ธฐ์ˆ ์„ ํ†ตํ•ด ๋น ๋ฅด๊ณ  ํŽธ๋ฆฌํ•˜๊ฒŒ ๋‹ค์–‘ํ•œ ์ •๋ณด๋ฅผ ์ฃผ๊ณ  ๋ฐ›์œผ๋ฉฐ ์‚ด๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ์ •๋ณด๋ฅผ ์ฃผ๊ณ  ๋ฐ›์„ ๋•Œ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ์ˆ  ์ค‘ ํ•˜๋‚˜๊ฐ€ HTTP ๋ผ๋Š” ํ†ต์‹  ํ”„๋กœํ† ์ฝœ์ธ๋ฐ์š”, ์ด ํ†ต์‹  ํ”„๋กœํ† ์ฝœ์—๋Š” ํ•œ๊ฐ€์ง€ ๋‹จ์ ์ด ์žˆ์—ˆ์œผ๋‹ˆ ๊ทธ๊ฑด ๋ฐ”๋กœ ์ค‘๊ฐ„์—์„œ ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ํ†ต์‹ ํ•˜๊ณ  ์žˆ๋Š” ๋‚ด์šฉ์„ ์—ฟ๋ณผ ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒ๋‹ˆ๋‹ค. ๋งŒ์•ฝ ๋‚ด๊ฐ€ ๋„ค์ด๋ฒ„์— ๋กœ๊ทธ์ธํ•  ๋•Œ ์‚ฌ์šฉํ•œ ์•„์ด๋””๋‚˜ ๋น„๋ฐ€๋ฒˆํ˜ธ ํ˜น์€ ๋‚ด๊ฐ€ ์€ํ–‰ ์–ดํ”Œ์„ ํ†ตํ•ด ์‚ฌ์šฉํ•œ ๊ณ„์ขŒ๋‚˜ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ์•Œ ์ˆ˜ ์žˆ๋‹ค๋ฉด ์–ด๋–ป๊ฒŒ ๋ ๊นŒ์š”? ์•„๋งˆ ์‚ฌ๋žŒ๋“ค์€ ์ ˆ๋Œ€ ์ธํ„ฐ๋„ท ํ˜น์€ HTTP ํ†ต์‹ ์„ ์‚ฌ์šฉํ•˜๋Š” ์„œ๋น„์Šค๋ฅผ ์“ฐ์ง€ ์•Š์„ ๊ฒ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ด๋Ÿฌํ•œ ์‚ฌํƒœ๋ฅผ ๋ง‰๊ณ  HTTP ํ†ต์‹ ์‹œ ์ฃผ๊ณ ๋ฐ›๋Š” ์ •๋ณด๋ฅผ ๋ณดํ˜ธํ•˜๊ธฐ ์œ„ํ•ด ๋งŒ๋“ค์–ด์ง„๊ฒŒ ๋ฐ”๋กœ HTTPS(HTTP Secure) ์ž…๋‹ˆ๋‹ค. HTTPS ์˜ ๋™์ž‘์€ ๊ณผ๊ฑฐ ์ „์Ÿ ์˜ํ™”์—์„œ ์ž์ฃผ ๋‚˜์˜ค๋Š” ์•”ํ˜ธ๋กœ ๋œ ํ†ต์‹ ๊ณผ ์œ ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ์„œ๋ฒ„๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ „๋‹ฌํ•  ๋•Œ ์ด๋ฅผ ํ‰๋ฌธ์ด ์•„๋‹Œ ํŠน์ • ๊ทœ์น™์œผ๋กœ ์•”ํ˜ธํ™”ํ•˜์—ฌ ์ „๋‹ฌํ•˜๊ณ  ์ด๋ฅผ ๋ฐ›์€ ์„œ๋ฒ„๋Š” ๋‹ค์‹œ ๋ณตํ˜ธํ™” ํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ์–ด๋“ค์ด๋Š” ๊ฒƒ์ด์ฃ . ์ด๋ฅผ ํ†ตํ•ด ํ˜น์—ฌ ํ•ด์ปค๊ฐ€ ํ†ต์‹  ๊ณผ์ •์—์„œ ์ •๋ณด๋ฅผ ํƒˆ์ทจํ•˜๋”๋ผ๋„ ํ•ด๋‹น ์ •๋ณด๊ฐ€ ์ •ํ™•ํžˆ ์–ด๋–ค๊ฑธ ์˜๋ฏธํ•˜๋Š”์ง€ ์•Œ๊ธฐ ํž˜๋“ค๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„๊ฐ„์˜ ์•”/๋ณตํ˜ธํ™”๊ฐ€ ๊ฐ€๋Šฅํ•˜๋„๋ก ํ•˜๊ธฐ์œ„ํ•ด์„œ๋Š” ์„œ๋กœ์˜ ์‹ ๋ถ„์„ ํ™•์ธํ•˜๊ณ  ์–ด๋–ค ์•”ํ˜ธํ™”๋ฅผ ์ˆ˜ํ–‰ํ• ์ง€ ๋“ฑ์„ ํ™•์ธํ•˜๋Š” ๊ณผ์ •์ด ํ•„์š”ํ•œ๋ฐ์š” ์ด๋ฅผ SSL ํ•ธ๋“œ์‰์ดํฌ๋ผ๊ณ  ๋ถˆ๋ฆฝ๋‹ˆ๋‹ค. SSL ํ•ธ๋“œ์‰์ดํฌ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ˆœ์„œ๋กœ ์ง„ํ–‰์ด ๋ฉ๋‹ˆ๋‹ค. 1๏ธโƒฃ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์›น ์„œ๋ฒ„์— ์ ‘์†ํ•ฉ๋‹ˆ๋‹ค.(Client Hello) ์ด๋•Œ ํด๋ผ์ด์–ธํŠธ๋Š” ํด๋ผ์ด์–ธํŠธ์—์„œ ์‚ฌ์šฉํ•˜๋Š” SSL/TLS ๋ฒ„์ „ ๋ฐ ์ง€์›ํ•˜๋Š” ์•”ํ˜ธํ™” ๋ฐฉ์‹, ์ž„์˜์˜ ๋‚œ์ˆ˜ ๋“ฑ์„ ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค. 2๏ธโƒฃ ์„œ๋ฒ„๊ฐ€ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์‘๋‹ต ๋ฐ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.(Server Hello) ์ด๋•Œ ์„œ๋ฒ„๋Š” ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ „๋‹ฌํ•œ ์•”ํ˜ธํ™” ๋ฐฉ์‹ ์ค‘ ์„œ๋ฒ„๊ฐ€ ์ง€์›ํ•˜๋Š” ์•”ํ˜ธํ™” ๋ฐฉ์‹ ๋ฐ SSL ์ธ์ฆ์„œ, ์ž„์˜์˜ ๋‚œ์ˆ˜ ๋“ฑ์„ ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค. 3๏ธโƒฃ ํด๋ผ์ด์–ธํŠธ๋Š” ์‘๋‹ต์„ ์ค€ ์„œ๋ฒ„๊ฐ€ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š”์ง€๋ฅผ SSL ์ธ์ฆ์„œ๋กœ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ํ˜น์‹œ๋‚˜ ์›น ๋ธŒ๋ผ์šฐ์ €๋กœ ์ธํ„ฐ๋„ท์„ ์“ฐ์‹œ๋‹ค๊ฐ€ ์‹ ๋ขฐํ•  ์ˆ˜ ์—†๋Š” ์‚ฌ์ดํŠธ๋ผ๋Š” ํ™”๋ฉด์„ ๋ณด์‹ ์ ์ด ์žˆ๋‹ค๋ฉด ์ด ๊ณผ์ •์—์„œ ์ธ์ฆ์„œ์— ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ๋‚˜ํƒ€๋‚˜๋Š” ๊ฒƒ์ด๋ผ๊ณ  ์ดํ•ดํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค. 4๏ธโƒฃ ํด๋ผ์ด์–ธํŠธ๋Š” ์ž์‹ ์ด ์ƒ์„ฑํ•œ ๋‚œ์ˆ˜์™€ ์„œ๋ฒ„์˜ ๋‚œ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ premaster secret ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค. 5๏ธโƒฃ ์„œ๋ฒ„๋Š” ์‚ฌ์ดํŠธ์˜ ๋น„๋ฐ€ํ‚ค๋กœ, ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๋ณด๋‚ธ premaster secret ๊ฐ’์„ ๋ณตํ˜ธํ™” ํ•ฉ๋‹ˆ๋‹ค. 6๏ธโƒฃ ์„œ๋ฒ„์™€ ํด๋ผ์ด์–ธํŠธ ๋ชจ๋‘ SSL ํ•ธ๋“œ์‰์ดํฌ๋ฅผ ์ข…๋ฃŒํ•˜๊ณ  HTTPS ํ†ต์‹ ์„ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ๊ณต์œ ํ•ด๋“œ๋ฆฐ ๊ฒŒ์‹œ๋ฌผ์— ์œ„์™€ ๊ด€๋ จ๋˜์–ด ์ข€๋” ์ž์„ธํ•œ ๋‚ด์šฉ๋“ค์ด ์ •๋ฆฌ๋˜์–ด์žˆ์œผ๋‹ˆ ๊ด€์‹ฌ์žˆ์œผ์‹  ๋ถ„๋“ค๊ป˜์„œ๋Š” ํ•œ๋ฒˆ์”ฉ ์ฝ์–ด๋ณด์‹œ๋ฉด ์ข‹๊ฒ ์Šต๋‹ˆ๋‹ค.

์•Œ๋ฆผ

์•Œ๋ฆผ์ด ์—†์Šต๋‹ˆ๋‹ค