ํด๋น ์ฅ์์๋ HTTP ํธ๋์ญ์ ์ ์์ ํ๊ฒ ๋ณดํธํ๋ ๋ณต์กํ๊ณ ์ ๊ทน์ ์ธ ๊ธฐ์ ์ ์ ์ํ๋ค.
HTTP๋ฅผ ์์ ํ๊ฒ ๋ง๋ค๊ธฐ
์ํ ๊ฑฐ๋๋ ๊ตฌ๋งค์ ๊ฐ์ด ํฐ ๋์ ํธ๋์ญ์ ์ด๋, ๋ณด์ ์ ์ค์ํ ์๋ฃ๋ค์ ์ ๊ทผ ๋ฑ์ ๋ํด์๋ ๊ธฐ์กด์ ๋ฐฉ์๋ณด๋ค ๋ ์์ ํ ๋ฐฉ์์ด ํ์ํ๋ค. ์ด์ HTTP์ ๋์งํธ ์ํธํ ๊ธฐ์ ์ ๊ฒฐํฉํ๋ค.
HTTP์ ๋ณด์ ๋ฒ์ ์
- ์๋ฒ ์ธ์ฆ : ์์กฐ๋ ์๋ฒ๊ฐ ์๋์ ์ ์ ์์
- ํด๋ผ์ด์ธํธ ์ธ์ฆ : ์ง์ง ์ฌ์ฉ์์์ ์ ์ ์์
- ๋ฌด๊ฒฐ์ฑ : ๋ฐ์ดํฐ ์์กฐ๋ก๋ถํฐ ์์
- ์ํธํ : ๋์ฒญ์ ๋ํ ๊ฑฑ์ ์์ด ๋ํ
- ํจ์จ : ์ ๋ ดํ๊ฒ ์ฌ์ฉํ ์ ์์ผ๋ฉด์๋ ์๊ณ ๋ฆฌ์ฆ์ ๋นจ๋ผ์ผ ํจ
- ํธ์ฌ์ฑ : ๋ชจ๋ ํด๋ผ์ด์ธํธ์ ์๋ฒ์์ ์ง์
- ๊ด๋ฆฌ์ ํ์ฅ์ฑ : ์ฆ๊ฐ์ ์ธ ๋ณด์ ํต์
- ์ ์์ฑ : ์ต์ ์ ๋ณด์ ๋ฐฉ๋ฒ ์ง์
- ์ฌํ์ ์์กด์ฑ : ์ฌํ ๋ฌธํ์ , ์ ์น์ ์๊ตฌ๋ฅผ ๋ง์กฑ ๊ณผ ๊ฐ์ ์กฐ๊ฑด๋ค์ ๋ชจ๋ ๋ง์กฑํด์ผ ํ๋ค.
๊ทธ๋ ๋ค๋ฉด ์ด๋ฌํ HTTP ๋ณด์ ๊ธฐ์ ์ ๋ฌด์์ด ์์๊น?
HTTPS
HTTPS๋ ๊ฐ์ฅ ๋์ค์ ์ธ ๋ฐฉ์์ด๋ค. HTTPS๋ ๋ชจ๋ ์์ฒญ๊ณผ ์๋ต ๋ฐ์ดํฐ์ ๋ํด ๋คํธ์ํฌ๋ก ๋ณด๋ด์ง๊ธฐ ์ ์ ์ํธํ๋๋ค. ์ด๋ HTTP์ ํ๋ถ์ ์ ์ก ๋ ๋ฒจ ์ํธ ๋ณด์ ๊ณ์ธต์ ์ ๊ณตํจ์ผ๋ก์จ ๋์ํ๋ค.
์ด๋ฌํ ๋ณด์ ๊ณ์ธต์ ์์ ์์ผ ๊ณ์ธต(Secure Sokcets Layer, SSL)๊ณผ ์ ์ก ๊ณ์ธต ๋ณด์(Transport Layer Security)๋ก ๊ตฌํ๋๋ค. ๋์ ๊ฑฐ์ ๋น์ทํ๋ฏ๋ก ๋ ๋ชจ๋๋ฅผ SSL์ด๋ผ๊ณ ์นญํ๊ธฐ๋ ํ๋ค.
์ธ์ฝ๋ฉ์ด๋ ๋์ฝ๋ฉ์ SSL ๋ผ์ด๋ธ๋ฌ๋ฆฌ์์ ์ผ์ด๋๊ธฐ ๋๋ฌธ์ ํด๋ผ์ด์ธํธ์ ์๋ฒ๋ TCP ์
๋ ฅ/์ถ๋ ฅ ํธ์ถ์ SSL ํธ์ถ๋ก ๋์ฒดํ๊ณ , ์ถ๊ฐ ์ค์ ๋ช ๊ฐ์ง ์ ๋๋ง ํ์ํ๋ค.
๋์งํธ ์ํธํ
๋์งํธ ์ํธ์ ๊ธฐ์ด์์ ๋จผ์ ์ ๋ฆฌํด์ผ ํ ์ฉ์ด๋ค์ด ์๋ค.
- ์ํธ : ํ ์คํธ๋ฅผ ์๋ฌด๋ ์ฝ์ง ๋ชปํ๋๋ก ์ธ์ฝ๋ฉํ๋ ์๊ณ ๋ฆฌ์ฆ
- ํค : ์ํธ์ ๋์์ ๋ณ๊ฒฝํ๋ ์ซ์๋ก ๋ ๋งค๊ฐ๋ณ์
- ๋์นญํค ์ํธ ์ฒด๊ณ : ์ธ์ฝ๋ฉ๊ณผ ๋์ฝ๋ฉ์ ๋ค๋ฅธ ํค๋ฅผ ์ฌ์ฉํ๋ ์๊ณ ๋ฆฌ์ฆ
- ๊ณต๊ฐํค ์ํธ๋ฒ : ๋น๋ฐ ๋ฉ์์ง๋ฅผ ์ ๋ฌํ๋ ์ปดํจํฐ๋ฅผ ์ฝ๊ฒ ๋ง๋ค ์ ์๋ ์์คํ
- ๋์งํธ ์๋ช : ๋ฉ์์ง๊ฐ ์์กฐ ํน์ ๋ณ์กฐ๋์ง ์์์์ ์ ์ฆํ๋ ์ฒดํฌ์ฌ
- ๋์งํธ ์ธ์ฆ์ : ์ ๋ขฐํ ๋งํ ์กฐ์ง์ ์ํด ์๋ช ๋๊ณ ๊ฒ์ฆ๋ ์ ์ ํ์ธ ์ ๋ณด
๋น๋ฐ ์ฝ๋์ ๊ธฐ์ ๊ณผ ๊ณผํ
์ํธ๋ฒ
์ํธ๋ฒ์ ์ํธ๋ผ ๋ถ๋ฆฌ๋ ๋น๋ฐ ์ฝ๋์ ๊ธฐ๋ฐํ์ฌ ๋ฉ์์ง๋ฅผ ์ธ์ฝ๋ฉํ๊ณ , ๋ฐ์ ๋ฉ์์ง๋ฅผ ๋์ฝ๋ฉ ํ๋ ๋ฐฉ๋ฒ์ด๋ค.
์ํธ๊ฐ ์ ์ฉ๋์ด ์ฝ๋ฉ๋ ๋ฉ์์ง๋ ๋ณดํต ์ํธ๋ฌธ์ด๋ผ๊ณ ๋ถ๋ฆฐ๋ค.
๋ํ์ ์ธ ์ํธ๋ก, ์จ๋ฆฌ์ฐ์ค ์นด์ด์ฌ๋ฅด ์ํธ๊ฐ ์๋๋ฐ, ์ํ๋ฒณ ์์์ ์ธ๋ฒ ๋ค์ ์ํ๋ฒณ์ผ๋ก ๊ต์ฒดํ๋ ๋ฐฉ์์ด๋ค. ์ด๋ฌํ ๋ฐฉ์์ ํตํด์ ์์ ๋ถํฐ ๋น๋ฐ ๋ฉ์์ง๋ฅผ ๋ง๋ค์ด ์๋ค.

์ํธ ๊ธฐ๊ณ
์ด๋ฌํ ์ํธ๋ ์๋ ์๋ ์์์ ์ด์๊ธฐ ๋๋ฌธ์ ๊ฐ๋จํ๊ณ ํ๋ฆด ์ํ์ด ๋์์ง๋ง, ๊ธฐ์ ์ด ์ง๋ณดํ๋ฉด์ ๊ธ์๋ค์ ๋จ์ ์ฎ๊ธฐ๋ ๊ฒ ๋ฟ๋ง์ด ์๋ ๊ธ์ ๋์ฒด, ํ์ , ์คํ๋ฆฌํ ๊ณผ ๊ฐ์ ๊ธฐ์ ์ ์ฌ์ฉํ ์ํธ ๊ธฐ๊ณ๋ฅผ ๋ง๋ค๊ธฐ๋ ํ๋ค.
ํค๊ฐ ์๋ ์ํธ
์ด๋ฌํ ๊ธฐ๊ณ์๋ ์ํธ์ ๋์ ๋ฐฉ์์ ๋ณ๊ฒฝํ ์ ์๋ ๋ค๋ฅธ ๊ฐ์ ์ค์ ํ ์ ์๋ ๋ค์ด์ผ์ด ๋ฌ๋ ค์์ด ๋ค๋ฅธ ์ฌ๋์ด ์ด๋ฅผ ์ฌ์ฉํ์ฌ ์ํธ๋ฅผ ํด๋ ํ๋ ๊ฒ์ ๋ฐฉ์งํ๋ค.
์์ ๊ฐ์ด ํด๋น ๊ฐ์ ์ํธ ๊ธฐ๊ณ๋ค์ ์๋ก ๋ค๋ฅธ ํค ๊ฐ์ ๊ฐ์ง๊ณ ์๊ธฐ ๋๋ฌธ์ ํค์ ๋ฐ๋ผ ์ ๊ฐ๊ฐ ๋ค๋ฅด๊ฒ ๋์ํ๊ณ ๊ฒฐ๊ด๊ฐ๋ ๋ค๋ฅด๋ค.
๋์งํธ ์ํธ(์ ๋น๋์นญ ์ํธํ)
๋์งํธ ๊ณ์ฐ์ด ๊ฐ๋ฅํด์ง๋ฉด์ ์ฌ๋ฌ ๋ณต์กํ ์๊ณ ๋ฆฌ์ฆ์ด ๊ฐ๋ฅํด์ง๊ณ , ๋งค์ฐ ํฐ ํค๋ฅผ ํตํด ๊ฐ์ ์ํธ ์๊ณ ๋ฆฌ์ฆ์ ๋ง๋ค์ด๋ด์ด ๋ณด์์ ๋์ฑ ๊ฐํ๋๋ค. ํ๋ฌธ์ ์ธ์ฝ๋ฉ ํค e๋ก ์ธ์ฝ๋ฉํ๊ณ , ๋์ฝ๋ฉ ํค d๋ก ๋์ฝ๋ฉํ๋ ๋ฐฉ์์ด๋ค.

์ด๋ฌํ ์ํธํ ๊ธฐ๋ฒ์ ์ฃผ๋ก ๋น๋์นญ ์ํธํ๋ก ๋ถ๋ฆฐ๋ค.
๋์นญํค ์ํธํ
๋ฐ๋๋ก ์ด์ ๊ณผ ์ดํ์ ๊ฐ์ ํค๋ฅผ ์ฌ์ฉํ๋ ๋์นญํค ์ํธํ ๋ฐฉ์๋ ์๋ค.
๋์นญํค ์ํธํ ๋ฐฉ์์ ๊ฒฝ์ฐ ๋น๋ฐ ํค K๋ฅผ ๋๊ฐ์ด ๊ณต์ ํ๊ณ , ๊ฐ์ ํค๋ก ์ธ์ฝ๋ฉ ๋ฐ ๋์ฝ๋ฉ์ ์งํํ๋ค.
์ ์๋ ค์ง ๋์นญํค ์ํธ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก DES, Triple-DES, RC2, RC4 ์๊ณ ๋ฆฌ์ฆ ๋ฑ์ด ์๋ค.
ํค ๊ธธ์ด์ ์ด๊ฑฐ ๊ณต๊ฒฉ(Enumertaion Attack)
์ด๋ฌํ ๋์นญํค ์ํธํ ๋ฐฉ์์์๋ ์ธ์ฝ๋ฉ๊ณผ ๋์ฝ๋ฉ ์๊ณ ๋ฆฌ์ฆ์ด ์๋ ค์ ธ ์๊ธฐ ๋๋ฌธ์ ๊ฒฐ๊ตญ ํค๊ฐ ์ ์ผ ์ค์ํ ๋น๋ฐ์ด๋ค.
์ข์ ์ํธ ์๊ณ ๋ฆฌ์ฆ์ ๊ฒฝ์ฐ ํด๋น ํค๋ฅผ ์๋ ค๋ฉด ์ฐ์ฃผ์ ์กด์ฌํ๋ ๋ชจ๋ ํค ๊ฐ์ ์๋ํด์ผ ํ๋ค. ์ด๋ ๊ฒ ๋ฌด์ฐจ๋ณ๋ก ๋ชจ๋ ํค๊ฐ์ ๋์
ํ๋ ๊ณต๊ฒฉ์ ์ด๊ฑฐ ๊ณต๊ฒฉ์ด๋ผ๊ณ ํ๋ค. ํค ๊ฐ์ด ์ ๋ค๋ฉด ๊ธ๋ฐฉ ํ๋ฆฌ์ง๋ง, ๊ฐ๋ฅํ ํค ๊ฐ์ด ์์ฃผ ๋ง์ผ๋ฉด ์ฃฝ์ ๋๊น์ง ํด๋ ๋ชปํ๋ค.
๊ฐ๋ฅํ ํค ๊ฐ์ ๊ฐ์๊ฐ์ ๊ฒฝ์ฐ, ์ ํจํ ํค์ ๊ฐ๋ฅํ ํค์ ๋นํธ ์๋ก ๊ฒฐ์ ์ด ๋๋ค. ๋นํธ๊ฐ ๋์ ์๋ก ๊ฒฝ์ฐ์ ์๋ ํ์์ด ๋์ด๋๊ณ 128๋นํธ์ ํค๊ฐ์ ๊ฒฝ์ฐ 2^128์ ํค๊ฐ์ด ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ ๋งค์ฐ ๊ฐ๋ ฅํ ์กฐ๊ฑด์ด๋ค. ์ด๋ ๊ณง ์ํธ์ ๊ธธ์ด๊ฐ ๋ณด์์ ๋์ฌ์ค๋ค๋ ์ด์ผ๊ธฐ๊ธฐ๋ ํ๋ค.
๊ณต์ ํค ๋ฐ๊ธํ๊ธฐ
๋์นญํค ์ํธ์ ๋จ์ ์ ๊ฐ์ธ๋ณ๋ก ๊ฐ๊ฐ์ ๊ฐ์ธ ํค๋ฅผ ๊ฐ์ ธ์ผ ํ๋ค๋ ์ ์ด๋ค. ๋ฐ์ก์์ ์์ ์๊ฐ ์๋ก ๋ํํ๋ ค๋ฉด ๋ ๋ค ๊ณต์ ํค๋ฅผ ๊ฐ์ ธ์ผ ํ๋ค. ๊ฐ๊ฐ์ ๋ํด ๋น๋ฐ ํค๋ฅผ ์์ฑํ ๋ค์์ ๋ ์ฌ์ฉ์ ์ฌ์ด์์ ๋๋ง์ด ๋ํ๊ฐ๋ฅํด์ผ ํ๊ธฐ ๋๋ฌธ์ ๋งค ์ฌ์ฉ์์ ์๋ง๋ค ์๋กญ๊ฒ ํค๋ฅผ ๋ฐ๊ธํด์ผ ํ๋ค. ๊ทธ๋ฆฌ๊ณ ๋ํ ์ฐธ์ฌ์์ ๊ฐ ์์ ๊ทธ๋ค๋ง์ ๊ฐ์ธํค ๋ํ ํ์ํ๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ํค์ ์๋ N^2 ๊ฐ๊ฐ ๋ ์ ๋ฐ์ ์์ผ๋ฉฐ, ์ด๋ ํค๊ฐ ์ ์ ๋์ด๋ ์๋ก ๊ด๋ฆฌํ๊ธฐ ํ๋ค์ด์ง๋ค๋ ๋ฌธ์ ์ ์ด ์๋ค.
๊ณต๊ฐํค ์ํธ๋ฒ
ํ ์์ ํธ์คํธ๊ฐ ํ๋์ ์ธ์ฝ๋ฉ/๋์ฝ๋ฉ ํค๋ฅผ ์ฌ์ฉํ๋ ๋์ , ๊ณต๊ฐํค ์ํธ ๋ฐฉ์์ ๋ ๊ฐ์ ๋น๋์นญ ํค๋ฅผ ์ฌ์ฉํ๋ค. ํ๋๋ ํธ์คํธ์ ๋ฉ์์ง๋ฅผ ์ธ์ฝ๋ฉํ๊ณ , ๋ค๋ฅธ ํ๋๋ก๋ ๊ทธ ํธ์คํธ์ ๋ฉ์์ง๋ฅผ ๋ณด๊ธฐ ์ํ ๋์ฝ๋ฉ์ ํ๊ธฐ ์ํด ์ฌ์ฉํ๋ค.
์ฌ๊ธฐ์ ์ธ์ฝ๋ฉ ํค์ ๊ฒฝ์ฐ ๊ณต๊ฐ๋์ด ์๊ธฐ์ ๊ณต๊ฐํค ์ํธํ ๋ฐฉ์์ด๋ผ๊ณ ํ์ง๋ง, ํธ์คํธ๋ง์ด ๊ฐ์ธ ๋์ฝ๋ฉ ํค๋ฅผ ์๊ณ ์๋ค.
์ด๋ฐ ๋ฐฉ์์ ์ฌ์ฉํ๋ฉด, ์ธ์ฝ๋ฉ์ ๊ฒฝ์ฐ์๋ ๋๊ตฌ๋ ์ฌ์ฉํ ์ ์๋ ์ธ์ฝ๋ฉ ํค๋ฅผ ์ฌ์ฉํ๋ ๋์ , ๋์ฝ๋ฉ ํค๋ฅผ ๊ฐ ์ฌ์ฉ์๋ง๋ค ๋ค๋ฅด๊ฒ ํ๋ฉด ๋๋ฏ๋ก N^2๊น์ง ํค์ ๊ฐ์๊ฐ ์ฆ๊ฐํ๋ ์ต์ ์ ์ํฉ์ ๋ฉดํ ์ ์๋ค.
RSA
๊ณต๊ฐํค ๋น๋์นญ ์ํธ์ ๊ฒฝ์ฐ, ๋น๋ฐ์ธ ๊ฐ์ธํค๋ฅผ ๊ณต๊ฐํค, ์ํธ๋ฌธ ์ผ๋ถ, ๋ฉ์์ง์ ์ํธํํ ์ํธ๋ฌธ ์ ์๊ณ ์๋๋ผ๋ ๊ณ์ฐํ ์ ์์์ ๋ณด์ฆํด์ผ ํ๋ค.
์ด๋ฌํ ์๊ตฌ๋ฅผ ๋ง์กฑํ๋ ๊ณต๊ฐํค ์ํธ ์ฒด๊ณ ์ค ํ๋๋ MIT์์ ๋ฐ๋ช ๋ RSA ์๊ณ ๋ฆฌ์ฆ์ด๋ค. ๊ฐ๋ฐ์ Ronย Rivest, Adiย Shamir, Leonardย Adleman ์ธ ๋ช ์ ์ด๋ฆ์ ๋ฐ์ RSA๋ก ๋ถ๋ฆฐ๋ค. ํด๋น ์๊ณ ๋ฆฌ์ฆ์ ๊ฒฝ์ฐ ๊ธฐ๋ณธ ์ซ์๋ค๋ผ๋ฆฌ์ ๊ณ์ผ ๊ณผ์ ์์ ์ฌ์น์ฐ์ฐ ๋ฑ์ ๋ํด์๋ ์ฝ์ง๋ง ์์ธ์๋ถํด ๊ณผ์ ์ ํจ์ฌ ์ด๋ ต๋ค๋ ์ ์ ์๋ฆฌ๋ก ์ผ์ ๋ฐ์ ์ํจ ์๊ณ ๋ฆฌ์ฆ์ด๋ค. ๋ณด์๋๊ฐ ๋งค์ฐ ๋์ ๋ํ๋ฏผ๊ตญ์ ํฌํจํ ๋๋ถ๋ถ์ ์ธํฐ๋ท ๋ฑ ํน์์ ํด๋น ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํ๋ค.
ํผ์ฑ ์ํธ ์ฒด๊ณ์ ์ธ์ ํค
๋น๋์นญ ๊ณต๊ฐํค ์ํธ ๋ฐฉ์์ ๋๊ตฌ๋ ๊ณต๊ฐํค๋ง ์๋ฉด ๊ทธ ํค์ ๋์๋๋ ๊ณต๊ฐ ์๋ฒ์ ์์ ํ๊ฒ ๋ฉ์์ง๋ฅผ ๋ณด๋ผ ์ ์๊ฒ ํด์ค๋ค. ๋ ๋
ธ๋๊ฐ ์์ ํ๊ฒ ์์ฌ์ํตํ๋ ค๊ณ ํ ๋ ๊ฐ์ธํค์ ๋ํ ํ์์ ํ ํ์๊ฐ ์๋ค.
ํ์ง๋ง ์ด๋ฌํ ๊ณต๊ฐํค ์ํธ ๋ฐฉ์์ ์๊ณ ๋ฆฌ์ฆ์ ๊ณ์ฐ์ด ๋๋ฆฐ ๊ฒฝํฅ์ด ์์ด ๋์นญ๊ณผ ๋น๋์นญ์ ์์ ๋ฐฉ๋ฒ์ด ์ฐ์ด๊ธฐ๋ ํ๋ค. ์ด๋ฅผ ํผ์ฑ ์ํธ ์ฒด๊ณ(hybrid cryptosystem) ๋ผ๊ณ ํ๋ค.ย ๋์นญํค ์ํธํ์ ํจ์จ์ฑ๊ณผ ๊ณต๊ฐํค ์ํธํ์ ๋ณด์์ฑ์ ๊ฒฐํฉํ ์ํธํ ๊ธฐ๋ฒ์ด๋ค.
- ๋์นญํค ์ํธํ์ ํจ์จ์ฑ : ๋์นญํค ์ํธํ๋ ์ํธํ์ ๋ณตํธํ์ ๋์ผํ ํค๋ฅผ ์ฌ์ฉํ๋ฏ๋ก ์๋๊ฐ ๋น ๋ฅด์ง๋ง, ํค ๊ณต์ ๊ฐ ์ด๋ ค์ ๋ณด์์ ์ทจ์ฝ
- ๊ณต๊ฐํค ์ํธํ์ ๋ณด์์ฑ : ๊ณต๊ฐํค ์ํธํ๋ ์ํธํ์ ๋ณตํธํ์ ์๋ก ๋ค๋ฅธ ํค๋ฅผ ์ฌ์ฉํ๋ฏ๋ก ํค ๊ณต์ ๊ฐ ์์ ํ๊ณ , ๊ณต๊ฐํค๋ฅผ ์ฌ์ฉํ์ฌ ์ํธํํ๋ฉด ๊ฐ์ธํค๋ฅผ ๊ฐ์ง ์ฌ๋๋ง ๋ณตํธํ
- ๋์นญํค + ๊ณต๊ฐํค(ํจ์จ์ฑ + ๋ณด์์ฑ) : ํผ์ฑ ์ํธ ์ฒด๊ณ๋ ๋จผ์ ๊ณต๊ฐํค ์ํธํ๋ก ๋์นญํค๋ฅผ ์์ ํ๊ฒ ๊ตํํ๊ณ , ์ดํ ๋์นญํค๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ์ ์ํธํ ๋ฐ ๋ณตํธํ๋ฅผ ์ํ
๋์งํธ ์๋ช
์ํธ ์ฒด๊ณ๋ ๋ฉ์์ง๋ฅผ ์ํธํํ๊ณ ํด๋
ํ๋ ๊ฒ๋ฟ ์๋๋ผ ๋๊ฐ ๋ฉ์์ง๋ฅผ ์ผ๋์ง ์๋ ค์ฃผ๊ณ ๋ฉ์์ง๊ฐ ์์กฐ๋์ง ์์์์ ์ฆ๋ช
ํ๊ธฐ ์ํด ๋ฉ์์ง์ ์๋ช
์ ํ๋๋ก ์ด์ฉ๋ ์ ์๋ค. ์ด๋ฌํ ๊ธฐ๋ฒ ์ค ์ธํฐ๋ท ๋ณด์ ์ธ์ฆ์์์ค์ํ ๋์งํธ ์๋ช
(digital signing)์ ๋ํด ์์๋ณด์.
์๋ช ์ ์ํธ ์ฒดํฌ์ฌ์ด๋ค
๋์งํธ ์๋ช ์ ๋ฉ์์ง์ ๋ถ์ด์๋ ํน๋ณํ ์ํธ ์ฒดํฌ์ฌ์ด๋ค. ์ด๋ฌํ ์๋ช ์
- ์๋ช ์ ์์ฑํ ์ ์๊ฐ ๋๊ตฐ์ง ์๋ ค์ค. ๊ทน๋น ๊ฐ์ธ ํค๋ฅผ ๊ฐ๊ณ ์๊ธฐ ๋๋ฌธ์ ์ ์๋ง ์ฒดํฌ์ฌ ๊ณ์ฐ ๊ฐ๋ฅ
- ์ฒดํฌ์ฌ์ ์ ์์ ๋น๋ฐ ๊ฐ์ธ ํค์ ๊ด๋ จ๋์ด ์๊ธฐ ๋๋ฌธ์ ์ฌ๋ฐ๋ฅธ ์ฒดํฌ์ฌ์ ๋ ์กฐํ ์ ์์ด ๋ฉ์์ง ์์กฐ ๋ฐฉ์ง ํ๊ธฐ ๋๋ฌธ์ ์ด์ ์ ๊ฐ์ง๋ค.
๋์งํธ ์๋ช
์ ๋น๋์นญ ๊ณต๊ฐํค์ ์ํด ์์ฑ๋๊ณ , ๊ฐ์ธ ํค๋ ์ค์ง ์์ ์๋ง์ด ์๊ณ ์๋ค.
์ ๊ทธ๋ฆผ์ ๋์งํธ ์๋ช
์ด ํจ๊ป ์ ์ก๋๋ ๊ณผ์ ์ ๋ณด์ฌ์ค๋ค.
๋ฐ์ดํฐ ์ก์ ํ๋ ์ชฝ์์ ๋ฉ์์ง๋ฅผ ์ ์ ํ์ฌ ๊ณ ์ ๋ ๊ธธ์ด์ ์์ฝ(digest)๋ก ๋ง๋ค๋ฉด, ๊ฑฐ๊ธฐ์ ์ฌ์ฉ์์ ๊ฐ์ธ ํค๋ฅผ ๋งค๊ฐ๋ณ์๋ก ํ๋ ์๋ช
ํจ์๋ฅผ ์ ์ฉํ์ฌ ๋์งํธ ์๋ช
์ ์ถ๊ฐํ ๋ค ๋ฐ์ดํฐ๋ฅผ ์ก์ ํ๋ค.
๋ฐ์ดํฐ ์์ ์๋ ์ด๋ฌํ ๋ฉ์์ง๋ฅผ ๋ฐ์ ํ์ ์ด๋ฌํ ๋ฐ์ดํฐ๊ฐ ์์กฐ๋์๋์ง ํ์ธํ๊ธฐ ์ํด ๊ณต๊ฐํค๋ฅผ ์ด์ฉํ ์ญํจ์๋ฅผ ์ ์ฉํจ์ผ๋ก์จ ์๋ช
์ด ๊ฐ์์ง๋ฅผ ์ฒดํฌํ๋ ๊ณผ์ ์ ํตํด ๋ฐ์ดํฐ์ ๋ณด์์ ์ ์งํ๋ค.
๋์งํธ ์ธ์ฆ์
๋์งํธ ์ธ์ฆ์๋ ์ ๋ขฐํ ์ ์๋ ๊ธฐ๊ด์ผ๋ก๋ถํฐ ๋ณด์ฆ ๋ฐ์ ์ฌ์ฉ์๋ ํ์ฌ์ ๋ํ ์ ๋ณด๋ฅผ ๋ด๊ณ ์๋ค. ๋ค๋ฅธ ์ธ์ฆ ๋ฐฉ์์ ๋ํด์๋ ์๋์ ์ผ๋ก ์์กฐํ๊ธฐ ์ฝ๊ธฐ ๋๋ฌธ์ ์ธํฐ๋ท์ ์ ๋ถ์ฆ์ด๋ผ๊ณ ๋ถ๋ฆด ์ ์๋ ์ธ์ฆ์๋ฅผ ํตํด ๋ณด๋ค ๋ณด์์ ๋์ธ๋ค.
์ธ์ฆ์์ ๋ด๋ถ
์ธ์ฆ์์๋ ๋์งํธ ์๋ช ๊ณผ ๊ฐ์ด ๊ณต์์ ์ผ๋ก ์ธ์ฆ ๊ธฐ๊ด์ ์ํด ๋์งํธ ์๋ช ๋ ์ ๋ณด์ ์งํฉ์ด ๋ด๊ฒจ์๋ค. ์ฌ๊ธฐ์๋
- ๋์์ ์ด๋ฆ(์ฌ๋, ์๋ฒ, ์กฐ์ง ๋ฑ)
- ์ ํจ ๊ธฐ๊ฐ
- ์ธ์ฆ์ ๋ฐ๊ธ์(๋ณด์ฆ์ธ)
- ์ธ์ฆ์ ๋ฐ๊ธ์์ ๋์งํธ ์๋ช ๋ฑ์ด ๋ด๊ฒจ์๋ค.
๋์งํธ ์ธ์ฆ์์ ๊ฒฝ์ฐ ์ถ๊ฐ์ ์ผ๋ก ์ฌ์ฉ๋ ์๋ช ์๊ณ ๋ฆฌ์ฆ์ ๋ํ ์์ ์ ์ธ ์ ๋ณด์ ๋ณดํต ๋์์ ๊ณต๊ฐํค๋ ๋ด๊ณ ์๋ค. ์ด๋ฅผ ํตํด ๋๊ตฌ๋ ๋์งํธ ์ธ์ฆ์๋ฅผ ๋ง๋ค ์ ์์ง๋ง, ์ธ์ฆ์์ ์ ๋ณด ๋ณด์ฆ, ๊ฐ์ธํค๋ก ์๋ช ํ ์ ์๋ ๊ถํ ๋ฑ์ ์ป์ ์ ์์ง๋ ์๊ฒ ํ๋ค.
๋์งํธ ์ธ์ฆ์๋ ์์ ๊ฐ์ ๊ตฌ์กฐ๋ฅผ ๋๊ณ ์๋ค.
X.509 v3 ์ธ์ฆ์
๊ตญ์ ์ ๊ธฐํต์ ์ฐํฉ(ITU-T)์์ ์ ์ํ ๊ณต๊ฐ ํค ์ธ์ฆ์ ํ์ค์ด๋ค. ๋๋ถ๋ถ์ ์ธ์ฆ์๊ฐ ์ด X.509 ๋ผ๋ ์์์ ์ ๋ณด๋ฅผ ์ ์ฅํ ๋์งํธ ์ธ์ฆ์๋ฅผ ์ฌ์ฉํ๋ค.
v3 ์ธ์ฆ์์ ๊ฒฝ์ฐ ์ธ์ฆ ์ ๋ณด๋ฅผ ํ์ฑ ๊ฐ๋ฅํ ํ๋์ ๋ฃ์ด ๊ตฌ์กฐํํ๋ ํ์คํ๋ ๋ฐฉ๋ฒ์ ์ ๊ณตํ๋ฉฐ, ์ด๋ฌํ ์ ๋ณด๋ ๋ง์ดํฌ๋ก์ํํธ์์ ์์ฃผ ์ ์ ๋ฆฌ๋ฅผ ํด๋จ๋ค
| ์์ฑ | Description |
|---|---|
| ๋ฒ์ | ์ธ์ฆ์์ ๋ฒ์ ๋ฒํธ๋ฅผ ์๋ณํ๋ ์ ์์ ๋๋ค. |
| ์ผ๋ จ ๋ฒํธ | CA(์ธ์ฆ ๊ธฐ๊ด)์์ ๋ฐ๊ธํ ๊ฐ ์ธ์ฆ์์ ๊ณ ์ ๋ฒํธ๋ฅผ ๋ํ๋ด๋ ์ ์์ ๋๋ค. |
| ์๋ช | CA๊ฐ ์ธ์ฆ์์ ์๋ช ํ๋ ๋ฐ ์ฌ์ฉํ๋ ์ํธํ ์๊ณ ๋ฆฌ์ฆ์ ์๋ณ์์ ๋๋ค. ๊ฐ์๋ ์๊ณ ๋ฆฌ์ฆ์ ์๋ณ์์ ํด๋น ์๊ณ ๋ฆฌ์ฆ์์ ์ฌ์ฉํ๋ ์ ํ์ ๋งค๊ฐ ๋ณ์(ํด๋นํ๋ ๊ฒฝ์ฐ)๊ฐ ๋ชจ๋ ํฌํจ๋ฉ๋๋ค. |
| ๋ฐ๊ธ์ | ์ธ์ฆ์ ๋ฐ๊ธ CA์ ๊ณ ์ ์ด๋ฆ(DN)์ ๋๋ค. |
| ์ ํจ์ฑ ๊ฒ์ฌ | ์ธ์ฆ์๊ฐ ์ ํจํ ํฌ๊ด ๊ธฐ๊ฐ์ ๋๋ค. |
| Subject | ์ธ์ฆ์ ์ฃผ์ฒด์ ๊ณ ์ ์ด๋ฆ(DN)์ ๋๋ค. |
| ์ฃผ์ฒด ๊ณต๊ฐ ํค ์ ๋ณด | ์ธ์ฆ์ ์ฃผ์ฒด๊ฐ ์์ ํ ๊ณต๊ฐ ํค์ ๋๋ค. |
| ์ด๋ฌํ ์ ๋ณด๊ฐ v1์์ ๊ธฐ๋ณธ์ ์ผ๋ก ๊ฐ์ง๊ณ ์๋ ์ ๋ณด๋ผ๋ฉด, v2์์๋ |
| ์์ฑ | Description |
|---|---|
| ๋ฐ๊ธ์ ๊ณ ์ ID | ๋ฐ๊ธ CA์์ ์ ์ํ ๋๋ก ๋ฐ๊ธ CA๋ฅผ ๋ํ๋ด๋ ๊ณ ์ ์๋ณ์์ ๋๋ค. |
| ์ฃผ์ฒด ๊ณ ์ ID | ๋ฐ๊ธ CA์์ ์ ์ํ ์ธ์ฆ์ ์ฃผ์ฒด๋ฅผ ๋ํ๋ด๋ ๊ณ ์ ์๋ณ์์ ๋๋ค. |
| ์ ์ ๋ณด๊ฐ ์ถ๊ฐ๋์๊ณ , | |
v3์์๋ ํ์ฅ ํ๋๊ฐ ์ถ๊ฐ๋์๋๋ฐ, ์ด์ ๋ํ ์ ๋ณด๋ ์๋์ ๊ฐ๋ค. |
| ์์ฑ | Description |
|---|---|
| ๊ธฐ๊ด ํค ์๋ณ์ | ์ธ์ฆ์ ์ฃผ์ฒด์ ์ด ์ธ์ฆ์๋ฅผ ๋ฐ๊ธํ CA ์ธ์ฆ์์ ์ผ๋ จ ๋ฒํธ ๋๋ ๋ฐ๊ธ CA์ ๊ณต๊ฐ ํค ํด์๋ฅผ ๋ํ๋ด๋ ์๋ณ์์ ๋๋ค. |
| ์ฃผ์ฒด ํค ์๋ณ์ | ํ์ฌ ์ธ์ฆ์์ ๊ณต๊ฐ ํค ํด์์ ๋๋ค. |
| ์ฃผ์ ์ฌ์ฉ๋ | ์ธ์ฆ์๋ฅผ ์ฌ์ฉํ ์ ์๋ ์๋น์ค๋ฅผ ์ ์ํ๋ ๋นํธ๋งต ๊ฐ์ ๋๋ค. |
| ํ๋ผ์ด๋น ํค ์ฌ์ฉ ๊ธฐ๊ฐ | ํค ์์ ํ๋ผ์ด๋น ํค ๋ถ๋ถ์ ๋ํ ์ ํจ ๊ธฐ๊ฐ์ ๋๋ค. |
| ์ธ์ฆ์ ์ ์ฑ | ์ธ์ฆ์ ์ฃผ์ฒด์ ์ ํจ์ฑ์ ๊ฒ์ฌํ๋ ๋ฐ ์ฌ์ฉ๋๋ ์ ์ฑ ์ ๋ณด์ ์ปฌ๋ ์ ์ ๋๋ค. |
| ์ ์ฑ ๋งคํ | ๊ฐ organization ์ ์ฑ ์ ๋ค๋ฅธ organization ์ ์ฑ ์ ๋งคํํ๋ ์ ์ฑ ๋งคํ ์ปฌ๋ ์ ์ ๋๋ค. |
| ์ฃผ์ฒด ๋์ฒด ์ด๋ฆ | ์ ๋ชฉ์ ๋ํ ๋์ฒด ์ด๋ฆ์ ์ปฌ๋ ์ ์ ๋๋ค. |
| ๋ฐ๊ธ์ ๋์ฒด ์ด๋ฆ | ๋ฐ๊ธ CA์ ๋ํ ๋์ฒด ์ด๋ฆ์ ์ปฌ๋ ์ ์ ๋๋ค. |
| ์ฃผ์ฒด ๋๋ ํฐ๋ฆฌ ํน์ฑ | X.500 ๋๋ LDAP ๋๋ ํฐ๋ฆฌ์ ํน์ฑ ์ปฌ๋ ์ ์ ๋๋ค. |
| ๊ธฐ๋ณธ ์ ์ฝ ์กฐ๊ฑด | ์ธ์ฆ์๊ฐ CA ๋๋ ์ฌ์ฉ์, ์ปดํจํฐ, ๋๋ฐ์ด์ค ๋๋ ์๋น์ค์ ๋ฐ๊ธ๋์๋์ง ์ฌ๋ถ๋ฅผ ์ง์ ํ ์ ์๋๋ก ํ๋ ์ ์ฝ ์กฐ๊ฑด ์ปฌ๋ ์ ์ ๋๋ค. ์ด ํ์ฅ์๋ ์์ ์ ์๋ ํ์ CA์ ์๋ฅผ ์ ํํ๋ ๊ฒฝ๋ก ๊ธธ์ด ์ ์ฝ ์กฐ๊ฑด๋ ํฌํจ๋ฉ๋๋ค. |
| ์ด๋ฆ ์ ์ฝ ์กฐ๊ฑด | CA์์ ๋ฐ๊ธํ ์ธ์ฆ์์์ ํ์ฉ๋๋ ๋ค์์คํ์ด์ค๋ฅผ ์ง์ ํ๋ ์ ์ฝ ์กฐ๊ฑด ์ปฌ๋ ์ ์ ๋๋ค. |
| ์ ์ฑ ์ ์ฝ ์กฐ๊ฑด | CA ๊ฐ์ ์ ์ฑ ๋งคํ์ ๊ธ์งํ๋ ๋ฐ ์ฌ์ฉํ ์ ์๋ ์ ์ฝ ์กฐ๊ฑด์ ์ปฌ๋ ์ ์ ๋๋ค. |
| ํ์ฅ ํค ์ฌ์ฉ | ํค ์ฌ์ฉ ํ์ฅ์์ ์๋ณ๋ ๋ชฉ์ ์ธ์ ์ธ์ฆ์์ ๊ณต๊ฐ ํค๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋ํ๋ด๋ย ํคย ์ฉ๋ ๊ฐ์ ์ปฌ๋ ์ ์ ๋๋ค. |
| CRL ๋ฐฐํฌ ์ง์ | ๊ธฐ๋ณธ CRL(์ธ์ฆ์ ํด์ง ๋ชฉ๋ก)์ด ๊ฒ์๋๋ URL ์ปฌ๋ ์ ์ ๋๋ค. |
| anyPolicy ์ต์ | ํ์ CA ์ธ์ฆ์์์ย ๋ชจ๋ ๋ฐ๊ธ ์ ์ฑ ย OID(2.5.29.32.0)์ ์ฌ์ฉ์ ๊ธ์งํฉ๋๋ค. |
| ์ต์ CRL | ๋ธํ CRL ๋ฐฐํฌ ์ง์ ์ด๋ผ๊ณ ๋ ํ๋ ์ด ํ์ฅ์๋ ๋ฐ๊ธ CA์ ๋ธํ CRL์ด ๊ฒ์๋ ํ๋ ์ด์์ URL์ด ํฌํจ๋์ด ์์ต๋๋ค. |
์๋ฒ ์ธ์ฆ์ ์ํด ์ธ์ฆ์ ์ฌ์ฉํ๊ธฐ
์์ ํ ์น ํธ๋์ญ์ ๊ณผ์ ์์ ์ต์ ๋ธ๋ผ์ฐ์ ๋ ์๋์ผ๋ก ์ ์ํ ์๋ฒ์์ ๋์งํธ ์ธ์ฆ์๋ฅผ ๊ฐ์ ธ์จ๋ค. ๋ง์ฝ ์ด ๊ณผ์ ์์ ์ธ์ฆ์๊ฐ ์์ผ๋ฉด ๋ณด์ ์ปค๋ฅ์ ์ ์คํจํ๋ค. ์๋ฒ ์ธ์ฆ์๋
- ์น์ฌ์ดํธ์ ์ด๋ฆ๊ณผ ํธ์คํธ๋ช
- ์น์ฌ์ดํธ์ ๊ณต๊ฐํค
- ์๋ช ๊ธฐ๊ด์ ์ด๋ฆ
- ์๋ช
๊ธฐ๊ด์ ์๋ช
๋ฑ์ ์ ๋ณด๋ฅผ ๋ด๊ณ ์๋๋ฐ, ์ฌ๊ธฐ์ ์๋ช
๊ธฐ๊ด์ ๋ธ๋ผ์ฐ์ ๊ฐ ๊ฒ์ฌํ๊ฒ ๋๋ค. ๋ธ๋ผ์ฐ์ ๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์ฌ๋ฌ ์๋ช
๊ธฐ๊ด์ ์ธ์ฆ์๊ฐ ๋ฏธ๋ฆฌ ์ค์น๋์ด ์๊ธฐ ๋๋ฌธ์ ์ด๋ฅผ ํตํด ์๋ช
์ ๊ฒ์ฆํ ์ ์๋ค.
์ด๋ฐ ์์ผ๋ก ์๋ช
์ ๋ฏธ๋ฆฌ ๋ฑ๋กํด๋๊ณ ํด๋น ๋์งํธ ์๋ช
์ด ์ง์ง์ธ์ง ๊ฒ์ฌ๋ฅผ ํ๋ค.
์ธ์ฆ์๊ฐ ์ ํจํ์ง ์๋ค๋ฉด ์ด๋ฌํ ์์ ์๋ด๊ฐ ๋ฐ ์๋ ์๋ค.
HTTPS์ ์ธ๋ถ์ฌํญ
HTTPS๋ HTTP์ ๊ฐ์ฅ ์ ๋ช ํ ๋ณด์ ๋ฒ์ ์ผ๋ก ๋๋ฆฌ ๊ตฌํ๋์ด ์๋ค. HTTPS๋ HTTP ํ๋กํ ์ฝ์ ๋์นญ, ๋น๋์นญ ์ธ์ฆ์ ๊ธฐ๋ฐ ์ํธ ๊ธฐ๋ฒ์ ์งํฉ์ ๊ฒฐํฉํ ํํ๋ก, ๋งค์ฐ ์์ ํ ๋์์ ์ ์ฐํ๊ณ ๊ด๋ฆฌํ๊ธฐ ์ฝ๊ฒ ๋ง๋ค์ด์ค๋ค. ์ด๋ฅผ ํตํด ์ธํฐ๋ท ์ ํ๋ฆฌ์ผ์ด์ ๊ณผ ์ ์์๊ฑฐ๋ ๋ฑ์ ๋ํ ๊ณ ์ ์ฑ์ฅ์ ์ด๋ฃฐ ์ ์์์ผ๋ฉฐ, ๊ด์ญ ๋ณด์ ๊ด๋ฆฌ์ ์์ด ์ค์ํ๋ค.
HTTPS ๊ฐ์
HTTPS๋ ์์์ ์ค๋ช
ํ ๊ฒ๊ณผ ๊ฐ์ด HTTP ๋ฉ์์ง๋ฅผ TCP๋ก ๋ณด๋ด๊ธฐ ์ ์ ๋จผ์ ๊ทธ๊ฒ๋ค์ ์ํธํํ๋ ๋ณด์ ๊ณ์ธต์ผ๋ก ๋ณด๋ธ๋ค.

HTTPS ์คํด
์น ์๋ฒ๋ก์ ์์ฒญ์ ๋ง๋ค ๋ ์น ์๋ฒ์๊ฒ HTTP ๋ณด์ ํ๋กํ ์ฝ ๋ฒ์ ์ ์ํํ๋ค๊ณ ๋งํด์ค ๋ฐฉ๋ฒ์ด ํ์ํ๋ฐ, URL์ ์คํด์ ํตํด ์ด๋ฃจ์ด์ง๋ค.
์ด๋ ค์ด ์ฉ์ด์ผ ์๋ ์๋๋ฐ, ๊ทธ๋ฅ URL ์์ http:// ๋ก ์์ํ๋๋ https:// ์ ์ฐจ์ด์ด๋ค.
๋ธ๋ผ์ฐ์ ๋ ์น ๋ฆฌ์์ค์ ๋ํ ํธ๋์ญ์
์ํ์ ์์ฒญ๋ฐ์ผ๋ฉด URL์ ์คํด์ ๊ฒ์ฌํ๊ณ ์ด์ ๋ง๋ ํฌํธ๋ก ์ ์กํ๋ค(http 80, https 443).
์ฌ๊ธฐ์ ์ถ๊ฐ์ ์ผ๋ก https ์คํด์ด ์๋ค๋ฉด ํด๋ผ์ด์ธํธ๋ ์๋ฒ์ ๋ฐ์ด๋๋ฆฌ ํฌ๋งท์ผ๋ก ๋ ๋ช๋ช SSL ๋ณด์ ๋งค๊ฐ๋ณ์๋ฅผ ๊ตํํ๋ฉด์ ํธ๋์
ฐ์ดํฌ๋ฅผ ํ๋ ๊ณผ์ ์ ๊ฑฐ์น๊ณ , ์ดํ์๋ ์ํธํ๋ HTTP ๋ช
๋ น์ ๋ณด๋ด๊ฒ ๋๋ค.
SSL ํธ๋ํฝ์ ๋ฐ์ด๋๋ฆฌ ํ๋กํ ์ฝ์ด๊ธฐ ๋๋ฌธ์ HTTP์๋ ์์ ํ ๋ค๋ฅด๋ฉฐ, ํธ๋ํฝ์ 443 ํฌํธ๋ก ์ ๋ฌ๋๋ค. ์ฌ๊ธฐ์ ์ด๋ป๊ฒ ๋ณด์ ์๋ฒ์์ ์ปค๋ฅ์ ์ ์ค๋นํ ๊น?
๋ณด์ ์ ์ก ์ ์
์ํธํ ๋์ง ์์ HTTP์์ ํด๋ผ์ด์ธํธ๋ ์น ์๋ฒ์ 80๋ฒ ํฌํธ๋ก TCP ์ปค๋ฅ์
์ ๋งบ์ ํ์ HTTP ๋ฉ์์ง๋ฅผ ๊ตํํ ํ ์ปค๋ฅ์
์ ๋ซ๋๋ค.
ํ์ง๋ง HTTPS์ ๊ฒฝ์ฐ, ๊ธฐ์กด์ ๋ฐฉ์์ SSL ์ํธ ๊ณ์ธต์ด ์ถ๊ฐ๋ ๋ฒ์ ์์ผ๋ก ์ค๊ฐ์ ์ฌ๋ฌ ๊ณผ์ ์ด ์ถ๊ฐ๋๋ค.
HTTPS์ ๊ฒฝ์ฐ 443 ํฌํธ๋ก TCP ์ฐ๊ฒฐ์ ํ๊ฒ ๋๋ฉด ํด๋ผ์ด์ธํธ์ ์๋ฒ๋ ์ํธ๋ณ ๋งค๊ฐ๋ณ์์ ๊ตํ ํค๋ฅผ ํ์ํ๋ฉด์ SSL ๊ณ์ธต์ ์ด๊ธฐํ์ํจ๋ค(Handshake).
ํธ๋์
ฐ์ดํฌ๊ฐ ์๋ฃ๋๋ฉด SSL ์ด๊ธฐํ๋ ์๋ฃ๋๋ฉด์ ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ๋ฅผ ํฅํด ์์ฒญ ๋ฉ์์ง๋ฅผ ๋ณด์ ๊ณ์ธต์ ๋ณด๋ผ ์ ์๊ณ , ์ํธํ๋ ๋ฐ์ดํฐ๋ ๋ค์ ์๋ฒ๋ก ์ํธํ๋์ด ์ ์ก๋๋ค.
SSL ํธ๋์ ฐ์ดํฌ

์์์ ์ด์ผ๊ธฐ ํ๋ SSL ํธ๋์ ฐ์ดํฌ์ ๊ฒฝ์ฐ,
- ํ๋กํ ์ฝ ๋ฒ์ ๋ฒํธ ๊ต๋กผ
- ์์ชฝ์ด ์๊ณ ์๋ ์ํธ ์ ํ
- ์์ชฝ์ ์ ์์ ์ธ์ฆ
- ์ฑ๋์ ์ํธํํ๊ธฐ ์ํ ์์ ์ธ์ ํค ์์ฑ ์ ๊ณผ์ ์ ๊ฑฐ์น๋ฉด์ ํธ๋์ ฐ์ดํฌ๋ฅผ ์งํํ๋ค. ์ด๋ฌํ ๊ณผ์ ์์ ์์ธํ๊ฒ ๋ฌด์จ ์ผ์ด ์ผ์ด๋๋๋ฉด ์ ์ฌ์ง๊ณผ ๊ฐ์ด
- Client Hello
- ํด๋ผ์ด์ธํธ๊ฐ ์ง์ํ๋ ์ํธํ ์๊ณ ๋ฆฌ์ฆ(์ํธ๊ตฐ, Cipher Suites)๊ณผ TLS ๋ฒ์ ์ ๋ณด ์ ์ก.
- Server Hello
- ์๋ฒ๊ฐ ์ฌ์ฉํ ์ํธ๊ตฐ๊ณผ TLS ๋ฒ์ ์ ๊ฒฐ์ ํ๊ณ , ์ธ์ฆ์(Certificate) ์ ์ก.
- ์ธ์ฆ์ ๊ฒ์ฆ ๋ฐ ํค ๊ตํ
- ํด๋ผ์ด์ธํธ๋ ์๋ฒ์ ์ธ์ฆ์๋ฅผ ๊ฒ์ฆํ๊ณ , ์ธ์ ํค๋ฅผ ์์ฑํ๊ธฐ ์ํ ๊ณผ์ ์ ์ํ.
- ํค ๊ตํ ๋ฐฉ์(ECDHE, RSA ๋ฑ)์ ๋ฐ๋ผ ํด๋ผ์ด์ธํธ์ ์๋ฒ๊ฐ ๊ณต์ ํ ํค๋ฅผ ๊ฒฐ์ .
- Finished ๋ฉ์์ง ์ ์ก
- ํด๋ผ์ด์ธํธ์ ์๋ฒ๋ ์๋ก ์ธ์ ํค๋ฅผ ์ฌ์ฉํด ์ํธํ๋ โFinishedโ ๋ฉ์์ง๋ฅผ ์ฃผ๊ณ ๋ฐ์ผ๋ฉฐ, ํธ๋์ ฐ์ดํฌ๋ฅผ ์๋ฃ. ์ ๊ณผ์ ์ด ์ด๋ฃจ์ด์ง๋ฉฐ, ์ฐ๋ฆฌ๊ฐ ์๊ณ ์๋ TCP ๊ณ์ธต์ ํธ๋์ ฐ์ดํฌ ๊ณผ์ ์์ ์ํธํํ๋ ๊ณผ์ ์ ๋ํ ๋ฒ์ ์ด๋ผ๊ณ ์๊ฐํ๋ฉด ๋๋ค.
์๋ฒ ์ธ์ฆ์
SSL์ ์๋ฒ ์ธ์ฆ์๋ฅผ ํด๋ผ์ด์ธํธ๋ก ๋๋ฅด๊ณ ๋ค์ ํด๋ผ์ด์ธํธ ์ธ์ฆ์๋ฅผ ์๋ฒ๋ก ๋ ๋ผ์ฃผ๋ ์ํธ ์ธ์ฆ์ ์ง์ํ๋ค. ํด๋ผ์ด์ธํธ ์ธ์ฆ์๋ ๋๋ถ๋ถ ์ฐ์ด์ง ์๋๋ค. ํ์ง๋ง ๋ณด์ HTTPS ํธ๋์ญ์ ์ ์์ธ์ด๋ค. ํญ์ ์๋ฒ ์ธ์ฆ์๋ฅผ ์๊ตฌํ๋ค. ์ธ์ฆ์๋ฅผ ๋งค๋ฒ ์๊ตฌํ๋ ๋ฐ๋ ๊ทธ๋งํผ ์ค์ํ ์ ๋ณด์ ํธ๋์ญ์ ์ด ์ผ์ด๋๋ค๋ ์๋ฆฌ๊ธฐ๋ ํ๋ค. ์ ์๋ ค์ง ์ธ์ฆ๊ธฐ๊ด์ ์ํด ์๋ช ๋ ์๋ฒ ์ธ์ฆ์๋ ์ด๋ฌํ ๋ฏผ๊ฐํ ์ ๋ณด๋ฅผ ๋ณด๋ด๊ธฐ ์ ์ ์๋ฒ๋ฅผ ์ผ๋ง๋ ์ ๋ขฐํ ์ ์๋์ง ํ๊ฐํ๋ ๊ฒ์ ๋์์ค๋ค.

์๋ฒ ์ธ์ฆ์๋ X.509 v3์์ ํ์๋ ์ธ์ฆ์๋ก, ์ ์ฌ์ง๊ณผ ๊ฐ์ด ์กฐ์ง์ ์ด๋ฆ, ์ฃผ์, ์๋ฒ DNS ๋๋ฉ์ธ ์ด๋ฆ ๋ฑ์ ์ ๋ณด๋ฅผ ๊ฐ์ง ์ธ์ฆ์์ด๋ค. ํด๋ผ์ด์ธํธ ์ํํธ์จ์ด๋ ์ด๋ฌํ ์ธ์ฆ์๋ฅผ ๊ฒ์ฆํ ์ ์๋ค.
์ฌ์ดํธ ์ธ์ฆ์ ๊ฒ์ฌ
ํด๋ผ์ด์ธํธ ์ํํธ์จ์ด๊ฐ ์ด๋ฌํ ์ธ์ฆ์๋ฅผ ๊ฒ์ฌํ ์ ์๋ค๊ณ ํด์ ์ฌ์ฉ์๊ฐ ์ธ์ฆ์๋ฅผ ๊ฒ์ฌํ๋ ๊ฒ์ ์๋๋ค. ์น ๋ธ๋ผ์ฐ์ ๊ฐ ์ด๋ฌํ ์ธ์ฆ์์ ๋ํด ๊ฐ๋จํ๊ฒ ๊ธฐ๋ณธ ๊ฒ์ฌ๋ฅผ ํ๊ณ , ์ฒญ์ ํ ๊ฒ์ฌ๋ฅผ ํ ์ ์๋ ๋ฐฉ๋ฒ๊ณผ ํจ๊ป ์ฌ์ฉ์์๊ฒ ์๋ ค์ค๋ค. ์ด ๊ณผ์ ์์ ์น ์๋ฒ ์ธ์ฆ์ ๊ฒ์ฌ๋ฅผ ์ํ ์๊ณ ๋ฆฌ์ฆ์ ์น๋ธ๋ผ์ฐ์ ๊ฒ์ฌ ๊ธฐ๋ฒ์ ๊ธฐ์ด๋ฅผ ๋ง๋ จํ๋ค.
๋ ์ง ๊ฒ์ฌ
๋ ์ง ๊ฒ์ฌ์ ๊ฒฝ์ฐ ์ธ์ฆ์์ ์์ ๋ฐ ์ข ๋ฃ์ผ์ ๊ฒ์ฆํ๋ค
์๋ช ์ ์ ๋ขฐ๋ ๊ฒ์ฌ
๋ชจ๋ ์ธ์ฆ์๋ CA(Certificate Authority)์ ์ํด ์๋ช
๋์ด ์๋ค. ์ด๋ฌํ ์ธ์ฆ์๋ ๋๊ตฌ๋ ๋ฐ๊ธํ ์ ์์ง๋ง, ๊ทธ๋ ๋ค๊ณ ๋ฌด์กฐ๊ฑด ์ธ์ฆ์๋ฅผ ๋ฌด์กฐ๊ฑด์ ์ผ๋ก ๋ฐ์์ ๋ธ๋ผ์ฐ์ ๊ฐ ์ฒ๋ฆฌํ์ง๋ ์๋๋ค. ์์์ ๋์๋ ๋ณด์ ๊ฒฝ๊ณ ์ ๊ฐ์ด ์๋ ค์ง์ง ์์ ์ธ์ฆ ๊ธฐ๊ด์ผ๋ก๋ถํฐ ์๋ช
๋ ์ธ์ฆ์๋ ๊ฒฝ๊ณ ๋ฅผ ๋ณด์ฌ์ค๋ค. ์ฌ๊ธฐ์ ์ฌ์ฉ์๋ ์ด๋ฌํ ์ธ์ฆ์๋ฅผ ๊ทธ๋๋ก ๋ฐ์๋ค์ผ์ง, ์๋๋ฉด ๋๊ฐ์ง๋ฅผ ์ ํํ ์ ์๋ค.
์๋ช ๊ฒ์ฌ
ํ๋ฒ ์๋ช ๊ธฐ๊ด์ด ๋ฏฟ์ ๋งํ๋ค๊ณ ํ๋จ์ด ๋ ์ดํ์ ๋ธ๋ผ์ฐ์ ๋ ์๋ช ๊ธฐ๊ด์ ๊ณต๊ฐํค๋ฅผ ์๋ช ์ ์ ์ฉํ์ฌ ๊ทธ์ ์ฒดํฌ์ฌ๊ณผ ๋น๊ตํด๋ด์ผ๋ก์จ ์ธ์ฆ์์ ๋ฌด๊ฒฐ์ฑ์ ๊ฒ์ฌํ๋ค.
์ฌ์ดํธ ์ ์ ๊ฒ์ฌ
์๋ฒ๊ฐ ๋๊ตฐ๊ฐ ๋ค๋ฅธ ์ด์ ์ธ์ฆ์๋ฅผ ๋ณต์ฌํ๊ฑฐ๋ ํธ๋ํฝ์ ๊ฐ๋ก์ฑ๋ ๊ฒ์ ๋ฐฉ์งํ๊ธฐ ์ํด ์ธ์ฆ์์ ๋๋ฉ์ธ ์ด๋ฆ์ ๊ฒ์ฌํ๋ค. ๋ณดํต์ ์๋ฒ ์ธ์ฆ์๋ ๋จ์ผ ๋๋ฉ์ธ์ด์ง๋ง, ์๋ฒ ํด๋ฌ์คํฐ๋ ์๋ฒ ํ์ ์ํด ์ฌ๋ฌ ์๋ฒ์ ๋ํ ์์ผ๋ ์นด๋๋ก ํํ๋์ด ์๋ ์ธ์ฆ์๋ฅผ ๋ฐ์ ๋๋ ์๋ค. ํธ์คํธ๋ช ์ด ์ธ์ฆ์์ ์ ์๊ณผ ๋ง์ง ์์ ๋๋ ์ฌ์ฉ์๋ฅผ ์ฐ์ ์ผ๋ก ์๊ฐํ๊ธฐ ๋๋ฌธ์ ์ฌ์ฉ์์๊ฒ ์๋ฆฌ๊ฑฐ๋ ์ปค๋ฅ์ ์ ์์ ๋์ด๋ฒ๋ฆฐ๋ค.
๊ฐ์ ํธ์คํ ๊ณผ ์ธ์ฆ์
๊ฐ์ ํธ์คํ ์ด๋? ๊ธฐ๋ณธ์ ์ผ๋ก ์น์๋ฒ์ ์กด์ฌํ๋ ์ฃผ ํธ์คํธ ๋๋ฉ์ธ์ ๋ฑ๋กํ์ฌ ์ฌ์ฉํ๊ณ ์์ง๋ง ์ถ๊ฐ์ ์ผ๋ก ํ ์๋ฒ์ ์ฌ๋ฌ ๋๋ฉ์ธ์ ๋ฑ๋กํ์ฌ ์ฌ์ฉํ๋ค๋ ์๋ฏธ ๋๋ฉ์ธ ์ด๋ฆ, ip ์ฃผ์, ํฌํธ ๋ฑ์ ๊ธฐ๋ฐ์ผ๋ก ๊ฐ์ํธ์คํ ์ ํ๋ค
๊ฐ์ ํธ์คํธ๋ก ์ด์๋๋ ์ฌ์ดํธ์ ๋ณด์ ํธ๋ํฝ์ ๊น๋ค๋กญ๋ค. ์ ๋ช ํ ์น ์๋ฒ ํ๋ก๊ทธ๋จ์ ํ๋์ ์ธ์ฆ์๋ง์ ์ง์ํ๊ธฐ ๋๋ฌธ์ ์ธ์ฆ์์ ์ด๋ฆ๊ณผ ๊ฐ์ ํธ์คํธ๋ช ์ด ๋ค๋ฅด๋ฉด ๊ฒฝ๊ณ ๊ฐ ๋ํ๋๋ค. ์ด๋ฌํ ๋ฌธ์ ๋ฅผ ํผํ๊ธฐ ์ํด ๋ณด์ ํธ๋์ญ์ ์ ์์ํ๋ ๋ชจ๋ ์ฌ์ฉ์๋ฅผ ํน์ ๋๋ฉ์ธ์ผ๋ก ๋ฆฌ๋ค์ด๋ ํธ ์ํค๋ฉด์ ์ด๋ฌํ ์ธ์ฆ์ ๋ฌธ์ ๋ฅผ ํํผํ๊ธฐ๋ ํ๋ค.
๋ค๋ฅธ ๋ฐฉ๋ฒ์ผ๋ก๋ SNI(Server Name Indication) ์ด๋ผ๋ ๋ฐฉ๋ฒ๋ ์๋ค. ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์ ์ง์ ๋๋ฉ์ธ์ด ์ด๋์ง ์๋ ค์ค์ผ๋ก์จ ํด๋น ๋๋ฉ์ธ์ ๋ง๋ ์ธ์ฆ์๋ฅผ ์ ๊ณตํ๋๋ก ํ๋ ๋ฐฉ์์ด๋ค.
SAN(Subject Alternative Name) ์ธ์ฆ ๋ฐฉ์์ ๊ทธ๋ฅ ๋น ๊พธ ์์ด ํ๋์ ์ธ์ฆ์์ ๋ชจ๋ ๋๋ฉ์ธ์ ํฌํจ์ํค๋๋ก ํ๋ ๋ฐฉ๋ฒ๋ ์๋ค.
์ง์ง HTTPS ํด๋ผ์ด์ธํธ
SSL์ ๋ณต์กํ ๋ฐ์ด๋๋ฆฌ ํ๋กํ ์ฝ์ด๊ธฐ ๋๋ฌธ์, ์ด๋ฅผ ๊ฐ๊ณตํ์ง๋ ์๊ณ SSL ํธ๋ํฝ์ ๋ณด๋ด๊ฒ ๋๋ฉด ์ฒ๋ฆฌ๊ฐ ์์ฃผ ํ๋ค์ด ์ง ๋ฟ๋๋ฌ ํธ๋์ ฐ์ดํฌ ๊ณผ์ ์์ ์คํจํ ํ๋ฅ ์ด ํฌ๋ค. ๋ฐ๋ผ์ ์์ฉ ๋๋ ์คํ ์์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ ์ฒ๋ฆฌํ๋ค.
OpenSSL
SSL๊ณผ TLS์ ๊ฐ์ฅ ์ธ๊ธฐ ์๋ ์คํ ์์ค ๊ตฌํ์ผ๋ก, ๋๋ถ๋ถ์ ๋์นญ/๋น๋์นญ ์ํธํ ํ๋กํ ์ฝ์ ๊ตฌํํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก, 1996๋
๋น์ ์์ฉ๋๋ SSLeay๋ผ๋ ์คํ ์์ค ๊ตฌํ์ฒด๋ฅผ ํฌํฌํด์ ๋ง๋ ๊ตฌํ์ฒด์ด๋ค.
ํด๋น ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ X.509 ํ์ค์ ์ธ์ฆ์ ์์ฑ, ์ธ์ฆ ์์ฒญ ๋ฐ๊ธ, ์ธ์ฆ, ์ธ์ฆ์ ๊ฒ์ฆ ๋ฑ์ ์์
์ ์ฌ์ฉ๋๋ค.
๊ฐ๋จํ HTTPS ํด๋ผ์ด์ธํธ
const tls = require("tls");
const fs = require("fs");
const options = {
host: "example.com", // ์ฐ๊ฒฐํ ์๋ฒ
port: 443, // HTTPS ๊ธฐ๋ณธ ํฌํธ
rejectUnauthorized: false, // ์๋ฒ ์ธ์ฆ์ ๊ฒ์ฆ ๋นํ์ฑํ (ํ
์คํธ์ฉ, ์ค์ ํ๊ฒฝ์์๋ true)
ca: fs.readFileSync("/etc/ssl/certs/ca-certificates.crt"), // ์ ๋ขฐํ CA ๋ชฉ๋ก (์ต์
)
};
const client = tls.connect(options, () => {
console.log("๐ TLS Handshake ์๋ฃ!");
console.log("๐ ์๋ฒ ์ธ์ฆ์ ์ ๋ณด:", client.getPeerCertificate());
// HTTPS ์์ฒญ ๋ณด๋ด๊ธฐ
client.write(
"GET / HTTP/1.1\r\n" +
"Host: example.com\r\n" +
"Connection: close\r\n" +
"\r\n"
);
});
// ๋ฐ์ดํฐ ์์
client.on("data", (data) => {
console.log("๐ฅ ์๋ฒ ์๋ต:\n", data.toString());
});
// ์๋ฌ ์ฒ๋ฆฌ
client.on("error", (err) => {
console.error("โ ์ค๋ฅ ๋ฐ์:", err.message);
});
// ์ฐ๊ฒฐ ์ข
๋ฃ
client.on("end", () => {
console.log("๐ ์ฐ๊ฒฐ ์ข
๋ฃ");
});์ฑ ์์๋ C ํ๋ก๊ทธ๋จ์ผ๋ก HTTPS ํด๋ผ์ด์ธํธ๋ฅผ ๋ง๋๋ ๊ฐ๋จํ ์์ ๋ฅผ ์์ฑํ์ง๋ง,,, ๋๋ ์๋ฐ์คํฌ๋ฆฝํธ ๋ฌ๋ฒ์ด๋ฏ๋ก ์๋ฐ์คํฌ๋ฆฝํธ๋ก HTTPS ํด๋ผ์ด์ธํธ ์์ ๋ฅผ ๋ค๊ณ ์๋ค. ์ฌ์ค C๋งํผ์ low level์ด ์๋ ์ด์ ์ฌ๋งํ ๋ถ๋ถ์ ์ถ์ํ ๋์ด ์๊ธฐ ๋๋ฌธ์ ๊ฐํธํ๊ฒ ์ฌ์ฉํ ์ ์๋ค.
์ด๋ ๊ฒ ๋ง๋ค์ด์ง ์์ ์์๋ ์ฒ์ ์น์ ์ด ๋ง๋ค์ด์ง์๋ง์ tls(ssl) ์ปค๋ฅ์ ์ ๊ฐ๊ฒ ๋๋ค. ํด๋น connect ๋ฉ์๋ ์์์ ํด๋ผ์ด์ธํธ๋ ์ปค๋ฅ์ ์ ์ํ์ ์ ํ๋ ๋งค๊ฐ๋ณ์์ ๋ํด ๋ฌผ์ด๋ณด๊ณ ์๋ฒ์ ์ธ์ฆ์๋ฅผ ๊ฒ์ฆํ ์ ์๋ค. ์๋ฒ์ ์ธ์ฆ์๋ฅผ ๊ฒ์ฌํ๋ ๊ณผ์ ์์ ์๋ฒ ์ฌ์ดํธ์ ์ธ์ฆ์์ ๋ํ ์กฐ์ง ๋ฑ์ ํ์ธํ ์ ์์ผ๋ฉฐ, ์์ฒญ์ ๋์ํ๋ ํธ์คํธ๋ช ์ ๋ฐ๊ฒ ๋๋ค. SSL ์ฑ๋์ด ์๋ฆฝ๋ ํ์ ํด๋ผ์ด์ธํธ๊ฐ ์ฌ์ดํธ ์ธ์ฆ์๋ฅผ ์์ฌํ๊ณ ๋ฐ์๋ค์ด๊ฒ ๋๋ฉด HTTP ์์ฒญ์ ๋ณด์ ์ฑ๋์ ํตํด ์ ์กํ๋ค.
ํ๋ฝ์๋ฅผ ํตํ ๋ณด์ ํธ๋ํฝ ํฐ๋๋ง
ํด๋ผ์ด์ธํธ๋ ์น ์๋ฒ์ ์ ๊ทผํด์ฃผ๋ ์น ํ๋ฝ์ ์๋ฒ๋ฅผ ์ข ์ข ์ด์ฉํ ๋๊ฐ ์๋ค. ๊ฐ์ฅ ๋ํ์ ์ธ ์๋ก ํ์ฌ์์ ๊ธฐ์ ๋คํธ์ํฌ์ ๊ณต๊ณต ๋คํธ์ํฌ ์ฌ์ด์ ๊ฒฝ๊ณ์ ํ๋ฝ์๋ฅผ ์ค์นํจ์ผ๋ก์จ ํ์ฌ ๋ด๋ถ๋ง์์ ํน์ ์ฌ์ดํธ๋ฅผ ์ฐจ๋จํ๊ณ ์ํธํ๋ ์ ๋ณด๋ฅผ ๊ณต์ ํ๋ ๋ฑ ๋คํธ์ํฌ ๋ณด์์ ๊ฐํํ ์ ์๋ค. ์ด๋ฅผ ๋ณด์ ์น ๊ฒ์ดํธ์จ์ด(Secure Web Gateway, SWG) ๋๋ ํ๋ก์ ๋ฐฉํ๋ฒฝ(Proxy Firewall) ์ด๋ผ๊ณ ๋ ํ๋ค.
์ ์ฌ์ง์ฒ๋ผ HTTP ํธ๋ํฝ์ ๊ตํ ๊ณผ์ ์์ ๊ณต๊ณต ์ธํฐ๋ท ์ฌ์ด์ ํ๋ฝ์๋ฅผ ๋ ์ผ๋ก์จ ๋ฐ์ด๋ฌ์ค ๊ฒ์ฌ๋ ์ฝํ
์ธ ์ ์ด ๋ฑ์ ์ํํ ์ ์๋ ๊ฒ์ด๋ค.
ํ์ง๋ง ๋ง์ฝ ํด๋ผ์ด์ธํธ์์ ์๋ฒ๋ก ๋ณด๋ผ ๋ฐ์ดํฐ๋ฅผ ์๋ฒ์ ๊ณต๊ฐํค๋ก ์ํธํํ๋ค๋ฉด, ํ๋ก์๋ ์ํธํ๋ ๋ฐ์ดํฐ๊ฐ ํ๋ก์๊ฐ ํด๋
ํ ์ ์๋ ํํ๋ก ์ ์ก๋๋ค. ์๋ฒ์ ํด๋ผ์ด์ธํธ๋ง ์๋ก์ ํค๊ฐ ์๊ธฐ ๋๋ฌธ์ด๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ํ๋ก์๋ ๋์ด์ HTTP ํค๋๋ฅผ ์ฝ์ ์ ์๊ณ ํค๋๋ฅผ ์ฝ์ ์ ์์ผ๋ ์์ฒญ์ ์ด๋๋ก ๋ณด๋ด์ผ ํ๋์ง๋ ๋ชจ๋ฅด๊ฒ ๋๋ค.
์ด๋ฌํ ์ํฉ์์ HTTPS๊ฐ ํ๋ก์์๋ ์ ๋์ํ ์ ์๊ฒ ํ๊ธฐ ์ํด ํ๋ก์์๊ฒ ์ด๋๋ก ์ ์ํ๋์ง์ ๋ํด ๋งํด์ฃผ๋ ๋ฐฉ๋ฒ์ด ํ์ํ๋ค. ๋ง์ด ์ฐ์ด๋ ๋ฐฉ๋ฒ์ HTTPS SSL ํฐ๋๋ง ํ๋กํ ์ฝ์ด๋ค.
ํด๋ผ์ด์ธํธ๋ ๋จผ์ ์์ ์ด ์ฐ๊ฒฐํ๊ณ ์ ํ๋ ์์ ํ ํธ์คํธ์ ํฌํธ๋ฅผ ์ํธํ๊ฐ ์์๋๊ธฐ ์ ํ๋ฌธ์ ํํ๋ก ์๋ ค์ค๋ค. ์ด๋ HTTP์ CONNECT๋ผ ๋ถ๋ฆฌ๋ ํ์ฅ ๋ฉ์๋๋ฅผ ํตํด ์ด๋ฃจ์ด์ง๋ค.
CONNECT๋ ์์ ํ ์ ์๋ฒ์ ํธ์คํธ ๋ช ๊ณผ ํฌํธ๋ฅผ ์ฝ๋ก ์ผ๋ก ๊ตฌ๋ถ๋ ํํ๋ก ์ ๊ณตํ๋ ํ ์ค์ ํ ์คํธ ๋ช ๋ น์ด๋ค
ํ๋ฝ์์๊ฒ ํฌ๋งํ๋ ํธ์คํธ์ ํฌํธ๋ฒํธ๋ฅผ ๋งํด์ฃผ๋ฉด ํด๋ผ์ด์ธํธ์ ์๋ฒ ์ฌ์ด์์ ๋ฐ์ดํฐ๊ฐ ์ง์ ์ ์ผ๋ก ์ค๊ฐ ์ ์๊ฒ ํด์ฃผ๋ ํฐ๋์ ๋ง๋ ๋ค. ์ด ํธ์คํธ:ํฌํธ์ ์ถ๊ฐ์ ์ผ๋ก HTTP ๋ฒ์ ๋ฌธ์์ด๊ณผ CRLF๊ฐ ์์๋๋ก ์ค๊ณ , ์์ฒญ ํค๋์ค๋ค์ด ์ด์ด์ง ๋ค์ ๋น์ค ํ๋๊ฐ ์ค๋ฉด, ๋น์ค ๋ค์์๋ ์ปค๋ฅ์
์๋ฆฝ์ ์ํ ํธ๋์
ฐ์ดํฌ ์ฑ๊ณต ํ SSL ๋ฐ์ดํฐ ์ ์ก์ด ์ด๋ฃจ์ด์ง๋ค.
ํ๋ฝ์๋ ๋ค์ ์ด ์ค๊ฐ์์ ์์ฒญ์ ํ๊ฐํ์ฌ ์ ํจํ ์์ฒญ์ด๋ฉด์ ํ๊ฐ๋ฅผ ๋ฐ์ ์ปค๋ฅ์
์ธ์ง ํ์ธํ๋ค. ์ฌ๊ธฐ์ ์ ๋ฒํ ๊ฒฝ์ฐ ํ๋ฝ์๋ ๋ชฉ์ ์ง ์๋ฒ๋ก ์ฐ๊ฒฐํ๊ณ 200 Connection Established ์๋ต์ ํด๋ผ์ด์ธํธ์๊ฒ ๋ณด๋ด์ค๋ค.