Polygon Labs išleidžia skubų kliento naujinimo pranešimą po Ostino ir Kioto hardforks
„Polygon Labs“ teigė, kad bet kuris „Polygon PoS“ mazgas, kuris išliko prieš „hardfork Bor“ arba „Heimdall“ dvejetainius failus praėjus dviem rugpjūčio aktyvinimo aukščiams, jau iškrito iš kanoninio sutarimo. Praktiškai pasenęs mazgas turi būti atnaujintas ir pasivyti, kad vėl galėtų sekti priimtą tinklo istoriją.
Bendrovės rugpjūčio 27 d. saugumo apžvalgoje aprašyta suderinamumo su klientu pasekmė. „Polygon“ teigė, kad nepastebėjo pagrindinio tinklo sutrikimų iš Ostino, o atskleistus pakeitimus suformulavo kaip aktyvius pataisymus.
„Bor“ yra „Polygon PoS“ vykdymo klientas, o „Heimdall“ tvarko sutarimą ir tikrina. „Bor“ versijos, senesnės nei v2.10.0, yra nesuderinamos po to, kai „Austin“ buvo suaktyvinta pagrindinio tinklo bloke 91 949 700, o tai taikoma visiems „Bor“ mazgo vaidmenims.
„Heimdall“ tikrintuvams ir pilniems mazgams reikia 0.11.0 versijos, kai Kioto protokolas buvo suaktyvintas 51 533 000 aukštyje. „Polygon’s Heimdall“ išleidimo pranešimas nurodo, kad pagrindinis tinklo aktyvinimas yra rugpjūčio 18 d., 10:10:31 UTC.
Ostinas ir Kiotas sprendė atskiras klientų rizikas
Ostinas apribojo suvartojamų dujų kiekį, o Bor apdoroja būsenos sinchronizavimo įvykius iš L1 į L2 tilto telkinių. Šie įvykiai vykdo sutarties kodą ir išankstinius kompiliavimus, tačiau jų dujų suvartojimas anksčiau nebuvo įskaičiuotas į fiksuotas bloko lygio lubas.
Dėl pakankamai įvykių arba vieno pakankamai brangaus įvykio blokų apdorojimas gali būti pakankamai lėtas, kad grandinė laikinai sustabdytų.
Antroji silpnybė sėdėjo Bore TxDependency papildomų duomenų laukas, užuomina, naudojama lygiagrečiam vykdymui. Kadangi gamintojo pateiktame lauke nebuvo dydžio apribojimo, bloko gamintojas galėjo įdėti savavališkai didelę dėmę į kitaip galiojantį brolio bloką ir sudužti bendradarbius, kurie bandė jį apdoroti.
Ostinas pašalino lauką iš laido formato, o Polygonas abu trūkumus priskyrė prie išteklių išeikvojimo rizikos.
Viešas Bor v2.10.0 leidimas įrašo Austin mainnet ir Amoy aktyvinimo blokus. Patikrintas rugpjūčio 28 d. „GitHub“ parodė 2.10.1 versiją kaip naujausią „Bor“ leidimą, o 2.10.0 ar naujesnė versija užtikrina „Austin“ suderinamumą.
Operatyviniu būdu vienas Ostino kelias kėlė grėsmę uždelsto bloko apdorojimui, o kitas galėjo nutraukti kolegoms, gaunančioms per didelį gamintojo duomenų lauką.
Kioto didžiausio sunkumo taisymo taikiniai yra giliai įterpti google.protobuf.Any žinutes. Siuntėjas galėjo pigiai sukurti vieną operaciją, kuri privertė kiekvieną tikrintoją daug išleisti dekodavimui. „Hardfork“ pridėjo baitų lygio įdėjimo patikrą tiek įtraukiant į atmintį, tiek apdorojant blokinį pasiūlymą, kad šie keliai būtų nuoseklūs.
Ji atskirai apriboja mokesčių monetų sąrašus prieš O(n) patvirtinimo nuskaitymą, o Heimdall integracija leidžia vieną mokesčio monetą.
Kiti Kioto pakeitimai apima skirtingus kraštutinius atvejus. Jie normalizuoja kontrolinio taško parašo atkūrimo baitus, todėl galiojantis parašas negali nepavykti atkurti „Ethereum“ ir užstrigti tvirtinimo, pasikartojantys gamintojo prastovos pranešimai tampa neveiksmingi, susieja etapo diapazono balsus su pasirašyta pirmine maiša ir neleidžia, kad nepavykęs ateities laikotarpio kūrimas blokuotų etapo įsipareigojimą.
Papildymo, sekretoriaus ir statymo įvykių pakartojimo klavišai taip pat buvo pritaikyti už diapazono ribų esantiems žurnalo indeksams, todėl skirtingi 1 sluoksnio įvykiai negali tyliai užgožti vienas kito.
Abu hardforkai yra paprasti dvejetainiai atnaujinimai, be būsenos perkėlimo ar genezės pokyčių, o mazgams, kurie nebuvo išsiskyrę, nereikia pakartotinio sinchronizavimo.
Operatoriai, jau viršiję atitinkamą aukštį senesnio kliento programoje, turėtų įdiegti atitinkamą leidimą, prireikus grįžti į iki hardfork tašką ir sinchronizuoti iš naujo vadovaudamiesi daugiakampiu.
