๐SSL(Secure Sockets Layer)/TLS(Transport Layer Security)
ํด๋ผ์ด์ธํธ์ ์๋ฒ๊ฐ ์๋ก ๋ฐ์ดํฐ๋ฅผ ์ํธํํ์ฌ ํต์ ํ ์ ์๋๋ก ๋๋ ๋ณด์ ํ๋กํ ์ฝ
- ํน์ ๋คํธ์ํฌ ๊ณ์ธต์ ์ํ๋ ํ๋กํ ์ฝ์ด ์๋๋ผ, ๋ ์์ ์ผ๋ก ์กด์ฌํ๋ ํ๋กํ ์ฝ
TLS๊ฐSSL์ ๋ด ๋ฒ์ (๋๋ค์์ ๋ณด์ ํ๋กํ ์ฝ์ดTLS, but ๊ณ์SSL์ด๋ผ๊ณ ๋ถ๋ฆ)- ๋์นญํค์ ๊ณต๊ฐํค ์ํธํ ๋ฐฉ์์ ์ ์ ํ ํผํฉํ ํ์ด๋ธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ
๋์นญํค์ ๊ณต๊ฐํค ์ํธํ ๋ฐฉ์์ ์กฐํฉํด์ ์ฌ์ฉํ๋ ์ด์
- ์ค์ ์ ์ก๋๋ ๋ฐ์ดํฐ์ ์ํธํ : ๋์นญํค ์ํธํ ๋ฐฉ์
- ํค ๊ตํ : ๋น๋์นญํค ์ํธํ
๐๊ณต๊ฐํค์ํธํ ๋ฐฉ์๋ง์ ์ฌ์ฉ ๋ง์ ์ ์์ด ๋ชฐ๋ฆฌ๋ ์๋ฒ๋ ๋งค์ฐ ํฐ ๋น์ฉ์ ์ง๋ถํด์ผ ํจ ๐๋์นญํค ์ํธํ ๋ฐฉ์๋ง์ ์ฌ์ฉ ๋์นญํค๋ฅผ ์๋๋ฐฉ์๊ฒ ์ ์กํ ๋, ์ํธํ๊ฐ ๋์ง ์์ ์ธํฐ๋ท์ ํตํด ํค๋ฅผ ์ ์กํ๋ ๊ฒ์ ์ํ
โ ๋์นญํค๋ฅผ ๊ณต์ ํ ๋(๋์นญํค๋ฅผ ์ํธํํ ๋)๋ ์๋๋ ๋๋ฆฌ์ง๋ง ๋ฐ์ดํฐ๋ฅผ ์์ ํ๊ฒ ์ฃผ๊ณ ๋ฐ์ ์ ์๋๊ณต๊ฐํค ์ํธํ ๋ฐฉ์์ ์ฌ์ฉ โ ์ค์ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ์ ๋๋๋์นญํค ์ํธํ ๋ฐฉ์์ ์ฌ์ฉ
๐SSL ๋์ ๊ณผ์
๐Handshake(์ ์)
- Client(๋ธ๋ผ์ฐ์ ) : โClient Helloโ ๋ฉ์ธ์ง์ ๋ค์๊ณผ ๊ฐ์ ์ ๋ณด๋ฅผ ๋ด์ ์๋ฒ๋ก ์ ์ก
- ํด๋ผ์ด์ธํธ๊ฐ ์ฌ์ฉํ๋ SSL/TLS ๋ฒ์ ์ ๋ณด
- ํด๋ผ์ด์ธํธ๊ฐ ์ง์ํ๋ ์ํธํ ๋ฐฉ์
- ํด๋ผ์ด์ธํธ๊ฐ ์๊ฐ์ ์ผ๋ก ์์ฑํ ์์์ ๋์
- Server : ์๋ต์ผ๋ก โServer Helloโ ๋ฉ์ธ์ง์ ๋ค์๊ณผ ๊ฐ์ ์ ๋ณด๋ฅผ ๋ด์ ์ ์ก
- ์๋ฒ์ ๊ณต๊ฐํค๊ฐ ๋ด๊ธด SSL ์ธ์ฆ์
- ์๋ฒ๊ฐ ์๊ฐ์ ์ผ๋ก ์์ฑํ ์์์ ๋์
- Client : ์๋ฒ๊ฐ ๋ณด๋ธ
SSL ์ธ์ฆ์๊ฐ CA ๋ฆฌ์คํธ์ ์๋์ง ํ์ธ โ CA ๋ฆฌ์คํธ์ ์๋ค๋ฉด ์ฌ์ฉ์์๊ฒ ๊ฒฝ๊ณ ๋ฉ์ธ์ง ์ถ๋ ฅ
CA ๋ฆฌ์คํธ์ ์๋์ง ์ด๋ป๊ฒ ํ์ธํ๋์?
ํด๋ผ์ด์ธํธ์ ๋ด์ฅ๋ CA์ ๊ณต๊ฐํค๋ฅผ ์ด์ฉํด์ ์ธ์ฆ์๋ฅผ ๋ณตํธํ ๋ณตํธํ์ ์ฑ๊ณต ์ โ ์ธ์ฆ์๋ CA์ ๊ฐ์ธํค๋ก ์ํธํ๋ ๋ฌธ์์์ด ์์์ ์ผ๋ก ๋ณด์ฆ์ด ๋ ๊ฒ
- Client : ์์ ์ด ์์ฑํ ๋์์ ์๋ฒ๊ฐ ์์ฑํ ๋์๋ฅผ ์ฌ์ฉํด
premaster secret key๋ฅผ ์์ฑํด ์๋ฒ์ ๊ณต๊ฐํค๋ฅผ ์ฌ์ฉํ์ฌ ์ํธํ ํ ๋ค ์๋ฒ๋ก ์ ์ก - Server : ์์ ์ ๋น๋ฐํค๋ก ํด๋ผ์ด์ธํธ๊ฐ ์ ์กํ
premaster secret key๋ฅผ ๋ณตํธํ โ ๋ณตํธํํ ๊ฐ์master secret๊ฐ์ผ๋ก ์ ์ฅ โ ์ด ๊ฐ์ ์ด์ฉํดsession key์์ฑ ์ฆ, premaster key โ master key โ session key - Handshake ๋จ๊ณ ์ข ๋ฃ
๐Session(์ธ์ )
์๋ฒ์ ํด๋ผ์ด์ธํธ๊ฐ ์ค์ ๋ก ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ๋จ๊ณ
session key: ์๋ฒ์ ํด๋ผ์ด์ธํธ๊ฐ ์๋ก ๊ณต์
session key๋ฅผ ์ด์ฉํ์ฌ ๋ฐ์ดํฐ๋ฅผ ๋์นญํค ๋ฐฉ์์ผ๋ก ์ํธํํด ๋ฐ์ดํฐ๋ฅผ ์ ์กsession key๋ฅผ ์ด์ฉํ์ฌ ๋ฐ์ดํฐ๋ฅผ ๋์นญํค ๋ฐฉ์์ผ๋ก ๋ณตํธํํด ๋ฐ์ดํฐ๋ฅผ ๋ฐ์
๐Session End(์ธ์ ์ข ๋ฃ)
- ๋ฐ์ดํฐ์ ์ ์ก์ด ๋๋๋ฉด SSL ํต์ ์ด ๋๋ฌ์์ ์๋ก์๊ฒ ์๋ฆผ
session keyํ๊ธฐ