Chrome 91 թողարկում

Google-ը ներկայացրել է Chrome 91 վեբ բրաուզերի թողարկումը: Միևնույն ժամանակ հասանելի է անվճար Chromium նախագծի կայուն թողարկումը, որը ծառայում է որպես Chrome-ի հիմքը: Chrome զննարկիչն առանձնանում է Google-ի լոգոների օգտագործմամբ, վթարի դեպքում ծանուցումներ ուղարկելու համակարգի առկայությամբ, պաշտպանված վիդեո բովանդակություն (DRM) նվագարկելու մոդուլներով, թարմացումների ավտոմատ տեղադրման համակարգով և որոնելիս RLZ պարամետրերը փոխանցելու համար: Chrome 92-ի հաջորդ թողարկումը նախատեսված է հուլիսի 20-ին:

Հիմնական փոփոխությունները Chrome 91-ում.

  • Իրականացրել է JavaScript-ի կատարումը փակված ներդիրների խմբում դադարեցնելու հնարավորություն: Chrome 85-ը աջակցում է ներդիրները խմբերի մեջ կազմակերպելու համար, որոնք կարող են կապված լինել որոշակի գույնի և պիտակի հետ: Երբ սեղմում եք խմբի պիտակի վրա, դրա հետ կապված ներդիրները փլվում են, և փոխարենը մնում է մեկ պիտակ (պիտակի վրա նորից սեղմելով՝ բացվում է խումբը): Նոր թողարկումում՝ պրոցեսորի ծանրաբեռնվածությունը նվազեցնելու և էներգիա խնայելու նպատակով, նվազագույնի հասցված ներդիրներում գործունեությունը դադարեցվել է։ Բացառություն է արվում միայն ձայն նվագարկող ներդիրների համար, որոնք օգտագործում են Web Locks կամ IndexedDB API, միանում են USB սարքին կամ նկարահանում են տեսանյութ, ձայն կամ պատուհանի բովանդակություն: Փոփոխությունը կներկայացվի աստիճանաբար՝ սկսած օգտատերերի փոքր տոկոսից:
  • Ներառված է առանցքային համաձայնագրի մեթոդի աջակցություն, որը դիմացկուն է քվանտային համակարգիչների վրա բիրտ ուժի նկատմամբ: Քվանտային համակարգիչներն արմատապես ավելի արագ են լուծում բնական թվերը պարզ գործոնների տարրալուծելու խնդիրը, որը ընկած է ժամանակակից ասիմետրիկ գաղտնագրման ալգորիթմների հիմքում և չի կարող արդյունավետորեն լուծվել դասական պրոցեսորների վրա: TLSv1.3-ում օգտագործման համար տրամադրվում է CECPQ2 (Combined Elliptic-Curve and Post-Quantum 2) պլագինը, որը համատեղում է դասական X25519 բանալիների փոխանակման մեխանիզմը HRSS սխեմայի հետ, որը հիմնված է NTRU Prime ալգորիթմի վրա, որը նախատեսված է հետքվանտային կրիպտոհամակարգերի համար:
  • TLS 1.0 և TLS 1.1 արձանագրությունների աջակցությունը, որոնք հնացած են դարձել IETF-ի (Ինտերնետ ինժեներական աշխատանքային խումբ) կոմիտեի կողմից, ամբողջությամբ դադարեցվել է: Ներառյալ TLS 1.0/1.1-ը վերադարձնելու հնարավորությունը՝ SSLVersionMin-ի քաղաքականությունը փոխելով, հանվել է:
  • Linux պլատֆորմի հավաքները ներառում են «DNS over HTTPS» (DoH, DNS over HTTPS) ռեժիմի օգտագործումը, որը նախկինում բերվել էր Windows-ի, macOS-ի, ChromeOS-ի և Android-ի օգտատերերին: DNS-over-HTTPS-ն ավտոմատ կերպով կակտիվացվի այն օգտատերերի համար, որոնց կարգավորումներում նշված են DNS մատակարարներ, որոնք աջակցում են այս տեխնոլոգիան (DNS-over-HTTPS-ի համար օգտագործվում է նույն մատակարարը, ինչ DNS-ի համար): Օրինակ, եթե օգտվողը ունի DNS 8.8.8.8, որը նշված է համակարգի կարգավորումներում, ապա Google-ի DNS-over-HTTPS ծառայությունը («https://dns.google.com/dns-query») կակտիվանա Chrome-ում, եթե DNS-ը: 1.1.1.1 է, ապա DNS-over-HTTPS ծառայություն Cloudflare («https://cloudflare-dns.com/dns-query») և այլն:
  • Port 10080-ը, որն օգտագործվում է Amanda-ի կրկնօրինակում և VMWare vCenter-ում, ավելացվել է արգելված ցանցային նավահանգիստների ցանկում։ Նախկինում 69, 137, 161, 554, 1719, 1720, 1723, 5060, 5061 և 6566 նավահանգիստներն արդեն արգելափակված էին: Սև ցուցակում գտնվող նավահանգիստների համար HTTP, HTTPS և FTP հարցումներ ուղարկելն արգելափակված է NAT հոսանքներից պաշտպանվելու համար: , որը թույլ է տալիս բրաուզերում հարձակվողի կողմից հատուկ պատրաստված վեբ էջը բացելիս ցանցային կապ հաստատել հարձակվողի սերվերից օգտվողի համակարգի ցանկացած UDP կամ TCP պորտին, չնայած ներքին հասցեների տիրույթի օգտագործմանը (192.168.xx, 10): .xxx):
  • Հնարավոր է կարգավորել ինքնուրույն վեբ հավելվածների (PWA - Progressive Web Apps) ավտոմատ գործարկումը, երբ օգտատերը մուտք է գործում համակարգ (Windows և macOS): Autorun-ը կազմաձևված է chrome://apps էջում: Ֆունկցիոնալությունը ներկայումս փորձարկվում է օգտատերերի փոքր տոկոսի վրա, իսկ մնացածի համար անհրաժեշտ է ակտիվացնել «chrome://flags/#enable-desktop-pwas-run-on-os-login» պարամետրը:
  • Որպես բրաուզերը ներառական տերմինաբանություն օգտագործելու տեղափոխելու աշխատանքի մի մաս, «master_preferences» ֆայլը վերանվանվել է «initial_preferences»: Համատեղելիությունը պահպանելու համար «master_preferences»-ի աջակցությունը որոշ ժամանակ կմնա դիտարկիչում: Նախկինում բրաուզերն արդեն ազատվել էր «սպիտակ ցուցակ», «սև ցուցակ» և «հայրենի» բառերի օգտագործումից։
  • Ընդլայնված անվտանգ զննարկման ռեժիմը, որն ակտիվացնում է լրացուցիչ ստուգումներ՝ համացանցում ֆիշինգից, վնասակար գործողություններից և այլ սպառնալիքներից պաշտպանվելու համար, ներառում է ներբեռնված ֆայլերը Google-ի կողմից սկանավորման համար ուղարկելու հնարավորություն: Բացի այդ, Enhanced Safe Browsing-ը իրականացնում է Google հաշվի հետ կապված նշանների հաշվառում՝ ֆիշինգի փորձերը հայտնաբերելիս, ինչպես նաև ուղարկում է Referrer վերնագրի արժեքները Google-ի սերվերներին՝ ստուգելու վնասակար կայքից վերահասցեավորումը:
  • Android պլատֆորմի համար նախատեսված տարբերակում բարելավվել է վեբ ձևի տարրերի ձևավորումը, որոնք օպտիմիզացվել են հաշմանդամություն ունեցող անձանց համար սենսորային էկրանների և համակարգերի վրա օգտագործելու համար (աշխատասեղանի համակարգերի համար դիզայնը վերամշակվել է Chrome 83-ում): Վերամշակման նպատակն էր միավորել ձևի տարրերի դիզայնը և վերացնել ոճային անհամապատասխանությունները. նախկինում ձևի որոշ տարրեր նախագծված էին օպերացիոն համակարգի ինտերֆեյսի տարրերին համապատասխան, իսկ որոշները՝ ամենահայտնի ոճերին համապատասխան: Սրա պատճառով տարբեր տարրեր տարբեր կերպ էին հարմարեցված հաշմանդամություն ունեցող անձանց համար սենսորային էկրանների և համակարգերի համար:
    Chrome 91 թողարկումChrome 91 թողարկում
  • Ավելացրել է օգտատերերի կարծիքի հարցում, որը ցուցադրվում է Privacy Sandbox-ի կարգավորումները բացելիս (chrome://settings/privacySandbox):
  • Մեծ էկրաններով պլանշետային համակարգիչների վրա Chrome-ի Android տարբերակը գործարկելիս հարցումն արվում է կայքի աշխատասեղանի տարբերակի համար, այլ ոչ թե շարժական սարքերի համար: Դուք կարող եք փոխել վարքագիծը՝ օգտագործելով «chrome://flags/#request-desktop-site-for-tablets» պարամետրը:
  • Աղյուսակների մատուցման կոդը վերամշակվել է, ինչը մեզ թույլ է տվել լուծել խնդիրներ՝ կապված վարքի անհամապատասխանության հետ՝ Chrome-ում և Firefox/Safari-ում աղյուսակներ ցուցադրելիս:
  • Իսպանական Camerfirma սերտիֆիկացման մարմնի սերվերների սերտիֆիկատների մշակումը դադարեցվել է 2017 թվականից ի վեր կրկնվող միջադեպերի պատճառով, որոնք կապված են վկայագրերի տրամադրման խախտումների հետ: Հաճախորդի վկայագրերի աջակցությունը պահպանվում է, արգելափակումը վերաբերում է միայն HTTPS կայքերում օգտագործվող վկայագրերին:
  • Մենք շարունակում ենք աջակցել ցանցի սեգմենտավորմանը՝ պաշտպանվելու համար կայքերի միջև օգտատերերի տեղաշարժերին հետևելու մեթոդներից, որոնք հիմնված են նույնացուցիչների պահպանման վրա այն տարածքներում, որոնք նախատեսված չեն տեղեկատվության մշտական ​​պահպանման համար («Supercookies»): Քանի որ քեշավորված ռեսուրսները պահվում են ընդհանուր անվանատարածքում՝ անկախ սկզբնավորման տիրույթից, մի կայք կարող է որոշել, որ մեկ այլ կայք բեռնում է ռեսուրսները՝ ստուգելով արդյոք այդ ռեսուրսը գտնվում է քեշում։ Պաշտպանությունը հիմնված է ցանցի սեգմենտացիայի (Ցանցային բաժանման) օգտագործման վրա, որի էությունը ընդհանուր քեշերին ավելացնելն է այն տիրույթին, որտեղից բացվում է հիմնական էջը, որը սահմանափակում է քեշի ծածկույթը միայն շարժման հետագծման սկրիպտների համար։ դեպի ընթացիկ կայք (iframe-ի սկրիպտը չի կարողանա ստուգել՝ արդյոք ռեսուրսը ներբեռնվել է այլ կայքից):

    Սեգմենտավորման գինը քեշավորման արդյունավետության նվազում է, որը հանգեցնում է էջի բեռնման ժամանակի մի փոքր աճի (առավելագույնը 1.32%, բայց կայքերի 80% -ի համար 0.09-0.75%): Սեգմենտավորման ռեժիմը փորձարկելու համար կարող եք գործարկել զննարկիչը «—enable-features=PartitionConnectionsByNetworkIsolationKey, PartitionExpectCTStateByNetworkIsolationKey, PartitionHttpServerPropertiesByNetworkIsolationKey, PartitionNelAndReportingLSNetworkIsolationKey, S. HostCacheB yNetworkIsolationKey»:

  • Ավելացվել է արտաքին REST API VersionHistory (https://versionhistory.googleapis.com/v1/chrome), որի միջոցով կարող եք տեղեկություններ ստանալ Chrome-ի տարբերակների մասին՝ հարթակների և մասնաճյուղերի վերաբերյալ, ինչպես նաև բրաուզերի թարմացման պատմություն:
  • Բազային էջի տիրույթից բացի այլ տիրույթներից բեռնված iframe-ներում արգելվում է JavaScript երկխոսությունների alert(), confirm() և prompt() ցուցադրումը, ինչը կպաշտպանի օգտվողներին երրորդ կողմի սկրիպտի կողմից հաղորդագրություններ ցուցադրելու փորձերից: քողարկել, որ ծանուցումը ցուցադրվել է հիմնական կայքի կողմից:
  • WebAssembly SIMD API-ն կայունացվել է և լռելյայն առաջարկվել է WebAssembly ֆորմատավորված հավելվածներում վեկտորային SIMD հրահանգների օգտագործման համար: Պլատֆորմի անկախությունն ապահովելու համար այն առաջարկում է 128-բիթանոց նոր տեսակ, որը կարող է ներկայացնել փաթեթավորված տվյալների տարբեր տեսակներ և մի քանի հիմնական վեկտորային գործողություններ՝ փաթեթավորված տվյալների մշակման համար: SIMD-ը թույլ է տալիս բարձրացնել արտադրողականությունը՝ զուգահեռացնելով տվյալների մշակումը և օգտակար կլինի տեղական ծածկագիրը WebAssembly-ում հավաքելիս:
  • Մի քանի նոր API-ներ ավելացվել են Origin Trials ռեժիմին (փորձարարական առանձնահատկություններ, որոնք պահանջում են առանձին ակտիվացում): Origin Trial-ը ենթադրում է նշված API-ի հետ աշխատելու հնարավորություն՝ localhost-ից կամ 127.0.0.1-ից ներբեռնված հավելվածներից, կամ գրանցվելուց և հատուկ նշան ստանալուց հետո, որը վավեր է որոշակի կայքի համար սահմանափակ ժամանակով:
    • WebTransport-ը արձանագրություն է և ուղեկցող JavaScript API՝ բրաուզերի և սերվերի միջև տվյալներ ուղարկելու և ստանալու համար: Հաղորդակցման ալիքը կազմակերպված է HTTP/3-ի վերևում՝ օգտագործելով QUIC արձանագրությունը որպես փոխադրամիջոց, որն, իր հերթին, հավելում է UDP արձանագրությանը, որն աջակցում է բազմաթիվ կապերի մուլտիպլեքսացմանը և ապահովում է TLS/SSL-ին համարժեք գաղտնագրման մեթոդներ:

      WebTransport-ը կարող է օգտագործվել WebSockets-ի և RTCDataChannel մեխանիզմների փոխարեն՝ առաջարկելով լրացուցիչ հնարավորություններ, ինչպիսիք են բազմահոսքային փոխանցումը, միակողմանի հոսքերը, պատվերից դուրս առաքումը, հուսալի և անվստահելի առաքման ռեժիմները: Բացի այդ, WebTransport-ը կարող է օգտագործվել Server Push մեխանիզմի փոխարեն, որից Google-ը հրաժարվել է Chrome-ում։

    • Դեկլարատիվ ինտերֆեյս՝ առանձին վեբ հավելվածների (PWAs) հղումներ սահմանելու համար, որը միացված է վեբ հավելվածի մանիֆեստում capture_links պարամետրի միջոցով և թույլ է տալիս կայքերին ավտոմատ կերպով բացել նոր PWA պատուհան, երբ հայտի հղումը սեղմվում է կամ անցնում է մեկ պատուհանի ռեժիմի, նման է բջջային հավելվածներին:
    • Ավելացվեց WebXR Plane Detection API-ն, որը տեղեկատվություն է տրամադրում հարթ մակերեսների մասին վիրտուալ 3D միջավայրում: Նշված API-ն թույլ է տալիս խուսափել MediaDevices.getUserMedia(-ի) կանչի միջոցով ստացված տվյալների ռեսուրսային ինտենսիվ մշակումից՝ օգտագործելով համակարգչային տեսողության ալգորիթմների սեփականություն: Հիշեցնենք, որ WebXR API-ն թույլ է տալիս միավորել աշխատանքը վիրտուալ իրականության տարբեր դասերի սարքերի հետ՝ ստացիոնար 3D սաղավարտներից մինչև շարժական սարքերի վրա հիմնված լուծումներ:
  • Իրականացվել է HTTP/2 (RFC 8441) միջոցով WebSockets-ի հետ աշխատելու աջակցությունը, որն ուժի մեջ է միայն WebSockets-ի անվտանգ հարցումների դեպքում և սերվերի հետ արդեն հաստատված HTTP/2 կապի առկայության դեպքում, որը հայտարարել է «WebSockets-ի աջակցության մասին»: HTTP/2” ընդլայնում:
  • Performance.now() զանգի արդյունքում առաջացած ժմչփի արժեքների ճշգրտության սահմանափակումները համահունչ են բոլոր աջակցվող հարթակներում և տեղավորում են առանձին գործընթացներում մշակողներին մեկուսացնելու հնարավորությունը: Օրինակ, աշխատասեղանի համակարգերում ոչ մեկուսացված համատեքստերում մշակման ճշգրտությունը 5-ից կրճատվել է 100 միկրովայրկյան:
  • Այժմ աշխատասեղանի ձևավորումները ներառում են սեղմատախտակից ֆայլեր կարդալու հնարավորությունը (ֆայլեր գրատախտակին գրելը դեռևս արգելված է): async ֆունկցիա onPaste(e) {let file = e.clipboardData.files[0]; թող բովանդակությունը = սպասի file.text(); }
  • CSS-ն իրականացնում է @counter-style կանոնը, որը թույլ է տալիս սահմանել ձեր սեփական ոճը համարակալված ցուցակներում հաշվիչների և պիտակների համար:
  • CSS կեղծ դասերը «:host()» և «:host-context()» ավելացրել են բարդ ընտրիչների առանձին արժեքներ փոխանցելու հնարավորություն ( ) բացի ընտրողների ցուցակներից ( )
  • Ավելացվել է GravitySensor ինտերֆեյս՝ ձգողականության սենսորից ծավալային (երեք կոորդինատային առանցքներով) տվյալները որոշելու համար:
  • File System Access API-ն հնարավորություն է տալիս առաջարկություններ սահմանել ֆայլի անուն և գրացուցակ ընտրելու համար, որոնք առաջարկվում են երկխոսության մեջ՝ ֆայլ ստեղծելու կամ բացելու համար:
  • Այլ տիրույթներից բեռնված Iframe-ներին թույլատրվում է մուտք գործել WebOTP API, եթե օգտատերը տալիս է համապատասխան թույլտվությունները: WebOTP-ն թույլ է տալիս կարդալ SMS-ի միջոցով ուղարկված մեկանգամյա հաստատման կոդերը:
  • Թույլատրվում է համօգտագործել հավատարմագրերի հասանելիությունը կայքերի համար, որոնք կապված են DAL (Digital Asset Links) մեխանիզմի միջոցով, որը թույլ է տալիս Android հավելվածներին կապվել կայքերի հետ՝ մուտքը պարզեցնելու համար:
  • Սպասարկման աշխատողները թույլ են տալիս օգտագործել JavaScript մոդուլներ: Երբ կոնստրուկտորին կանչելիս նշեք «մոդուլի» տեսակը, նշված սկրիպտները կբեռնվեն մոդուլների տեսքով և հասանելի կլինեն ներմուծման համար աշխատողի համատեքստում: Մոդուլի աջակցությունը հեշտացնում է ծածկագիրը վեբ էջերի և սպասարկման աշխատողների միջև տարածումը:
  • JavaScript-ը հնարավորություն է տալիս ստուգել օբյեկտում մասնավոր դաշտերի առկայությունը՝ օգտագործելով «#foo in obj» շարահյուսությունը: class A { static test(obj) {consol.log(#foo in obj); } #foo = 0; } A.test(new A()); // true A.test({}); // կեղծ
  • JavaScript-ը լռելյայն թույլ է տալիս օգտագործել await հիմնաբառը մոդուլներում վերին մակարդակում, ինչը թույլ է տալիս ասինխրոն զանգերն ավելի սահուն կերպով ինտեգրվել մոդուլի բեռնման գործընթացին և խուսափել դրանք «async ֆունկցիայի» մեջ փաթաթելուց: Օրինակ, փոխարենը (async function() { await Promise.resolve(console.log('test'));}()); այժմ կարող եք գրել await Promise.resolve(console.log('test'));
  • V8 JavaScript շարժիչը բարելավել է կաղապարների քեշավորման արդյունավետությունը, ինչը 4.5%-ով մեծացրել է Speedometer2-FlightJS թեստն անցնելու արագությունը:
  • Բարելավումների մեծ մասը կատարվել է վեբ մշակողների գործիքների վրա: Ավելացվել է Հիշողության տեսուչի նոր ռեժիմ՝ տրամադրելով գործիքներ ArrayBuffer-ի տվյալների և Wasm հիշողության ուսումնասիրության համար:
    Chrome 91 թողարկում

    Performance վահանակին ավելացվել է կատարողականի ամփոփ ցուցիչ, որը թույլ է տալիս դատել՝ արդյոք կայքը պահանջում է օպտիմալացում, թե ոչ:

    Chrome 91 թողարկում

    «Elements» վահանակի և «Ցանցի վերլուծության» վահանակի պատկերների նախադիտումները տեղեկատվություն են տրամադրում պատկերի կողմերի հարաբերակցության, արտապատկերման ընտրանքների և ֆայլի չափի մասին:

    Chrome 91 թողարկում

    Ցանցի ստուգման վահանակում այժմ հնարավոր է փոխել Content-Encoding վերնագրի ընդունված արժեքները:

    Chrome 91 թողարկում

    Ոճի վահանակում այժմ կարող եք արագ դիտել հաշվարկված արժեքը CSS պարամետրերով նավարկելու ժամանակ՝ համատեքստի ընտրացանկում ընտրելով «Դիտել հաշվարկված արժեքը»:

    Chrome 91 թողարկում

Բացի նորամուծություններից և սխալների շտկումից, նոր տարբերակը վերացնում է 32 խոցելիություն։ Խոցելիություններից շատերը հայտնաբերվել են ավտոմատացված թեստավորման արդյունքում՝ օգտագործելով AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer և AFL գործիքները: Չի հայտնաբերվել ոչ մի կարևոր խնդիր, որը թույլ կտա շրջանցել բրաուզերի պաշտպանության բոլոր մակարդակները և համակարգում կոդ գործարկել Sandbox միջավայրից դուրս: Որպես ընթացիկ թողարկման համար խոցելիություններ հայտնաբերելու համար դրամական պարգևներ վճարելու ծրագրի մաս՝ Google-ը վճարել է 21 պարգև՝ 92000 ԱՄՆ դոլար արժողությամբ (մեկ $20000, մեկ $15000, չորս $7500, երեք $5000, երեք $3000, երկու $1000, երկու մրցանակ, երկու $500։ $5): XNUMX պարգեւների չափը դեռ որոշված ​​չէ։

Source: opennet.ru

Добавить комментарий