[๋„คํŠธ์›Œํฌ] HTTP & HTTPS

๊ฐ•๋ฏผ์Šนยท2023๋…„ 5์›” 7์ผ
0

๋„คํŠธ์›Œํฌ

๋ชฉ๋ก ๋ณด๊ธฐ
6/12

๐Ÿ“Œ HTTP & HTTPS


  • ๐Ÿ“ HTTP(HyperText Transfer Protocol)

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


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

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


  • ๐Ÿ“ HTTPS(HyperText Transfer Protocol Secure)

  • ํŠน์ง•

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

    • ๋ฐ์ดํ„ฐ์˜ ๊ธฐ๋ฐ€์„ฑ๊ณผ ๋ฌด๊ฒฐ์„ฑ์„ ๋ณด์žฅํ•˜๋ฉฐ, ํ†ต์‹ ํ•˜๋Š” ๋‹น์‚ฌ์ž์˜ ์‹ ์›์„ ๊ฒ€์ฆํ•˜๋Š” ๊ธฐ๋Šฅ

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

โ“ What is SSL?

  1. ์ปดํ“จํ„ฐ์™€ ์ปดํ“จํ„ฐ๊ฐ€ ๋„คํŠธ์›Œํฌ๋ฅผ ํ†ตํ•ด์„œ ํ†ต์‹ ์„ ํ• ๋•Œํ•ธ๋“œ์‰์ดํฌ -> ์„ธ์…˜ -> ์„ธ์…˜์ข…๋ฃŒ ์˜ ๊ณผ์ •์„ ๊ฑฐ์นœ๋‹ค.
  2. ์•”ํ˜ธํ™”๋œ HTTP ๋ฉ”์‹œ์ง€๋ฅผ ๊ตํ™˜ํ•˜๊ธฐ ์ „์— ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„๋Š” SSL ํ•ธ๋“œ์‰์ดํฌ๋ฅผ ์ง„ํ–‰ํ•œ๋‹ค.
  • ํ•ธ๋“œ์‰์ดํฌ์˜ ๋ชฉ์ ์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค.
  1. ํ”„๋กœํ† ์ฝœ ๋ฒ„์ „๋ฒˆํ˜ธ ๊ตํ™˜
  2. ์–‘์ชฝ์ด ์•Œ๊ณ  ์žˆ๋Š” pre master secret ํ‚ค ์ƒ์„ฑ ๋ฐ ๊ตํ™˜
  3. ์–‘์ชฝ์˜ ์‹ ์› ์ธ์ฆ
  4. ์ฑ„๋„์„ ์•”ํ˜ธํ™” ํ•˜๊ธฐ ์œ„ํ•œ ์ž„์‹œ ์„ธ์…˜ ํ‚ค ์ƒ์„ฑ

SSL ํ†ต์‹ ๊ณผ์ •์„ ๊ฐ„๋‹จํ•˜๊ฒŒ ๋„์‹ํ™” ํ•˜๋ฉด ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

SSL ํ†ต์‹ ๊ณผ์ •



๐Ÿ“Œ HTTPS ํ†ต์‹  ํ๋ฆ„

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

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

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

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

A
๊ณต๊ฐœํ‚ค ์ „๋‹ฌ ->
CA๊ธฐ์—…
A์„œ๋ฒ„ ๊ณต๊ฐœํ‚ค์™€ ์ด๋ฅผ ์ด์šฉํ•œ ์ธ์ฆ์„œ ์ƒ์„ฑ + ์ธ์ฆ์„œ๋ฅผ ๋‹ค์‹œ CA ๊ธฐ์—…์˜ ๊ฐœ์ธํ‚ค๋กœ ์•”ํ˜ธํ™” ->
A
์ธ์ฆ์„œ ๋ฐ›์Œ

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

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

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

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

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

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

  4. ์ดํ›„ ํด๋ผ์ด์–ธํŠธ-์„œ๋ฒ„์‚ฌ์ด์˜ ํ†ต์‹ ์„ ํ•  ๋•Œ ์ฃผ๊ณ ๋ฐ›๋Š” ๋ฉ”์„ธ์ง€๋Š” ์ด pre-master-key(๋Œ€์นญํ‚ค)๋ฅผ ์ด์šฉํ•˜์—ฌ ์•”ํ˜ธํ™”, ๋ณตํ˜ธํ™”๋ฅผ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.


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

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


๐Ÿ“Œ HTTPS๊ฐ€ ์•ˆ์ „ํ•˜์ง€ ์•Š์€ ์ƒํ™ฉ

๊ฐ€์งœ HTTPS ์‚ฌ์ดํŠธ: ๊ฐ€์žฅ ์ผ๋ฐ˜์ ์ธ ๋ณด์•ˆ ์œ„ํ˜‘ ์ค‘ ํ•˜๋‚˜๋Š” "๊ฐ€์งœ HTTPS". ์ด๋Š” ํ•ด์ปค๊ฐ€ ๋ณด์•ˆ ์ธ์ฆ์„œ๋ฅผ ๊ฐ€์ง„ ๊ฐ€์งœ ์›น์‚ฌ์ดํŠธ๋ฅผ ๋งŒ๋“ค์–ด ์‚ฌ์šฉ์ž๋ฅผ ์†์ด๋Š” ๊ฒƒ์ด๋‹ค. ์‚ฌ์šฉ์ž๋Š” ์‚ฌ์ดํŠธ๊ฐ€ ์•ˆ์ „ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•˜๊ณ  ๋ฏผ๊ฐํ•œ ์ •๋ณด๋ฅผ ์ž…๋ ฅํ•˜๊ฒŒ ๋˜๊ณ , ์ด ์ •๋ณด๋Š” ํ•ด์ปค์—๊ฒŒ ์ „๋‹ฌ๋œ๋‹ค. ์œ„ํ˜‘์„ ํ”ผํ•˜๋Š” ๋ฐฉ๋ฒ• ์ค‘ ํ•˜๋‚˜๋Š” ์›น ์‚ฌ์ดํŠธ์˜ URL์„ ํ•ญ์ƒ ํ™•์ธํ•˜๊ณ , ์ธ์ฆ์„œ๊ฐ€ ์œ ํšจํ•œ์ง€ ํ™•์ธํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

์ธ์ฆ์„œ์— ๋Œ€ํ•œ ์‹ ๋ขฐ: ์›น ๋ธŒ๋ผ์šฐ์ €๋Š” ์‚ฌ์ดํŠธ๊ฐ€ ์ œ๊ณตํ•˜๋Š” SSL/TLS ์ธ์ฆ์„œ๋ฅผ ํ™•์ธํ•˜๊ณ , ์ด๋ฅผ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ์ œ 3์ž ๊ธฐ๊ด€์ด ๋ฐœ๊ธ‰ํ•œ ๊ฒƒ์ธ์ง€ ํ™•์ธํ•œ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ด ๊ธฐ๊ด€๋“ค์ด ํ•ญ์ƒ 100% ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์€ ์•„๋‹ˆ๋‹ค. ๋•Œ๋•Œ๋กœ, ์ด๋“ค ๊ธฐ๊ด€ ์ค‘ ์ผ๋ถ€๊ฐ€ ํ•ดํ‚น๋‹นํ•˜๊ฑฐ๋‚˜ ์‹ ๋ขฐ์„ฑ์„ ์žƒ์„ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ด ๊ฒฝ์šฐ ํ•ด๋‹น ๊ธฐ๊ด€์ด ๋ฐœํ–‰ํ•œ ์ธ์ฆ์„œ๊ฐ€ ํฌํ•จ๋œ ์›น ์‚ฌ์ดํŠธ์— ๋Œ€ํ•œ ์ ‘์†์€ ์•ˆ์ „ํ•˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ๋‹ค.

์ค‘๊ฐ„์ž ๊ณต๊ฒฉ(Man-In-The-Middle, MITM): HTTPS ํ†ต์‹ ์€ ์ผ๋ฐ˜์ ์œผ๋กœ ์ค‘๊ฐ„์ž ๊ณต๊ฒฉ์œผ๋กœ๋ถ€ํ„ฐ ์•ˆ์ „ํ•˜๋‹ค๊ณ  ์—ฌ๊ฒจ์ง€์ง€๋งŒ, ๋ช‡๋ช‡ ์ƒํ™ฉ์—์„œ๋Š” ์ด ์—ญ์‹œ ์•ˆ์ „ํ•˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์‚ฌ์šฉ์ž์˜ ๋„คํŠธ์›Œํฌ๋ฅผ ์ œ์–ดํ•˜๋Š” ๊ณต๊ฒฉ์ž๋Š” SSL ์ŠคํŠธ๋ฆฌํ•‘ ๊ฐ™์€ ๊ธฐ๋ฒ•์„ ์‚ฌ์šฉํ•˜์—ฌ HTTPS ์—ฐ๊ฒฐ์„ HTTP ์—ฐ๊ฒฐ๋กœ ๊ฐ•์ œ๋กœ ๋‚ด๋ ค ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๋‹ค. ์ด๋ ‡๊ฒŒ ๋˜๋ฉด, ์‚ฌ์šฉ์ž์™€ ์„œ๋ฒ„ ์‚ฌ์ด์˜ ๋ชจ๋“  ํ†ต์‹ ์ด ์•”ํ˜ธํ™”๋˜์ง€ ์•Š์€ ์ฑ„๋กœ ์ „์†ก๋˜๋ฏ€๋กœ ๊ณต๊ฒฉ์ž๊ฐ€ ์ด๋ฅผ ์‰ฝ๊ฒŒ ์—ด๋žŒํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค.

๐Ÿ“ ํ”ผํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š”?

URL ํ™•์ธ: URL์ด HTTPS๋กœ ์‹œ์ž‘ํ•˜๋Š”์ง€ ํ™•์ธํ•˜๊ณ , ๋„๋ฉ”์ธ ์ด๋ฆ„์ด ์ต์ˆ™ํ•œ์ง€ ํ™•์ธํ•ด์•ผํ•œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, 'google.com'๊ณผ 'g00gle.com'์€ ๋‹ค๋ฅด๋ฉฐ, ํ›„์ž๋Š” ์œ„์กฐ ์‚ฌ์ดํŠธ์ผ ๊ฐ€๋Šฅ์„ฑ์ด ๋†’๋‹ค.

์ธ์ฆ์„œ ํ™•์ธ: ์ฃผ์†Œ ํ‘œ์‹œ์ค„์— ์žˆ๋Š” ์ž๋ฌผ์‡  ์•„์ด์ฝ˜์„ ํด๋ฆญํ•˜์—ฌ ์‚ฌ์ดํŠธ์˜ ๋ณด์•ˆ ์ธ์ฆ์„œ๋ฅผ ํ™•์ธํ•ด์•ผํ•œ๋‹ค. ์ธ์ฆ์„œ๊ฐ€ ์œ ํšจํ•˜๊ณ , ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐœ๊ธ‰์ž๋กœ๋ถ€ํ„ฐ ๋ฐœ๊ธ‰๋œ ๊ฒƒ์ธ์ง€ ๊ผญ ํ™•์ธ!

์•ˆ์ „ํ•œ ๋„คํŠธ์›Œํฌ ์‚ฌ์šฉ: ๊ณต์šฉ Wi-Fi์™€ ๊ฐ™์€ ๋ถˆ์•ˆ์ „ํ•œ ๋„คํŠธ์›Œํฌ์—์„œ ๋ฏผ๊ฐํ•œ ์ •๋ณด๋ฅผ ์ „์†กํ•˜๋Š” ๊ฒƒ์€ ์œ„ํ—˜ํ•˜๋‹ค. ๋ถˆ์•ˆ์ „ํ•œ ๋„คํŠธ์›Œํฌ๋ฅผ ํ†ตํ•ด ์ •๋ณด๋ฅผ ์ „์†กํ•˜๋ฉด, ๊ณต๊ฒฉ์ž๊ฐ€ ์ค‘๊ฐ„์—์„œ ์ •๋ณด๋ฅผ ๊ฐ€๋กœ์ฑŒ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ.

์‹ ๋ขฐ์„ฑ ์žˆ๋Š” ์‚ฌ์ดํŠธ ์ด์šฉ: ์ค‘์š”ํ•œ ์ •๋ณด๋ฅผ ๊ณต์œ ํ•˜๊ธฐ ์ „์— ํ•ด๋‹น ์›น์‚ฌ์ดํŠธ๊ฐ€ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธ. ์ต๋ช…์˜ ์›น์‚ฌ์ดํŠธ๋‚˜ ๋ถˆ๋ช…ํ™•ํ•œ ์†Œ์Šค์—์„œ ์š”์ฒญํ•˜๋Š” ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜๋ฉด ์•ˆ๋œ๋‹ค.

ํ•˜์ง€๋งŒ!!! ์ธํ„ฐ๋„ท์€ ํ•ญ์ƒ 100% ์•ˆ์ „ํ•˜์ง€ ์•Š๋‹ค. ํ•ญ์ƒ ์ฃผ์˜๋ฅผ ๊ธฐ์šธ์ด๊ณ , ์˜์‹ฌํ•˜๊ณ  ์•ˆ์ „์— ์œ ์˜ํ•ด์„œ ์‚ฌ์šฉํ•ฉ์‹œ๋‹ค..!!!


์ถœ์ฒ˜

๋งํฌ
๋งํฌ
๊ทœ๊ธ€

profile
Step by Step goes a long way. ๊พธ์ค€ํ•˜๊ฒŒ ์„ฑ์žฅํ•˜๋Š” ๊ฐœ๋ฐœ์ž ๊ฐ•๋ฏผ์Šน์ž…๋‹ˆ๋‹ค.

0๊ฐœ์˜ ๋Œ“๊ธ€