[CS] 2์ฃผ์ฐจ - HTTP

์˜ค๋Š˜ยท2022๋…„ 6์›” 29์ผ
0

[CS] CS with Kotlin/Android

๋ชฉ๋ก ๋ณด๊ธฐ
8/12
post-thumbnail

๐Ÿ“œ HTTP

HTTP๋Š” ์ „์†ก ๊ณ„์ธต ์œ„์— ์žˆ๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ณ„์ธต์œผ๋กœ์„œ ์›น ์„œ๋น„์Šค ํ†ต์‹ ์— ์‚ฌ์šฉ๋จ.

๐Ÿฅ‡ HTTP/1.0

ํ•œ ์—ฐ๊ฒฐ๋‹น ํ•˜๋‚˜์˜ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜๋„๋ก ์„ค๊ณ„๋จ.

๋‹จ์ 

  • RTT์˜ ์ฆ๊ฐ€๋ฅผ ๋ถˆ๋Ÿฌ์˜ค๊ฒŒ ๋จ.

RTT ์ฆ๊ฐ€

  • RTT
    - ํŒจํ‚ท์ด ๋ชฉ์ ์ง€์— ๋„๋‹ฌํ•˜๊ณ  ๋‚˜์„œ ๋‹ค์‹œ ์ถœ๋ฐœ์ง€๋กœ ๋Œ์•„์˜ค๊ธฐ๊นŒ์ง€ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„. (ํŒจํ‚ท ์™•๋ณต ์‹œ๊ฐ„)

์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ํŒŒ์ผ์„ ๊ฐ€์ ธ์˜ฌ ๋•Œ๋งˆ๋‹ค TCP์˜ 3-์›จ์ด ํ•ธ๋“œ์…ฐ์ดํฌ๋ฅผ ๊ณ„์†ํ•ด์„œ ์—ด์–ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— RTT๊ฐ€ ์ฆ๊ฐ€.

RTT์˜ ์ฆ๊ฐ€๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ•

์ด๋ฏธ์ง€ ์Šคํ”Œ๋ฆฌํŒ…

์ด๋ฏธ์ง€๊ฐ€ ํ•ฉ์ณ ์žˆ๋Š” ํ•˜๋‚˜์˜ ์ด๋ฏธ์ง€๋ฅผ ๋‹ค์šด๋กœ๋“œ ๋ฐ›๊ณ  ์ด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ bacground-image์˜ position์„ ์ด์šฉํ•˜์—ฌ ์ด๋ฏธ์ง€๋ฅผ ํ‘œ๊ธฐํ•˜๋Š” ๋ฐฉ๋ฒ•
-> ๋งŽ์€ ์ด๋ฏธ์ง€๋ฅผ ๋‹ค์šด๋ฐ›์•„์„œ ์ƒ๊ธฐ๋Š” ๊ณผ๋ถ€ํ•˜๋ฅผ ์ค„์ผ ์ˆ˜ ์žˆ์Œ.

์ฝ”๋“œ ์••์ถ•

์ฝ”๋“œ๋ฅผ ์••์ถ•ํ•ด์„œ ๊ฐœํ–‰ ๋ฌธ์ž์™€ ๋นˆ์นธ์„ ์—†์• ์„œ ์ฝ”๋“œ์˜ ํฌ๊ธฐ๋ฅผ ์ตœ์†Œํ™”ํ•˜๋Š” ๋ฐฉ๋ฒ•

์ด๋ฏธ์ง€ Base64 ์ธ์ฝ”๋”ฉ

์ด๋ฏธ์ง€ ํŒŒ์ผ์„ 64์ง„๋ฒ•์œผ๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฌธ์ž์—ด๋กœ ์ธ์ฝ”๋”ฉํ•˜๋Š” ๋ฐฉ๋ฒ•
-> ์„œ๋ฒ„์™€์˜ ์—ฐ๊ฒฐ์„ ์—ฐ ํ›„ ์ด๋ฏธ์ง€์— ๋Œ€ํ•ด ์„œ๋ฒ„์— HTTP ์š”์ฒญ์„ ํ•  ํ•„์š”๊ฐ€ ์—†์Œ.
-> Base64 ๋ฌธ์ž์—ด๋กœ ๋ณ€ํ™˜ํ•  ๊ฒฝ์šฐ 37% ์ •๋„ ํฌ๊ธฐ๊ฐ€ ๋” ์ปค์ง€๋Š” ๋‹จ์ ์ด ์žˆ์Œ.

  • ์ธ์ฝ”๋”ฉ
    • ์ •๋ณด์˜ ํ˜•ํƒœ๋‚˜ ํ˜•์‹ ํ‘œ์ค€ํ™”, ๋ณด์•ˆ, ์ฒ˜๋ฆฌ ์†๋„ ํ–ฅ์ƒ, ์ €์žฅ ๊ณต๊ฐ„ ์ ˆ์•ฝ ๋“ฑ์„ ์œ„ํ•ด ๋‹ค๋ฅธ ํ˜•ํƒœ๋‚˜ ํ˜•์‹์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ์ฒ˜๋ฆฌ ๋ฐฉ์‹

โœจ HTTP/1.1

๋งค๋ฒˆ TCP ์—ฐ๊ฒฐ์„ ํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ํ•œ ๋ฒˆ TCP ์ดˆ๊ธฐํ™”๋ฅผ ํ•œ ์ดํ›„์— keep-alive๋ผ๋Š” ์˜ต์…˜์œผ๋กœ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํŒŒ์ผ์„ ์†ก์ˆ˜์‹ ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋ณ€๊ฒฝ๋จ.

  • HTTP/1.0์˜ keep-alive๋ฅผ ํ‘œ์ค€ํ™”ํ•˜์—ฌ ๊ธฐ๋ณธ ์˜ต์…˜์œผ๋กœ ์„ค์ •.

๋‹จ์ 

  • ๋ฌธ์„œ ์•ˆ์— ํฌํ•จ๋œ ๋‹ค์ˆ˜์˜ ๋ฆฌ์†Œ์Šค(์ด๋ฏธ์ง€, css ํŒŒ์ผ, script ํŒŒ์ผ)๋ฅผ ์ฒ˜๋ฆฌํ•˜๋ ค๋ฉด ์š”์ฒญํ•  ๋ฆฌ์†Œ์Šค ๊ฐœ์ˆ˜์— ๋น„๋ก€ํ•ด์„œ ๋Œ€๊ธฐ ์‹œ๊ฐ„์ด ๊ธธ์–ด์ง.

HOL Blocking(Head Of Line Blocking)

๋„คํŠธ์›Œํฌ์—์„œ ๊ฐ™์€ ํ์— ์žˆ๋Š” ํŒจํ‚ท์ด ๊ทธ ์ฒซ ๋ฒˆ์งธ ํŒจํ‚ท์— ์˜ํ•ด ์ง€์—ฐ๋  ๋•Œ ๋ฐœ์ƒํ•˜๋Š” ์„ฑ๋Šฅ ์ €ํ•˜ ํ˜„์ƒ

๋ฌด๊ฑฐ์šด ํ—ค๋” ๊ตฌ์กฐ

HTTP/1.1์˜ ํ—ค๋”๋Š” ์ฟ ํ‚ค ๋“ฑ ๋งŽ์€ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๊ฐ€ ๋“ค์–ด์žˆ๊ณ  ์••์ถ•์ด ๋˜์ง€ ์•Š์•„ ๋ฌด๊ฑฐ์›€.

๐Ÿ—๏ธ HTTP/2

  • SPDY ํ”„๋กœํ† ์ฝœ์—์„œ ํŒŒ์ƒ๋จ.
  • HTTP/1.x๋ณด๋‹ค ์ง€์—ฐ ์‹œ๊ฐ„์„ ์ค„์ด๊ณ  ์‘๋‹ต ์‹œ๊ฐ„์„ ๋” ๋น ๋ฅด๊ฒŒ ํ•  ์ˆ˜ ์žˆ์Œ.
  • ๋ฉ€ํ‹ฐํ”Œ๋ ‰์‹ฑ, ํ—ค๋” ์••์ถ•, ์„œ๋ฒ„ ํ‘ธ์‹œ, ์š”์ฒญ์˜ ์šฐ์„ ์ˆœ์œ„ ์ฒ˜๋ฆฌ๋ฅผ ์ง€์›

๋ฉ€ํ‹ฐํ”Œ๋ ‰์‹ฑ

์—ฌ๋Ÿฌ ๊ฐœ์˜ ์ŠคํŠธ๋ฆผ์„ ์‚ฌ์šฉํ•˜์—ฌ ์†ก์ˆ˜์‹ ํ•˜๋Š” ๊ฒƒ.

  • ํŠน์ • ์ŠคํŠธ๋ฆผ์˜ ํŒจํ‚ท์ด ์†์‹ค๋˜์–ด๋„ ํ•ด๋‹น ์ŠคํŠธ๋ฆผ์—๋งŒ ์˜ํ–ฅ์„ ๋ฏธ์น˜๊ณ  ๋‚˜๋จธ์ง€ ์ŠคํŠธ๋ฆผ์€ ๋ฉ€์ฉกํ•˜๊ฒŒ ๋™์ž‘ ๊ฐ€๋Šฅ
  • ๋‹จ์ผ ์—ฐ๊ฒฐ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ณ‘๋ ฌ๋กœ ์—ฌ๋Ÿฌ ์š”์ฒญ์„ ๋ฐ›๊ฑฐ๋‚˜ ์‘๋‹ต์„ ์ค„ ์ˆ˜ ์žˆ์Œ.
    -> HOL Blocking ํ•ด๊ฒฐ
  • ์ŠคํŠธ๋ฆผ(Stream)
    • ์‹œ๊ฐ„์ด ์ง€๋‚จ์— ๋”ฐ๋ผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜๋Š” ์ผ๋ จ์˜ ๋ฐ์ดํ„ฐ ์š”์†Œ๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋Š” ๋ฐ์ดํ„ฐ ํ๋ฆ„

ํ—ค๋” ์••์ถ•

ํ—ˆํ”„๋งŒ ์ฝ”๋”ฉ ์••์ถ• ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‚ฌ์šฉํ•˜๋Š” HPACK ์••์ถ• ํ˜•์‹์„ ํ†ตํ•ด ํ—ค๋”๋ฅผ ์••์ถ•ํ•จ.

ํ—ˆํ”„๋งŒ ์ฝ”๋”ฉ(Huffman Coding)

๋ฌธ์ž์—ด์„ ๋ฌธ์ž ๋‹จ์œ„๋กœ ์ชผ๊ฐœ ๋นˆ๋„์ˆ˜๋ฅผ ์„ธ์–ด ๋นˆ๋„๊ฐ€ ๋†’์€ ์ •๋ณด๋Š” ์ ์€ ๋น„ํŠธ ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ‘œํ˜„ํ•˜๊ณ , ๋นˆ๋„๊ฐ€ ๋‚ฎ์€ ์ •๋ณด๋Š” ๋น„ํŠธ ์ˆ˜๋ฅผ ๋งŽ์ด ์‚ฌ์šฉํ•˜์—ฌ ํ‘œํ˜„ํ•ด์„œ ์ „์ฒด ๋ฐ์ดํ„ฐ์˜ ํ‘œํ˜„์— ํ•„์š”ํ•œ ๋น„ํŠธ์–‘์„ ์ค„์ด๋Š” ์›๋ฆฌ

์„œ๋ฒ„ ํ‘ธ์‹œ

ํด๋ผ์ด์–ธํŠธ ์š”์ฒญ ์—†์ด ์„œ๋ฒ„๊ฐ€ ๋ฐ”๋กœ ๋ฆฌ์†Œ์Šค๋ฅผ ํ‘ธ์‹œํ•  ์ˆ˜ ์žˆ์Œ.

๐Ÿ”’ HTTPS

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ณ„์ธต๊ณผ ์ „์†ก ๊ณ„์ธต ์‚ฌ์ด์— ์‹ ๋ขฐ ๊ณ„์ธต์ธ SSL/TLS ๊ณ„์ธต์„ ๋„ฃ์€, ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” HTTP ์š”์ฒญ
-> HTTP/2๋Š” HTTPS ์œ„์—์„œ ๋™์ž‘
-> ํ†ต์‹ ์„ ์•”ํ˜ธํ™”

SSL(Secure Socket Layer)/TLS(Transport Layer Security Protocol)

์ „์†ก ๊ณ„์ธต์—์„œ ๋ณด์•ˆ์„ ์ œ๊ณตํ•˜๋Š” ํ”„๋กœํ† ์ฝœ

  • TLS 1.3
    • ์ตœ์‹  TLS ๋ฒ„์ „
  • ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„๊ฐ€ ํ†ต์‹ ํ•  ๋•Œ ์ œ 3์ž๊ฐ€ ๋ฉ”์‹œ์ง€๋ฅผ ๋„์ฒญํ•˜๊ฑฐ๋‚˜ ๋ณ€์กฐํ•˜์ง€ ๋ชปํ•˜๋„๋ก ํ•จ.
    -> ๋„คํŠธ์›Œํฌ์ƒ์˜ ์ธํ„ฐ์…‰ํ„ฐ ๋ฐฉ์ง€
  • ๋ณด์•ˆ ์„ธ์…˜์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์•”ํ˜ธํ™”ํ•˜๋ฉฐ ๋ณด์•ˆ ์„ธ์…˜์ด ๋งŒ๋“ค์–ด์งˆ ๋•Œ ์ธ์ฆ ๋ฉ”์ปค๋‹ˆ์ฆ˜, ํ‚ค ๊ตํ™˜ ์•”ํ˜ธํ™” ์•Œ๊ณ ๋ฆฌ์ฆ˜, ํ•ด์‹ฑ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ์‚ฌ์šฉ๋จ.
    -> ํ•ธ๋“œ์…ฐ์ดํฌ๋ฅผ ํ†ตํ•ด ๋ณด์•ˆ ์„ธ์…˜์„ ์ƒ์„ฑํ•˜๊ณ  ์ด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์ƒํƒœ ์ •๋ณด ๋“ฑ์„ ๊ณต์œ 
    -> ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„๊ฐ€ ํ‚ค๋ฅผ ๊ณต์œ ํ•˜๊ณ  ์ด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์ธ์ฆ, ์ธ์ฆ ํ™•์ธ ๋“ฑ์˜ ์ž‘์—…์ด ์ผ์–ด๋‚˜๋Š” ๋‹จ ํ•œ๋ฒˆ์˜ 1-RTT๊ฐ€ ์ƒ๊ธด ํ›„ ๋ฐ์ดํ„ฐ๋ฅผ ์†ก์ˆ˜์‹ 
  • ํด๋ผ์ด์–ธํŠธ์—์„œ ์‚ฌ์ดํผ ์ŠˆํŠธ๋ฅผ ์„œ๋ฒ„์— ์ „๋‹ฌํ•˜๋ฉด ์„œ๋ฒ„๋Š” ๋ฐ›์€ ์‚ฌ์ดํผ ์ŠˆํŠธ์˜ ์•”ํ˜ธํ™” ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฆฌ์ŠคํŠธ๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธ.
    -> ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ์ธ์ฆ ๋ฉ”์ปค๋‹ˆ์ฆ˜ ์‹œ์ž‘, ํ•ด์‹ฑ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋“ฑ์œผ๋กœ ์•”ํ˜ธํ™”๋œ ๋ฐ์ดํ„ฐ์˜ ์†ก์ˆ˜์‹  ์‹œ์ž‘
  • ๋ณด์•ˆ ์„ธ์…˜

    • ๋ณด์•ˆ์ด ์‹œ์ž‘๋˜๊ณ  ๋๋‚˜๋Š” ๋™์•ˆ ์œ ์ง€๋˜๋Š” ์„ธ์…˜
  • ์„ธ์…˜

    • ์šด์˜์ฒด์ œ๊ฐ€ ์–ด๋– ํ•œ ์‚ฌ์šฉ์ž๋กœ๋ถ€ํ„ฐ ์ž์‹ ์˜ ์ž์‚ฐ ์ด์šฉ์„ ํ—ˆ๋ฝํ•˜๋Š” ์ผ์ •ํ•œ ๊ธฐ๊ฐ„.

์‚ฌ์ดํผ ์ŠˆํŠธ(Cypher suites)

  • ํ”„๋กœํ† ์ฝœ, AEAD ์‚ฌ์ดํผ ๋ชจ๋“œ, ํ•ด์‹ฑ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ๋‚˜์—ด๋œ ๊ทœ์•ฝ

AEAD(Authenticated Encryption with Associated Data) ์‚ฌ์ดํผ ๋ชจ๋“œ

  • ๋ฐ์ดํ„ฐ ์•”ํ˜ธํ™” ์•Œ๊ณ ๋ฆฌ์ฆ˜

์ธ์ฆ ๋ฉ”์ปค๋‹ˆ์ฆ˜

  • CA(Certificate Authorities)์—์„œ ๋ฐœ๊ธ‰ํ•œ ์ธ์ฆ์„œ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์ด๋ฃจ์–ด์ง.
    • ์•ˆ์ „ํ•œ ์—ฐ๊ฒฐ์„ ์‹œ์ž‘ํ•˜๋Š” ๋ฐ ์žˆ์–ด ํ•„์š”ํ•œ ๊ณต๊ฐœํ‚ค๋ฅผ ํด๋ผ์ด์–ธํŠธ์— ์ œ๊ณตํ•˜๊ณ  ์‚ฌ์šฉ์ž๊ฐ€ ์ ‘์†ํ•œ ์„œ๋ฒ„๊ฐ€ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ์„œ๋ฒ„์ž„์„ ๋ณด์žฅ.
    • ์ธ์ฆ์„œ๋Š” ์„œ๋น„์Šค ์ •๋ณด, ๊ณต๊ฐœํ‚ค, ์ง€๋ฌธ, ๋””์ง€ํ„ธ ์„œ๋ช… ๋“ฑ์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์Œ.
  • CA๋ฅผ ํ•  ์ˆ˜ ์žˆ๋Š” ์‹ ๋ขฐ์„ฑ์ด ์—„๊ฒฉํ•˜๊ฒŒ ๊ณต์ธ๋œ ๊ธฐ์—…
    • Comodo, GoDaddy, GlobalSign, ์•„๋งˆ์กด ๋“ฑ
  • ๊ฐœ์ธํ‚ค
    • ๋น„๋ฐ€ํ‚ค. ๊ฐœ์ธ์ด ์†Œ์œ ํ•˜๊ณ  ์žˆ๋Š” ํ‚ค์ด์ž ๋ฐ˜๋“œ์‹œ ์ž์‹ ๋งŒ์ด ์†Œ์œ ํ•ด์•ผ ํ•˜๋Š” ํ‚ค
  • ๊ณต๊ฐœํ‚ค
    • ๊ณต๊ฐœ๋˜์–ด ์žˆ๋Š” ํ‚ค

ํ‚ค ๊ตํ™˜ ์•”ํ˜ธํ™” ์•Œ๊ณ ๋ฆฌ์ฆ˜

  • ๋Œ€์ˆ˜ ๊ณก์„  ๊ธฐ๋ฐ˜์˜ ECDHE(Elliptic CUrve Diffie-Hellman Ephermeral)
  • ๋ชจ๋“ˆ์‹ ๊ธฐ๋ฐ˜์˜ DHE(Diffie-Heelman Ephermeral)
  • ๋‘˜ ๋‹ค ๋””ํ”ผ-ํ—ฌ๋งŒ(Diffie-Hellman) ๋ฐฉ์‹์„ ๊ทผ๊ฐ„์œผ๋กœ ๋งŒ๋“ค์–ด์ง.

๋””ํ”ผ-ํ—ฌ๋งŒ ํ‚ค ๊ตํ™˜(Diffie-Hellman key exchange) ์•”ํ˜ธ์™€ ์•Œ๊ณ ๋ฆฌ์ฆ˜

๋‹ค์Œ์˜ ์‹์—์„œ

y=gxmodย py=g^xmod \ p

g์™€ x์™€ p๋ฅผ ์•ˆ๋‹ค๋ฉด y๋Š” ๊ตฌํ•˜๊ธฐ ์‰ฝ์ง€๋งŒ g์™€ y์™€ p๋งŒ ์•ˆ๋‹ค๋ฉด x๋ฅผ ๊ตฌํ•˜๊ธฐ๋Š” ์–ด๋ ต๋‹ค๋Š” ์›๋ฆฌ์— ๊ธฐ๋ฐ˜ํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜

  1. ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„ ๋ชจ๋‘ ๊ฐœ์ธํ‚ค์™€ ๊ณต๊ฐœํ‚ค๋ฅผ ์ƒ์„ฑ
  2. ์„œ๋กœ์—๊ฒŒ ๊ณต๊ฐœํ‚ค๋ฅผ ๋ณด๋‚ด๊ณ  ๊ฐ์ž์˜ ๊ฐœ์ธํ‚ค์™€ ๊ฒฐํ•ฉ
  3. ๊ฒฐํ•ฉํ•œ ๊ฒƒ์„ ๋‹ค์‹œ ์„œ๋กœ์—๊ฒŒ ๋ณด๋ƒ„
  4. ๊ฐ์ž์˜ ๊ฐœ์ธํ‚ค์™€ ๋‹ค์‹œ ๊ฒฐํ•ฉ
    -> PSK(์‚ฌ์ „ ํ•ฉ์˜๋œ ๋น„๋ฐ€ํ‚ค)๊ฐ€ ์ƒ์„ฑ
  • ์•…์˜์ ์ธ ๊ณต๊ฒฉ์ž๊ฐ€ ๊ฐœ์ธํ‚ค ๋˜๋Š” ๊ณต๊ฐœํ‚ค๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์–ด๋„ PSK๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์•„๋ฌด๊ฒƒ๋„ ํ•  ์ˆ˜ ์—†์Œ.

ํ•ด์‹ฑ ์•Œ๊ณ ๋ฆฌ์ฆ˜

๋ฐ์ดํ„ฐ๋ฅผ ์ถ”์ •ํ•˜๊ธฐ ํž˜๋“  ๋” ์ž‘๊ณ , ์„ž์—ฌ ์žˆ๋Š” ์กฐ๊ฐ์œผ๋กœ ๋งŒ๋“œ๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜

  • SSL/TLS๋Š” ํ•ด์‹ฑ ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ SHA-256 ์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ SHA-384 ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์‚ฌ์šฉ

SHA-256 ์•Œ๊ณ ๋ฆฌ์ฆ˜

ํ•ด์‹œ ํ•จ์ˆ˜์˜ ๊ฒฐ๊ณผ๊ฐ’์ด 256๋น„ํŠธ์ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜

  • ๋น„ํŠธ ์ฝ”์ธ ๋“ฑ์˜ ๋งŽ์€ ๋ธ”๋ก์ฒด์ธ ์‹œ์Šคํ…œ์—์„œ๋„ ์‚ฌ์šฉ.
  • ํ•ด์‹ฑ์„ ํ•ด์•ผ ํ•  ๋ฉ”์‹œ์ง€์— 1์„ ์ถ”๊ฐ€ํ•˜๋Š” ๋“ฑ์˜ ์ „์ฒ˜๋ฆฌ ํ›„, ์ „์ฒ˜๋ฆฌ๋œ ๋ฉ”์‹œ์ง€๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ด์‹œ๋ฅผ ๋ฐ˜ํ™˜
  • ํ•ด์‹œ
    • ๋‹ค์–‘ํ•œ ๊ธธ์ด๋ฅผ ๊ฐ€์ง„ ๋ฐ์ดํ„ฐ๋ฅผ ๊ณ ์ •๋œ ๊ธธ์ด๋ฅผ ๊ฐ€์ง„ ๋ฐ์ดํ„ฐ๋กœ ๋งคํ•‘(mapping)ํ•œ ๊ฐ’
  • ํ•ด์‹ฑ
    • ์ž„์˜์˜ ๋ฐ์ดํ„ฐ๋ฅผ ํ•ด์‹œ๋กœ ๋ฐ”๊ฟ”์ฃผ๋Š” ์ผ. ํ•ด์‹œ ํ•จ์ˆ˜๊ฐ€ ๋‹ด๋‹น
  • ํ•ด์‹œ ํ•จ์ˆ˜
    • ์ž„์˜์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ž…๋ ฅ์œผ๋กœ ๋ฐ›์•„ ์ผ์ •ํ•œ ๊ธธ์ด์˜ ๋ฐ์ดํ„ฐ๋กœ ๋ฐ”๊ฟ”์ฃผ๋Š” ํ•จ์ˆ˜

SEO์™€ HTTPS

  • SEO(Search Engine Optimization)
    • ๊ฒ€์ƒ‰ ์—”์ง„ ์ตœ์ ํ™”
    • ์‚ฌ์šฉ์ž๋“ค์ด ๊ตฌ๊ธ€, ๋„ค์ด๋ฒ„ ๋“ฑ์˜ ๊ฒ€์ƒ‰์—”์ง„์œผ๋กœ ์›น ์‚ฌ์ดํŠธ๋ฅผ ๊ฒ€์ƒ‰ํ–ˆ์„ ๋•Œ ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ํŽ˜์ด์ง€ ์ƒ๋‹จ์— ๋…ธ์ถœ์‹œ์ผœ ๋งŽ์€ ์‚ฌ๋žŒ์ด ๋ณผ ์ˆ˜ ์žˆ๋„๋ก ์ตœ์ ํ™”ํ•˜๋Š” ๋ฐฉ๋ฒ•
  • ๊ตฌ๊ธ€์€ ์‚ฌ์ดํŠธ ๋‚ด ๋ชจ๋“  ์š”์†Œ๊ฐ€ ๋™์ผํ•˜๋‹ค๋ฉด HTTPS ์„œ๋น„์Šค๋ฅผ ํ•˜๋Š” ์‚ฌ์ดํŠธ๊ฐ€ ๊ทธ๋ ‡์ง€ ์•Š์€ ์‚ฌ์ดํŠธ๋ณด๋‹ค SEO ์ˆœ์œ„๊ฐ€ ๋†’์„ ๊ฒƒ์ด๋ผ ๊ณต์‹์ ์œผ๋กœ ๋ฐํž˜.

SEO ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•œ ๋ฐฉ๋ฒ•

์บ๋…ธ๋‹ˆ์ปฌ ์„ค์ •

<link rel="cannonical" href="https://example.com/page2.php" />
  • ์‚ฌ์ดํŠธ link์— "cannonical" ์„ค์ •

๋ฉ”ํƒ€ ์„ค์ •
html ํŒŒ์ผ์˜ ๊ฐ€์žฅ ์œ— ๋ถ€๋ถ„์ธ meta๋ฅผ ์ž˜ ์„ค์ •ํ•  ๊ฒƒ

ํŽ˜์ด์ง€ ์†๋„ ๊ฐœ์„ 
๊ตฌ๊ธ€์˜ PageSpeedInsights์—์„œ ์„œ๋น„์Šค์— ๋Œ€ํ•œ ๋ฆฌํฌํŒ…์„ ์ฃผ๊ธฐ์ ์œผ๋กœ ๋ฐ›์œผ๋ฉฐ ๊ด€๋ฆฌ

์‚ฌ์ดํŠธ๋งต ๊ด€๋ฆฌ
sitemap.xml์„ ์ •๊ธฐ์ ์œผ๋กœ ๊ด€๋ฆฌํ•˜๋Š” ๊ฒƒ

  • ์‚ฌ์ดํŠธ๋งต ์ œ๋„ˆ๋ ˆ์ดํ„ฐ ์‚ฌ์šฉ
  • ์ง์ ‘ ์ฝ”๋“œ๋ฅผ ๋งŒ๋“ค์–ด ๊ตฌ์ถ•

HTTPS ๊ตฌ์ถ• ๋ฐฉ๋ฒ•

  • ์ง์ ‘ CA์—์„œ ๊ตฌ๋งคํ•œ ์ธ์ฆํ‚ค๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌ์ถ•
  • ์„œ๋ฒ„ ์•ž๋‹จ์˜ HTTPS๋ฅผ ์ œ๊ณตํ•˜๋Š” ๋กœ๋“œ๋ฐธ๋Ÿฌ์Šค๋ฅผ ๋‘ฌ์„œ ๊ตฌ์ถ•
  • ์„œ๋ฒ„ ์•ž๋‹จ์— HTTPS๋ฅผ ์ œ๊ณตํ•˜๋Š” CDN์„ ๋‘ฌ์„œ ๊ตฌ์ถ•

๐Ÿ‘‘ HTTP/3

  • QUIC์ด๋ผ๋Š” ๊ณ„์ธต ์œ„์—์„œ ๋Œ์•„๊ฐ.
  • UDP ๊ธฐ๋ฐ˜
  • ๋ฉ€ํ‹ฐํ”Œ๋ ‰์‹ฑ
  • ์ดˆ๊ธฐ ์—ฐ๊ฒฐ ์„ค์ • ์‹œ ์ง€์—ฐ ์‹œ๊ฐ„ ๊ฐ์†Œ

์ดˆ๊ธฐ ์—ฐ๊ฒฐ ์„ค์ • ์‹œ ์ง€์—ฐ ์‹œ๊ฐ„ ๊ฐ์†Œ

QUIC์€ TCP๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•„ 3-์›จ์ด ํ•ธ๋“œ์…ฐ์ดํฌ๋ฅผ ๊ฑฐ์น˜์ง€ ์•Š์Œ.

  • QUIC์€ ์ฒซ ์—ฐ๊ฒฐ ์„ค์ •์— 1-RTT๋งŒ ์†Œ์š”.

    • ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์— ์–ด๋–ค ์‹ ํ˜ธ๋ฅผ ํ•œ ๋ฒˆ ์ฃผ๊ณ , ์„œ๋ฒ„๋„ ๊ฑฐ๊ธฐ์— ์‘๋‹ตํ•˜๊ธฐ๋งŒ ํ•˜๋ฉด ๋ฐ”๋กœ ๋ณธ ํ†ต์‹ ์„ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Œ.
  • QUIC์€ ์ˆœ๋ฐฉํ–ฅ ์˜ค๋ฅ˜ ์ˆ˜์ • ๋ฉ”์ปค๋‹ˆ์ฆ˜(FEC, Forward Error Correction) ์ ์šฉ.

    • ์ „์†กํ•œ ํŒจํ‚ท์ด ์†์‹ค๋˜์—ˆ๋‹ค๋ฉด ์ˆ˜์‹  ์ธก์—์„œ ์—๋Ÿฌ๋ฅผ ๊ฒ€์ถœํ•˜๊ณ  ์ˆ˜์ •ํ•˜๋Š” ๋ฐฉ์‹.
    • ์—ด์•…ํ•œ ๋„คํŠธ์›Œํฌ ํ™˜๊ฒฝ์—์„œ๋„ ๋‚ฎ์€ ํŒจํ‚ท ์†์‹ค๋ฅ 
profile
Junior Mobile ๊ฐœ๋ฐœ์ž

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