์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- ์ฐ
- ์คํ์์ด
- StringBuilder
- ์คํ
- ์ฟ ํกERD
- ๋ฐฑ์ค11053 #ํ์ด์ฌ #python
- ๋ฐฑ์ค9093
- ์ฐ์ฐ์
- StringBuffer
- stream
- ํ๋ฐฉ์ฟผ๋ฆฌ
- ์๋ฐ
- ์
- ๋ฐฑ์ค9012
- ๋ฌธ์์ด
- ๋ฐฐ์ด
- ์ฟ ํกDB
- ๋
- ๋ฐ์ดํฐํ์
- java
- ๋ฐฑ์ค1874
- ์คํธ๋ฆผ
- Today
- Total
Tech Log ๐ ๏ธ
HTTP , HTTPS์ ํน์ง๊ณผ ์ฐจ์ด ๋ณธ๋ฌธ
HTTP ๋
HTTP๋ ์๋ก ๋ค๋ฅธ ํด๋ผ์ด์ธํธ์ ์๋ฒ ๊ฐ ํต์ ์ ์ํ ๊ธฐ์ด์ ์ธ ํต์ ๊ท์น ์ธํธ ๋๋ ํ๋กํ ์ฝ์ด๋ค.
์ฌ์ฉ์๊ฐ ์น ์๋น์ค์ ์ ์ํ๋ฉด ํด๋ผ์ด์ธํธ๋ 80๋ฒ ํฌํธ๋ฅผ ํตํด ์น ์๋ฒ์ HTTP ์์ฒญ์ ๋ณด๋ด๊ณ ์๋ต์ ๋ฐ๋๋ค. ์ด๋ ๊ฒ ํจ์ผ๋ก์จ ๋ฐ์ดํฐ๋ฅผ ์ผ๋ฐ ํ ์คํธ๋ก ๊ตํํ ์ ์๋ค.
์๋ฅผ ๋ค์ด, ์ฌ์ฉ์๊ฐ HTTP์ ์์ฒญ ์ข ๋ฅ์ธ GET์ ๋ณด๋ด๋ฉด ์๋ฒ๋ ๊ทธ์ ๋ง๋ ์๋ต ๋ฐ ์ํ ์ฝ๋๋ฅผ ๋ณด๋ธ๋ค. ์ํ ์ฝ๋ ์์๋ ๋ค์๊ณผ ๊ฐ๋ค.
200 - OK(์ ์)
400 - Bad request(์๋ชป๋ ์์ฒญ)
404 - Resource not found(๋ฆฌ์์ค๋ฅผ ์ฐพ์ ์ ์์)
HTTP๋ TCP/IP ์์์ ์๋ํ๋ ๋ฌด์ํ(stateless) ํ๋กํ ์ฝ์ด๋ฉฐ ๋ค์๊ณผ ๊ฐ์ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง๋ค.
ํ์ง๋ง HTTP๋ ํ๋ฌธ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๊ธฐ์ ์ 3์๊ฐ ๊ทธ ๋ฐ์ดํฐ๋ฅผ ์กฐํํ ์ ์๋ค๋ ๋ณด์ ์ด์๊ฐ ์๋ค.
HTTP REQUEST ๋ฐฉ์ ์ข ๋ฅ
๋ฐฉ์ | ๋ชฉ์ |
GET | ๋ฆฌ์์ค ์กฐํ |
POST | ์์ฒญ ๋ฐ์ดํฐ ์ฒ๋ฆฌ |
PUT | ๋ฆฌ์์ค ๋์ฒด(๋ฎ์ด ์ฐ๊ธฐ) , ํด๋น ๋ฆฌ์์ค๊ฐ ์์ผ๋ฉด ์์ฑ |
PATCH | ๋ฆฌ์์ค ๋ถ๋ถ ๋ณ๊ฒฝ |
DELETE | ๋ฆฌ์์ค ์ญ์ |
HTTP ๋ฒ์ ๋ณ ์ฐจ์ด
HTTP/1.0
๊ธฐ๋ณธ์ ์ผ๋ก ์ฐ๊ฒฐ์ ์๋ช ์ด ์งง์ผ๋ฉฐ HTTP ์์ฒญ๋น TCP hand-shake๊ฐ ๋ฐ์ํด์ ๊ฐ๊ฐ ์ฐ๊ฒฐ์ ์ฒ๋ฆฌํ๋ค.
์ด๋ก ์ธํด ์๋ฒ์ ์ค๋ฒํค๋๊ฐ ๋ฐ์ํ๊ณ *RTT๊ฐ ๋์ด๋๋ ๋ฌธ์ ๊ฐ ์์๋ค.
RTT(Round Trip Time) : ์ด๋ค ๋ฉ์ธ์ง๊ฐ ๋ ์ฅ์น ์ฌ์ด๋ฅผ ์๋ณตํ๋ ๋ฐ ๊ฑธ๋ฆฐ ์๊ฐ
HTTP/1.1
1.0 ๋ฒ์ ์ ๋จ์ ์ ๋ณด์ํ ํ๋กํ ์ฝ์ด๋ค. ํฌ๊ฒ 3๊ฐ์ง์ ๊ฐ์ ์ ์ด ์๋ค.
1. keep alive default
์์ฒญํ ๋๋ง๋ค TCP ์ฐ๊ฒฐ์ ํ๋ ๊ฒ์ด ์๋ keep alive ์ต์ ์ ๊ธฐ๋ณธ ์ต์ ์ ํจ์ผ๋ก์จ ๊ณ์ํด์ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์ ์ ์๋ค.
2. ํธ์คํธ ํค๋
1.1 ๋ฒ์ ๋ถํฐ ์๋ฒ๋ ์ฌ๋ฌ ๋์ ํธ์คํธ๋ฅผ ๊ฐ์ง ์ ์์ผ๋ฉฐ ํญ์ ํธ์คํธ๋ฅผ ํค๋์ ํฌํจ์์ ์์ฒญ์ ๋ณด๋ด์ผํ๋ค.
3. Persistent Connection (๋์ญํญ ์ต์ ํ)
์ง์ ํ time out ์๊ฐ ๋ด์ ๊ธฐ์กด connection์ ์ฌ์ฌ์ฉํ ์ ์๋ค.
๊ธฐ์กด์๋ ํ์ผ์ ๋ค์ด๋ก๋ ๋ฐ๋ค๊ฐ ๋๊ธฐ๋ฉด ์ฒ์๋ถํฐ ๋ฐ์์ผํ์ง๋ง, 1.1 ๋ฒ์ ๋ถํฐ ์ด์ด์ ๋ค์ ๋ค์ด๋ก๋ ๋ฐ์ ์ ์๋ค.
์ด์ธ์๋ ์์ฒญ์ ์ต์ํํ๊ธฐ ์ํ ์ฌ๋ฌ ๊ธฐ์ ๋ค์ ๋์ ํ๋ค.
1. ์ด๋ฏธ์ง ์คํ๋ผ์ดํธ
ํ๋์ ์ด๋ฏธ์ง๋ง ๋ค์ด๋ฐ๊ณ ์ฌ๋ฌ ๊ฐ์ ์ด๋ฏธ์ง๋ฅผ ๋ค์ด๋ฐ์ ๋ฏํ ํจ๊ณผ๋ฅผ ๋ธ๋ค.
2. ์ฝ๋ ์์ถ
3. Base64 ์ธ์ฝ๋ฉ
์ด๋ฏธ์ง ํ์ผ์ 64์ง๋ฒ์ผ๋ก ์ด๋ฃจ์ด์ง ๋ฌธ์์ด๋ก ์ธ์ฝ๋ฉํด์ ์ด๋ฏธ์ง ์๋ฒ์ ๋ํ HTTP ์์ฒญ์ ์ค์ธ๋ค.
ํ์ง๋ง ํ์ผ ํฌ๊ธฐ๊ฐ ๋ ์ปค์ง๋ค๋ ๋จ์ ์ด ์๋ค.
HTTP/1.1์ ๋ฌธ์ ์ : HOL
๊ทธ๋ฌ๋ HTTP/1.1 ์ HOL(Head Of Line Blocking)์ด๋ผ๋ ๊ณ ์ง์ ์ธ ๋ฌธ์ ๊ฐ ์์๋ค.
HTTP/1.1๋ถํฐ๋ ์ฌ๋ฌ ์์ฒญ์ ๋ณด๋ด๊ณ ์์๋๋ก ์๋ต์ ๋ฐ๋ ํ์ดํ๋ผ์ด๋์ด ๊ฐ๋ฅํด์ก๋๋ฐ ์ด๋ก ์ธํด ์น๋ช ์ ์ธ ๋ฌธ์ ๊ฐ ์๊ฒผ๋ค.
์๋ฅผ ๋ค์ด ํ์ดํ๋ผ์ธ์ผ๋ก ์ธํด 1๋ฒ ์์ฒญ์ ๋ฌธ์ ๊ฐ ์๊ธฐ๋ฉด ๊ทธ ๋ค์ ์์ฒญ์ด ์ค์ค์ด ์ง์ฐ๋๋ ๊ฒ์ด๋ค.
RFC ๋ฌธ์ ์์น์ ๋ฐ๋ผ ์์ฒญ์ด ์จ ์์๋๋ก ์ฒ๋ฆฌํด์ผ ๋๊ธฐ ๋๋ฌธ์ ๋ค์๊ณผ ๊ฐ์ ๋ฌธ์ ๊ฐ ์๊ฒผ๋ค.
HTTP/2.0
๋ฐ์ด๋๋ฆฌ ํฌ๋งท ๊ณ์ธต
๋ ์์ ํ๋ ์์ผ๋ก ๋ฉ์ธ์ง๋ฅผ ์ ์กํ๊ธฐ ์ํด ์ดํ๋ฆฌ์ผ์ด์ ๊ณผ ํต์ ๊ณ์ธต ์ฌ์ด์ ๋ฐ์ด๋๋ฆฌ ํฌ๋งท ๊ณ์ธต์ ์ถ๊ฐํ์๋ค.
๋ฉํฐ ํ๋ ์ฑ
๋จ์ผ TCP ์ฐ๊ฒฐ์์ ์คํธ๋ฆผ์ ํตํด ์ฌ๋ฌ HTTP ์์ฒญ๊ณผ ์๋ต์ ๋น๋๊ธฐ์ ์ผ๋ก ๋ฐ์ ์ ์๋ค.
๊ธฐ์กด์๋ ๋ค์ค TCP ์ฐ๊ฒฐ์ ํตํด์๋ง ๋ณ๋ ฌ ์์ฒญ์ด ๊ฐ๋ฅํ์ง๋ง HTTP/2.0 ๋ถํฐ๋ ๋ฆฌ์์ค๋ฅผ ์์ ํ๋ ์์ผ๋ก ๋๋๊ณ ์คํธ๋ฆผ์ผ๋ก ํ๋ ์์ ๋ณ๋ ฌ์ ์ผ๋ก ์ ๋ฌํ๋ค. ์ด๋ฅผ ํตํด HTTP/1.1์ ๋ฌธ์ ์ธ HOL์ ํด๊ฒฐํ ์ ์๋ค.
๋ํ ๊ฐ๊ฐ์ ํ๋ ์์ ์คํธ๋ฆผ id๊ฐ ์๊ธฐ ๋๋ฌธ์ ์๋ต ์์์ ์๊ด์์ด ๋ฐ์ดํฐ๋ฅผ ์กฐ๋ฆฝํ ์ ์๋ค.
์๋ฒ ํธ์
ํด๋ผ์ด์ธํธ์ ๋ณ๋ ์์ฒญ์ด ์๋๋ผ๋ ์๋ฒ๊ฐ ํ์ํ ๊ฒ ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ๋ฏธ๋ฆฌ ์๋ต์ ๊ฐ์ด ๋ณด๋ผ ์ ์๋ค.
ํค๋ ์์ถ
๋ฌด๊ฑฐ์ด ํค๋๋ฅผ ์ต์ํํ๊ธฐ ์ํด ์ค๋ณต๋ ํค๋๋ ํ๋ฒ๋ง ๋ณด๋ด๊ณ ์ค๋ณต๋์ง ์์ ๊ฐ์ *ํํ๋ง ์ธ์ฝ๋ฉ์ ํตํด ์์ถ์ํจ๋ค.
ํํ๋ง ์ธ์ฝ๋ฉ: ๋ฌธ์์ด์ ๋ฌธ์ ๋จ์๋ก ์ชผ๊ฐ์ ๋น๋๊ฐ ๋์ ์ ๋ณด๋ ์ ์ ๋นํธ์๋ฅผ ์ฌ์ฉํ๊ณ , ๋น๋๊ฐ ๋ฎ์ ์ ๋ณด๋ ๋นํธ์๋ฅผ ๋ง์ด ์ฌ์ฉํ๋ค.
์ฐ์ ์์
์๋ฒ์์ ์ํ๋ ์์๋๋ก ์ฐ์ ์์๋ฅผ ์ ํด์ ๋ฆฌ์์ค๋ฅผ ์ ๋ฌํ ์ ์๋ค.
HTTP/3.0
TCP ์ฐ๊ฒฐ๋ก ์ธํ ์ค๋ฒํค๋ ๋ฐ RTT ์๊ฐ ์ฆ๊ฐ์ ๋ฌธ์ ์ ์ ํด๊ฒฐํ ๋ฒ์ ์ด๋ค.
์ด ๋ฒ์ ๋ถํฐ UDP ํ๋กํ ์ฝ ๊ธฐ๋ฐ์ QUIC(Quick UDP Internet Connections)๋ก ๋์ํ๋ฉฐ ์ด์ ๋ฒ์ ๋ค์ ์ฅ์ , ํน์ง๋ค์ ๋๋ถ๋ถ ๊ฐ์ง๊ณ ์๋ค.
๋ํ QUIC๋ TLS๋ก ์ํธํ ํต์ ์ ๊ตฌ์ถํ ๋ hand shake๋ฅผ ํตํด ์๋ฒ์์ ์ฐ๊ฒฐ๊น์ง ์งํํจ์ผ๋ก์จ 1-RTT๋ง์ ์ฐ๊ฒฐ์ ์๋ฆฝํ ์ ์๋ค.
๊ธฐ์กด UDP๋ ๋ฐ์ดํฐ์ ๋ฌด๊ฒฐ์ฑ์ ๋ณด์ฅํ์ง ๋ชปํ๋ ํ๋กํ ์ฝ์ด์์ง๋ง, QUIC๋ ์๋ฌ๋ฅผ ๊ฒ์ถํ๊ณ ์์ ํ ์ ์๋ ์๋ฐฉํฅ ์ค๋ฅ ์ ์ด ๋ฉ์ปค๋์ฆ์ ๊ฐ์ง๊ณ ์๋ค.
HTTPS์์ ์ฐจ์ด์
HTTP์ ๋ณด์์ ์ธ ํ๊ณ๋ฅผ SSL/TLS๋ฅผ ์ฌ์ฉํจ์ผ๋ก์จ ํด๊ฒฐํ ๊ฒ์ด HTTPS์ด๋ค.
SSL์ ์๋ฒ์ ํด๋ผ์ด์ธํธ ์ฌ์ด์ ์ํธํ ๋ ์ฐ๊ฒฐ์ ๋ง๋ค์ด์ฃผ๊ณ ๋ฐ์ดํฐ๋ค์ด ๋๋๋๋ ๊ฒ์ ๋ฐฉ์งํ๋ค.
SSL ์ธ์ฆ์๋ ํด๋ผ์ด์ธํธ์ ์๋ฒ ๊ฐ ์ฃผ๊ณ ๋ฐ๋ ๋ฐ์ดํฐ๋ค์ ์ํธํํ๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ๋ฐ์ดํฐ๊ฐ ํ์ทจ๋๋ค ํ๋๋ผ๋ ์ํธํ ๋ ์ํ์ด๊ธฐ ๋๋ฌธ์ ์ 3์๋ ์ ์ ์๋ค.
๋ํ SSL ์ธ์๋ TLS ํ๋กํ ์ฝ์ ํตํด์๋ ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ์ ์ ๊ณตํจ์ผ๋ก์จ ๋ณด์์ ๊ฐํํ๋ค.
HTTPS๋ ๋ณด์ ์์ ์ด์ ๋ ์์ง๋ง ๊ตฌ๊ธ์ด ์์ ํ๋ค๊ณ ์ ๋ขฐํ๋ ์ฌ์ดํธ๋ผ๋ ๋ฐ์ฆ์ด๊ธฐ ๋๋ฌธ์ ๊ฒ์์์ง ์ต์ ํ(SEO)์ธก๋ฉด์์๋ ๋ง์ ์ด์ ์ ์ป์ ์ ์๋ค.
HTTPS์ ๋์ ๋ฐฉ์
HTTPS์ ๊ฐ์ฅ ํฐ ํน์ง์ ์ํธํ๋ฅผ ํ๋ค๋ ์ ์ธ๋ฐ ์ํธํ ๋ฐฉ์์ ํฌ๊ฒ ๋๊ฐ์ง๋ก ๋ถ๋ฅ๋๋ค.
์ํธํ๋ฅผ ํตํด ์๋๋ ์ก์์ ์๋ฅผ ์ ์ธํ๊ณ ๋ ๋ฐ์ดํฐ ์ ์ถ์ ๋ฐฉ์งํ๊ณ ๋ฐ์ดํฐ์ ๋ฌด๊ฒฐ์ฑ์ ๋ณด์ฅํ๋ค.
๋์นญํค ์ํธํ
ํด๋ผ์ด์ธํธ์ ์๋ฒ๊ฐ ๋์ผํ ํค๋ฅผ ํ๋๋ง ์ฌ์ฉํด์ ์ํธํํ๋ค.
ํค๊ฐ ๋ ธ์ถ๋ ์ํ์ด ์์ง๋ง ์ฐ์ฐ ์๋๊ฐ ๋น ๋ฅด๋ค๋ ์ฅ์ ์ด ์๋ค.
ex)
Plaintext + key = ciphertext: hello + 2jd8932kd8 = X5xJCSycg14=
Ciphertext + key = plaintext: X5xJCSycg14= + 2jd8932kd8 = hello
-> ๋ง์ฝ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ ๊ณผ์ ์์ key๋ฅผ ํ์ทจ๋นํ๋ฉด ์ 3์๊ฐ ๋ฐ์ดํฐ๋ฅผ ๋ณผ ์ ์๋ค.
๋น๋์นญํค ์ํธํ
๋ ๊ฐ์ ๋ค๋ฅธ ํค๋ก ๋ฐ์ดํฐ๋ฅผ ์ํธํํ๊ฑฐ๋ ๋ณตํธํํ๊ณ ๊ณต๊ฐํค๋ ๋๊ตฌ๋ ์ฌ์ฉํ ์ ์๋ค.
์๋ฅผ ๋ค์ด ๊ณต๊ฐํค๋ก ์ํธํ๋ ๋ฐ์ดํฐ๋ ๊ฐ์ธํค๋ก๋ง ๋ณตํธํ๊ฐ ๊ฐ๋ฅํ๋ค.
์ํธํ๋ฅผ ๊ฐ์ธํค๋ก ํ ๊ฒ์ธ์ง ๊ณต๊ฐํค๋ก ํ ๊ฒ์ธ์ง์ ๋ฐ๋ผ ์ป๋ ํจ๊ณผ๊ฐ ๋ฌ๋ผ์ง๋ค.
๊ณต๊ฐํค ์ํธํ: ๊ฐ์ธํค๋ก๋ง ๋ณตํธํํ ์ ์์ผ๋ฏ๋ก ํด๋น ๋ฐ์ดํฐ๋ ์์ ๋ง ํ์ธ ๊ฐ๋ฅํ๋ค.
๋์นญํค ์ํธํ ๋ฐฉ์์ ๋ฐ์ดํฐ ์ ์ก ๊ณผ์ ์์ ํค๊ฐ ํ์ทจ๋ ์ํ์ด ์์์ง๋ง ๊ณต๊ฐํค ์ํธํ ๋ฐฉ์์ ๊ณต๊ฐํค๊ฐ ํ์ทจ๋๋ ์๊ด์ด ์๋ค.
์์ ์ธก์์๋ ๊ณต๊ฐํค๋ก ์ํธํ ํ ๋ค์์ ๋ค์ ๊ฐ์ธํค๋ก ๋ณตํธํํด์ ๋ฐ์ดํฐ๋ฅผ ํ์ธํ ์ ์๋ค.
์ 3์๋ ๊ฐ์ธํค๋ฅผ ๊ฐ์ง๊ณ ์์ง ์๊ธฐ ๋๋ฌธ์ ๊ณต๊ฐํค๋ก ์ํธํ๋ ๋ฐ์ดํฐ๋ฅผ ํ์ทจํ๋๋ผ๋ ๋ฐ์ดํฐ๋ฅผ ํ์ธํ ์ ์๋ค.
๊ฐ์ธํค ์ํธํ: ๋ชจ๋์๊ฒ ๊ณต๊ฐ๋ ๊ณต๊ฐํค๋ก ๋ณตํธํํ๋ฏ๋ก ์ธ์ฆ๋ ์ ๋ณด์์ ์ ๋ขฐํ ์ ์๋ค.
A๋ ์๋ณธ ๋ฐ์ดํฐ์ ๊ฐ์ธํค๋ก ์ํธํ๋ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ค. ๊ทธ๋ฌ๋ฉด B์์๋ ๊ณต๊ฐํค๋ฅผ ํตํด ์ํธํ๋ ๋ฐ์ดํฐ๋ฅผ ๋ณตํธํํ๊ณ ํด๋น ๋ฐ์ดํฐ๊ฐ ์๋ณธ ๋ฐ์ดํฐ์ ์ผ์นํ๋ฉด ์ ๋ขฐํ ์ ์๋ ์ ๋ณด์์ ์ธ์ฆํ ์ ์๋ค.
ํ์ง๋ง ๊ณต๊ฐํค๋ก ๋ณตํธํ๋ฅผ ํ์์ ๋ ์๋ณธ ๋ฐ์ดํฐ์ ๋ค๋ฅด๋ค๋ฉด ํด๋น ๋ฐ์ดํฐ๋ A๊ฐ ์๋ ์ 3์๊ฐ ์ํธํํ ๋ฐ์ดํฐ์ด๋ฏ๋ก ์ ๋ขฐํ ์ ์๋ค.
TLS Hand Shaking
SSL์ SSL 1.0 ๋ถํฐ ์์ํด์ ๋ช ์นญ์ด ๋ฐ๋์ด TLS 1.3 ๋ฒ์ ์ ์ด๋ฅด๋ ๋ค.
TLS๋ ์ ์ก ๊ณ์ธต์์ ์ 3์๊ฐ ๋ฉ์ธ์ง๋ฅผ ๋์ฒญํ๊ฑฐ๋ ๋ณ์กฐํ์ง ๋ชปํ๊ฒ ๋ณด์์ ์ ๊ณตํ๋ ํ๋กํ ์ฝ์ด๋ค.
์ด ๊ณผ์ ์์ ๋น๋์นญํค ์ํธํ์ ๋์นญํค ์ํธํ๋ฅผ ๋ชจ๋ ์ฌ์ฉํ์ฌ์ ๋น ๋ฅธ ์ฐ์ฐ ์๋์ ์์ ์ฑ์ ์ ๊ณตํ๋ค.
๋จผ์ ์ฒ์ ์ฐ๊ฒฐ์ด ์งํ๋ ๋๋ ์์ ํ ์ฐ๊ฒฐ์ ์ํด ์๋๊ฐ ๋ค์ ๋๋ฆฐ ๋น๋์นญํค ์ํธํ๋ฅผ ์ฌ์ฉํ๊ณ , ์ดํ์๋ ๋น ๋ฅธ ํต์ ์ ์ํด์ ๋์นญํค๋ฅผ ์ฌ์ฉํ๋ค.
Client : Client Hello
ํจํท์ TLS Version, Client๊ฐ ์ง์ํ๋ ์ํธํ ๋ฐฉ์(์ฌ์ดํผ์ํธ), Client Random Data(ํด๋ผ์ด์ธํธ์์ ์์ฑํ ๋์๋ก ๋์นญํค๋ฅผ ๋ง๋ค ๋ ์ฌ์ฉ), ์์ *DH๋ณ์, SNI(์๋ฒ๋ช ) ๋ฅผ ๋ด์์ ๋ณด๋ธ๋ค.
DH ๋งค๊ฐ๋ณ์ : DH๋ Die-Hellman์ ์๋ฏธํ๋ฉฐ Die-Hellman ์๊ณ ๋ฆฌ์ฆ์ ์๋ก ๊ณต๊ฐ๊ฐ ๊ณต์ ,๋น๋ฐ๊ฐ๊ณผ ํผํฉ, ํผํฉ๊ฐ๊ณผ ๊ณต์ , ๊ฐ์์ ๋น๋ฐ๊ฐ๊ณผ ํผํฉํด์ ๊ณตํต์ ์ํธํค๋ฅผ ๋ง๋๋ ์๊ณ ๋ฆฌ์ฆ์ด๋ค. ๋ชจ๋ TLS ํต์ ์ด DH ๋งค๊ฐ๋ณ์๋ฅผ ์ฌ์ฉํ์ง๋ ์์
Server Hello, EncryptedExtensions, Certificate, CertificateVerify
์๋ฒ๋ ํด๋ผ์ด์ธํธ๋ก๋ถํฐ ๋ฐ์ ์ต์ ์ ํ์ธํ๊ณ ๊ณต๊ฐํค๊ฐ ํฌํจ๋ ์ธ์ฆ์์, ์๋ฒ๋๋ค๊ฐ, DH ๋งค๊ฐ๋ณ์๋ฅผ ๋ธ๋ผ์ฐ์ ์ ๋ณด๋ธ๋ค.
Client : Client Key Exchange
ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ๋ก๋ถํฐ ๋ฐ์ DH๋งค๊ฐ๋ณ์(ํน์ ๊ณต๊ฐํค)๋ฅผ ์ด์ฉํ์ฌ ์ธ์ ํค๋ฅผ ์์ฑํ๋ค.
์ด๋ ๊ฒ ์์ฑ๋ ์ธ์ ํค๋ฅผ ๋ค์ ๊ณต๊ฐํค๋ก ์ํธํํด์ ์๋ฒ์ ๋ณด๋ด๋ฉด, ์๋ฒ๋ ๊ฐ์ธํค๋ก ๋ณตํธํ๋ฅผ ํ ์ ์๋ค.
Server & Client : Finished
ํด๋ผ์ด์ธํธ์ ์๋ฒ์ ์ธ์ ํค๋ฅผ ๊ธฐ๋ฐ์ผ๋กํ ๋์นญ ์ํธํ๋ ํต์ ์ด ์์๋๋ค.
๋ง์ฝ ์ธ์ ํค๊ฐ ์์ฑ๋ ์ดํ ๋ค์ ๊ทธ ์ฌ์ดํธ์ ๋ฐฉ๋ฌธํ๋ค๋ฉด, ๋ฏธ๋ฆฌ ๋ง๋ค์ด๋์ ์ธ์ ํค๋ก ํต์ ํ๊ธฐ ๋๋ฌธ์ ์ธ์ฆ์ ๋๋ ๋น์ฉ์ ์๋ค.
'Computer Science > ๋คํธ์ํฌ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์ธ์ฆ, ์ธ๊ฐ ๋ฐฉ์์ ์ข ๋ฅ - ์ฟ ํค , ์ธ์ , JWT(Json Web Token) (0) | 2024.02.29 |
---|---|
๋ก๋ ๋ฐธ๋ฐ์(Load Balancer)๋ (๊ฐ๋ , ์๊ณ ๋ฆฌ์ฆ ์ข ๋ฅ) (0) | 2024.02.21 |
DNS๋? (0) | 2024.02.19 |
TCP์ UDP (0) | 2024.02.07 |
๋คํธ์ํฌ ๊ฐ๋ ์ ๋ฆฌ (ํ๋กํ ์ฝ , ๊ณ์ธต ๊ตฌ์กฐ , IP) (0) | 2024.01.30 |