Skip to content

Latest commit

ย 

History

History
37 lines (32 loc) ยท 3.74 KB

HttpHttps.md

File metadata and controls

37 lines (32 loc) ยท 3.74 KB

HTTP HTTPS

HTTP(HyperText Transfer Protocol)

  • http๋Š” ์„œ๋กœ ๋‹ค๋ฅธ ์‹œ์Šคํ…œ ์‚ฌ์ด์—์„œ ํ†ต์‹ ์„ ์ฃผ๊ณ  ๋ฐ›๊ฒŒ ํ•ด์ฃผ๋Š” ๊ฐ€์žฅ ๊ธฐ์ดˆ์ ์ธ ํ”„๋กœํ† ์ฝœ์ด๋ฉฐ ์›น ์„œํ•‘์„ ํ•  ๋•Œ ์„œ๋ฒ„์—์„œ ์ž์‹ ์˜ ๋ธŒ๋ผ์šฐ์ €๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•ด์ฃผ๋Š” ์šฉ๋„๋กœ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉ๋œ๋‹ค.
  • ์ธํ„ฐ๋„ท ์ดˆ๊ธฐ์— ๋ชจ๋“  ์›น ์‚ฌ์ดํŠธ์—์„œ ๊ธฐ๋ณธ์ ์œผ๋กœ ์‚ฌ์šฉ๋˜์—ˆ๋˜ ํ”„๋กœํ† ์ฝœ์ด๊ธฐ๋„ ํ•˜๋‹ค.
  • http๋Š” ์• ํ”Œ๋ฆฌ ์ผ€์ด์…˜ ๋ ˆ๋ฒจ์˜ ํ”„๋กœํ† ์ฝœ๋กœ TCP/IP ์œ„์—์„œ ์ž‘๋™ํ•œ๋‹ค.
  • Http๋Š” ์ƒํƒœ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์ง€ ์•Š์€ stateless ํ”„๋กœํ† ์ฝœ์ด๋ฉฐ method, path, version, Headers, body๋“ฑ์œผ๋กœ ๊ตฌ์„ฑ๋œ๋‹ค.

ํ”„๋กœํ† ์ฝœ์€ ๊ทœ์น™์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋œ๋‹ค.

HTTP์˜ ๋ฌธ์ œ์ 

  • Http๋Š” ํ‰๋ฌธ ํ†ต์‹ ์ด๊ธฐ ๋•Œ๋ฌธ์— ๋„์ฒญ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.
    • ํ‰๋ฌธ์ด๋ผ ํ•จ์€ ์•”ํ˜ธํ™” ๋˜์ง€ ์•Š์€ ๋ฌธ์ž๋ฅผ ๊ทธ๋Œ€๋กœ ๋ณด์—ฌ์ฃผ๋Š” ๊ฑฐ๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋œ๋‹ค.
    • TCP/IP๊ตฌ์กฐ ํ†ต์‹ ์€ ์ „๋ถ€ ํ†ต์‹  ๊ฒฝ๋กœ ์ƒ์—์„œ ์—ฟ๋ณผ ์ˆ˜ ์žˆ๋‹ค.
    • ํŒจํ‚ท์„ ์ˆ˜์ง‘ํ•˜๋Š” ๊ฒƒ๋งŒ์œผ๋กœ ๋„์ฒญํ•  ์ˆ˜ ์žˆ๋‹ค.
    • ํ‰๋ฌธ์œผ๋กœ ํ†ต์‹ ์„ ํ•  ๊ฒฝ์šฐ ๋ฉ”์‹œ์ง€์˜ ์˜๋ฏธ๋ฅผ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์•”ํ˜ธํ™”ํ•˜์—ฌ ํ†ต์‹ ํ•ด์•ผ ํ•œ๋‹ค.
  • ํ†ต์‹  ์ƒ๋Œ€๋ฅผ ํ™•์ธํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์œ„์žฅ์ด ๊ฐ€๋Šฅํžˆ๋‹ค.
    • HTTP์— ์˜ํ•œ ํ†ต์‹ ์—๋Š” ์ƒ๋Œ€๊ฐ€ ๋ˆ„๊ตฌ์ธ์ง€ ํ™•์ธํ•˜๋Š” ์ฒ˜๋ฆฌ๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์— ๋ˆ„๊ตฌ๋“ ์ง€ ๋ฆฌํ€˜์ŠคํŠธ๋ฅผ ๋ณด๋‚ผ ์ˆ˜ ์žˆ๋‹ค.
    • IP์ฃผ์†Œ๋‚˜ ํฌํŠธ ๋“ฑ์—์„œ ๊ทธ ์›น ์„œ๋ฒ„์— ์•ก์„ธ์Šค ์ œํ•œ์ด ์—†๋Š” ๊ฒฝ์šฐ ๋ฆฌํ€˜์ŠคํŠธ๊ฐ€ ์˜ค๋ฉด ์ƒ๋Œ€๊ฐ€ ๋ˆ„๊ตฌ๋“ ์ง€ ๋ฌด์–ธ๊ฐ€์˜ ๋ฆฌ์Šคํฐ์Šค๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
  • ์™„์ „์„ฑ์„ ์ฆ๋ช…ํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ๋ณ€์กฐ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค.
    • ์™„์ •์„ฑ์ด๋ž€ ์ •๋ณด์˜ ์ •ํ™•์„ฑ์„ ์˜๋ฏธํ•œ๋‹ค.
    • ์„œ๋ฒ„ ๋˜๋Š” ํด๋ผ์ด์–ธํŠธ์—์„œ ์ˆ˜์‹ ํ•œ ๋‚ด์šฉ์ด ์†ก์‹ ์ธก์—์„œ ๋ณด๋‚ธ ๋‚ด์šฉ๊ณผ ์ผ์น˜ํ•œ๋‹ค๋ผ๋Š” ๊ฒƒ์„ ๋ณด์žฅํ•  ์ˆ˜ ์—†๋Š” ๊ฒƒ์ด๋‹ค.
    • ๋ฆฌํ€˜์ŠคํŠธ๋‚˜ ๋ฆฌ์Šคํฐ์Šค๊ฐ€ ๋ฐœ์‹ ๋œ ํ›„์— ์ƒ๋Œ€๊ฐ€ ์ˆ˜์‹ ํ•˜๋Š” ์‚ฌ์ด์— ๋ˆ„๊ตฐ๊ฐ€์— ์˜ํ•ด ๋ณ€์กฐ๋˜๋”๋ผ๋„ ์ด ์‚ฌ์‹ค์„ ์•Œ ์ˆ˜ ์—†๋‹ค.
    • ์ด์™€ ๊ฐ™์ด ๊ณต๊ฒฉ์ž๊ฐ€ ๋„์ค‘์— ๋ฆฌํ€˜์ŠคํŠธ๋‚˜ ๋ฆฌ์Šคํฐ์Šค๋ฅผ ๋บด์•—์•„ ๋ณ€์กฐํ•˜๋Š” ๊ณต๊ฒฉ์„ ์ค‘๊ฐ„์ž ๊ณต๊ฒฉ์ด๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค.

Http ๋‹จ์ ์„ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด

  1. SSL(Secure Socket Layer)์ด๋‚˜ TLS(Transport Layer Security)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค๋ฅธ ํ”„๋กœํ† ์ฝœ๊ณผ ์กฐํ•ฉํ•˜์—ฌ HTTP ํ†ต์‹  ๋‚ด์šฉ์„ ์•”ํ˜ธํ™” ํ•œ๋‹ค. ์ฆ‰ SSL์„ ์‚ฌ์šฉํ•ด ์•ˆ์ „ํ•œ ํ†ต์‹ ๋กœ๋ฅผ ํ™•๋ฆฝํ•˜๊ณ  ๋‚˜์„œ ๊ทธ ํ†ต์‹ ๋กœ๋ฅผ ์‚ฌ์šฉํ•ด HTTP ํ†ต์‹ ์„ ํ•˜๋Š” ๊ฒƒ์ด๋‹ค.(1) => (HTTPS)
  2. HTTP๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์šด๋ฐ˜ํ•˜๋Š” ๋‚ด์šฉ๋งŒ์„ ์•”ํ˜ธํ™”ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. HTTP ์ž์ฒด๋ฅผ ์•”ํ˜ธํ™” ํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹Œ ์ปจํ…์ธ ๋งŒ ์•”ํ˜ธํ™”ํ•˜๋Š” ๊ฒƒ์ธ๋ฐ ๋‹ค๋งŒ ์ด๊ฒฝ์šฐ๋Š” ํด๋ผ์ด์–ธํŠธ์—์„œ HTTP ๋ฉ”์‹œ์ง€๋ฅผ ์•”ํ˜ธํ™”ํ•ด์„œ ์ถœ๋ ฅํ•˜๋Š” ์ถ”๊ฐ€ ์ฒ˜๋ฆฌ๊ฐ€ ํ•„์š”ํ•˜๋‹ค.(1)
  3. ์œ„ ์•”ํ˜ธํ™” ๋ฐฉ๋ฒ•์œผ๋กœ ์–ธ๊ธ‰๋œ SSL๋กœ ์ƒ๋Œ€๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. SSL์€ ์ƒ๋Œ€๋ฅผ ํ™•์ธํ•˜๋Š” ์ˆ˜๋‹จ์œผ๋กœ ์ฆ๋ช…์„œ๋ฅผ ์ œ๊ณตํ•˜๊ณ  ์žˆ๋‹ค.(2)
  4. MD5, SHA-SUM, ๋“ฑ์˜ ํ•ด์‹œ ๊ฐ’์„ ํ™•์ธํ•˜๋Š” ๋ฐฉ๋ฒ•๊ณผ ํŒŒ์ผ์˜ ๋””์ง€ํ„ธ ์„œ๋ช…์„ ํ™•์ธํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์กด์žฌํ•˜์ง€๋งŒ ํ™•์‹คํžˆ ํ™•์ธ ํ•  ์ˆ˜ ์ž‡๋Š” ๊ฒƒ์€ ์•„๋‹ˆ๋‹ค. ํ™•์‹คํžˆ ๋ฐฉ์ง€ํ•˜๊ธฐ์œ„ํ•ด์„œ๋Š” HTTPS๋ฅผ ์‚ฌ์šฉํ•ด์•ผํ•œ๋‹ค. SSL์€ ์ธ์ฆ์ด๋‚˜ ์•”ํ˜ธํ™” ๊ทธ๋ฆฌ๊ณ  ๋‹ค์ด์ œ์ŠคํŠธ ๊ธฐ๋Šฅ์ด ์žˆ๋‹ค.(3)

HTTPS

  • HTTPS๋Š” HTTP + SSL/TLS์ด๋‹ค.
  • http์˜ ์†Œ์ผ“ ๋ถ€๋ถ„์„ SSL(Secure Socket Layer)๊ณผ TLS(Transport Layer Secure)๋กœ ๋Œ€์ฒดํ•˜๋Š” ๊ฒƒ์ด HTTPS์ด๋‹ค.
  • TLS๋Š” SSL์„ ๋ฐ”ํƒ•์œผ๋กœ ํ•œ ํ”„๋กœํ† ์ฝœ๋กœ ์ด ํ”„๋กœํ† ์ฝœ์„ ํ†ต์นญํ•ด์„œ SSL์ด๋ผ๊ณ  ๋ถ€๋ฅด๊ธฐ๋„ ํ•œ๋‹ค.
  • ๊ธฐ์กด์˜ HTTP๋Š” ์›๋ž˜ TCP์™€ ํ†ต์‹ ์„ ์ง์ ‘ํ–ˆ์ง€๋งŒ, HTTPS๋Š” HTTP๋Š” SSL๊ณผ ํ†ต์‹ ํ•˜๊ณ  SSL์ด TCP์™€ ํ†ต์‹ ํ•˜๊ฒŒ๋œ๋‹ค.
  • HTTPS์˜ SSL์—์„œ๋Š” ๊ณตํ†ตํ‚ค ์•”ํ˜ธํ™” ๋ฐฉ์‹๊ณผ ๊ณต๊ฐœํ‚ค ์•”ํ˜ธํ™” ๋ฐฉ์‹์„ ํ˜ผํ•ฉํ•œ ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ์•”ํ˜ธ ์‹œ์Šคํ…œ์„ ์‚ฌ์šฉํ•œ๋‹ค.