HTTP๋?
ํ์ดํผํ ์คํธ ์ ์ก ํ๋กํ ์ฝ๋ก ์น ์๋ฒ ๋ฐ ์น ๋ธ๋ผ์ฐ์ ์ํธ๊ฐ์ ๋ฐ์ดํฐ ์ ์ก์ ์ํ ์์ฉ๊ณ์ธต ํ๋กํ ์ฝ์ด๋ค.
์ธํฐ๋ท์์์ ์ปค๋ฎค๋์ผ์ด์ ์ ์ฌ์ฉํ๋ ํ์ ์ค ํ๋๋ค. ์ฃผ์์ http๋ฅผ ๋ช ์ํด์ผ ๋ง๋ ํ์์ ๋ง๊ฒ ํด๋ ํ ์ ์๋ค.
HTTPS๋?
http์ ๋ณด์ ์ฒ๋ฆฌ๊ฐ ๋ ๋ฒ์ ์ด https๋ค. (์ ๋ขฐํ ์ ์๋ HTTP)
์์ฆ์ ์น์ ๊ธฐ๋ณธ ์คํ์ด๋ผ๊ณ ๋ด๋ ๋๋ค. ์๋๋ฉด api๋ฅผ ์ฌ์ฉํ๋ ค๊ณ ํด๋ https๊ฐ ๋์ด์์ง ์์ผ๋ฉด api๋ฅผ ์ ์ฒญํ ์ ์๊ธฐ ๋๋ฌธ์ด๋ค.
https๋ ์ดํ๋ฆฌ์ผ์ด์ ๊ณ์ธต๊ณผ ์ ์ก๊ณ์ธต ์ฌ์ด์ SSL/TLS ์ ๋ขฐ๊ณ์ธต์ ์ถ๊ฐํด โํต์ ์ ์ํธํโํ๋ค.
HTTPS๋ฅผ ์ฌ์ฉํ๋ ์ด์
๋ด๊ฐ ์ด๋ค ์น ์ฌ์ดํธ์ ๋ณด๋ด๋ ์ ๋ณด๋ฅผ ๋ค๋ฅธ ๋๊ตฐ๊ฐ๊ฐ ํ์ณ๋ณด์ง ๋ชปํ๊ฒ ํ๋ค.
: ์์๋จน์ ์ ์๊ฒ ๋ณ๊ฒฝํด ํ์ณ๋ณด๋๋ผ๋ ์ดํดํ ์ ์์.
๋ด๊ฐ ์ ์ํ ์ฌ์ดํธ๊ฐ ์ ๋ขฐํ ์ ์๋ ์ฌ์ดํธ์ธ์ง๋ฅผ ํ๋ณํด์ค๋ค.
: ๊ธฐ๊ด์ผ๋ก๋ถํฐ ๊ฒ์ฆ๋ ์ฌ์ดํธ๋ง ์ฃผ์์ https ์ฌ์ฉ์ด ํ๊ฐ๋๋ค.
HTTPS์ ์๋ฆฌ
Keyword : ๋์นญํค
, ๋น๋์นญํค
๊ธฐ์กด์ ์ฌ์ฉํ๋ ๋ฐฉ์์ ๋์นญํค์ด๋ค. ๋์นญํค๋ ์๋ฒ์ ํด๋ผ์ด์ธํธ๊ฐ ๊ฐ์ ํค๋ฅผ ๊ฐ์ง๊ณ ์๋ ๋ฐฉ์์ด๋ค.
์๋๋ฐฉ์๊ฒ ๋ณด๋ด๊ณ ์ ํ๋ ๋ฉ์ธ์ง๋ฅผ ํค์ ํจ๊ป ์ํธํํ๋ค. ๋์ผํ ํค๋ก ์ํธํํ๊ณ , ๋์ผํ ํค๋ก ๋ณตํธํํด ๋ฉ์ธ์ง๋ฅผ ๋ถ์ํ๋ค.
์ฌ๊ธฐ์์ ๋ฌธ์ ์ ์, ์ด๋ป๊ฒ ์๋ฐฉํฅ์์ ์ด ๋์นญํค๋ฅผ ๊ณต์ ํ๋๋์ด๋ค. ํค๋ฅผ ์์ฑํด์ ๊ณต์ ํ๋ ๊ณผ์ ์์ ๋๊ตฐ๊ฐ ์ด ํค๋ฅผ ๊ฐ๋ก์ฑ๋ค๋ฉด ๊ฒฐ๊ตญ์ ์ํธํํ๋ ์ด์ ๊ฐ ์์ด์ง๋ค๋ ๋ฌธ์ ๊ฐ ์๋ค.
์ด ํ๊ณ๋ฅผ ๋ณด์ํ๊ธฐ ์ํ ๋ฐฉ์์ด ๊ฐ๋ฐ๋์๋ค. ๋ฐ๋ก ๋น๋์นญํค(๊ณต๊ฐํค)๋ค. ์ด ๋ฐฉ์์ ๋ ์ข ๋ฅ์ ๋ค๋ฅธ ํค๋ฅผ ์ฌ์ฉํ๋๋ฐ, aํค๋ก ์ํธํ๋ฅผ ํ๋ฉด bํค๋ก๋ง ๋ณตํธํ ํ ์ ์๋ค.
์๋ฒ๋ ์ด ๋ ํค์ค ํ๋๋ ๋น๋ฐ๋ก ๋ณด๊ดํ๊ณ (๊ฐ์ธํค) ๋ค๋ฅธ ํค๋ ๋๊ตฌ๋ ๋ณผ ์ ์๊ฒ ๊ณต๊ฐํ๋ค.(๊ณต๊ฐํค)
์ฌ์ฉ์๋ ์ด ๊ณต๊ฐํค๋ก ๋น๋ฐ๋ฒํธ๋ฅผ ์ํธํํด์ ๋ค์ด๋ฒ์ ๋ณด๋ธ๋ค.
๋๊ฐ ๊ฐ๋ก์ฑ๋ค๊ณ ํด๋ ๊ฐ์ ๊ณต๊ฐํค๋ก๋ ๋น๋ฐ๋ฒํธ๋ฅผ ํ์ด๋ผ ์ ์๊ธฐ ๋๋ฌธ์ ๊ฐ์ธ์ ๋ณด๋ค์ ์์ฌํ๊ณ ๋ณด๋ผ ์ ์๋ค.
์ด ์ฌ์ดํธ๊ฐ ์์ ํ ์ฌ์ดํธ์ธ์ง ์ด๋ป๊ฒ ์๋?
์๋ฒ์์ ์ฐ๋ฆฌ์๊ฒ ๋ณด๋ด๋ ์ ๋ณด๋ค์ ์ผ๋ถ๋ ์๋ฒ์ ๊ฐ์ธํค๋ก ์ํธํ ๋์ด์๊ธฐ ๋๋ฌธ์ ์๋ฒ์ ๊ณต๊ฐํค๋ฅผ ์ด์ฉํด ๋ณผ ์ ์๋ค.
์ด์ํ ์๋ฒ์์ ์จ ์ ๋ณด๋ค์ ์๋ฒ์ ๊ณต๊ฐํค๋ก ํ๋ฆฌ์ง ์๊ธฐ ๋๋ฌธ์ ๊ฑธ๋ฌ๋ผ ์ ์๋ค.
์ ๋ขฐํ ์ ์๋ ๊ธฐ๊ด์์ ๋ค์ด๋ฒ์ ๊ณต๊ฐํค๋ง ๊ฒ์ฆํด์ค๋ค๋ฉด ์์ ํ๊ฒ ๊ฐ๋ฐํ ์ ์๋ค.
https๊ฐ ๊ตฌํ๋๋ ๊ณผ์
์๋ฒ๊ฐ ์ฐ๋ฆฌ์๊ฒ ๋ฟ๋ฆฐ ๊ณต๊ฐํค๊ฐ ์ง์ง์ธ์ง๋ฅผ ํ์ธํ๋ ์์
๊ณต์ธ๋ ๋ฏผ๊ฐ๊ธฐ๊ด์ด ์๋ค(CA) ์๊ฒฉํ ์ธ์ฆ๊ณผ์ ์ ๊ฑฐ์ณ์ผ CA๊ฐ ๋ ์ ์๋ค. ๋๋ถ๋ถ์ ๋ธ๋ผ์ฐ์ ์์๋ CA๊ฐ ๋ด์ฅ๋์ด ์๋ค.
๋ด ๋ธ๋ผ์ฐ์ ๋ฅผ ํด๋ผ์ด์ธํธ๋ผ ํ์. ์๋ฒ๋ฅผ ์์ง ์ ๋ขฐํ ์ ์๊ธฐ ๋๋ฌธ์ ์ ๋ขฐํ๋ ๊ณผ์ ์ handshake๋ผ๊ณ ํ๋ค.
๋ธ๋ผ์ฐ์ ์์ ๋ค์ด๋ฒ์ ์ ์ํ ๋ ์ด๋ค๊ณผ์ ?(https ์ธ์ฆ ๊ณผ์ )
1. ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์๊ฒ ๋ฌด์์์ ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ธ๋ค.
2. ์๋ฒ๋ ๋ฌด์์์ ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ด๋ฉด์ ์ธ์ฆ์๋ฅผ ๋ณด๋ธ๋ค. (handshake)
3. ํด๋ผ์ด์ธํธ๋ ์ธ์ฆ์๊ฐ ์ง์ง์ธ์ง ๋ธ๋ผ์ฐ์ ์ ๋ด์ฅ๋ CA๋ฆฌ์คํธ์ ์ ๋ณด๋ฅผ ํตํด ํ์ธํ๋ค. (๋น๋์นญํค ์์คํ ์ด์ฉ)
4. CA์ ์ธ์ฆ์ ๋ฐ์ ์ธ์ฆ์๋ค์ ํด๋น CA์ ๊ฐ์ธํค๋ก ์ํธํ๋์ด์๋ค. ์ด๊ฒ ์ง์ง๋ผ๋ฉด ๋ธ๋ผ์ฐ์ ์ ์ ์ฅ๋ CA์ ๊ณต๊ฐํค๋ก ๋ณตํธํ ํ ์ ์๋ค.
(๊ณต๊ฐํค๋ก ๋ณตํธํํ ์ ์๋ ์ธ์ฆ์๋ฅผ ๋ฐ๊ธํ ์ ์๋ ๊ฑด ๊ฐ์ธํค๋ฅผ ๊ฐ์ง CA๋ฟ์ด๊ธฐ ๋๋ฌธ์ด๋ค)
5. ์ฑ๊ณต์ ์ผ๋ก ๋ณตํธํ๋ ์ธ์ฆ์์๋ ์๋ฒ์ ๊ณต๊ฐํค๊ฐ ํฌํจ๋๋ค.
6. ๋น๋์นญํค ๋ฐฉ์์ผ๋ก ๋ฉ์ธ์ง๋ฅผ ์ํธํ, ๋ณตํธํํ๋๊ฑด ๋์นญํค๋ณด๋ค ํจ์ฌ ๋ ๋น์ธ๋ค.
7. ์ด๋ฐ์ ์์ฑ๋ ๋ ๋ฌด์์์ ๋ฐ์ดํฐ(1,2๊ณผ์ )๋ฅผ ์ด์ฉํด ์์ํค๋ฅผ ๋ง๋ค๊ณ , ์๋ฒ์ ๊ณต๊ฐํค๋ก ์ํธํํด์ ์๋ฒ๋ก ๋ณด๋ธ๋ค. ์ด ์ผ๋ จ์ ๊ณผ์ ์ ์ด์ฉํด ๋์นญํค๋ฅผ ๋ง๋ ๋ค!
8. ์ด ๋์นญํค๋ ๋๋ง ์๊ณ ์๊ธฐ ๋๋ฌธ์ ์ด์ ๋์นญํค๋ฅผ ์ด์ฉํด ์ ๋ณด๋ฅผ ๊ตํํ๋ค.
์ฆ.. ๋น์ฉ ๋ฌธ์ ๋ก ์ธํด ๋น๋์นญํค๋ฅผ ์ด์ฉํด ํ๋ค๊ฒ ํค๊ตํํด์ ๋์นญํค๋ฅผ ๋ง๋ค๊ณ ! ๋์นญํค๋ฅผ ์ด์ฉํด ์ ๋ณด๋ฅผ ๊ตํํ๋ค

์ฐธ๊ณ
- ์ถ์ฒ:๋ฏธ๋์ค์ ์์ ์ด์ผ๊ธฐ๋ค
- HTTPS๊ฐ ๋ญ๊ณ ์ ์ฐ๋์? (Feat. ๋์นญํค vs. ๋น๋์นญํค)
์ ํํ ์ ๋ณด๋ฅผ ์ ๋ฌํ๊ณ ์ ์ต์ ์ ๋คํ์ง๋ง, ํ๋ฆฐ ๋ถ๋ถ์ด ์์ ์ ์์ต๋๋ค!
ํ๋ฆฐ ๋ถ๋ถ์ด ์์ ์ ์ง์ ํด์ฃผ์๋ฉด ๊ฐ์ฌํ ๋ฐ์ํ๊ฒ ์ต๋๋ค๐