[์ปดํ“จํ„ฐ๋„คํŠธ์›Œํฌ] HTTP์™€ HTTPS

๐Ÿงช Computer Science/Computer Network

HTTP ํ”„๋กœํ† ์ฝœ

  • ๊ฐœ๋…

    • HyperText Transfer Protocol
    • ์›น ์ƒ์—์„œ ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„ ๊ฐ„์— ์š”์ฒญ/์‘๋‹ต(request/response)์œผ๋กœ ์ •๋ณด๋ฅผ ์ฃผ๊ณ  ๋ฐ›์„ ์ˆ˜ ์žˆ๋Š” ํ”„๋กœํ† ์ฝœ
  • ํŠน์ง•

    • ์ฃผ๋กœ HTML ๋ฌธ์„œ๋ฅผ ์ฃผ๊ณ ๋ฐ›๋Š” ๋ฐ์— ์“ฐ์ธ๋‹ค.
    • TCP์™€ UDP๋ฅผ ์‚ฌ์šฉํ•˜๋ฉฐ, 80๋ฒˆ ํฌํŠธ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.
    • ๋น„์—ฐ๊ฒฐ(Connectionless)
      • ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์— ์š”์ฒญ์„ ๋ณด๋‚ด๊ณ  ์„œ๋ฒ„๊ฐ€ ์ ์ ˆํ•œ ์‘๋‹ต์„ ํด๋ผ์ด์–ธํŠธ์— ๋ณด๋‚ด๋ฉด ๋ฐ”๋กœ ์—ฐ๊ฒฐ์ด ๋Š๊ธด๋‹ค.
      • ๊ฐ„๋‹จํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ž์›์ด ์ ๊ฒŒ ๋“œ๋Š” ์žฅ์ ์ด ์žˆ๋‹ค.
      • ์—ฐ๊ฒฐ์ด ์ง€์†์ ์ด์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ์šฉ์ž์™€ ์—ฐ๊ฒฐ ์ข…๋ฃŒ ํ›„, ์ถ”๊ฐ€์ ์ธ ์š”์ฒญ ์‹œ ์–ด๋–ค ์‚ฌ์šฉ์ž์˜ ์š”์ฒญ์ธ์ง€ ๋ชจ๋ฅธ๋‹ค๋Š” ์ ์ด ์กด์žฌํ•œ๋‹ค.
      • ์ฆ‰, ์—ฌ๋Ÿฌ ์‚ฌ์šฉ์ž๊ฐ€ ์š”์ฒญํ•  ์‹œ ๊ฐ๊ฐ์˜ ์‚ฌ์šฉ์ž ์š”์ฒญ์„ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์—†์–ด์„œ ์ œ๋Œ€๋กœ ๋œ ์‘๋‹ต ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•  ์ˆ˜ ์—†๋‹ค๋Š” ๋‹จ์ ์ด ์žˆ๋‹ค.
      • ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์œผ๋กœ๋Š” ์ฟ ํ‚ค, ์„ธ์…˜, ํžˆ๋“  ํผ ํ•„๋“œ ๋“ฑ์ด ์žˆ๋‹ค.
    • ๋ฌด์ƒํƒœ(Stateless)
      • ์—ฐ๊ฒฐ์„ ๋Š๋Š” ์ˆœ๊ฐ„ ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„์˜ ํ†ต์‹ ์€ ๋๋‚˜๋ฉฐ ์ƒํƒœ ์ •๋ณด๋ฅผ ์œ ์ง€ํ•˜์ง€ ์•Š๋Š”๋‹ค.
    • ๋‹จ๋ฐฉํ–ฅ์„ฑ
      • ์‚ฌ์šฉ์ž์˜ ์š”์ฒญ ํ•œ ๊ฐœ์— ๋Œ€ํ•œ ํ•œ ๊ฐœ์˜ ์‘๋‹ต์„ ํ•˜๋Š” ๋ฐฉ์‹์ด๊ธฐ ๋•Œ๋ฌธ์— ์„œ๋ฒ„๊ฐ€ ๋จผ์ € ์‘๋‹ตํ•˜์ง€ ์•Š๋Š”๋‹ค.
  • HTTP์˜ ๋ฌธ์ œ์ 

    • HTTP๋Š” ํ‰๋ฌธ ํ†ต์‹ ์ด๊ธฐ ๋•Œ๋ฌธ์— ๋„์ฒญ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.
    • ํ†ต์‹  ์ƒ๋Œ€๋ฅผ ํ™•์ธํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์œ„์žฅ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.
    • ์™„์ „์„ฑ์„ ์ฆ๋ช…ํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ๋ณ€์กฐ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค.

HTTPS ํ”„๋กœํ† ์ฝœ

HTTP์— ์•”ํ˜ธํ™”์™€ ์ธ์ฆ, ๊ทธ๋ฆฌ๊ณ  ์™„์ „์„ฑ ๋ณดํ˜ธ๋ฅผ ๋”ํ•œ HTTPS

  • ๊ฐœ๋…
    • HyperText Transfer Protocol over Secure Socket Layer
      • ๋˜๋Š” HTTP over TLS, HTTP over SSL, HTTP Secure
    • ์›น ํ†ต์‹  ํ”„๋กœํ† ์ฝœ์ธ HTTP์˜ ๋ณด์•ˆ์ด ๊ฐ•ํ™”๋œ ๋ฒ„์ „์˜ ํ”„๋กœํ† ์ฝœ
  • ํŠน์ง•
    • HTTPS์˜ ๊ธฐ๋ณธ TCP/IP ํฌํŠธ๋กœ 443๋ฒˆ ํฌํŠธ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.
    • HTTPS๋Š” ์†Œ์ผ“ ํ†ต์‹ ์—์„œ ์ผ๋ฐ˜ ํ…์ŠคํŠธ๋ฅผ ์ด์šฉํ•˜๋Š” ๋Œ€์‹ ์—, ์›น ์ƒ์—์„œ ์ •๋ณด๋ฅผ ์•”ํ˜ธํ™”ํ•˜๋Š” SSL์ด๋‚˜ TLS ํ”„๋กœํ† ์ฝœ์„ ํ†ตํ•ด ์„ธ์…˜ ๋ฐ์ดํ„ฐ๋ฅผ ์•”ํ˜ธํ™”ํ•œ๋‹ค.
      • TLS(Transport Layer Security) ํ”„๋กœํ† ์ฝœ์€ SSL(Secure Socket Layer) ํ”„๋กœํ† ์ฝœ์—์„œ ๋ฐœ์ „ํ•œ ๊ฒƒ์ด๋‹ค.
      • ๋‘ ํ”„๋กœํ† ์ฝœ์˜ ์ฃผ์š” ๋ชฉํ‘œ๋Š” ๊ธฐ๋ฐ€์„ฑ, ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ, ID ๋ฐ ๋””์ง€ํ„ธ ์ธ์ฆ์„œ๋ฅผ ์‚ฌ์šฉํ•œ ์ธ์ฆ์„ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ด๋‹ค.
    • ๋”ฐ๋ผ์„œ ๋ฐ์ดํ„ฐ์˜ ์ ์ ˆํ•œ ๋ณดํ˜ธ๋ฅผ ๋ณด์žฅํ•œ๋‹ค.
      • ๋ณดํ˜ธ์˜ ์ˆ˜์ค€์€ ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ์˜ ๊ตฌํ˜„ ์ •ํ™•๋„์™€ ์„œ๋ฒ„ ์†Œํ”„ํŠธ์›จ์–ด, ์ง€์›ํ•˜๋Š” ์•”ํ˜ธํ™” ์•Œ๊ณ ๋ฆฌ์ฆ˜์— ๋‹ฌ๋ ค์žˆ๋‹ค.
    • ๊ธˆ์œต ์ •๋ณด๋‚˜ ๋ฉ”์ผ ๋“ฑ ์ค‘์š”ํ•œ ์ •๋ณผ๋ฅด ์ฃผ๊ณ ๋ฐ›๋Š” ๊ฒƒ์€ HTTPS๋ฅผ, ์•„๋ฌด๋‚˜ ๋ด๋„ ์ƒ๊ด€์—†๋Š” ํŽ˜์ด์ง€๋Š” HTTP๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

HTTPS๊ฐ€ ํ•„์š”ํ•œ ์ด์œ 

  • ํด๋ผ์ด์–ธํŠธ์ธ ์›น ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์„œ๋ฒ„์— HTTP๋ฅผ ํ†ตํ•ด ์›น ํŽ˜์ด์ง€๋‚˜ ์ด๋ฏธ์ง€ ์ •๋ณด๋ฅผ ์š”์ฒญํ•˜๋ฉด ์„œ๋ฒ„๋Š” ์ด ์š”์ฒญ์— ์‘๋‹ตํ•˜์—ฌ ์š”๊ตฌํ•˜๋Š” ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜๊ฒŒ ๋œ๋‹ค.
  • ์›น ํŽ˜์ด์ง€(HTML)์€ ํ…์ŠคํŠธ์ด๊ณ , HTTP๋ฅผ ํ†ตํ•ด ์ด๋Ÿฐ ํ…์ŠคํŠธ ์ •๋ณด๋ฅผ ๊ตํ™˜ํ•˜๋Š” ๊ฒƒ์ด๋‹ค.
  • ์ด ๋•Œ, ์ฃผ๊ณ ๋ฐ›๋Š” ํ…์ŠคํŠธ ์ •๋ณด์— ์ฃผ๋ฏผ๋“ฑ๋ก๋ฒˆํ˜ธ๋‚˜ ๋น„๋ฐ€๋ฒˆํ˜ธ์™€ ๊ฐ™์ด ๋ฏผ๊ฐํ•œ ์ •๋ณด๊ฐ€ ํฌํ•จ๋˜์–ด์žˆ๊ณ  ๋„คํŠธ์›Œํฌ ์ƒ์—์„œ ์ค‘๊ฐ„์— ์ œ 3์ž๊ฐ€ ์ •๋ณด๋ฅผ ๊ฐ€๋กœ์ฑˆ๋‹ค๋ฉด ๋ณด์•ˆ์ƒ ํฐ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค.
  • ์ฆ‰, ์ค‘๊ฐ„์—์„œ ์ •๋ณด๋ฅผ ๋ณผ ์ˆ˜ ์—†๋„๋ก ์ฃผ๊ณ ๋ฐ›๋Š” ์ •๋ณด๋ฅผ ์•”ํ˜ธํ™”ํ•˜๋Š” ๋ฐฉ๋ฒ•์ธ HTTPS๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

HTTPS์˜ ์žฅ๋‹จ์ 

  • ์žฅ์ 
    • ๋„คํŠธ์›Œํฌ ์ƒ์—์„œ ์—ด๋žŒ, ์ˆ˜์ •์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๋ฏ€๋กœ ์•ˆ์ „ํ•˜๋‹ค.
  • ๋‹จ์ 
    • ์•”ํ˜ธํ™”๋ฅผ ํ•˜๋Š” ๊ณผ์ •์ด ์›น ์„œ๋ฒ„์— ๋ถ€ํ•˜๋ฅผ ์ค€๋‹ค.
    • HTTPS๋Š” ์„ค์น˜ ๋ฐ ์ธ์ฆ์„œ๋ฅผ ์œ ์ง€ํ•˜๋Š”๋ฐ ์ถ”๊ฐ€ ๋น„์šฉ์ด ๋ฐœ์ƒํ•œ๋‹ค.
    • HTTP์— ๋น„ํ•ด ๋Š๋ฆฌ๋‹ค.
    • ์ธํ„ฐ๋„ท ์—ฐ๊ฒฐ์ด ๋Š๊ธด ๊ฒฝ์šฐ ์žฌ์ธ์ฆ ์‹œ๊ฐ„์ด ์†Œ์š”๋œ๋‹ค.
      • HTTP๋Š” ๋น„์—ฐ๊ฒฐํ˜•์œผ๋กœ ์›น ํŽ˜์ด์ง€๋ฅผ ๋ณด๋Š” ์ค‘ ์ธํ„ฐ๋„ท ์—ฐ๊ฒฐ์ด ๋Š๊ฒผ๋‹ค๊ฐ€ ๋‹ค์‹œ ์—ฐ๊ฒฐ๋˜์–ด๋„ ํŽ˜์ด์ง€๋ฅผ ๊ณ„์† ๋ณผ ์ˆ˜ ์žˆ๋‹ค.
      • ๊ทธ๋Ÿฌ๋‚˜ HTTPS์˜ ๊ฒฝ์šฐ์—๋Š” ์†Œ์ผ“(๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ  ๋ฐ›๋Š” ๊ฒฝ๋กœ) ์ž์ฒด์—์„œ ์ธ์ฆ์„ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ธํ„ฐ๋„ท ์—ฐ๊ฒฐ์ด ๋Š๊ธฐ๋ฉด ์†Œ์ผ“๋„ ๋Š์–ด์ ธ์„œ ๋‹ค์‹œ HTTPS ์ธ์ฆ์ด ํ•„์š”ํ•˜๋‹ค.