[CS] HTTP & HTTPS

โœ… HTTP (Hyper Text Transfer Protocol)

→ ์ธํ„ฐ๋„ท์—์„œ ํ•˜์ดํผํ…์ŠคํŠธ(HTML)๋ฅผ ๊ตํ™˜ํ•˜๊ธฐ ์œ„ํ•œ ํ†ต์‹  ๊ทœ์•ฝ์œผ๋กœ, 80๋ฒˆ ํฌํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Œ

[๊ตฌ์กฐ]

  • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ ˆ๋ฒจ์˜ ํ”„๋กœํ† ์ฝœ๋กœ TCP/IP ์œ„์—์„œ ์ž‘๋™
  • ์ƒํƒœ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์ง€ ์•Š๋Š” Stateless ํ”„๋กœํ† ์ฝœ
  • Method, Path, Version, Headers, Body ๋“ฑ์œผ๋กœ ๊ตฌ์„ฑ
  • ์•”ํ˜ธํ™”๊ฐ€ ๋˜์ง€ ์•Š์€ ํ‰๋ฌธ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•˜๋Š” ํ”„๋กœํ† ์ฝœ์ด๊ธฐ ๋•Œ๋ฌธ์— ์ œ 3์ž๊ฐ€ ์ •๋ณด๋ฅผ ์กฐํšŒํ•  ์ˆ˜ ์žˆ์Œ

โœ… HTTPS (Hyper Text Transfer Protocol Secure)

→ 443๋ฒˆ ํฌํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉฐ, ๋„คํŠธ์›Œํฌ ์ƒ์—์„œ ์ค‘๊ฐ„์— ์ œ 3์ž๊ฐ€ ์ •๋ณด๋ฅผ ๋ณผ ์ˆ˜ ์—†๋„๋ก ์•”ํ˜ธํ™”๋ฅผ ์ง€์›ํ•˜๊ณ  ์žˆ์Œ

→ SSL์„ ์ด์šฉํ•ด์„œ ์„œ๋ฒ„์™€ ๋ธŒ๋ผ์šฐ์ € ์‚ฌ์ด์— ์•ˆ์ „ํ•˜๊ฒŒ ์•”ํ˜ธํ™”๋œ ์—ฐ๊ฒฐ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๊ฒŒ ๋„์™€์ฃผ๊ณ , ์„œ๋ฒ„ ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ๋ฏผ๊ฐํ•œ ์ •๋ณด๋ฅผ ์ฃผ๊ณ  ๋ฐ›์„ ๋•Œ๋„ ๋„๋‚œ๋‹นํ•˜๋Š” ๊ฒƒ์„ ๋ง‰์•„์คŒ

[๋™์ž‘๊ณผ์ •]

  • ๋Œ€์นญํ‚ค ์•”ํ˜ธํ™”์™€ ๋น„๋Œ€์นญํ‚ค ์•”ํ˜ธํ™”๋ฅผ ๋ชจ๋‘ ์‚ฌ์šฉ → ๋น ๋ฅธ ์—ฐ์‚ฐ ์†๋„ & ์•ˆ์ •์„ฑ
  • HTTP ์—ฐ๊ฒฐ ๊ณผ์ •์—์„œ ๋จผ์ € ์„œ๋ฒ„์™€ ํด๋ผ์ด์–ธํŠธ ๊ฐ„์— ์„ธ์…˜ํ‚ค๋ฅผ ๊ตํ™˜
    • ์„ธ์…˜ํ‚ค๋Š” ์ฃผ๊ณ  ๋ฐ›๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์•”ํ˜ธํ™”ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋˜๋Š” ๋Œ€์นญํ‚ค
    • ๋น ๋ฅธ ์—ฐ์‚ฐ ์†๋„๊ฐ€ ํ•„์š”ํ•˜๋ฏ€๋กœ ์„ธ์…˜ํ‚ค๋Š” ๋Œ€์นญํ‚ค๋กœ ๋งŒ๋“ค์–ด์ง
  • ์ฒ˜์Œ ์—ฐ๊ฒฐ์„ ์„ฑ๋ฆฝํ•˜์—ฌ ์•ˆ์ „ํ•˜๊ฒŒ ์„ธ์…˜ํ‚ค๋ฅผ ๊ณต์œ ํ•˜๋Š” ๊ณผ์ •์—์„œ ๋น„๋Œ€์นญํ‚ค๊ฐ€ ์‚ฌ์šฉ

  • HTTP ์—ฐ๊ฒฐ์ด ์„ฑ๋ฆฝ๋˜๋Š” ๊ณผ์ •
    1. ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„๋กœ ์ตœ์ดˆ ์—ฐ๊ฒฐ ์‹œ๋„๋ฅผ ํ•จ
    2. ์„œ๋ฒ„๋Š” ๊ณต๊ฐœํ‚ค(์—„๋ฐ€ํžˆ๋Š” ์ธ์ฆ์„œ)๋ฅผ ๋ธŒ๋ผ์šฐ์ €์—๊ฒŒ ๋„˜๊ฒจ์คŒ
    3. ๋ธŒ๋ผ์šฐ์ €๋Š” ์ธ์ฆ์„œ์˜ ์œ ํšจ์„ฑ์„ ๊ฒ€์‚ฌํ•˜๊ณ  ์„ธ์…˜ํ‚ค๋ฅผ ๋ฐœ๊ธ‰ํ•จ
    4. ๋ธŒ๋ผ์šฐ์ €๋Š” ์„ธ์…˜ํ‚ค๋ฅผ ๋ณด๊ด€ํ•˜๋ฉฐ ์ถ”๊ฐ€๋กœ ์„œ๋ฒ„์˜ ๊ณต๊ฐœํ‚ค๋กœ ์„ธ์…˜ํ‚ค๋ฅผ ์•”ํ˜ธํ™”ํ•˜์—ฌ ์„œ๋ฒ„๋กœ ์ „์†กํ•จ
    5. ์„œ๋ฒ„๋Š” ๊ฐœ์ธํ‚ค๋กœ ์•”ํ˜ธํ™”๋œ ์„ธ์…˜ํ‚ค๋ฅผ ๋ณตํ˜ธํ™”ํ•˜์—ฌ ์„ธ์…˜ํ‚ค๋ฅผ ์–ป์Œ
    6. ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„๋Š” ๋™์ผํ•œ ์„ธ์…˜ํ‚ค๋ฅผ ๊ณต์œ ํ•˜๋ฏ€๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ „๋‹ฌํ•  ๋•Œ ์„ธ์…˜ํ‚ค๋กœ ์•”ํ˜ธํ™”/๋ณตํ˜ธํ™”๋ฅผ ์ง„ํ–‰ํ•จ

โ˜‘๏ธ HTTP์™€ HTTPS

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

'CS > Network' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[CS] Load Balancing (๋กœ๋“œ๋ฐธ๋Ÿฐ์‹ฑ)  (0) 2024.01.26
[CS] TLS/SSL HandShake  (0) 2024.01.26
[CS] ๋Œ€์นญํ‚ค & ๊ณต๊ฐœํ‚ค  (1) 2023.11.29
[CS] UDP  (0) 2023.11.29
[CS] TCP/IP ํ๋ฆ„์ œ์–ด & ํ˜ผ์žก์ œ์–ด  (1) 2023.11.29