๐ 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 ํต์ ์ ์์ํฉ๋๋ค. ๊ณต์ ํด๋๋ฆฐ ๊ฒ์๋ฌผ์ ์์ ๊ด๋ จ๋์ด ์ข๋ ์์ธํ ๋ด์ฉ๋ค์ด ์ ๋ฆฌ๋์ด์์ผ๋ ๊ด์ฌ์์ผ์ ๋ถ๋ค๊ป์๋ ํ๋ฒ์ฉ ์ฝ์ด๋ณด์๋ฉด ์ข๊ฒ ์ต๋๋ค.