๐ HTTPS๋? ๋ฐฑ์๋๋ฅผ ์ํ ์ํธํ ํต์ ์ ๊ธฐ๋ณธ ๊ฐ๋ ๊ณผ ์๋ฆฌ
๐ HTTPS๋? ๋ฐฑ์๋๋ฅผ ์ํ ์ํธํ ํต์ ์ ๊ธฐ๋ณธ ๊ฐ๋ ๊ณผ ์๋ฆฌ
๐ HTTP๋?
HTTP (Hypertext Transfer Protocol)
์น์์ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ๊ธฐ ์ํ ๋น์ํธํ ํต์ ํ๋กํ ์ฝ์ ๋๋ค.
ํ์ง๋ง ๋ฌธ์ ๋โฆ
- ๋ฐ์ดํฐ๊ฐ ํ๋ฌธ(Plain Text)์ผ๋ก ์ ์ก๋จ
- ์ค๊ฐ์(MITM)์ ์ํด ํ์ทจ๋ ์ํ
- ๋ฏผ๊ฐํ ์ ๋ณด(๋ก๊ทธ์ธ, ๊ฒฐ์ ๋ฑ)๋ ์ฝ๊ฒ ๋ ธ์ถ๋ ์ ์์
๐ ๊ทธ๋์ ๋ฑ์ฅํ ๊ฒ์ด ๋ฐ๋ก HTTPS์ ๋๋ค.
๐ HTTPS๋?
HTTPS (Hypertext Transfer Protocol Secure)
HTTP ์์ ์ํธํ(SSL/TLS) ๊ณ์ธต์ด ์ถ๊ฐ๋ ๋ณด์ ํ๋กํ ์ฝ์ ๋๋ค.
๐ฆ HTTPS๋ ์ธ ๊ฐ์ง๋ฅผ ๋ณด์ฅํฉ๋๋ค:
- ๊ธฐ๋ฐ์ฑ โ ๋ฐ์ดํฐ๋ฅผ ์ํธํํด์ ์ธ๋ถ ๋ ธ์ถ ์ฐจ๋จ
- ๋ฌด๊ฒฐ์ฑ โ ๋ฐ์ดํฐ๊ฐ ๋์ค์ ๋ณ๊ฒฝ๋์ง ์๋๋ก ๊ฒ์ฆ
- ์ธ์ฆ โ ํต์ ๋์์ด ์ง์ง ์๋ฒ์ธ์ง ํ์ธ
๐ HTTPS๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด?
- SSL ์ธ์ฆ์(Certificate)๋ฅผ ๊ตฌ๋งคํ๊ฑฐ๋ ๋ฌด๋ฃ๋ก ๋ฐ๊ธ ๋ฐ๊ธฐ (ex: Letโs Encrypt)
- ์๋ฒ์ ์ค์นํ๊ณ ํฌํธ 443์ ํตํด HTTPS ์์ฒญ์ ์์
- HTTPS๋ฅผ ํตํด ์ํธํ ํต์ ์์
์ธ์ฆ์๋ CA(Certificate Authority) ๋ผ๋ ์ ๋ขฐ๊ธฐ๊ด์์ ๋ฐ๊ธํฉ๋๋ค.
์: Digicert, GlobalSign, Letโs Encrypt ๋ฑ
๐ HTTPS ๋์ ์๋ฆฌ (TLS Handshake)
1. ํด๋ผ์ด์ธํธ โ ์๋ฒ
- ์ง์ํ๋ ์ํธํ ์๊ณ ๋ฆฌ์ฆ ๋ชฉ๋ก
- TLS ๋ฒ์
- ๋๋คํ ๊ฐ (Client Random)
2. ์๋ฒ โ ํด๋ผ์ด์ธํธ
- ์๋ฒ ์ธ์ฆ์ (CA๋ก๋ถํฐ ๋ฐ๊ธ๋ฐ์ ๊ฒ)
- ์๋ฒ ๋๋ค ๊ฐ (Server Random)
- ์ ํ๋ ์ํธํ ์๊ณ ๋ฆฌ์ฆ
3. ์ธ์ฆ์ ๊ฒ์ฆ
- ํด๋ผ์ด์ธํธ๋ ์๋ฒ ์ธ์ฆ์๋ฅผ ๋ฐ์ CA์ ๊ณต๊ฐํค๋ก ๋ณตํธํํ์ฌ ์ง์ ํ์ธ
- ๋ง์ฝ ์ ๋ขฐํ ์ ์๋ ์ธ์ฆ์๋ผ๋ฉด ์ฐ๊ฒฐ ์คํจ
4. Pre-Master Secret ์์ฑ
- ํด๋ผ์ด์ธํธ๋ ์๋ก์ด Pre Master Secret ๊ฐ์ ๋ง๋ค์ด ์๋ฒ์ ๊ณต๊ฐํค๋ก ์ํธํํด ์ ์ก
5. ์๋ฒ๋ ๊ฐ์ธํค๋ก ๋ณตํธํ
- ์๋ฒ๋ Pre Master Secret ๊ฐ์ ๋ฐ์ ๋ณตํธํ
- ํด๋ผ์ด์ธํธ์ ์๋ฒ๋ ์ด๋ฅผ ๋ฐํ์ผ๋ก ๊ฐ์ Master Secret์ ์์ฑ
6. ์ธ์ ํค ์์ฑ
- Master Secret์ ๊ธฐ๋ฐ์ผ๋ก ๋์นญํค(์ธ์ ํค)๋ฅผ ๋ง๋ค๊ณ
- ์ดํ ํต์ ์ ์ด ์ธ์ ํค๋ก ์ํธํํ์ฌ ์ฃผ๊ณ ๋ฐ์ (๋น ๋ฅด๊ณ ์์ ํจ)
๐ ์ํธํ ์๊ณ ๋ฆฌ์ฆ ๋ฐฉ์ ์์ฝ
๋จ๊ณ | ๋ฐฉ์ | ์ค๋ช |
---|---|---|
ํธ๋์์ดํฌ | ๊ณต๊ฐํค ์ํธํ (๋น๋์นญ) | ์์ ํ ํค ๊ตํ์ฉ |
๋ณธ๊ฒฉ ํต์ | ๋์นญํค ์ํธํ | ๋น ๋ฅธ ์๋๋ก ์ค์ ๋ฐ์ดํฐ ์ํธํ |
๐ ์ ๋ฆฌํ๋ฉด?
ํญ๋ชฉ | HTTP | HTTPS |
---|---|---|
์ํธํ | โ ์์ | โ ์์ (TLS) |
์ธ์ฆ์ ์ฌ์ฉ | โ ์์ | โ ํ์ |
๋ณด์์ฑ | ๋ฎ์ | ๋์ (๋์ฒญ/์์กฐ ๋ฐฉ์ง) |
์ฌ์ฉ ํฌํธ | 80 | 443 |
๐ ์ค๋ฌด์์ HTTPS๋ฅผ ์ ์ฉํ๋ ค๋ฉด?
- SSL ์ธ์ฆ์ ๋ฐ๊ธ๋ฐ๊ธฐ (๋ฌด๋ฃ: Letโs Encrypt, ์ ๋ฃ CA)
- Nginx ๋๋ Spring Boot์์ HTTPS ์ค์
- ๋๋ฉ์ธ ์ฐ๊ฒฐ ์, HTTP โ HTTPS ๋ฆฌ๋ค์ด๋ ํธ๋ ํจ๊ป ์ค์
๋๊ธ๋จ๊ธฐ๊ธฐ