ํฌ๋กฌ 105 ๋ฆด๋ฆฌ์Šค

๊ตฌ๊ธ€์ด ํฌ๋กฌ 105 ์›น๋ธŒ๋ผ์šฐ์ €๋ฅผ ๊ณต๊ฐœํ–ˆ๊ณ , ๋™์‹œ์— ํฌ๋กฌ์˜ ๊ธฐ๋ฐ˜์ด ๋˜๋Š” ๋ฌด๋ฃŒ ํฌ๋กœ๋ฏธ์›€(Chromium) ํ”„๋กœ์ ํŠธ๋„ ์•ˆ์ •์ ์œผ๋กœ ์ถœ์‹œ๋๋‹ค. Chrome ๋ธŒ๋ผ์šฐ์ €๋Š” Google ๋กœ๊ณ  ์‚ฌ์šฉ, ์ถฉ๋Œ ์‹œ ์•Œ๋ฆผ ์ „์†ก ์‹œ์Šคํ…œ ์กด์žฌ, ๋ณต์‚ฌ ๋ฐฉ์ง€๋œ ๋น„๋””์˜ค ์ฝ˜ํ…์ธ (DRM) ์žฌ์ƒ ๋ชจ๋“ˆ, ์—…๋ฐ์ดํŠธ ์ž๋™ ์„ค์น˜ ์‹œ์Šคํ…œ, ์ƒŒ๋“œ๋ฐ•์Šค ๊ฒฉ๋ฆฌ๋ฅผ ์˜๊ตฌ์ ์œผ๋กœ ํ™œ์„ฑํ™”ํ•œ๋‹ค๋Š” ์ ์—์„œ Chromium๊ณผ ๋‹ค๋ฆ…๋‹ˆ๋‹ค. , Google API์— ํ‚ค๋ฅผ ์ œ๊ณตํ•˜๊ณ  ๊ฒ€์ƒ‰ ์‹œ RLZ- ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ „์†กํ•ฉ๋‹ˆ๋‹ค. ์—…๋ฐ์ดํŠธ์— ์‹œ๊ฐ„์ด ๋” ํ•„์š”ํ•œ ๋ถ„๋“ค์„ ์œ„ํ•ด Extended Stable ๋ธŒ๋žœ์น˜๊ฐ€ ๋ณ„๋„๋กœ ์ง€์›๋˜๋ฉฐ, ์ดํ›„ 8์ฃผ๊ฐ€ ์†Œ์š”๋ฉ๋‹ˆ๋‹ค. Chrome 106์˜ ๋‹ค์Œ ๋ฆด๋ฆฌ์Šค๋Š” 27์›” XNUMX์ผ๋กœ ์˜ˆ์ •๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

Chrome 105์˜ ์ฃผ์š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ:

  • ํŠน์ˆ˜ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ๋Œ€ํ•œ ์ง€์› Chrome ์•ฑ์€ ์ค‘๋‹จ๋˜์—ˆ์œผ๋ฉฐ PWA(Progressive Web Apps) ๊ธฐ์ˆ  ๋ฐ ํ‘œ์ค€ ์›น API๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” ๋…๋ฆฝํ˜• ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์œผ๋กœ ๋Œ€์ฒด๋˜์—ˆ์Šต๋‹ˆ๋‹ค. Google์€ ์ฒ˜์Œ์— 2016๋…„์— Chrome ์•ฑ์„ ํฌ๊ธฐํ•˜๊ฒ ๋‹ค๋Š” ์˜์‚ฌ๋ฅผ ๋ฐํ˜”๊ณ  2018๋…„๊นŒ์ง€ ์ง€์›์„ ์ค‘๋‹จํ•  ๊ณ„ํš์ด์—ˆ์ง€๋งŒ ์ดํ›„ ์ด ๊ณ„ํš์„ ์—ฐ๊ธฐํ–ˆ์Šต๋‹ˆ๋‹ค. Chrome 105์—์„œ Chrome ์•ฑ์„ ์„ค์น˜ํ•˜๋ ค๊ณ  ํ•˜๋ฉด ํ•ด๋‹น ์•ฑ์ด ๋” ์ด์ƒ ์ง€์›๋˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒฝ๊ณ ๊ฐ€ ํ‘œ์‹œ๋˜์ง€๋งŒ ์•ฑ์€ ๊ณ„์† ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. Chrome 109์—์„œ๋Š” Chrome ์•ฑ ์‹คํ–‰ ๊ธฐ๋Šฅ์ด ๋น„ํ™œ์„ฑํ™”๋ฉ๋‹ˆ๋‹ค.
  • ๋ Œ๋”๋ง์„ ๋‹ด๋‹นํ•˜๋Š” ๋ Œ๋”๋Ÿฌ ํ”„๋กœ์„ธ์Šค์— ๋Œ€ํ•œ ์ถ”๊ฐ€ ๊ฒฉ๋ฆฌ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์„ธ์Šค๋Š” ์ด์ œ ๊ธฐ์กด ์ƒŒ๋“œ๋ฐ•์Šค ๊ฒฉ๋ฆฌ ์‹œ์Šคํ…œ ์œ„์— ๊ตฌํ˜„๋œ ์ถ”๊ฐ€ ์ปจํ…Œ์ด๋„ˆ(์•ฑ ์ปจํ…Œ์ด๋„ˆ)์—์„œ ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค. ๋ Œ๋”๋ง ์ฝ”๋“œ์˜ ์ทจ์•ฝ์ ์ด ์•…์šฉ๋˜๋Š” ๊ฒฝ์šฐ ์ถ”๊ฐ€๋œ ์ œํ•œ ์‚ฌํ•ญ์€ ๋„คํŠธ์›Œํฌ ๊ธฐ๋Šฅ๊ณผ ๊ด€๋ จ๋œ ์‹œ์Šคํ…œ ํ˜ธ์ถœ์— ๋Œ€ํ•œ ์•ก์„ธ์Šค๋ฅผ ์ฐจ๋‹จํ•˜์—ฌ ๊ณต๊ฒฉ์ž๊ฐ€ ๋„คํŠธ์›Œํฌ์— ์•ก์„ธ์Šคํ•˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•ฉ๋‹ˆ๋‹ค.
  • ์ธ์ฆ ๊ธฐ๊ด€์˜ ๋ฃจํŠธ ์ธ์ฆ์„œ์— ๋Œ€ํ•œ ์ž์ฒด ํ†ตํ•ฉ ์ €์žฅ์†Œ(Chrome Root Store)๋ฅผ ๊ตฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ƒˆ ์ €์žฅ์†Œ๋Š” ์•„์ง ๊ธฐ๋ณธ์ ์œผ๋กœ ํ™œ์„ฑํ™”๋˜์–ด ์žˆ์ง€ ์•Š์œผ๋ฉฐ ๊ตฌํ˜„์ด ์™„๋ฃŒ๋  ๋•Œ๊นŒ์ง€ ์ธ์ฆ์„œ๋Š” ๊ฐ ์šด์˜ ์ฒด์ œ๋ณ„ ์ €์žฅ์†Œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ณ„์† ํ™•์ธ๋ฉ๋‹ˆ๋‹ค. ํ…Œ์ŠคํŠธ ์ค‘์ธ ์†”๋ฃจ์…˜์€ HTTPS๋ฅผ ํ†ตํ•ด ์‚ฌ์ดํŠธ๋ฅผ ์—ด ๋•Œ ์ธ์ฆ์„œ ์‹ ๋ขฐ ์ฒด์ธ์„ ํ™•์ธํ•˜๋Š” ์ฒซ ๋ฒˆ์งธ ๋งํฌ๋กœ ์‚ฌ์šฉ๋˜๋Š” ๋ณ„๋„์˜ ๋…๋ฆฝ์ ์ธ Firefox์šฉ ๋ฃจํŠธ ์ธ์ฆ์„œ ์ €์žฅ์†Œ๋ฅผ ์œ ์ง€ ๊ด€๋ฆฌํ•˜๋Š” Mozilla์˜ ์ ‘๊ทผ ๋ฐฉ์‹์„ ์—ฐ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค.
  • ํ‘œ์ค€ํ™”๋˜์ง€ ์•Š๊ณ  ๋Œ€๋ถ€๋ถ„ ์‚ฌ์šฉ๋˜์ง€ ์•Š์œผ๋ฉฐ ์ตœ์‹  ๋ณด์•ˆ ์š”๊ตฌ ์‚ฌํ•ญ์„ ์ถฉ์กฑํ•˜๋ ค๋ฉด ์žฌ์„ค๊ณ„๊ฐ€ ํ•„์š”ํ•œ Web SQL API์˜ ์‚ฌ์šฉ ์ค‘๋‹จ์„ ์œ„ํ•œ ์ค€๋น„๊ฐ€ ์‹œ์ž‘๋˜์—ˆ์Šต๋‹ˆ๋‹ค. Chrome 105๋Š” HTTPS๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ๋กœ๋“œ๋œ ์ฝ”๋“œ์—์„œ Web SQL์— ์•ก์„ธ์Šคํ•˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•˜๊ณ  DevTools์— ์ง€์› ์ค‘๋‹จ ๊ฒฝ๊ณ ๋„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. Web SQL API๋Š” 2023๋…„์— ์ œ๊ฑฐ๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ธฐ๋Šฅ์ด ํ•„์š”ํ•œ ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•ด WebAssembly ๊ธฐ๋ฐ˜์˜ ๋Œ€์ฒดํ’ˆ์ด ์ค€๋น„๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.
  • Chrome ๋™๊ธฐํ™”๋Š” ๋” ์ด์ƒ Chrome 73 ๋ฐ ์ด์ „ ๋ฆด๋ฆฌ์Šค์™€์˜ ๋™๊ธฐํ™”๋ฅผ ์ง€์›ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • macOS ๋ฐ Windows ํ”Œ๋žซํผ์˜ ๊ฒฝ์šฐ ๋‚ด์žฅ ์ธ์ฆ์„œ ๋ทฐ์–ด๊ฐ€ ํ™œ์„ฑํ™”๋˜์–ด ์šด์˜ ์ฒด์ œ์—์„œ ์ œ๊ณตํ•˜๋Š” ์ธํ„ฐํŽ˜์ด์Šค ํ˜ธ์ถœ์„ ๋Œ€์ฒดํ•ฉ๋‹ˆ๋‹ค. ์ด์ „์—๋Š” ๋‚ด์žฅ ๋ทฐ์–ด๊ฐ€ Linux ๋ฐ ChromeOS์šฉ ๋นŒ๋“œ์—๋งŒ ์‚ฌ์šฉ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • Android ๋ฒ„์ „์—๋Š” ๊ฐœ์ธ์ •๋ณด ๋ณดํ˜ธ ์ƒŒ๋“œ๋ฐ•์Šค ์ด๋‹ˆ์…”ํ‹ฐ๋ธŒ์˜ ์ผ๋ถ€๋กœ ์Šน๊ฒฉ๋œ Topics & Interest Group API๋ฅผ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ์„ค์ •์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์‚ฌ์šฉ์ž ๊ด€์‹ฌ ์นดํ…Œ๊ณ ๋ฆฌ๋ฅผ ์ •์˜ํ•˜๊ณ  ์ฟ ํ‚ค๋ฅผ ์ถ”์ ํ•˜๋Š” ๋Œ€์‹  ์ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐœ์ธ์„ ์‹๋ณ„ํ•˜์ง€ ์•Š๊ณ ๋„ ๋น„์Šทํ•œ ๊ด€์‹ฌ์„ ๊ฐ€์ง„ ์‚ฌ์šฉ์ž ๊ทธ๋ฃน์„ ์‹๋ณ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž. ๋งˆ์ง€๋ง‰ ๋ฆด๋ฆฌ์Šค์—์„œ๋Š” Linux, ChromeOS, macOS ๋ฐ Windows ๋ฒ„์ „์— ์œ ์‚ฌํ•œ ์„ค์ •์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ๊ณ ๊ธ‰ ๋ธŒ๋ผ์šฐ์ € ๋ณดํ˜ธ(์„ธ์ดํ”„ ๋ธŒ๋ผ์šฐ์ง• > ํ–ฅ์ƒ๋œ ๋ณดํ˜ธ)๋ฅผ ํ™œ์„ฑํ™”ํ•˜๋ฉด ์„ค์น˜๋œ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ, API์— ๋Œ€ํ•œ ์•ก์„ธ์Šค ๋ฐ ์™ธ๋ถ€ ์‚ฌ์ดํŠธ ์—ฐ๊ฒฐ์— ๋Œ€ํ•œ ์›๊ฒฉ ๋ถ„์„์ด ์ˆ˜์ง‘๋ฉ๋‹ˆ๋‹ค. ์ด ๋ฐ์ดํ„ฐ๋Š” Google ์„œ๋ฒ„์—์„œ ๋ธŒ๋ผ์šฐ์ € ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์˜ ์•…์˜์ ์ธ ํ™œ๋™๊ณผ ๊ทœ์น™ ์œ„๋ฐ˜์„ ๊ฐ์ง€ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
  • ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์œผ๋ฉฐ Chrome 106์˜ ์ฟ ํ‚ค ํ—ค๋”์— ์ง€์ •๋œ ๋„๋ฉ”์ธ์—์„œ ASCII๊ฐ€ ์•„๋‹Œ ๋ฌธ์ž์˜ ์‚ฌ์šฉ์„ ์ฐจ๋‹จํ•ฉ๋‹ˆ๋‹ค(IDN ๋„๋ฉ”์ธ์˜ ๊ฒฝ์šฐ ๋„๋ฉ”์ธ์€ ํ“จ๋‹ˆ์ฝ”๋“œ ํ˜•์‹์ด์–ด์•ผ ํ•จ). ์ด๋Ÿฌํ•œ ๋ณ€๊ฒฝ์œผ๋กœ ์ธํ•ด ๋ธŒ๋ผ์šฐ์ €๋Š” RFC 6265bis ๋ฐ Firefox์— ๊ตฌํ˜„๋œ ๋™์ž‘์„ ์ค€์ˆ˜ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.
  • ์„ ํƒํ•œ ํ…์ŠคํŠธ ์˜์—ญ์˜ ์Šคํƒ€์ผ์„ ์ž„์˜๋กœ ๋ณ€๊ฒฝํ•˜๊ณ  ๊ฐ•์กฐ ํ‘œ์‹œ๋œ ์˜์—ญ(::selection, ::inactive-selection) ๋ฐ ๊ฐ•์กฐ ํ‘œ์‹œ์— ๋Œ€ํ•ด ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ œ๊ณตํ•˜๋Š” ๊ณ ์ • ์Šคํƒ€์ผ์— ์˜ํ•ด ์ œํ•œ๋˜์ง€ ์•Š๋„๋ก ์„ค๊ณ„๋œ Custom ํ•˜์ด๋ผ์ดํŠธ API๊ฐ€ ์ œ์•ˆ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ตฌ๋ฌธ ์˜ค๋ฅ˜(::๋งž์ถค๋ฒ• ์˜ค๋ฅ˜, ::๋ฌธ๋ฒ• ์˜ค๋ฅ˜). API์˜ ์ฒซ ๋ฒˆ์งธ ๋ฒ„์ „์—์„œ๋Š” ์ƒ‰์ƒ ๋ฐ ๋ฐฐ๊ฒฝ์ƒ‰ ์˜์‚ฌ ์š”์†Œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ…์ŠคํŠธ ๋ฐ ๋ฐฐ๊ฒฝ์ƒ‰ ๋ณ€๊ฒฝ์„ ์ง€์›ํ–ˆ์ง€๋งŒ ํ–ฅํ›„ ๋‹ค๋ฅธ ์Šคํƒ€์ผ ์˜ต์…˜์ด ์ถ”๊ฐ€๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.

    ์ƒˆ๋กœ์šด API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š” ์ž‘์—…์˜ ์˜ˆ๋กœ๋Š” ํ…์ŠคํŠธ ํŽธ์ง‘ ๋„๊ตฌ๋ฅผ ์ œ๊ณตํ•˜๋Š” ์›น ํ”„๋ ˆ์ž„์›Œํฌ ์ถ”๊ฐ€, ์ž์ฒด ํ…์ŠคํŠธ ์„ ํƒ ๋ฉ”์ปค๋‹ˆ์ฆ˜, ์—ฌ๋Ÿฌ ์‚ฌ์šฉ์ž์˜ ๋™์‹œ ๊ณต๋™ ํŽธ์ง‘์„ ์œ„ํ•œ ๋‹ค์–‘ํ•œ ๊ฐ•์กฐ ํ‘œ์‹œ, ๊ฐ€์ƒํ™”๋œ ๋ฌธ์„œ ๊ฒ€์ƒ‰ ๋“ฑ์ด ์–ธ๊ธ‰๋ฉ๋‹ˆ๋‹ค. , ์ฒ ์ž ๊ฒ€์‚ฌ ์‹œ ์˜ค๋ฅ˜ ํ‘œ์‹œ . ์ด์ „์—๋Š” ๋น„ํ‘œ์ค€ ๊ฐ•์กฐ ํ‘œ์‹œ๋ฅผ ๋งŒ๋“ค๋ ค๋ฉด DOM ํŠธ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•œ ๋ณต์žกํ•œ ์กฐ์ž‘์ด ํ•„์š”ํ–ˆ์ง€๋งŒ Custom Highlight API๋Š” DOM ๊ตฌ์กฐ์— ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š๋Š” ๊ฐ•์กฐ ํ‘œ์‹œ๋ฅผ ์ถ”๊ฐ€ ๋ฐ ์ œ๊ฑฐํ•˜๊ณ  Range ๊ฐœ์ฒด์™€ ๊ด€๋ จํ•˜์—ฌ ์Šคํƒ€์ผ์„ ์ ์šฉํ•˜๊ธฐ ์œ„ํ•œ ๋ฏธ๋ฆฌ ๋งŒ๋“ค์–ด์ง„ ์ž‘์—…์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

  • CSS์— "@container" ์ฟผ๋ฆฌ๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ์ƒ์œ„ ์š”์†Œ์˜ ํฌ๊ธฐ์— ๋”ฐ๋ผ ์š”์†Œ์˜ ์Šคํƒ€์ผ์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. โ€œ@containerโ€๋Š” โ€œ@mediaโ€ ์ฟผ๋ฆฌ์™€ ์œ ์‚ฌํ•˜์ง€๋งŒ ๋ณด์ด๋Š” ์ „์ฒด ์˜์—ญ์˜ ํฌ๊ธฐ๊ฐ€ ์•„๋‹ˆ๋ผ ์š”์†Œ๊ฐ€ ๋ฐฐ์น˜๋˜๋Š” ๋ธ”๋ก(์ปจํ…Œ์ด๋„ˆ)์˜ ํฌ๊ธฐ์— ์ ์šฉ๋˜๋ฏ€๋กœ ์ง์ ‘ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŽ˜์ด์ง€์—์„œ ์š”์†Œ๊ฐ€ ์ •ํ™•ํžˆ ์–ด๋””์— ๋ฐฐ์น˜๋˜๋Š”์ง€์— ๊ด€๊ณ„์—†์ด ํ•˜์œ„ ์š”์†Œ์— ๋Œ€ํ•œ ์Šคํƒ€์ผ ์„ ํƒ ๋…ผ๋ฆฌ์ž…๋‹ˆ๋‹ค.
    ํฌ๋กฌ 105 ๋ฆด๋ฆฌ์Šค
  • ์ƒ์œ„ ์š”์†Œ์— ํ•˜์œ„ ์š”์†Œ๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด CSS ์˜์‚ฌ ํด๋ž˜์Šค ":has()"๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด "p:has(span)"์€ ์š”์†Œ๋ฅผ ํ™•์žฅํ•ฉ๋‹ˆ๋‹ค. , ๊ทธ ์•ˆ์— ์š”์†Œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค .
  • setHTML() ๋ฉ”์„œ๋“œ๋ฅผ ํ†ตํ•ด ์ถœ๋ ฅํ•˜๋Š” ๋™์•ˆ ํ‘œ์‹œ ๋ฐ ์‹คํ–‰์— ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š” ์š”์†Œ๋ฅผ ์ฝ˜ํ…์ธ ์—์„œ ์ž˜๋ผ๋‚ผ ์ˆ˜ ์žˆ๋Š” HTML Sanitizer API๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. API๋Š” XSS ๊ณต๊ฒฉ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” HTML ํƒœ๊ทธ๋ฅผ ์ œ๊ฑฐํ•˜๊ธฐ ์œ„ํ•ด ์™ธ๋ถ€ ๋ฐ์ดํ„ฐ๋ฅผ ์ •๋ฆฌํ•˜๋Š” ๋ฐ ์œ ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์‘๋‹ต ๋ณธ๋ฌธ์ด ๋กœ๋“œ๋˜๊ธฐ ์ „์— Streams API(ReadableStream)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ€์ ธ์˜ค๊ธฐ ์š”์ฒญ์„ ๋ณด๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŽ˜์ด์ง€ ์ƒ์„ฑ์ด ์™„๋ฃŒ๋  ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ฆฌ์ง€ ์•Š๊ณ  ๋ฐ์ดํ„ฐ ์ „์†ก์„ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์„ค์น˜๋œ ๋…๋ฆฝํ˜• ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜(PWA, Progressive Web App)์˜ ๊ฒฝ์šฐ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ํ™”๋ฉด ์˜์—ญ์„ ์ „์ฒด ์ฐฝ์œผ๋กœ ํ™•์žฅํ•˜๊ณ  ์ฐฝ ์ปจํŠธ๋กค ์˜ค๋ฒ„๋ ˆ์ด ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ฐฝ ์ œ๋ชฉ ์˜์—ญ์˜ ๋””์ž์ธ์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ผ๋ฐ˜ ๋ฐ์Šคํฌํ†ฑ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋ชจ์Šต์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ํ‘œ์ค€ ์ฐฝ ์ œ์–ด ๋ฒ„ํŠผ(๋‹ซ๊ธฐ, ์ตœ์†Œํ™”, ์ตœ๋Œ€ํ™”)์ด ์žˆ๋Š” ์˜ค๋ฒ„๋ ˆ์ด ๋ธ”๋ก์„ ์ œ์™ธํ•˜๊ณ  ์ „์ฒด ์ฐฝ์—์„œ ์ž…๋ ฅ ๋ Œ๋”๋ง ๋ฐ ์ฒ˜๋ฆฌ๋ฅผ ์ œ์–ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    ํฌ๋กฌ 105 ๋ฆด๋ฆฌ์Šค
  • DedicatedWorker ์ปจํ…์ŠคํŠธ์—์„œ ์ „์šฉ ์ž‘์—…์ž๋กœ๋ถ€ํ„ฐ ๋ฏธ๋””์–ด ์†Œ์Šค ํ™•์žฅ์— ์•ก์„ธ์Šคํ•˜๋Š” ๊ธฐ๋Šฅ์ด ์•ˆ์ •ํ™”๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋ณ„๋„์˜ ์ž‘์—…์ž์—์„œ MediaSource ๊ฐœ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ๋ฉ”์ธ ์Šค๋ ˆ๋“œ์˜ HTMLMediaElement์— ๋Œ€ํ•œ ์ž‘์—… ๊ฒฐ๊ณผ์ž…๋‹ˆ๋‹ค.
  • User-Agent ํ—ค๋”๋ฅผ ๋Œ€์ฒดํ•˜๊ธฐ ์œ„ํ•ด ๊ฐœ๋ฐœ ์ค‘์ธ Client Hints API์—์„œ๋Š” ์„œ๋ฒ„์˜ ์š”์ฒญ ํ›„์—๋งŒ ํŠน์ • ๋ธŒ๋ผ์šฐ์ € ๋ฐ ์‹œ์Šคํ…œ ๋งค๊ฐœ๋ณ€์ˆ˜(๋ฒ„์ „, ํ”Œ๋žซํผ ๋“ฑ)์— ๋Œ€ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์„ ํƒ์ ์œผ๋กœ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, Sec์— ๋Œ€ํ•œ ์ง€์› -CH-Viewport-Heigh ์†์„ฑ์ด ์ถ”๊ฐ€๋˜์–ด ๊ฐ€์‹œ ์˜์—ญ์˜ ๋†’์ด ์ •๋ณด๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. "meta" ํƒœ๊ทธ์—์„œ ์™ธ๋ถ€ ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•œ ํด๋ผ์ด์–ธํŠธ ํžŒํŠธ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ง€์ •ํ•˜๊ธฐ ์œ„ํ•œ ๋งˆํฌ์—… ํ˜•์‹์ด ๋ณ€๊ฒฝ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด์ „: ๊ฐ€ ๋˜์—ˆ๋‹ค:
  • ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ๋ธ”๋ก์˜ ํ…์ŠคํŠธ๋ฅผ ํŽธ์ง‘ํ•  ๋•Œ ๋™์ž‘์„ ์žฌ์ •์˜ํ•  ์ˆ˜ ์žˆ๋Š” ์ „์—ญ onbeforeinput ์ด๋ฒคํŠธ ํ•ธ๋“ค๋Ÿฌ(document.documentElement.onbeforeinput)๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ธฐ๋Šฅ์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. , ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์š”์†Œ์˜ ์ฝ˜ํ…์ธ ์™€ DOM ํŠธ๋ฆฌ๋ฅผ ๋ณ€๊ฒฝํ•˜๊ธฐ ์ „์— "contenteditable" ์†์„ฑ์ด ์„ค์ •๋œ ๊ธฐํƒ€ ์š”์†Œ.
  • Navigation API์˜ ๊ธฐ๋Šฅ์ด ํ™•์žฅ๋˜์–ด ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์ฐฝ์—์„œ ํƒ์ƒ‰ ์ž‘์—…์„ ๊ฐ€๋กœ์ฑ„๊ณ  ์ „ํ™˜์„ ์‹œ์ž‘ํ•˜๋ฉฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์ž‘์—… ๊ธฐ๋ก์„ ๋ถ„์„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ „ํ™˜์„ ๊ฐ€๋กœ์ฑ„๋Š” ์ƒˆ๋กœ์šด ๋ฉ”์„œ๋“œ์ธ ๊ฐ€๋กœ์ฑ„๊ธฐ()์™€ ์ง€์ •๋œ ์œ„์น˜๋กœ ์Šคํฌ๋กคํ•˜๋Š” ์Šคํฌ๋กค()์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • JSON ์œ ํ˜•์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์‘๋‹ต ๋ณธ๋ฌธ์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋Š” ์ •์  ๋ฉ”์„œ๋“œ Response.json()์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ์›น ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ๋„๊ตฌ๊ฐ€ ๊ฐœ์„ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋””๋ฒ„๊ฑฐ์—์„œ ์ค‘๋‹จ์ ์ด ํŠธ๋ฆฌ๊ฑฐ๋˜๋ฉด ๋””๋ฒ„๊น… ์„ธ์…˜์„ ์ค‘๋‹จํ•˜์ง€ ์•Š๊ณ  ์Šคํƒ์˜ ์ตœ์ƒ์œ„ ํ•จ์ˆ˜๋ฅผ ํŽธ์ง‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŽ˜์ด์ง€์—์„œ ์‚ฌ์šฉ์ž ์ž‘์—…์„ ๊ธฐ๋ก, ์žฌ์ƒ ๋ฐ ๋ถ„์„ํ•  ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ฝ”๋” ํŒจ๋„์€ ์ค‘๋‹จ์ , ๋‹จ๊ณ„๋ณ„ ์žฌ์ƒ ๋ฐ ๋งˆ์šฐ์Šค ์˜ค๋ฒ„ ์ด๋ฒคํŠธ ๊ธฐ๋ก์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

    LCP(Largest Contentful Paint) ์ง€ํ‘œ๊ฐ€ ์„ฑ๋Šฅ ๋Œ€์‹œ๋ณด๋“œ์— ์ถ”๊ฐ€๋˜์–ด ์ด๋ฏธ์ง€, ๋น„๋””์˜ค, ๋ธ”๋ก ์š”์†Œ ๋“ฑ ๊ฐ€์‹œ ์˜์—ญ์—์„œ ํฐ(์‚ฌ์šฉ์ž์—๊ฒŒ ํ‘œ์‹œ๋˜๋Š”) ์š”์†Œ๋ฅผ ๋ Œ๋”๋งํ•  ๋•Œ ๋ฐœ์ƒํ•˜๋Š” ์ง€์—ฐ์„ ์‹๋ณ„ํ•ฉ๋‹ˆ๋‹ค. ์š”์†Œ ํŒจ๋„์—์„œ ๋‹ค๋ฅธ ์ฝ˜ํ…์ธ  ์œ„์— ํ‘œ์‹œ๋˜๋Š” ์ตœ์ƒ์œ„ ๋ ˆ์ด์–ด์—๋Š” ํŠน์ˆ˜ ์•„์ด์ฝ˜์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ์ด์ œ WebAssembly์—๋Š” DWARF ํ˜•์‹์œผ๋กœ ๋””๋ฒ„๊น… ๋ฐ์ดํ„ฐ๋ฅผ ๋กœ๋“œํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

ํ˜์‹ ๊ณผ ๋ฒ„๊ทธ ์ˆ˜์ • ์™ธ์—๋„ ์ƒˆ ๋ฒ„์ „์—์„œ๋Š” 24๊ฐœ์˜ ์ทจ์•ฝ์ ์ด ์ œ๊ฑฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer ๋ฐ AFL ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•œ ์ž๋™ํ™”๋œ ํ…Œ์ŠคํŠธ์˜ ๊ฒฐ๊ณผ๋กœ ๋งŽ์€ ์ทจ์•ฝ์ ์ด ์‹๋ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  ์ˆ˜์ค€์˜ ๋ธŒ๋ผ์šฐ์ € ๋ณดํ˜ธ๋ฅผ ์šฐํšŒํ•˜๊ณ  ์ƒŒ๋“œ๋ฐ•์Šค ํ™˜๊ฒฝ ์™ธ๋ถ€์˜ ์‹œ์Šคํ…œ์—์„œ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ์‹ฌ๊ฐํ•œ ๋ฌธ์ œ๋Š” ํ™•์ธ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ ๋ฆด๋ฆฌ์Šค์˜ ์ทจ์•ฝ์ ์„ ๋ฐœ๊ฒฌํ•œ ๋Œ€๊ฐ€๋กœ ํ˜„๊ธˆ ๋ณด์ƒ์„ ์ง€๊ธ‰ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์˜ ์ผํ™˜์œผ๋กœ Google์€ $21 ์ƒ๋‹น์˜ 60500๊ฐœ ์ƒ๊ธˆ($10000 ์ƒ 9000๊ฐœ, $7500 ์ƒ 7000๊ฐœ, $5000 ์ƒ 3000๊ฐœ, $2000 ์ƒ 1000๊ฐœ, $XNUMX XNUMX๊ฐœ ์ƒ, $XNUMX ์ƒ XNUMX๊ฐœ, ์ƒ XNUMX๊ฐœ)์„ ์ง€๊ธ‰ํ–ˆ์Šต๋‹ˆ๋‹ค. ). $XNUMX ๋ฐ $XNUMX ๋ณด๋„ˆ์Šค XNUMX๊ฐœ). XNUMX๊ฐœ ๋ณด์ƒ์˜ ๊ทœ๋ชจ๋Š” ์•„์ง ๊ฒฐ์ •๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€