Chrome versiyasi 91

Google kompaniyasi Chrome 91 veb-brauzerini taqdim etdi.Ayni vaqtda Chrome brauzerining asosi bo'lib xizmat qiluvchi bepul Chromium loyihasining barqaror versiyasi ham mavjud. Chrome brauzeri Google logotiplaridan foydalanish, avariya sodir bo'lgan taqdirda bildirishnomalarni yuborish tizimining mavjudligi, himoyalangan video kontentini o'ynatish modullari (DRM), yangilanishlarni avtomatik o'rnatish tizimi va qidiruv paytida RLZ parametrlarini uzatish bilan ajralib turadi. Chrome 92-ning navbatdagi versiyasi 20-iyulga rejalashtirilgan.

Chrome 91-dagi asosiy o'zgarishlar:

  • Yiqilgan yorliqlar guruhida JavaScript bajarilishini to'xtatish qobiliyati amalga oshirildi. Chrome 85 yorliqlarni ma'lum bir rang va yorliq bilan bog'lanishi mumkin bo'lgan guruhlarga ajratishni qo'llab-quvvatladi. Guruh yorlig'ini bosganingizda, u bilan bog'langan yorliqlar yopiladi va o'rniga bitta yorliq qoladi (yorliq ustiga yana bosish guruhni ochadi). Yangi versiyada protsessor yukini kamaytirish va energiyani tejash maqsadida minimallashtirilgan yorliqlardagi faoliyat toʻxtatildi. Istisno faqat ovoz chiqaradigan, Web Locks yoki IndexedDB API-dan foydalanadigan, USB qurilmasiga ulanadigan yoki video, tovush yoki oyna mazmunini yozib oladigan yorliqlar uchun qilingan. O'zgartirish asta-sekin, foydalanuvchilarning kichik foizidan boshlab amalga oshiriladi.
  • Kvant kompyuterlarida qo'pol kuchga chidamli asosiy kelishuv usulini qo'llab-quvvatlash kiritilgan. Kvant kompyuterlari zamonaviy assimetrik shifrlash algoritmlari asosida tabiiy sonni tub omillarga ajratish muammosini tubdan tezroq hal qiladi va klassik protsessorlarda samarali yechilmaydi. TLSv1.3 da foydalanish uchun CECPQ2 (Combined Elliptic-Curve va Post-Quantum 2) plagini taqdim etilgan bo'lib, u klassik X25519 kalit almashinuvi mexanizmini NTRU Prime algoritmiga asoslangan HRSS sxemasi bilan birlashtirib, kvantdan keyingi kriptotizimlar uchun mo'ljallangan.
  • IETF (Internet Engineering Task Force) qo'mitasi tomonidan eskirgan TLS 1.0 va TLS 1.1 protokollarini qo'llab-quvvatlash butunlay to'xtatildi. Shu jumladan SSLVersionMin siyosatini oʻzgartirish orqali TLS 1.0/1.1 ni qaytarish imkoniyati olib tashlandi.
  • Linux platformasi uchun yig'ilishlar avval Windows, macOS, ChromeOS va Android foydalanuvchilariga taqdim etilgan "HTTPS orqali DNS" (DoH, HTTPS orqali DNS) rejimidan foydalanishni o'z ichiga oladi. DNS-over-HTTPS sozlamalari ushbu texnologiyani qo'llab-quvvatlaydigan DNS-provayderlarni belgilaydigan foydalanuvchilar uchun avtomatik ravishda faollashtiriladi (HTTPS orqali DNS uchun DNS uchun bir xil provayder ishlatiladi). Misol uchun, agar foydalanuvchi tizim sozlamalarida ko'rsatilgan DNS 8.8.8.8 bo'lsa, Google DNS-over-HTTPS xizmati ("https://dns.google.com/dns-query") DNS bo'lsa, Chrome brauzerida faollashtiriladi. 1.1.1.1 , keyin DNS-over-HTTPS xizmati Cloudflare (“https://cloudflare-dns.com/dns-query”) va boshqalar.
  • Amanda zaxira nusxasi va VMWare vCenter-da qo'llaniladigan 10080 porti taqiqlangan tarmoq portlari ro'yxatiga qo'shildi. Ilgari 69, 137, 161, 554, 1719, 1720, 1723, 5060, 5061 va 6566 portlar allaqachon bloklangan edi.Qora roʻyxatdagi portlar uchun NATlipstream hujumlaridan himoyalanish uchun HTTP, HTTPS va FTP soʻrovlarini yuborish bloklangan. , bu brauzerda tajovuzkor tomonidan maxsus tayyorlangan veb-sahifa ochilganda, ichki manzillar oralig'idan (192.168.x.x, 10) foydalanishga qaramay, tajovuzkor serveridan foydalanuvchi tizimidagi istalgan UDP yoki TCP portiga tarmoq ulanishini o'rnatish imkonini beradi. .x.x.x).
  • Foydalanuvchi tizimga kirganda (Windows va macOS) mustaqil veb-ilovalarni (PWA - Progressive Web Apps) avtomatik ishga tushirishni sozlash mumkin. Avtomatik ishga tushirish chrome://apps sahifasida sozlangan. Funktsionallik hozirda foydalanuvchilarning kichik bir qismida sinovdan o'tkazilmoqda, qolganlari uchun "chrome://flags/#enable-desktop-pwas-run-on-os-login" sozlamasini faollashtirish talab etiladi.
  • Brauzerni inklyuziv terminologiyadan foydalanishga o'tkazish bo'yicha ishlarning bir qismi sifatida "master_preferences" fayli "initial_preferences" deb o'zgartirildi. Moslikni saqlab qolish uchun "master_preferences" qo'llab-quvvatlashi brauzerda bir muncha vaqt qoladi. Ilgari brauzer "oq ro'yxat", "qora ro'yxat" va "mahalliy" so'zlaridan foydalanishdan allaqachon xalos bo'lgan.
  • Internetdagi fishing, zararli harakatlar va boshqa tahdidlardan himoya qilish uchun qo'shimcha tekshiruvlarni faollashtiradigan Kengaytirilgan xavfsiz ko'rish rejimi yuklab olingan fayllarni Google tomonida skanerlash uchun yuborish imkoniyatini o'z ichiga oladi. Bundan tashqari, Enhanced Safe Browsing fishing urinishlarini aniqlashda Google hisobiga bog‘langan tokenlarni hisobga olishni, shuningdek, zararli saytdan yo‘naltirishni tekshirish uchun Google serverlariga Referrer sarlavhasi qiymatlarini yuborishni amalga oshiradi.
  • Android platformasi uchun nashrda sensorli ekranlar va nogironlar uchun tizimlarda foydalanish uchun optimallashtirilgan veb-shakl elementlari dizayni takomillashtirildi (ish stoli tizimlari uchun dizayn Chrome 83 da qayta ishlangan). Qayta ishlashdan maqsad shakl elementlari dizaynini unifikatsiya qilish va uslublar nomuvofiqligini bartaraf etishdan iborat edi - avvallari ba'zi forma elementlari operatsion tizim interfeysi elementlariga, ba'zilari esa eng ommabop uslublarga muvofiq ishlab chiqilgan. Shu sababli, sensorli ekranlar va nogironlar uchun tizimlar uchun turli elementlar turlicha mos edi.
    Chrome versiyasi 91Chrome versiyasi 91
  • Maxfiylik sinov muhiti sozlamalari (chrome://settings/privacySandbox) ochilganda ko‘rsatiladigan foydalanuvchi fikri so‘rovi qo‘shildi.
  • Katta ekranli planshet kompyuterlarida Chrome-ning Android versiyasini ishga tushirishda so'rov mobil qurilmalar uchun nashrga emas, balki saytning ish stoli versiyasiga beriladi. Siz “chrome://flags/#request-desktop-site-for-tablets” sozlamasidan foydalanib xatti-harakatni o'zgartirishingiz mumkin.
  • Jadvallarni ko'rsatish uchun kod qayta ishlandi, bu bizga Chrome va Firefox/Safari-da jadvallarni ko'rsatishda xatti-harakatlardagi nomuvofiqlik bilan bog'liq muammolarni hal qilish imkonini berdi.
  • Ispaniyaning Camerfirma sertifikatlashtirish organidan server sertifikatlarini qayta ishlash sertifikatlar berishda qoidabuzarliklar bilan bog‘liq 2017-yildan buyon takrorlanadigan hodisalar tufayli to‘xtatilgan. Mijoz sertifikatlarini qo'llab-quvvatlash saqlanib qoladi; blokirovka faqat HTTPS saytlarida ishlatiladigan sertifikatlarga tegishli.
  • Biz ma'lumotlarni doimiy saqlash uchun mo'ljallanmagan hududlarda identifikatorlarni saqlashga asoslangan saytlar orasidagi foydalanuvchi harakatlarini kuzatish usullaridan himoya qilish uchun tarmoq segmentatsiyasini qo'llab-quvvatlashni davom ettiramiz ("Supercookie"). Keshlangan resurslar umumiy nomlar maydonida saqlanganligi sababli, kelib chiqqan domendan qat'i nazar, bitta sayt boshqa sayt ushbu resurs keshda yoki yo'qligini tekshirish orqali resurslarni yuklayotganligini aniqlashi mumkin. Himoya tarmoq segmentatsiyasidan foydalanishga asoslangan (Tarmoq bo'limi), uning mohiyati umumiy keshlarga asosiy sahifa ochilgan domenga yozuvlarni qo'shimcha bog'lashni qo'shishdir, bu faqat harakatni kuzatish skriptlari uchun kesh qamrovini cheklaydi. joriy saytga (iframe-dan olingan skript resurs boshqa saytdan yuklab olinganligini tekshira olmaydi).

    Segmentatsiya narxi keshlash samaradorligining pasayishi bo'lib, sahifani yuklash vaqtining biroz oshishiga olib keladi (maksimal 1.32% ga, lekin saytlarning 80% uchun 0.09-0.75%). Segmentatsiya rejimini sinab ko'rish uchun siz brauzerni “—enable-features=PartitionConnectionsByNetworkIsolationKey, PartitionExpectCTStateByNetworkIsolationKey, PartitionHttpServerPropertiesByNetworkIsolationKey, PartitionNelAndReportingByNetworkIsolationKey, PartitionNelAndReportingNetworkLseysolationKey, PartitionNelAndReportingByNetworkIsolationKey,PartitionConnectionsByNetworkIsolationKey,PartitionConnectionsByNetworkIsolationKey,” opsiyasi bilan ishga tushirishingiz mumkin. CacheByNet workIsolationKey".

  • Tashqi REST API VersionHistory (https://versionhistory.googleapis.com/v1/chrome) qo‘shildi, bu orqali siz platformalar va filiallarga oid Chrome versiyalari, shuningdek, brauzer yangilanishlari tarixi haqida ma’lumot olishingiz mumkin.
  • Asosiy sahifaning domenidan boshqa domenlardan yuklangan iframelarda JavaScript dialog oynalari alert(), confirm() va prompt() koʻrsatilishi taqiqlanadi, bu foydalanuvchilarni uchinchi tomon skriptlari ostidagi xabarlarni koʻrsatishga urinishlaridan himoya qiladi. bildirishnoma asosiy sayt tomonidan ko'rsatilgan.
  • WebAssembly SIMD API barqarorlashtirildi va sukut bo'yicha vektor SIMD ko'rsatmalaridan WebAssembly formatidagi ilovalarda foydalanish uchun taklif qilindi. Platformaning mustaqilligini ta'minlash uchun u har xil turdagi qadoqlangan ma'lumotlarni ifodalashi mumkin bo'lgan yangi 128 bitli turni va paketli ma'lumotlarni qayta ishlash uchun bir nechta asosiy vektor operatsiyalarini taklif qiladi. SIMD sizga ma'lumotlarni qayta ishlashni parallellashtirish orqali samaradorlikni oshirishga imkon beradi va mahalliy kodni WebAssembly-ga kompilyatsiya qilishda foydali bo'ladi.
  • Origin Trials rejimiga bir nechta yangi API qo'shildi (alohida faollashtirishni talab qiluvchi eksperimental xususiyatlar). Origin sinovi localhost yoki 127.0.0.1-dan yuklab olingan ilovalardan yoki ma'lum bir sayt uchun cheklangan vaqt uchun amal qiladigan maxsus tokenni ro'yxatdan o'tkazgandan va olgandan keyin belgilangan API bilan ishlash qobiliyatini nazarda tutadi.
    • WebTransport - bu brauzer va server o'rtasida ma'lumotlarni yuborish va qabul qilish uchun protokol va unga hamroh bo'lgan JavaScript API. Aloqa kanali HTTP/3 ning tepasida transport sifatida QUIC protokolidan foydalangan holda tashkil etilgan bo'lib, u o'z navbatida UDP protokoliga qo'shimcha bo'lib, u bir nechta ulanishlarni multiplekslashni qo'llab-quvvatlaydi va TLS/SSL ga ekvivalent shifrlash usullarini ta'minlaydi.

      WebTransport-dan WebSockets va RTCDataChannel mexanizmlari o'rniga foydalanish mumkin, bu ko'p oqimli uzatish, bir yo'nalishli oqimlar, buyurtmadan tashqari etkazib berish, ishonchli va ishonchsiz etkazib berish rejimlari kabi qo'shimcha funktsiyalarni taklif qiladi. Bundan tashqari, Google Chrome’da tark etgan Server Push mexanizmi o‘rniga WebTransport’dan foydalanish mumkin.

    • Veb-ilova manifestidagi capture_links parametri yordamida yoqilgan va ilova havolasi bosilganda saytlarga avtomatik ravishda yangi PWA oynasini ochish yoki bitta oyna rejimiga oʻtish imkonini beruvchi mustaqil veb-ilovalarga (PWA) havolalarni aniqlash uchun deklarativ interfeys, mobil ilovalarga o'xshash.
    • Virtual 3D muhitda planar yuzalar haqida ma'lumot beruvchi WebXR Plane Detection API qo'shildi. Belgilangan API MediaDevices.getUserMedia() qo'ng'irog'i orqali olingan ma'lumotlarni kompyuter ko'rish algoritmlarining xususiy ilovalaridan foydalangan holda resurs talab qiladigan ishlov berishdan qochish imkonini beradi. Eslatib oʻtamiz, WebXR API statsionar 3D dubulgʻalaridan tortib mobil qurilmalarga asoslangan yechimlargacha boʻlgan turli sinfdagi virtual reallik qurilmalari bilan ishlashni birlashtirish imkonini beradi.
  • HTTP/2 (RFC 8441) orqali WebSockets bilan ishlashni qo'llab-quvvatlash amalga oshirildi, bu faqat WebSockets-ga xavfsiz so'rovlar uchun amal qiladi va server bilan allaqachon o'rnatilgan HTTP/2 ulanishi mavjud bo'lib, u "WebSockets over" ni qo'llab-quvvatlashini e'lon qildi. HTTP/2” kengaytmasi.
  • Performance.now() ga qo'ng'iroq orqali ishlab chiqarilgan taymer qiymatlarining aniqligi bo'yicha cheklovlar barcha qo'llab-quvvatlanadigan platformalarda mos keladi va ishlov beruvchilarni alohida jarayonlarda izolyatsiya qilish potentsialiga mos keladi. Masalan, ish stoli tizimlarida izolyatsiyalanmagan kontekstlarda ishlov berishda aniqlik 5 dan 100 mikrosoniyagacha kamaydi.
  • Ish stoli tuzilmalari endi buferdan fayllarni o'qish imkoniyatini o'z ichiga oladi (fayllarni buferga yozish hali ham taqiqlangan). async function onPaste(e) { let file = e.clipboardData.files[0]; let contents = kutish file.text(); }
  • CSS @counter-style qoidasini amalga oshiradi, bu sizga raqamlangan ro'yxatlardagi hisoblagichlar va teglar uchun o'z uslubingizni aniqlash imkonini beradi.
  • “:host()” va “:host-context()” CSS psevdo-sinflari selektorlar ro‘yxatiga () uchun yagona qiymatlarni o‘tkazish imkoniyatini qo‘shgan. selektor ro'yxati>).
  • Gravitatsiya sensoridan hajmli (uchta koordinata o'qi) ma'lumotlarini aniqlash uchun GravitySensor interfeysi qo'shildi.
  • Fayl tizimiga kirish API faylni yaratish yoki ochish uchun dialog oynasida taklif qilingan fayl nomi va katalogini tanlash bo'yicha tavsiyalarni aniqlash imkoniyatini beradi.
  • Agar foydalanuvchi tegishli ruxsatnomalarni bersa, boshqa domenlardan yuklangan iframelarga WebOTP API ga kirishga ruxsat beriladi. WebOTP SMS orqali yuborilgan bir martalik tasdiqlash kodlarini o'qish imkonini beradi.
  • DAL (Digital Asset Links) mexanizmidan foydalangan holda bog‘langan saytlar uchun hisob ma’lumotlariga kirishni baham ko‘rishga ruxsat berilgan, bu Android ilovalariga kirishni soddalashtirish uchun saytlar bilan bog‘lanishiga imkon beradi.
  • Xizmat xodimlari JavaScript modullaridan foydalanishga ruxsat berishadi. Konstruktorga qo'ng'iroq qilishda "modul" turini belgilashda ko'rsatilgan skriptlar modullar shaklida yuklanadi va ishchi kontekstida import qilish uchun mavjud bo'ladi. Modulni qo'llab-quvvatlash veb-sahifalar va xizmat ko'rsatuvchi xodimlar o'rtasida kod almashishni osonlashtiradi.
  • JavaScript "#foo in obj" sintaksisi yordamida ob'ektda shaxsiy maydonlar mavjudligini tekshirish imkoniyatini beradi. class A { statik test(obj) { console.log (objda #foo); } #foo = 0; } A.test(yangi A()); // rost A.test({}); // yolg'on
  • JavaScript sukut boʻyicha yuqori darajadagi modullarda await kalit soʻzidan foydalanishga imkon beradi, bu esa asinxron qoʻngʻiroqlarni modulni yuklash jarayoniga yanada qulayroq integratsiyalash imkonini beradi va ularni “asink funksiya”ga oʻrashdan saqlaydi. Masalan, o'rniga (async function() { await Promise.resolve(console.log('test')); }()); endi await Promise.resolve(console.log('test')) deb yozishingiz mumkin;
  • V8 JavaScript dvigateli shablonlarni keshlash samaradorligini oshirdi, bu Speedometer4.5-FlightJS testidan o‘tish tezligini 2 foizga oshirdi.
  • Yaxshilanishlarning katta qismi veb-ishlab chiquvchilar uchun vositalarga kiritildi. ArrayBuffer ma'lumotlari va Wasm xotirasini tekshirish vositalarini ta'minlovchi yangi Xotira inspektori rejimi qo'shildi.
    Chrome versiyasi 91

    Ishlash paneliga umumiy samaradorlik ko'rsatkichi qo'shildi, bu sizga sayt optimallashtirishni talab qiladimi yoki yo'qligini aniqlash imkonini beradi.

    Chrome versiyasi 91

    Elementlar paneli va Tarmoq tahlili panelidagi tasvirni oldindan ko‘rish tasvirning tomonlar nisbati, renderlash imkoniyatlari va fayl hajmi haqida ma’lumot beradi.

    Chrome versiyasi 91

    Tarmoqni tekshirish panelida endi Content-Encoding sarlavhasining qabul qilingan qiymatlarini o'zgartirish mumkin.

    Chrome versiyasi 91

    Uslublar panelida kontekst menyusidagi "Hisoblangan qiymatni ko'rish" ni tanlab, endi CSS parametrlari bo'ylab harakatlanayotganda hisoblangan qiymatni tezda ko'rishingiz mumkin.

    Chrome versiyasi 91

Innovatsiyalar va xatolarni tuzatishdan tashqari, yangi versiya 32 ta zaiflikni yo'q qiladi. Ko'pgina zaifliklar AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer va AFL vositalaridan foydalangan holda avtomatlashtirilgan testlar natijasida aniqlangan. Brauzer himoyasining barcha darajalarini chetlab o'tishga va tizimda sinov muhitidan tashqarida kodni bajarishga imkon beradigan muhim muammolar aniqlanmagan. Joriy versiyadagi zaifliklarni aniqlaganlik uchun pul mukofotlarini to'lash dasturi doirasida Google 21 92000 AQSh dollari miqdoridagi 20000 ta mukofotni (bitta 15000 7500 dollarlik mukofot, bitta 5000 3000 dollarlik mukofot, to'rtta 1000 500 dollarlik mukofot, uchta 5 XNUMX dollarlik mukofotlar, uchta XNUMX XNUMX dollarlik, ikkita XNUMX dollarlik mukofotlar va XNUMX ta mukofotlar to'lagan. XNUMX dollar). XNUMX ta mukofot miqdori hali aniqlanmagan.

Manba: opennet.ru

a Izoh qo'shish