๊ตฌ๊ธ์ ํฌ๋กฌ 91 ์น๋ธ๋ผ์ฐ์ ๋ฅผ ๊ณต๊ฐํ๊ณ , ๋์์ ํฌ๋กฌ์ ๊ธฐ๋ฐ์ด ๋๋ ๋ฌด๋ฃ ํฌ๋ก๋ฏธ์(Chromium) ํ๋ก์ ํธ๋ ์์ ์ ์ผ๋ก ์ถ์๋๋ค. Chrome ๋ธ๋ผ์ฐ์ ๋ Google ๋ก๊ณ ์ฌ์ฉ, ์ถฉ๋ ์ ์๋ฆผ ์ ์ก ์์คํ , DRM(๋ณดํธ๋ ๋น๋์ค ์ฝํ ์ธ ) ์ฌ์ ๋ชจ๋, ์ ๋ฐ์ดํธ ์๋ ์ค์น ์์คํ , ๊ฒ์ ์ RLZ ๋งค๊ฐ๋ณ์ ์ ์ก์ผ๋ก ๊ตฌ๋ณ๋ฉ๋๋ค. Chrome 92์ ๋ค์ ๋ฆด๋ฆฌ์ค๋ 20์ XNUMX์ผ๋ก ์์ ๋์ด ์์ต๋๋ค.
Chrome 91์ ์ฃผ์ ๋ณ๊ฒฝ ์ฌํญ:
- ์ถ์๋ ํญ ๊ทธ๋ฃน์์ JavaScript ์คํ์ ์ค์งํ๋ ๊ธฐ๋ฅ์ ๊ตฌํํ์ต๋๋ค. Chrome 85์์๋ ํญ์ ํน์ ์์ ๋ฐ ๋ผ๋ฒจ๊ณผ ์ฐ๊ฒฐํ ์ ์๋ ๊ทธ๋ฃน์ผ๋ก ๊ตฌ์ฑํ๋ ๊ธฐ๋ฅ์ ์ง์ํฉ๋๋ค. ๊ทธ๋ฃน ๋ผ๋ฒจ์ ํด๋ฆญํ๋ฉด ๊ด๋ จ๋ ํญ์ด ์ถ์๋๊ณ ๋์ ํ๋์ ๋ผ๋ฒจ์ด ๋จ์ต๋๋ค. ๋ผ๋ฒจ์ ๋ค์ ํด๋ฆญํ๋ฉด ๊ทธ๋ฃน์ด ์ด๋ฆฝ๋๋ค. ์ ๋ฆด๋ฆฌ์ค์์๋ CPU ๋ถํ๋ฅผ ์ค์ด๊ณ ์๋์ง๋ฅผ ์ ์ฝํ๊ธฐ ์ํด ์ต์ํ๋ ํญ์ ํ๋์ด ์ผ์ ์ค์ง๋์์ต๋๋ค. ์ฌ์ด๋๋ฅผ ์ฌ์ํ๊ฑฐ๋, ์น ์ ๊ธ ๋๋ IndexedDB API๋ฅผ ์ฌ์ฉํ๊ฑฐ๋, USB ์ฅ์น์ ์ฐ๊ฒฐํ๊ฑฐ๋, ๋น๋์ค, ์ฌ์ด๋ ๋๋ ์ฐฝ ์ฝํ ์ธ ๋ฅผ ์บก์ฒํ๋ ํญ์ ๋ํด์๋ง ์์ธ๊ฐ ์ ์ฉ๋ฉ๋๋ค. ๋ณ๊ฒฝ ์ฌํญ์ ์์์ ์ฌ์ฉ์๋ถํฐ ์์ํ์ฌ ์ ์ง์ ์ผ๋ก ์ถ์๋ ์์ ์ ๋๋ค.
- ์์ ์ปดํจํฐ์ ๋ฌด์ฐจ๋ณ ๋์ ์ ์ ํญํ๋ ์ฃผ์ ํฉ์ ๋ฐฉ๋ฒ์ ๋ํ ์ง์์ด ํฌํจ๋์์ต๋๋ค. ์์ ์ปดํจํฐ๋ ํ๋ ๋น๋์นญ ์ํธํ ์๊ณ ๋ฆฌ์ฆ์ ๊ธฐ์ด๊ฐ ๋๊ณ ๊ธฐ์กด ํ๋ก์ธ์์์๋ ํจ๊ณผ์ ์ผ๋ก ํด๊ฒฐํ ์ ์๋ ์์ฐ์๋ฅผ ์์ธ์๋ก ๋ถํดํ๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋ฐ ๊ทผ๋ณธ์ ์ผ๋ก ๋ ๋น ๋ฆ ๋๋ค. TLSv1.3์์ ์ฌ์ฉํ๊ธฐ ์ํด CECPQ2(Combined Elliptic-Curve and Post-Quantum 2) ํ๋ฌ๊ทธ์ธ์ด ์ ๊ณต๋์ด ํด๋์ X25519 ํค ๊ตํ ๋ฉ์ปค๋์ฆ๊ณผ ํฌ์คํธํํ ์ํธํ ์์คํ ์ฉ์ผ๋ก ์ค๊ณ๋ NTRU Prime ์๊ณ ๋ฆฌ์ฆ ๊ธฐ๋ฐ HRSS ์ฒด๊ณ๋ฅผ ๊ฒฐํฉํฉ๋๋ค.
- IETF(Internet Engineering Task Force) ์์ํ์ ์ํด ํ๊ธฐ๋ TLS 1.0 ๋ฐ TLS 1.1 ํ๋กํ ์ฝ์ ๋ํ ์ง์์ด ์์ ํ ์ค๋จ๋์์ต๋๋ค. SSLVersionMin ์ ์ฑ ์ ๋ณ๊ฒฝํ์ฌ TLS 1.0/1.1์ ๋ฐํํ ๊ฐ๋ฅ์ฑ์ด ์ ๊ฑฐ๋์์ต๋๋ค.
- Linux ํ๋ซํผ์ฉ ์ด์ ๋ธ๋ฆฌ์๋ ์ด์ ์ Windows, macOS, ChromeOS ๋ฐ Android ์ฌ์ฉ์์๊ฒ ์ ๊ณต๋์๋ "HTTPS๋ฅผ ํตํ DNS"(DoH, HTTPS๋ฅผ ํตํ DNS) ๋ชจ๋์ ์ฌ์ฉ์ด ํฌํจ๋ฉ๋๋ค. DNS-over-HTTPS๋ ์ด ๊ธฐ์ ์ ์ง์ํ๋ DNS ๊ณต๊ธ์๋ฅผ ์ง์ ํ๋ ์ค์ ์ ๊ฐ์ง ์ฌ์ฉ์์ ๋ํด ์๋์ผ๋ก ํ์ฑํ๋ฉ๋๋ค(DNS-over-HTTPS์ ๊ฒฝ์ฐ DNS์ ๋์ผํ ๊ณต๊ธ์๊ฐ ์ฌ์ฉ๋จ). ์๋ฅผ ๋ค์ด, ์ฌ์ฉ์๊ฐ ์์คํ ์ค์ ์ DNS 8.8.8.8์ ์ง์ ํ๋ค๋ฉด Google์ DNS-over-HTTPS ์๋น์ค(โhttps://dns.google.com/dns-queryโ)๊ฐ Chrome์์ ํ์ฑํ๋ฉ๋๋ค. 1.1.1.1์ด๋ฉด DNS-over-HTTPS ์๋น์ค Cloudflare(โhttps://cloudflare-dns.com/dns-queryโ) ๋ฑ์ ๋๋ค.
- Amanda ๋ฐฑ์ ๊ณผ VMWare vCenter์์ ์ฌ์ฉ๋๋ ํฌํธ 10080์ด ๊ธ์ง๋ ๋คํธ์ํฌ ํฌํธ ๋ชฉ๋ก์ ์ถ๊ฐ๋์์ต๋๋ค. ์ด์ ์๋ ํฌํธ 69, 137, 161, 554, 1719, 1720, 1723, 5060, 5061 ๋ฐ 6566์ด ์ด๋ฏธ ์ฐจ๋จ๋์์ผ๋ฉฐ, ๋ธ๋๋ฆฌ์คํธ์ ์๋ ํฌํธ์ ๊ฒฝ์ฐ NAT ์ฌ๋ฆฝ์คํธ๋ฆฌ๋ฐ ๊ณต๊ฒฉ์ผ๋ก๋ถํฐ ๋ณดํธํ๊ธฐ ์ํด HTTP, HTTPS ๋ฐ FTP ์์ฒญ ์ ์ก์ด ์ฐจ๋จ๋ฉ๋๋ค. , ๋ด๋ถ ์ฃผ์ ๋ฒ์(192.168.x.x, 10)๋ฅผ ์ฌ์ฉํจ์๋ ๋ถ๊ตฌํ๊ณ ๊ณต๊ฒฉ์๊ฐ ํน๋ณํ ์ค๋นํ ์น ํ์ด์ง๋ฅผ ๋ธ๋ผ์ฐ์ ์์ ์ด๋ฉด ๊ณต๊ฒฉ์์ ์๋ฒ์์ ์ฌ์ฉ์ ์์คํ ์ UDP ๋๋ TCP ํฌํธ๋ก ๋คํธ์ํฌ ์ฐ๊ฒฐ์ ์ค์ ํ ์ ์์ต๋๋ค. .ํธ๋ฆฌํ ์์ค).
- ์ฌ์ฉ์๊ฐ ์์คํ (Windows ๋ฐ macOS)์ ๋ก๊ทธ์ธํ ๋ ๋ ๋ฆฝํ ์น ์ ํ๋ฆฌ์ผ์ด์ (PWA - Progressive Web Apps)์ ์๋ ์คํ์ ๊ตฌ์ฑํ ์ ์์ต๋๋ค. ์๋ ์คํ์ chrome://apps ํ์ด์ง์์ ๊ตฌ์ฑ๋ฉ๋๋ค. ์ด ๊ธฐ๋ฅ์ ํ์ฌ ์์์ ์ฌ์ฉ์๋ฅผ ๋์์ผ๋ก ํ ์คํธ ์ค์ด๋ฉฐ ๋๋จธ์ง ์ฌ์ฉ์์ ๊ฒฝ์ฐ 'chrome://flags/#enable-desktop-pwas-run-on-os-login' ์ค์ ์ ํ์ฑํํด์ผ ํฉ๋๋ค.
- ํฌ๊ด์ ์ธ ์ฉ์ด๋ฅผ ์ฌ์ฉํ๋๋ก ๋ธ๋ผ์ฐ์ ๋ฅผ ์ด๋ํ๋ ์์ ์ ์ผํ์ผ๋ก "master_preferences" ํ์ผ์ ์ด๋ฆ์ด "initial_preferences"๋ก ๋ณ๊ฒฝ๋์์ต๋๋ค. ํธํ์ฑ์ ์ ์งํ๊ธฐ ์ํด "master_preferences"์ ๋ํ ์ง์์ ํ๋์ ๋ธ๋ผ์ฐ์ ์ ์ ์ง๋ฉ๋๋ค. ์ด์ ์๋ ๋ธ๋ผ์ฐ์ ์์ ์ด๋ฏธ "ํ์ดํธ๋ฆฌ์คํธ", "๋ธ๋๋ฆฌ์คํธ" ๋ฐ "๋ค์ดํฐ๋ธ"๋ผ๋ ๋จ์ด ์ฌ์ฉ์ ์ ๊ฑฐํ์ต๋๋ค.
- ์น์์ ํผ์ฑ, ์ ์ฑ ํ๋ ๋ฐ ๊ธฐํ ์ํ์ผ๋ก๋ถํฐ ๋ณดํธํ๊ธฐ ์ํด ์ถ๊ฐ ๊ฒ์ฌ๋ฅผ ํ์ฑํํ๋ ํฅ์๋ ์์ ๋ธ๋ผ์ฐ์ง ๋ชจ๋์๋ Google ์ธก์์ ๊ฒ์ฌํ๊ธฐ ์ํด ๋ค์ด๋ก๋ํ ํ์ผ์ ๋ณด๋ด๋ ๊ธฐ๋ฅ์ด ํฌํจ๋์ด ์์ต๋๋ค. ๋ํ ํฅ์๋ ์ธ์ดํ ๋ธ๋ผ์ฐ์ง์ ํผ์ฑ ์๋ ์๋ณ ์ Google ๊ณ์ ์ ์ฐ๊ฒฐ๋ ํ ํฐ์ ๋ํ ๊ณ์ ์ ๊ตฌํํ๊ณ , ์ถ์ฒ์ ํค๋ ๊ฐ์ Google ์๋ฒ๋ก ์ ์กํ์ฌ ์ ์ฑ ์ฌ์ดํธ๋ก๋ถํฐ์ ์ ๋ฌ์ ํ์ธํฉ๋๋ค.
- Android ํ๋ซํผ์ฉ ๋ฒ์ ์์๋ ์น ์์ ์์์ ๋์์ธ์ด ๊ฐ์ ๋์ด ์ฅ์ ์ธ์ฉ ํฐ์น ์คํฌ๋ฆฐ ๋ฐ ์์คํ
์ฌ์ฉ์ ์ต์ ํ๋์์ต๋๋ค(๋ฐ์คํฌํฑ ์์คํ
์ ๊ฒฝ์ฐ Chrome 83์์ ๋์์ธ์ด ๋ค์ ์ํ๋จ). ์ฌ์์
์ ๋ชฉ์ ์ ์์ ์์์ ๋์์ธ์ ํตํฉํ๊ณ ์คํ์ผ ๋ถ์ผ์น๋ฅผ ์ ๊ฑฐํ๋ ๊ฒ์ด์์ต๋๋ค. ์ด์ ์๋ ์ผ๋ถ ์์ ์์๊ฐ ์ด์ ์ฒด์ ์ธํฐํ์ด์ค ์์์ ๋ฐ๋ผ ๋์์ธ๋์๊ณ ์ผ๋ถ๋ ๊ฐ์ฅ ์ธ๊ธฐ ์๋ ์คํ์ผ์ ๋ฐ๋ผ ๋์์ธ๋์์ต๋๋ค. ์ด๋ก ์ธํด ํฐ์น์คํฌ๋ฆฐ๊ณผ ์ฅ์ ์ธ์ฉ ์์คํ
์ ์ ํฉํ ์์๊ฐ ๋ค์ํด์ก์ต๋๋ค.
- ๊ฐ์ธ ์ ๋ณด ๋ณดํธ ์๋๋ฐ์ค ์ค์ (chrome://settings/privacySandbox)์ ์ด ๋ ํ์๋๋ ์ฌ์ฉ์ ์๊ฒฌ ์ค๋ฌธ์กฐ์ฌ๋ฅผ ์ถ๊ฐํ์ต๋๋ค.
- ๋ํ ํ๋ฉด์ ํ๋ธ๋ฆฟ PC์์ Android ๋ฒ์ ์ Chrome์ ์คํํ ๋ ๋ชจ๋ฐ์ผ ๋ฒ์ ์ด ์๋ ๋ฐ์คํฌํฑ ๋ฒ์ ์ ์ฌ์ดํธ๋ฅผ ์์ฒญํฉ๋๋ค. 'chrome://flags/#request-desktop-site-for-tablets' ์ค์ ์ ์ฌ์ฉํ์ฌ ๋์์ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค.
- ํ ์ด๋ธ ๋ ๋๋ง ์ฝ๋๊ฐ ์ฌ์์ ๋์ด Chrome ๋ฐ Firefox/Safari์์ ํ ์ด๋ธ์ ํ์ํ ๋ ๋์์ ๋ถ์ผ์น ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์์์ต๋๋ค.
- ์คํ์ธ ์ธ์ฆ ๊ธฐ๊ด Camerfirma์ ์๋ฒ ์ธ์ฆ์ ์ฒ๋ฆฌ๋ 2017๋ ๋ถํฐ ์ธ์ฆ์ ๋ฐ๊ธ ์๋ฐ๊ณผ ๊ด๋ จ๋ ์ฌ๊ฑด์ด โโ๋ฐ๋ณต๋์ด ์ค๋จ๋์์ต๋๋ค. ํด๋ผ์ด์ธํธ ์ธ์ฆ์์ ๋ํ ์ง์์ ์ ์ง๋๋ฉฐ ์ฐจ๋จ์ HTTPS ์ฌ์ดํธ์์ ์ฌ์ฉ๋๋ ์ธ์ฆ์์๋ง ์ ์ฉ๋ฉ๋๋ค.
- ๋น์ฌ๋ ์ ๋ณด๋ฅผ ์๊ตฌ์ ์ผ๋ก ์ ์ฅํ ๋ชฉ์ ์ด ์๋ ์์ญ์ ์๋ณ์๋ฅผ ์ ์ฅํ๋ ๋ฐฉ์(โ์ํผ์ฟ ํคโ)์ ๊ธฐ๋ฐ์ผ๋ก ์ฌ์ดํธ ๊ฐ ์ฌ์ฉ์ ์ด๋์ ์ถ์ ํ๋ ๋ฐฉ๋ฒ์ผ๋ก๋ถํฐ ๋ณดํธํ๊ธฐ ์ํด ๋คํธ์ํฌ ๋ถํ ์ ๋ํ ์ง์์ ๊ณ์ ๊ตฌํํ๊ณ ์์ต๋๋ค. ์บ์๋ ๋ฆฌ์์ค๋ ์๋ ๋๋ฉ์ธ์ ๊ด๊ณ์์ด ๊ณตํต ๋ค์์คํ์ด์ค์ ์ ์ฅ๋๋ฏ๋ก ํ ์ฌ์ดํธ์์๋ ํด๋น ๋ฆฌ์์ค๊ฐ ์บ์์ ์๋์ง ํ์ธํ์ฌ ๋ค๋ฅธ ์ฌ์ดํธ์์ ๋ฆฌ์์ค๋ฅผ ๋ก๋ํ๊ณ ์๋์ง ํ์ธํ ์ ์์ต๋๋ค. ๋ณดํธ๋ ๋คํธ์ํฌ ๋ถํ (๋คํธ์ํฌ ๋ถํ ) ์ฌ์ฉ์ ๊ธฐ๋ฐ์ผ๋ก ํ๋ฉฐ, ๊ทธ ํต์ฌ์ ๊ณต์ ์บ์์ ๊ธฐ๋ณธ ํ์ด์ง๊ฐ ์ด๋ฆฌ๋ ๋๋ฉ์ธ์ ๋ํ ์ถ๊ฐ ๋ ์ฝ๋ ๋ฐ์ธ๋ฉ์ ์ถ๊ฐํ๋ ๊ฒ์
๋๋ค. ์ด๋ ์ด๋ ์ถ์ ์คํฌ๋ฆฝํธ์ ๋ํด์๋ง ์บ์ ์ ์ฉ ๋ฒ์๋ฅผ ์ ํํฉ๋๋ค. ํ์ฌ ์ฌ์ดํธ๋ก ์ด๋ํฉ๋๋ค(iframe์ ์คํฌ๋ฆฝํธ๋ ๋ฆฌ์์ค๊ฐ ๋ค๋ฅธ ์ฌ์ดํธ์์ ๋ค์ด๋ก๋๋์๋์ง ํ์ธํ ์ ์์ต๋๋ค).
์ธ๋ถํ์ ๋๊ฐ๋ ์บ์ฑ ํจ์จ์ฑ์ ๊ฐ์๋ก ์ธํด ํ์ด์ง ๋ก๋ ์๊ฐ์ด ์ฝ๊ฐ ์ฆ๊ฐํฉ๋๋ค(์ต๋ 1.32%, ๊ทธ๋ฌ๋ 80% ์ฌ์ดํธ์ ๊ฒฝ์ฐ 0.09-0.75%). ๋ถํ ๋ชจ๋๋ฅผ ํ ์คํธํ๋ ค๋ฉด "โenable-features=PartitionConnectionsByNetworkIsolationKey, PartitionExpectCTStateByNetworkIsolationKey, PartitionHttpServerPropertiesByNetworkIsolationKey, PartitionNelAndReportingByNetworkIsolationKey, PartitionSSLSessionsByNetworkIsolationKey, SplitHostCacheByNet workIsolationKey" ์ต์ ์ ์ฌ์ฉํ์ฌ ๋ธ๋ผ์ฐ์ ๋ฅผ ์คํํ ์ ์์ต๋๋ค.
- ์ธ๋ถ REST API VersionHistory(https://versionhistory.googleapis.com/v1/chrome)๋ฅผ ์ถ๊ฐํ์ต๋๋ค. ์ด๋ฅผ ํตํด ํ๋ซํผ ๋ฐ ๋ธ๋์น์ ๊ด๋ จ๋ Chrome ๋ฒ์ ์ ๋ณด๋ ๋ฌผ๋ก ๋ธ๋ผ์ฐ์ ์ ๋ฐ์ดํธ ๊ธฐ๋ก์ ํ์ธํ ์ ์์ต๋๋ค.
- ๊ธฐ๋ณธ ํ์ด์ง์ ๋๋ฉ์ธ์ด ์๋ ๋๋ฉ์ธ์์ ๋ก๋๋ iframe์์๋ JavaScript ๋ํ ์์ ๊ฒฝ๊ณ (), ํ์ธ() ๋ฐ ํ๋กฌํํธ() ํ์๊ฐ ๊ธ์ง๋ฉ๋๋ค. ์ด๋ ์ 3์ ์คํฌ๋ฆฝํธ๊ฐ ๋ค์ ์๋์ ๋ฉ์์ง๋ฅผ ํ์ํ๋ ค๋ ์๋๋ก๋ถํฐ ์ฌ์ฉ์๋ฅผ ๋ณดํธํฉ๋๋ค. ๋ฉ์ธ ์ฌ์ดํธ์์ ์๋ฆผ์ด ํ์๋์๋ค๊ณ ๊ฐ์ ํฉ๋๋ค.
- WebAssembly SIMD API๋ ์์ ํ๋์์ผ๋ฉฐ WebAssembly ํ์ ์ ํ๋ฆฌ์ผ์ด์ ์์ ๋ฒกํฐ SIMD ์ง์นจ์ ์ฌ์ฉํ ์ ์๋๋ก ๊ธฐ๋ณธ์ ์ผ๋ก ์ ๊ณต๋ฉ๋๋ค. ํ๋ซํผ ๋ ๋ฆฝ์ฑ์ ๋ณด์ฅํ๊ธฐ ์ํด ๋ค์ํ ์ ํ์ ์์ถ ๋ฐ์ดํฐ๋ฅผ ๋ํ๋ผ ์ ์๋ ์๋ก์ด 128๋นํธ ์ ํ๊ณผ ์์ถ ๋ฐ์ดํฐ ์ฒ๋ฆฌ๋ฅผ ์ํ ๋ช ๊ฐ์ง ๊ธฐ๋ณธ ๋ฒกํฐ ์ฐ์ฐ์ ์ ๊ณตํฉ๋๋ค. SIMD๋ฅผ ์ฌ์ฉํ๋ฉด ๋ฐ์ดํฐ ์ฒ๋ฆฌ๋ฅผ ๋ณ๋ ฌํํ์ฌ ์์ฐ์ฑ์ ๋์ผ ์ ์์ผ๋ฉฐ ๋ค์ดํฐ๋ธ ์ฝ๋๋ฅผ WebAssembly๋ก ์ปดํ์ผํ ๋ ์ ์ฉํฉ๋๋ค.
- ๋ช ๊ฐ์ง ์๋ก์ด API๊ฐ Origin Trials ๋ชจ๋์ ์ถ๊ฐ๋์์ต๋๋ค(๋ณ๋์ ํ์ฑํ๊ฐ ํ์ํ ์คํ ๊ธฐ๋ฅ). Origin ํ๊ฐํ์ localhost ๋๋ 127.0.0.1์์ ๋ค์ด๋ก๋ํ ์ ํ๋ฆฌ์ผ์ด์
์์ ๋๋ ํน์ ์ฌ์ดํธ์ ๋ํด ์ ํ๋ ์๊ฐ ๋์ ์ ํจํ ํน์ ํ ํฐ์ ๋ฑ๋ก ๋ฐ ์์ ํ ํ ์ง์ ๋ API๋ก ์์
ํ ์ ์๋ ๊ธฐ๋ฅ์ ์๋ฏธํฉ๋๋ค.
- WebTransport๋ ๋ธ๋ผ์ฐ์ ์ ์๋ฒ ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ด๊ณ ๋ฐ๊ธฐ ์ํ ํ๋กํ ์ฝ์ด์ ๊ทธ์ ์๋ฐ๋๋ JavaScript API์
๋๋ค. ํต์ ์ฑ๋์ QUIC ํ๋กํ ์ฝ์ ์ ์ก์ผ๋ก ์ฌ์ฉํ์ฌ HTTP/3 ์์ ๊ตฌ์ฑ๋ฉ๋๋ค. ์ด๋ ๋ค์ค ์ฐ๊ฒฐ์ ๋ค์คํ๋ฅผ ์ง์ํ๊ณ TLS/SSL๊ณผ ๋๋ฑํ ์ํธํ ๋ฐฉ๋ฒ์ ์ ๊ณตํ๋ UDP ํ๋กํ ์ฝ์ ๋ํ ์ถ๊ฐ ๊ธฐ๋ฅ์
๋๋ค.
WebTransport๋ WebSocket ๋ฐ RTCDataChannel ๋ฉ์ปค๋์ฆ ๋์ ์ฌ์ฉํ ์ ์์ผ๋ฉฐ ๋ค์ค ์คํธ๋ฆผ ์ ์ก, ๋จ๋ฐฉํฅ ์คํธ๋ฆผ, ๋น์์ฐจ์ ์ ๋ฌ, ์ ๋ขฐํ ์ ์๋ ์ ๋ฌ ๋ชจ๋ ๋ฐ ์ ๋ขฐํ ์ ์๋ ์ ๋ฌ ๋ชจ๋์ ๊ฐ์ ์ถ๊ฐ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ๋ํ Google์ด Chrome์์ ์ฌ์ฉ์ ํฌ๊ธฐํ ์๋ฒ ํธ์ ๋ฉ์ปค๋์ฆ ๋์ WebTransport๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
- ๋ ๋ฆฝํ ์น ์ ํ๋ฆฌ์ผ์ด์ (PWA)์ ๋ํ ๋งํฌ๋ฅผ ์ ์ํ๊ธฐ ์ํ ์ ์ธ์ ์ธํฐํ์ด์ค๋ ์น ์ ํ๋ฆฌ์ผ์ด์ ๋งค๋ํ์คํธ์ Capture_links ๋งค๊ฐ๋ณ์๋ฅผ ์ฌ์ฉํ์ฌ ํ์ฑํ๋๊ณ ์ ํ๋ฆฌ์ผ์ด์ ๋งํฌ๋ฅผ ํด๋ฆญํ๊ฑฐ๋ ๋จ์ผ ์ฐฝ ๋ชจ๋๋ก ์ ํํ ๋ ์ฌ์ดํธ๊ฐ ์๋์ผ๋ก ์ PWA ์ฐฝ์ ์ด ์ ์๋๋ก ํ์ฉํฉ๋๋ค. ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ ๊ณผ ์ ์ฌํฉ๋๋ค.
- ๊ฐ์ 3D ํ๊ฒฝ์์ ํ๋ฉด ํ๋ฉด์ ๋ํ ์ ๋ณด๋ฅผ ์ ๊ณตํ๋ WebXR ํ๋ฉด ๊ฐ์ง API๊ฐ ์ถ๊ฐ๋์์ต๋๋ค. ์ง์ ๋ API๋ฅผ ์ฌ์ฉํ๋ฉด ์ปดํจํฐ ๋น์ ์๊ณ ๋ฆฌ์ฆ์ ๋ ์ ๊ตฌํ์ ์ฌ์ฉํ์ฌ MediaDevices.getUserMedia() ํธ์ถ์ ํตํด ์ป์ ๋ฐ์ดํฐ์ ๋ฆฌ์์ค ์ง์ฝ์ ์ธ ์ฒ๋ฆฌ๋ฅผ ํผํ ์ ์์ต๋๋ค. WebXR API๋ฅผ ์ฌ์ฉํ๋ฉด ๊ณ ์ ์ 3D ํฌ๋ฉง๋ถํฐ ๋ชจ๋ฐ์ผ ์ฅ์น ๊ธฐ๋ฐ ์๋ฃจ์ ์ ์ด๋ฅด๊ธฐ๊น์ง ๋ค์ํ ์ข ๋ฅ์ ๊ฐ์ ํ์ค ์ฅ์น์์ ์์ ์ ํตํฉํ ์ ์๋ค๋ ์ ์ ์๊ธฐ์์ผ ๋๋ฆฌ๊ฒ ์ต๋๋ค.
- WebTransport๋ ๋ธ๋ผ์ฐ์ ์ ์๋ฒ ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ด๊ณ ๋ฐ๊ธฐ ์ํ ํ๋กํ ์ฝ์ด์ ๊ทธ์ ์๋ฐ๋๋ JavaScript API์
๋๋ค. ํต์ ์ฑ๋์ QUIC ํ๋กํ ์ฝ์ ์ ์ก์ผ๋ก ์ฌ์ฉํ์ฌ HTTP/3 ์์ ๊ตฌ์ฑ๋ฉ๋๋ค. ์ด๋ ๋ค์ค ์ฐ๊ฒฐ์ ๋ค์คํ๋ฅผ ์ง์ํ๊ณ TLS/SSL๊ณผ ๋๋ฑํ ์ํธํ ๋ฐฉ๋ฒ์ ์ ๊ณตํ๋ UDP ํ๋กํ ์ฝ์ ๋ํ ์ถ๊ฐ ๊ธฐ๋ฅ์
๋๋ค.
- HTTP/2(RFC 8441)๋ฅผ ํตํ WebSocket ์์ ์ ๋ํ ์ง์์ด ๊ตฌํ๋์์ต๋๋ค. ์ด๋ WebSocket์ ๋ํ ๋ณด์ ์์ฒญ๊ณผ ์๋ฒ์์ ์ด๋ฏธ ์ค์ ๋ HTTP/2 ์ฐ๊ฒฐ์ด ์๋ ๊ฒฝ์ฐ์๋ง ์ ํจํฉ๋๋ค. HTTP/2โ ํ์ฅ์.
- Performance.now() ํธ์ถ๋ก ์์ฑ๋ ํ์ด๋จธ ๊ฐ์ ์ ๋ฐ๋์ ๋ํ ์ ํ์ ์ง์๋๋ ๋ชจ๋ ํ๋ซํผ์์ ์ผ๊ด๋๋ฉฐ ๋ณ๋์ ํ๋ก์ธ์ค์์ ํธ๋ค๋ฌ๋ฅผ ๊ฒฉ๋ฆฌํ ์ ์๋ ๊ฐ๋ฅ์ฑ์ ์์ฉํฉ๋๋ค. ์๋ฅผ ๋ค์ด ๋ฐ์คํฌํ ์์คํ ์์๋ ๊ฒฉ๋ฆฌ๋์ง ์์ ์ปจํ ์คํธ์์ ์ฒ๋ฆฌํ ๋์ ์ ํ๋๊ฐ 5๋ง์ดํฌ๋ก์ด์์ 100๋ง์ดํฌ๋ก์ด๋ก ๊ฐ์ํ์ต๋๋ค.
- ์ด์ ๋ฐ์คํฌํ ๋น๋์๋ ํด๋ฆฝ๋ณด๋์์ ํ์ผ์ ์ฝ๋ ๊ธฐ๋ฅ์ด ํฌํจ๋ฉ๋๋ค(ํด๋ฆฝ๋ณด๋์ ํ์ผ์ ์ฐ๋ ๊ฒ์ ์ฌ์ ํ โโ๊ธ์ง๋์ด ์์ต๋๋ค). ๋น๋๊ธฐ ํจ์ onPaste(e) { let file = e.clipboardData.files[0]; ๋ด์ฉ์ ๋ณด์ = file.text()๋ฅผ ๊ธฐ๋ค๋ฆฝ๋๋ค; }
- CSS๋ @counter ์คํ์ผ ๊ท์น์ ๊ตฌํํ์ฌ ๋ฒํธ๊ฐ ๋งค๊ฒจ์ง ๋ชฉ๋ก์ ์นด์ดํฐ ๋ฐ ๋ ์ด๋ธ์ ๋ํ ๊ณ ์ ํ ์คํ์ผ์ ์ ์ํ ์ ์์ต๋๋ค.
- CSS ์์ฌ ํด๋์ค ":host()" ๋ฐ ":host-context()"์๋ ์ ํ๊ธฐ ๋ชฉ๋ก() ์ธ์๋ ๋ณตํฉ ์ ํ๊ธฐ()์ ๋ํ ๋จ์ผ ๊ฐ์ ์ ๋ฌํ๋ ๊ธฐ๋ฅ์ด ์ถ๊ฐ๋์์ต๋๋ค. ์ ํ๊ธฐ ๋ชฉ๋ก>).
- ์ค๋ ฅ ์ผ์์์ ์ฒด์ (3๊ฐ ์ขํ์ถ) ๋ฐ์ดํฐ๋ฅผ ๊ฒฐ์ ํ๊ธฐ ์ํ GravitySensor ์ธํฐํ์ด์ค๊ฐ ์ถ๊ฐ๋์์ต๋๋ค.
- ํ์ผ ์์คํ ์ก์ธ์ค API๋ ํ์ผ ์์ฑ ๋๋ ์ด๊ธฐ ๋ํ ์์์ ์ ๊ณต๋๋ ํ์ผ ์ด๋ฆ ๋ฐ ๋๋ ํฐ๋ฆฌ ์ ํ์ ๋ํ ๊ถ์ฅ ์ฌํญ์ ์ ์ํ๋ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค.
- ์ฌ์ฉ์๊ฐ ์ ์ ํ ๊ถํ์ ๋ถ์ฌํ๋ ๊ฒฝ์ฐ ๋ค๋ฅธ ๋๋ฉ์ธ์์ ๋ก๋๋ Iframe์ WebOTP API์ ์ก์ธ์คํ ์ ์์ต๋๋ค. WebOTP๋ฅผ ์ฌ์ฉํ๋ฉด SMS๋ฅผ ํตํด ์ ์ก๋ ์ผํ์ฉ ์ธ์ฆ ์ฝ๋๋ฅผ ์ฝ์ ์ ์์ต๋๋ค.
- DAL(Digital Asset Links) ๋ฉ์ปค๋์ฆ์ ์ฌ์ฉํ์ฌ ์ฐ๊ฒฐ๋ ์ฌ์ดํธ์ ๋ํ ์๊ฒฉ ์ฆ๋ช ์ ๋ํ ์ก์ธ์ค๋ฅผ ๊ณต์ ํ ์ ์์ต๋๋ค. ์ด๋ฅผ ํตํด Android ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฌ์ดํธ์ ์ฐ๊ฒฐํ์ฌ ๋ก๊ทธ์ธ์ ๋จ์ํํ ์ ์์ต๋๋ค.
- ์๋น์ค ์์ปค๋ JavaScript ๋ชจ๋์ ์ฌ์ฉ์ ํ์ฉํฉ๋๋ค. ์์ฑ์๋ฅผ ํธ์ถํ ๋ '๋ชจ๋' ์ ํ์ ์ง์ ํ๋ฉด ์ง์ ๋ ์คํฌ๋ฆฝํธ๊ฐ ๋ชจ๋ ํ์์ผ๋ก ๋ก๋๋๊ณ ์์ ์ ์ปจํ ์คํธ์์ ๊ฐ์ ธ์ฌ ์ ์์ต๋๋ค. ๋ชจ๋ ์ง์์ ํตํด ์นํ์ด์ง์ ์๋น์ค ์์ปค ๊ฐ์ ์ฝ๋๋ฅผ ์ฝ๊ฒ ๊ณต์ ํ ์ ์์ต๋๋ค.
- JavaScript๋ "#foo in obj" ๊ตฌ๋ฌธ์ ์ฌ์ฉํ์ฌ ๊ฐ์ฒด์ ๋น๊ณต๊ฐ ํ๋๊ฐ ์๋์ง ํ์ธํ๋ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. class A { static test(obj) { console.log(#foo in obj); } #foo = 0; } A.test(new A()); // ์ฐธ A.test({}); // ๊ฑฐ์ง
- JavaScript๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์ต์์ ๋ชจ๋์์ wait ํค์๋๋ฅผ ์ฌ์ฉํ ์ ์๋๋ก ํ์ฉํฉ๋๋ค. ์ด๋ฅผ ํตํด ๋น๋๊ธฐ ํธ์ถ์ด ๋ชจ๋ ๋ก๋ฉ ํ๋ก์ธ์ค์ ๋ณด๋ค ์ํํ๊ฒ ํตํฉ๋๊ณ "๋น๋๊ธฐ ํจ์"๋ก ๋ํ๋๋ ๊ฒ์ ๋ฐฉ์งํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด (async function() { wait Promise.resolve(console.log('test')); }()); ์ด์ wait Promise.resolve(console.log('test')); ๋ฅผ ์์ฑํ ์ ์์ต๋๋ค.
- V8 JavaScript ์์ง์ ํ ํ๋ฆฟ ์บ์ฑ ํจ์จ์ฑ์ ํฅ์์์ผ Speedometer4.5-FlightJS ํ ์คํธ ํต๊ณผ ์๋๋ฅผ 2% ๋์์ต๋๋ค.
- ์น ๊ฐ๋ฐ์๋ฅผ ์ํ ๋๊ตฌ์ ๋ง์ ๋ถ๋ถ์ด ๊ฐ์ ๋์์ต๋๋ค. ArrayBuffer ๋ฐ์ดํฐ ๋ฐ Wasm ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ฒ์ฌํ๊ธฐ ์ํ ๋๊ตฌ๋ฅผ ์ ๊ณตํ๋ ์๋ก์ด ๋ฉ๋ชจ๋ฆฌ ๊ฒ์ฌ๊ธฐ ๋ชจ๋๊ฐ ์ถ๊ฐ๋์์ต๋๋ค.
์ฑ๋ฅ ํจ๋์ ์์ฝ ์ฑ๋ฅ ํ์๊ธฐ๊ฐ ์ถ๊ฐ๋์ด ์ฌ์ดํธ์ ์ต์ ํ๊ฐ ํ์ํ์ง ์ฌ๋ถ๋ฅผ ํ๋จํ ์ ์์ต๋๋ค.
์์ ํจ๋๊ณผ ๋คํธ์ํฌ ๋ถ์ ํจ๋์ ์ด๋ฏธ์ง ๋ฏธ๋ฆฌ ๋ณด๊ธฐ๋ ์ด๋ฏธ์ง์ ์ข ํก๋น, ๋ ๋๋ง ์ต์ ๋ฐ ํ์ผ ํฌ๊ธฐ์ ๋ํ ์ ๋ณด๋ฅผ ์ ๊ณตํฉ๋๋ค.
์ด์ ๋คํธ์ํฌ ๊ฒ์ฌ ํจ๋์์ Content-Encoding ํค๋์ ํ์ฉ ๊ฐ์ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค.
์ด์ ์คํ์ผ ํจ๋์์ ์ปจํ ์คํธ ๋ฉ๋ด์์ '๊ณ์ฐ๋ ๊ฐ ๋ณด๊ธฐ'๋ฅผ ์ ํํ์ฌ CSS ๋งค๊ฐ๋ณ์๋ฅผ ํ์ํ ๋ ๊ณ์ฐ๋ ๊ฐ์ ๋น ๋ฅด๊ฒ ๋ณผ ์ ์์ต๋๋ค.
ํ์ ๊ณผ ๋ฒ๊ทธ ์์ ์ธ์๋ ์ ๋ฒ์ ์์๋ 32๊ฐ์ ์ทจ์ฝ์ ์ด ์ ๊ฑฐ๋์์ต๋๋ค. AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer ๋ฐ AFL ๋๊ตฌ๋ฅผ ์ฌ์ฉํ ์๋ํ๋ ํ
์คํธ์ ๊ฒฐ๊ณผ๋ก ๋ง์ ์ทจ์ฝ์ ์ด ์๋ณ๋์์ต๋๋ค. ๋ชจ๋ ์์ค์ ๋ธ๋ผ์ฐ์ ๋ณดํธ๋ฅผ ์ฐํํ๊ณ ์๋๋ฐ์ค ํ๊ฒฝ ์ธ๋ถ์ ์์คํ
์์ ์ฝ๋๋ฅผ ์คํํ ์ ์๋ ์ฌ๊ฐํ ๋ฌธ์ ๋ ํ์ธ๋์ง ์์์ต๋๋ค. ํ์ฌ ๋ฆด๋ฆฌ์ค์ ์ทจ์ฝ์ ์ ๋ฐ๊ฒฌํ ๋๊ฐ๋ก ํ๊ธ ๋ณด์์ ์ง๊ธํ๋ ํ๋ก๊ทธ๋จ์ ์ผํ์ผ๋ก Google์ $21 ์๋น์ 92000๊ฐ ์์ ์ง๊ธํ์ต๋๋ค. $20000). 15000๊ฐ ๋ณด์์ ๊ท๋ชจ๋ ์์ง ๊ฒฐ์ ๋์ง ์์์ต๋๋ค.
์ถ์ฒ : opennet.ru