Skip to content

Latest commit

ย 

History

History
85 lines (45 loc) ยท 3.85 KB

File metadata and controls

85 lines (45 loc) ยท 3.85 KB

HTTP & HTTPS


  • HTTP(HyperText Transfer Protocol)

    ์ธํ„ฐ๋„ท ์ƒ์—์„œ ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„๊ฐ€ ์ž์›์„ ์ฃผ๊ณ  ๋ฐ›์„ ๋•Œ ์“ฐ๋Š” ํ†ต์‹  ๊ทœ์•ฝ


HTTP๋Š” ํ…์ŠคํŠธ ๊ตํ™˜์ด๋ฏ€๋กœ, ๋ˆ„๊ตฐ๊ฐ€ ๋„คํŠธ์›Œํฌ์—์„œ ์‹ ํ˜ธ๋ฅผ ๊ฐ€๋กœ์ฑ„๋ฉด ๋‚ด์šฉ์ด ๋…ธ์ถœ๋˜๋Š” ๋ณด์•ˆ ์ด์Šˆ๊ฐ€ ์กด์žฌํ•œ๋‹ค.

์ด๋Ÿฐ ๋ณด์•ˆ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ด์ฃผ๋Š” ํ”„๋กœํ† ์ฝœ์ด 'HTTPS'


HTTP์˜ ๋ณด์•ˆ ์ทจ์•ฝ์ 

  1. ๋„์ฒญ์ด ๊ฐ€๋Šฅํ•˜๋‹ค
  • ํ‰๋ฌธ์œผ๋กœ ํ†ต์‹ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋„์ฒญ์ด ๊ฐ€๋Šฅํ•˜๋‹ค
  • ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด์„œ ํ†ต์‹ ์ž์ฒด๋ฅผ์•”ํ˜ธํ™”(HTTPS)ํ•˜๊ฑฐ๋‚˜ ๋ฐ์ดํ„ฐ๋ฅผ ์•”ํ˜ธํ™” ํ•˜๋Š” ๋ฐฉ๋ฒ•๋“ฑ์ด ์žˆ๋‹ค
  • ๋ฐ์ดํ„ฐ๋ฅผ ์•”ํ˜ธํ™” ํ•˜๋Š” ๊ฒฝ์šฐ ์ˆ˜์‹ ์ธก์—์„œ๋Š” ๋ณดํ˜ธํ™” ๊ณผ์ •์ด ํ•„์š”ํ•˜๋‹ค
  1. ์œ„์žฅ์ด ๊ฐ€๋Šฅํ•˜๋‹ค
  • ํ†ต์‹  ์ƒ๋Œ€๋ฅผ ํ™•์ธํ•˜์ง€ ์•Š๊ธฐ ๊นจ๋ฌธ์— ์œ„์žฅ๋œ ์ƒ๋Œ€์™€ ํ†ต์‹ ํ•  ์ˆ˜ ์žˆ๋‹ค
  • HTTPS๋Š” CA ์ธ์ฆ์„œ๋ฅผ ํ†ตํ•ด ์ธ์ฆ๋œ ์ƒ๋Œ€์™€ ํ†ต์‹ ์ด ๊ฐ€๋Šฅํ•˜๋‹ค
  1. ๋ณ€์กฐ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค
  • ์™„์ „์„ฑ์„ ๋ณด์žฅํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ๋ณ€์กฐ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค
  • HTTPS๋Š” ๋ฉ”์„ธ์ง€ ์ธ์ฆ ์ฝ”๋“œ(MAC), ์ „์ž ์„œ๋ช…๋“ฑ์„ ํ†ตํ•ด ๋ณ€์กฐ๋ฅผ ๋ฐฉ์ง€ ํ•œ๋‹ค

  • HTTPS(HyperText Transfer Protocol Secure)

    ์ธํ„ฐ๋„ท ์ƒ์—์„œ ์ •๋ณด๋ฅผ ์•”ํ˜ธํ™”ํ•˜๋Š” SSL ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•ด ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„๊ฐ€ ์ž์›์„ ์ฃผ๊ณ  ๋ฐ›์„ ๋•Œ ์“ฐ๋Š” ํ†ต์‹  ๊ทœ์•ฝ

HTTPS๋Š” ํ…์ŠคํŠธ๋ฅผ ์•”ํ˜ธํ™”ํ•œ๋‹ค. (๊ณต๊ฐœํ‚ค ์•”ํ˜ธํ™” ๋ฐฉ์‹์œผ๋กœ!) : ๊ณต๊ฐœํ‚ค ์„ค๋ช…



HTTPS ํ†ต์‹  ํ๋ฆ„

  1. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„(A)๋ฅผ ๋งŒ๋“œ๋Š” ๊ธฐ์—…์€ HTTPS๋ฅผ ์ ์šฉํ•˜๊ธฐ ์œ„ํ•ด ๊ณต๊ฐœํ‚ค์™€ ๊ฐœ์ธํ‚ค๋ฅผ ๋งŒ๋“ ๋‹ค.

  2. ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” CA ๊ธฐ์—…์„ ์„ ํƒํ•˜๊ณ , ๊ทธ ๊ธฐ์—…์—๊ฒŒ ๋‚ด ๊ณต๊ฐœํ‚ค ๊ด€๋ฆฌ๋ฅผ ๋ถ€ํƒํ•˜๋ฉฐ ๊ณ„์•ฝ์„ ํ•œ๋‹ค.

CA๋ž€? : Certificate Authority๋กœ, ๊ณต๊ฐœํ‚ค๋ฅผ ์ €์žฅํ•ด์ฃผ๋Š” ์‹ ๋ขฐ์„ฑ์ด ๊ฒ€์ฆ๋œ ๋ฏผ๊ฐ„๊ธฐ์—…

  1. ๊ณ„์•ฝ ์™„๋ฃŒ๋œ CA ๊ธฐ์—…์€ ํ•ด๋‹น ๊ธฐ์—…์˜ ์ด๋ฆ„, A์„œ๋ฒ„ ๊ณต๊ฐœํ‚ค, ๊ณต๊ฐœํ‚ค ์•”ํ˜ธํ™” ๋ฐฉ๋ฒ•์„ ๋‹ด์€ ์ธ์ฆ์„œ๋ฅผ ๋งŒ๋“ค๊ณ , ํ•ด๋‹น ์ธ์ฆ์„œ๋ฅผ CA ๊ธฐ์—…์˜ ๊ฐœ์ธํ‚ค๋กœ ์•”ํ˜ธํ™”ํ•ด์„œ A์„œ๋ฒ„์—๊ฒŒ ์ œ๊ณตํ•œ๋‹ค.

  2. A์„œ๋ฒ„๋Š” ์•”ํ˜ธํ™”๋œ ์ธ์ฆ์„œ๋ฅผ ๊ฐ–๊ฒŒ ๋˜์—ˆ๋‹ค. ์ด์ œ A์„œ๋ฒ„๋Š” A์„œ๋ฒ„์˜ ๊ณต๊ฐœํ‚ค๋กœ ์•”ํ˜ธํ™”๋œ HTTPS ์š”์ฒญ์ด ์•„๋‹Œ ์š”์ฒญ์ด ์˜ค๋ฉด, ์ด ์•”ํ˜ธํ™”๋œ ์ธ์ฆ์„œ๋ฅผ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ๊ฑด๋‚ด์ค€๋‹ค.

  3. ํด๋ผ์ด์–ธํŠธ๊ฐ€ main.html ํŒŒ์ผ์„ ๋‹ฌ๋ผ๊ณ  A์„œ๋ฒ„์— ์š”์ฒญํ–ˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜์ž. HTTPS ์š”์ฒญ์ด ์•„๋‹ˆ๊ธฐ ๋•Œ๋ฌธ์— CA๊ธฐ์—…์ด A์„œ๋ฒ„์˜ ์ •๋ณด๋ฅผ CA ๊ธฐ์—…์˜ ๊ฐœ์ธํ‚ค๋กœ ์•”ํ˜ธํ™”ํ•œ ์ธ์ฆ์„œ๋ฅผ ๋ฐ›๊ฒŒ ๋œ๋‹ค.

CA ๊ธฐ์—…์˜ ๊ณต๊ฐœํ‚ค๋Š” ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์ด๋ฏธ ์•Œ๊ณ ์žˆ๋‹ค. (์„ธ๊ณ„์ ์œผ๋กœ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ์—…์œผ๋กœ ๋“ฑ๋ก๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์—, ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์ธ์ฆ์„œ๋ฅผ ํƒ์ƒ‰ํ•˜์—ฌ ํ•ด๋…์ด ๊ฐ€๋Šฅํ•œ ๊ฒƒ)

  1. ๋ธŒ๋ผ์šฐ์ €๋Š” ํ•ด๋…ํ•œ ๋’ค A์„œ๋ฒ„์˜ ๊ณต๊ฐœํ‚ค๋ฅผ ์–ป๊ฒŒ ๋˜์—ˆ๋‹ค.

  2. ํด๋ผ์ด์–ธํŠธ๊ฐ€ A์„œ๋ฒ„์™€ HandShaking ๊ณผ์ •์—์„œ ์ฃผ๊ณ ๋ฐ›์€ ๋‚œ์ˆ˜๋ฅผ ์กฐํ•ฉํ•˜์—ฌ pre-master-secret-key ๋ฅผ ์ƒ์„ฑํ•œ ๋’ค, A์„œ๋ฒ„์˜ ๊ณต๊ฐœํ‚ค๋กœ ํ•ด๋‹น ๋Œ€์นญํ‚ค๋ฅผ ์•”ํ˜ธํ™”ํ•˜์—ฌ ์„œ๋ฒ„๋กœ ๋ณด๋ƒ…๋‹ˆ๋‹ค.

  3. A์„œ๋ฒ„๋Š” ์•”ํ˜ธํ™”๋œ ๋Œ€์นญํ‚ค๋ฅผ ์ž์‹ ์˜ ๊ฐœ์ธํ‚ค๋กœ ๋ณตํ˜ธํ™” ํ•˜์—ฌ ํด๋ผ์ด์–ธํŠธ์™€ ๋™์ผํ•œ ๋Œ€์นญํ‚ค๋ฅผ ํš๋“ํ•ฉ๋‹ˆ๋‹ค.

  4. ํด๋ผ์ด์–ธํŠธ, ์„œ๋ฒ„๋Š” ๊ฐ๊ฐ pre-master-secret-key๋ฅผ master-secret-key์œผ๋กœ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

  5. master-secret-key ๋ฅผ ํ†ตํ•ด session-key๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์ด๋ฅผ ์ด์šฉํ•˜์—ฌ ๋Œ€์นญํ‚ค ๋ฐฉ์‹์œผ๋กœ ํ†ต์‹ ํ•ฉ๋‹ˆ๋‹ค.

  6. ๊ฐ ํ†ต์‹ ์ด ์ข…๋ฃŒ๋  ๋•Œ๋งˆ๋‹ค session-key๋ฅผ ํŒŒ๊ธฐํ•ฉ๋‹ˆ๋‹ค.


HTTPS๋„ ๋ฌด์กฐ๊ฑด ์•ˆ์ „ํ•œ ๊ฒƒ์€ ์•„๋‹ˆ๋‹ค. (์‹ ๋ขฐ๋ฐ›๋Š” CA ๊ธฐ์—…์ด ์•„๋‹Œ ์ž์ฒด ์ธ์ฆ์„œ ๋ฐœ๊ธ‰ํ•œ ๊ฒฝ์šฐ ๋“ฑ)

์ด๋•Œ๋Š” HTTPS์ง€๋งŒ ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ฃผ์˜ ์š”ํ•จ, ์•ˆ์ „ํ•˜์ง€ ์•Š์€ ์‚ฌ์ดํŠธ์™€ ๊ฐ™์€ ์•Œ๋ฆผ์œผ๋กœ ์ฃผ์˜ ๋ฐ›๊ฒŒ ๋œ๋‹ค.


[์ฐธ๊ณ ์‚ฌํ•ญ]

๋งํฌ