Oriģinālais nosaukums: "Bedrock Explainer"
Raksta: Optimisms Oficiālā
Sastādījis: Frenks, Foresight News
Bedrock ir pirmās oficiālās OP Stack versijas nosaukums, kas ir bezmaksas un atvērtā koda moduļu komponentu komplekts, kas paredzēts optimisma izaugsmei.
Uzlabojumu kopsavilkums
Pamatiežs uzlabo savu priekšgājēju, tostarp:
Samaziniet darījumu maksas, izmantojot optimizētu pakešu darījumu saspiešanu un Ethereum kā datu pieejamības slāni;
Samazināts latentums, iesaiņojot L1 darījumus apkopojumos, labāk apstrādājot L1 reorganizācijas;
Iespējot modulārās pārbaudes sistēmas, izmantojot kodu atkārtoti;
Uzlabojiet mezgla veiktspēju, novēršot dizaina parādus.
zemākas maksas
Bedrock izmanto optimizētu datu saspiešanas stratēģiju, lai samazinātu datu izmaksas. Pašlaik mēs veicam šo izmaiņu ietekmes salīdzinošo novērtēšanu, taču mēs sagaidām, ka tas ievērojami samazinās maksas.
Bedrock arī novērš visas gāzes izmaksas, kas saistītas ar EVM izpildi, iesniedzot datus L1, kas samazinās izmaksas par papildu 10%, salīdzinot ar iepriekšējām protokola versijām.
Īsāks depozīta kredīta termiņš
Bedrock ir ieviesis atbalstu L1 reorganizācijām mezgla programmatūrā, kas ievērojami samazina laiku, kas lietotājiem jāgaida, līdz noguldījumi tiks ieskaitīti.
Iepriekšējās protokola versijās noguldījumu apstiprināšana var aizņemt līdz 10 minūtēm, savukārt, izmantojot Bedrock, mēs sagaidām, ka noguldījumi tiks apstiprināti 3 minūšu laikā.
Uzlabots modulārais pierādījums
Pamatklints abstrahē pierādījumu sistēmu no OP Stack, lai apkopojums varētu izmantot kļūdu pierādījumus vai derīguma pierādījumus (piemēram, zk-SNARK), lai pierādītu pareizu izpildi pēc ievades apkopojumā. Šī abstrakcija ļaus izmantot arī Cannon, lai pierādītu sistēmas kļūme.
Uzlabota mezgla veiktspēja
Mezgla programmatūras veiktspēja ir ievērojami uzlabota, izpildot vairākas transakcijas vienā apkopojuma "blokā", nevis iepriekšējo versiju modeļa "viena transakcija blokā" vietā.
Tas ļauj Merkle Trie atjauninājumu izmaksas sadalīt vairākos darījumos, kas pie pašreizējiem darījumu apjomiem samazina stāvokļa datu pieaugumu par aptuveni 15 GB gadā.
Mezgla veiktspēja ir arī vēl vairāk uzlabota, novēršot tehnisko parādu no iepriekšējām protokola versijām, tostarp likvidējot vajadzību pēc atsevišķa "datu transporta slāņa" mezgla, lai indeksētu L1, un atjauninot mezgla programmatūru, lai efektīvi meklētu darījumus no L1 datiem.
Uzlabota Ethereum ekvivalence
Pamatiežs jau no paša sākuma tika izstrādāts tā, lai tas būtu pēc iespējas “saskaņots” ar Ethereum, un ir novērstas daudzas novirzes no Ethereum iepriekšējās protokola versijās, tostarp:
Modelis “Viens darījums blokā”;
Pielāgojiet opkodu, lai iegūtu L1 bloka informāciju;
Atdaliet L1/L2 izmaksu laukus JSON-RPC API;
ETH atlikumu pielāgots ERC20 attēlojums.
Bedrock ir arī pievienojis atbalstu EIP-1559, blokķēdes reorganizācijai un citām L1 Ethereum funkcijām.
Dizaina principi
Pamatklints ir veidots tā, lai tas būtu modulārs un mērogojams, vienlaikus atkārtoti izmantojot esošo Ethereum kodu un cenšoties sasniegt 100% Ethereum ekvivalenci, kad vien iespējams.
Moduļu
Izmantojot labi definētas saskarnes un versiju shēmas, Bedrock var viegli nomainīt dažādus OP steka komponentus un pievienot jaunu funkcionalitāti.
Tas ļauj tai pielāgoties Ethereum ekosistēmas turpmākajai attīstībai ar elastīgu arhitektūru, piemēram:
Apkopošanas mezgls ir atdalīts no izpildes klienta;
Moduļu necaurlaidīgs dizains.
koda atkārtota izmantošana
Bedrock izmanto esošo Ethereum arhitektūru un infrastruktūru, kad vien iespējams. Šī pieeja ļauj OP Stack mantot drošības un Lindy efekta priekšrocības no kaujās pārbaudītās kodu bāzes, ko izmanto Ethereum galvenais tīkls.
To piemērus atradīsit visā dizainā, tostarp:
minimāli modificēts izpildes klients;
EVM līgumi iepriekš kompilēta klienta koda vietā.
Ethereum ekvivalence
Bedrock ir izstrādāts tā, lai tas būtu maksimāli saderīgs ar esošo Ethereum izstrādātāju pieredzi, taču pastāv daži izņēmumi, kas saistīti ar būtiskām atšķirībām starp L1 un apkopojumu: dažādi maksas modeļi, ātrāki bloķēšanas laiki (2 sekundes pret 12 sekundēm) un īpaši darījumu veidi, tostarp L1 depozīta darījumi.
Šie izņēmumi ietver:
Ethereum izpildes klientu kļūdu pārbaude, kas paredzēta minimālu modifikāciju pierādīšanai;
Ethereum veic klienta puses koda atkārtotu izmantošanu, lai to izmantotu mezgli un pasūtītāji L2 tīklā.
protokols
Apkopojumi ir balstīti uz datu pieejamību (parasti L1 blokķēde, piemēram, Ethereum). Visizplatītākajā konfigurācijā apkopojuma protokols iegūst "kanonisko L2 ķēdi" no diviem galvenajiem informācijas avotiem.
Darījuma datus L1 publicē sekvencētājs;
Noguldījumu darījumi tiek iesniegti, izmantojot kontus un viedos līgumus tilta līgumā L1.
Līguma pamatkomponenti ir šādi:
Tieši mijiedarbojoties ar viedo līgumu L1, depozīts tiek ierakstīts "standarta L2 ķēdē";
Izņemšana tiek ierakstīta "kanoniskajā L2 ķēdē" un netieši aktivizē mijiedarbību ar viedajiem līgumiem un kontiem L1;
Partijas ir datu ieraksti, kas atbilst partijām apkopojumā;
Bloku atvasināšana ir veids, kā interpretēt datu nolasījumus L1, lai saprastu "kanonisko L2 ķēdi";
Pārbaudes sistēma nosaka L1 publicēto izvades sakņu galīgumu, lai tās varētu izpildīt (piemēram, veikt izņemšanu).
depozīts
Depozīts ir darījums L1 un tiks iekļauts apkopojumā. Pēc definīcijas tiek garantēts, ka noguldījumi tiks iekļauti "kanoniskajā L2 ķēdē" kā līdzeklis, lai novērstu L2 cenzūru vai kontroli.
Jebkurš ziņojums, kas piegādāts no L1
Depozīta darījumi ir apkopošanas darījumi, kas tiek veikti kā daļa no noguldījuma. Izmantojot Bedrock, noguldījumi ir pilnībā universāli Ethereum darījumi, piemēram, Ethereum konti vai viedie līgumi var izveidot "depozīta" līgumus.
Bedrock definē depozīta līgumu, kas pieejams L1: tas ir viedais līgums, ar kuru L1 konti un viedie līgumi var mijiedarboties, lai rakstītu uz L2. Noguldījumu darījumi L2 ir atvasināti no darījumiem, kas izdoti saskaņā ar šo depozīta līgumu, un ietver paredzamos parametrus, piemēram, no, līdz un datus.
Sīkāku informāciju skatiet sadaļā Noguldījuma līguma līguma specifikācijas.
Pērciet garantēto L2 gāzi uz L1
Bedrock arī precizēja Gāzes sadedzināšanas mehānismu un depozīta maksas tirgu. Gāze, kas iztērēta L2, veicot depozīta darījumus, tiek iegādāta L1, izmantojot Gāzes dedzināšanu.
Šī gāze ir īpaši iegādāta maksas tirgū, un ir noteikts ierobežojums kopējam gāzes apjomam, kas tiek nodrošināts visiem depozīta darījumiem vienā L1 blokā. Šis mehānisms tiek izmantots, lai novērstu pakalpojumu atteikuma uzbrukumus (DoS). Rakstot darījumus no L1 uz L2, jo šie darījumi L2 patērē daudz Gāzes, bet L1 ir ļoti lēti.
Depozīta darījumiem paredzētā gāze dažkārt tiek saukta par "Garantēto gāzi". Garantētā gāze ir unikāla ar to, ka par to maksā, dedzinot gāzi L1, un tāpēc tā nav atmaksājama.
Un kopējais L1 gāzes daudzums, kas jāsadedzina uz vienu garantētās L2 gāzes vienību, ir atkarīgs no L2 gāzes cenas, ko ziņo EIP-1559 tipa uzlādes mehānisms. Turklāt lietotāji saņem dinamisku gāzes kvotu, pamatojoties uz L1 gāzes iztērēto summu, aprēķinot maksas mehānisma atjauninājumus.
Lai iegūtu padziļinātu skaidrojumu, lūdzu, izlasiet protokola specifikācijas depozīta sadaļā.
Izņemt naudu
Izņemšana ir starpslāņu darījumi, kas uzsākti L2 un pabeigti ar darījumiem, kas izpildīti L1. Ir vērts atzīmēt, ka L2 konti var izmantot izņemšanu, lai slēgtu L1 līgumus vai pārsūtītu ETH no L2 kontiem uz L1 kontiem.
Izņemšana tiek uzsākta, izsaucot Message Passer iepriekš izvietoto līgumu L2, kas reģistrē ziņojuma svarīgās īpašības savā krātuvē, un pēc tam izņemšana tiek pabeigta L1, zvanot uz OptimismPortal līgumu, lai pierādītu šī atteikuma ziņojuma iekļaušanu.
Tādā veidā izņemšana un iemaksa ir atšķirīga: Izņemšanas darījumi ir jāpabeidz, izmantojot viedos līgumus L1, nevis paļaujoties uz informāciju, kas iegūta no blokiem.
Divpakāpju izņemšanas process
Izņemšanas pierādījuma validācijas kļūdas ir galvenais iemesls daudzu pārrobežu ķēžu tiltu uzlaušanai pēdējos dažos gados. Bedrock versija ievieš papildu soli iepriekšējo versiju izņemšanas procesā, lai nodrošinātu papildu aizsardzību pret šāda veida kļūdām.
Divpakāpju izņemšanas procesā katrai izņemšanai ir jāiesniedz izņemšanai atbilstošais Merkles apliecinājums 7 dienas pirms galīgās izņemšanas. Šis jaunais drošības mehānisms nodrošina pārraudzības rīkiem pilnas 7 dienas, lai atrastu un atklātu atsaukšanas sertifikātu.
Ja izņemšanas sertifikāts šajā periodā tiek atzīts par nederīgu, viedā līguma remontdarbus var veikt pirms līdzekļu zaudēšanas, kas ievērojami samazina šķērsķēdes tilta kompromitēšanas risku.
Lai iegūtu sīkāku informāciju, lūdzu, skatiet sadaļu Izstāšanās līguma specifikācijas.
Partijas
Bedrock ziņojuma pārsūtīšanai starp L1 un L2 ir definēts vadu formāts (t.i., L2 iegūst blokus no L1, L2 ieraksta transakcijas uz L1), šis vadu formāts ir paredzēts, lai samazinātu izmaksas par rakstīšanu uz L1 un programmatūras sarežģītību līdz minimumam.
Optimizējiet datu saspiešanu
Lai optimizētu datu saspiešanu, L2 transakciju saraksti (saukti par sekvencēra partijām) tiek sakārtoti objektu grupās (saukti par kanāliem). Katra kanāla maksimālo izmēru var definēt konfigurējamā parametrā, kas sākotnēji tiks iestatīts uz 9,5 M. ir paredzēts saspiest, izmantojot saspiešanas funkciju, un iesniegt L1.
partijas paralēla iesniegšana
Lai paralēli ziņojumus no sekvencētājiem, kas iesniedz saspiestus kanālu datus L1, kanāli tiek tālāk sadalīti "kanālu kadros", kas ir saspiestu kanālu datu gabali, kas var iekļauties vienā L1 darījumā.
Pieņemot, ka "kanālu kadri" ir neatkarīgi viens no otra un secība ir zināma, Ethereum transakcijas, ko sekvencētājs sūta uz L1, var nosūtīt paralēli, tādējādi samazinot sekvencēra programmatūras sarežģītību un ļaujot aizpildīt visu pieejamo datu vietu L1.
Ethereum gāzes samazināšana
Bedrock noņem visu izpildes gāzi, ko izmanto L1 sistēma, lai iesniegtu kanāla datus L1 darījumos, ko sauc par "pakešu darījumiem". Visa verifikācijas loģika, kas iepriekš notika L1 viedajos līgumos, ir pārvietota uz bloku atvasināšanas loģiku. Tā vietā "pakešu transakcijas" tiek nosūtītas uz vienu Ethereum EOA adresi, ko sauc par "pakešu iesūtnes adresi".
Uz partijām joprojām attiecas derīguma pārbaudes (t.i., tām jābūt pareizi kodētām), tāpat kā atsevišķiem darījumiem paketē (piemēram, parakstiem jābūt derīgiem), nederīgas partijas un nederīgas atsevišķas transakcijas derīgās partijās tiek uzskatītas par izmestām un sistēmām nebūtiskām.
Piezīme. Ethereum drīzumā tiks jaunināta uz jaunu versiju, kas ietver EIP-4844, kas ievieš atsevišķu datu rakstīšanas maksas tirgu un palielina Ethereum protokola glabājamā datu apjoma augšējo robežu. Paredzams, ka šīs izmaiņas vēl vairāk samazinās Izmaksu skaits, kas saistītas ar publicēšanu L1.
Lai iegūtu padziļinātu skaidrojumu, izlasiet kabeļa formāta specifikāciju.
Bloku dakša
Bedrokā protokols ir izstrādāts, lai nodrošinātu, ka nogulšņu laiks L1 ir saistīts ar "kanoniskās L2 ķēdes" bloku atvasināšanu. Tas ir tikai datu ierakstīšanas funkcija L1, izmantojot sekvencēra, depozīta un L1 bloka rekvizītus.
Lai to panāktu, protokols nosaka stratēģijas noguldījumu garantēšanai, L1 un L2 laikspiedolu apstrādei un pasūtīšanas logu apstrādei kanālā, lai nodrošinātu pareizu pasūtīšanu.
Garantēts depozīts kontā
Bloku atvasināšanas protokola mērķi ir definēti šādi:
Pēc katra "L2 bloka intervāla" ir jābūt L2 blokam, un L2 bloka laikspiedols tiek sinhronizēts ar L1 laikspiedolu (t.i., nodrošinot, ka noguldījumi tiek iekļauti loģiskā hronoloģiskā secībā).
Bedrock ir ieviests jēdziens "sekvences laikmets": tas ir L2 bloku diapazons, kas iegūts no L1 bloku sērijas. Katrs laikmets tiek identificēts ar "laika numuru", kas ir vienāds ar numuru šķirošanas logā. Pirmā L1 bloka bloka kārtas numurs. Laikmetu lielums var atšķirties, ievērojot dažus ierobežojumus.
Pakešu atvasinātais kanāls apstrādā L1 bloka laikspiedolu, kas saistīts ar "laika numuru", kā enkuru, lai noteiktu darījumu secību L2. Protokols garantē, ka laikmeta pirmais L2 bloks nekad neatpaliks no atbilstošā laikmeta L1 bloka laikspiedola. Lai garantētu, ka depozīts tiks apstrādāts, pirmajā laikmeta blokā ir jāietver noguldījumi L1.
Ņemiet vērā, ka Bedrock versijā bloka intervāla mērķis L2 ir konfigurēts uz 2 sekundēm.
L1 un L2 laikspiedolu apstrāde
Bedrock mēģina atrisināt problēmu, kas saistīta ar L2 laika zīmogu saskaņošanu ar L1 laikspiedoliem, kas pastāv depozīta darījumos.
Tas tiek darīts, ļaujot īsu laika periodu šķirošanai, lai brīvi lietotu laikspiedolus L2 transakcijām starp laikmetiem.
Secības logs ir L1 bloku secība, no kuras var iegūt laikmetus. Kārtošanas logā pirmais L1 bloka numurs N satur laikmeta "pakešu transakcijas". )
Kārtošanas logā ir bloki, kas ir atkarīgi no šķirošanas loga lieluma: fiksētam apkopojuma līmeņa konfigurācijas parametram ir jābūt vismaz 2, palielinot to sekvencētājam dos vairāk iespēju kārtot L2 transakcijas uz noguldījumiem, pazeminot to sekvencēšanai Stingrāks laiks logs, ko ievada serveris, lai iesniegtu "paketēra darījumus". Tas ir kompromiss starp MEV iespēju radīšanu un programmatūras sarežģītības palielināšanu.
Protokola konstante, ko sauc par "maksimālo sekvencēra novirzi", kontrolē maksimālo laika zīmogu, kāds blokam var būt savā laikmetā.
Bloķēt dakšu cauruļvadu
"Kanonisko L2 ķēdi" var apstrādāt no nulles, sākot no L2 ģenēzes stāvokļa, iestatot L2 ķēdes sākumu uz pirmo laikmetu un pēc tam apstrādājot visus šķirošanas logus, lai noteiktu sekvencēra partijas saskaņā ar šādu vienkāršotu secību un pareizo secību cauruļu nogulsnēšana:

Neveiksmes pierādījums
Pēc tam, kad sekvencētājs apstrādās vienu vai vairākus L2 blokus, šajos blokos izpildīto darījumu aprēķinu izvadi būs jāieraksta L1, lai nodrošinātu neuzticamu L2–L1 ziņojumapmaiņas izpildi, piemēram, izņemšanu utt.
Programmā Bedrock izvade tiek jaukta koka struktūras veidā, līdz minimumam samazinot izmaksas, kas rodas, pierādot jebkuru izvadā iegūto datu daļu. Priekšlikumu iesniedzēji periodiski iesniedz L1 izvades saknes, kas kalpo kā Merkles saknes visai "kanoniskajai L2 ķēdei".
Turpmākajos OP Stack jauninājumos jāiekļauj nekļūdīga varianta specifikācija ar saitēm, lai mudinātu ierosinātājus piedāvāt pareizas izvades saknes.
Lai iegūtu pilnīgu informāciju, izlasiet protokola specifikāciju sadaļā L2 izvades saknes priekšlikums.
īstenot
Bedrokā OP Stack ir lielā mērā jāpaļaujas uz Ethereum norādīto tehnisko problēmu nošķiršanu, atspoguļojot atdalīšanu starp Ethereum izpildes slāni un vienprātības slāni.
Tāpēc Bedroks tādā pašā veidā ieviesa izpildes klientu un apkopojuma mezglu atdalīšanu.
Izpildīt klientu
Izpildes klienti ir sistēmas, kuras palaiž sekvenceri un cita veida mezglu operatori, lai noteiktu kanoniskās L2 ķēdes stāvokli. Tā veic arī citas funkcijas, piemēram, apstrādā ienākošos darījumus un vienādranga sakarus, kā arī apstrādā sistēmas stāvokli, lai apstrādātu pret to vērstus vaicājumus.
Izmantojot Bedrock, OP Stack mērķis ir atkārtoti izmantot paša Ethereum izpildes klienta specifikāciju un daudzas tā izpildes darbības. Šajā laidienā Bedrock demonstrēja ārkārtīgi ierobežotu Ethereum klienta go-ethereum modifikāciju ar atšķirību mazāk nekā 2000 koda rindiņu.
Atšķirībai ir divi būtiski iemesli: noguldījumu darījumu apstrāde un darījumu maksas iekasēšana.
Apstrādāt noguldījumu darījumus
Lai attēlotu noguldītos darījumus apkopojumā, tiek ieviests papildu darījuma veids. Klientu ieviešana, kas ievieš šo jauno darījumu veidu, ir balstīta uz EIP-2718 tipa darījumu standartu.
Iekasēt darījumu maksu
Apkopojumos būtībā ir arī divu veidu ar darījumu saistītas maksas:
Viens no tiem ir sekvencēra maksa. Sekvencēra darbības izmaksas tiek aprēķinātas, izmantojot to pašu gāzes tabulu un to pašu EIP-1559 algoritmu kā Ethereum, ko protokols izmanto sekvencēra darbināšanai un kas laika gaitā svārstās atkarībā no tīkla pārslodzes.
Vēl viena maksa par datu pieejamību. Datu pieejamības izmaksas ir saistītas ar pakešu transakciju ierakstīšanu L1 un ir paredzētas, lai segtu sekvencēra maksu par pakešu transakciju iesniegšanu L1.
Programmā Bedrock maksas datu pieejamības daļa tiek noteikta, pamatojoties uz informāciju apkopošanas sistēmas viedajā līgumā ar nosaukumu GasPriceOracle, kas ir balstīts uz L1 bloka atribūtiem, kas ievietoti katra laikmeta sākumā bloka atvasināšanas procesa laikā ir atjaunināts.
Bedrock norāda, ka, izmantojot JSON-RPC, abas izmaksas tiek pievienotas vienā laukā.
apkopojuma mezgls
Atšķirībā no Ethereum, Bedrock nav vienprātības par PoS. Turpretim "kanoniskās L2 ķēdes" vienprātību nosaka bloka atvasināšana. OP Stack izpildes klients sazinās ar jaunu komponentu, kas ievieš bloku sadalīšanu, ko sauc par apkopošanas mezglu, kas sazinās ar izpildes klientu, izmantojot tieši to pašu dzinēja API kā Ethereum.
Apkopošanas mezgls ir bezvalsts komponents, kas atbild par sistēmas stāvokļa atvasināšanu, nolasot datus un noguldījumus L1. Pakalpojumā Bedrock apkopojuma mezglus var izmantot, lai secinātu ienākošos darījumus no lietotājiem vai citiem apkopojuma mezgliem vai apstiprinātu apstiprinātos darījumus, kas publicēti L1, paļaujoties tikai uz L1.
Tālāk ir apkopoti dažādi apkopojuma mezglu lietojumi.
Pārbaudiet "kanonisko L2 ķēdi"
Vienkāršākais apkopojuma mezglu palaišanas veids ir vienkārši sekot "kanoniskajai L2 ķēdei". Šajā režīmā apkopojuma mezglam nav vienaudžu, un tas tiek stingri izmantots, lai nolasītu datus no L1 un interpretētu datus saskaņā ar bloku atvasināšanas protokola noteikumiem.
Viens no šāda mezgla mērķiem ir pārbaudīt, vai visas izvades saknes, ko koplieto citi mezgli vai publicētas L1, ir pareizas saskaņā ar protokola definīciju. Turklāt priekšlikumu iesniedzēji, kuri plāno iesniegt L1 izvades saknes, paši var izmantot optimizism_outputAtBlock, lai ģenerētu viņiem nepieciešamās izvades saknes un atgrieztu 32 baitu jaucējkodu, kas atbilst L2 izvades saknei.
Lai to izdarītu, mezgliem ir jāievēro tikai "pabeigtā" bloka galvene. Termins "pabeigts" attiecas uz Ethereum PoS konsensu (t.i., kanonisku un gandrīz neatgriezenisku), un "pabeigtā" L2 bloka galvene ir "kanoniskās L2 ķēdes" apgabals, kas iegūts tikai no "pabeigtā" L1 bloka galvu.
Piedalīties L2 tīklā
Visizplatītākais apkopojuma mezgla izmantošanas veids ir piedalīties citu apkopojuma mezglu tīklā, izsekojot L2 procesus un statusu. Šajā režīmā apkopojuma mezgls vienlaikus nolasa datus un nogulda tos no L1, interpretē tos blokos un pieņem ienākošos darījumus no lietotājiem un vienaudžiem citu apkopojuma mezglu tīklā.
Mezgli, kas piedalās tīklā, var izmantot L2 drošo un nedrošo bloku galvenes, ar kurām tie veic sinhronizāciju.
Drošas L2 bloku galvenes ir apkopojumi, kurus var izveidot un kuros katru bloku (tostarp galvenes) var pilnībā atvasināt no atsauces L1 ķēdes, pirms L1 ir "pabeigta" (t.i., L1 joprojām var notikt reorganizācija);
Nedrošo L2 bloku galvenes ietver nedrošus blokus, kas nav atvasināti no L1. Šie bloki rodas, izmantojot apkopojuma mezglu kā sekvencētāju, vai arī no nedrošas sinhronizācijas ar sekvencētāju. To sauc arī par "jaunāko" bloka galveni. Ja rodas domstarpības, vienmēr izvēlieties drošā L2 bloka galveni, nevis nedrošo L2 bloka galveni. Ja rodas nesaskaņas, ķēdes nedrošā daļa pārkārtosies;
Vairumā gadījumu galalietotāju lietojumprogrammām apkopojuma mezgli L2 tīklā atsaucas uz nedrošām L2 bloku galvenēm.
Darījumu šķirošana
Trešais apkopojuma mezglu izmantošanas veids ir darījumu pasūtīšana. Šajā režīmā apkopojuma mezgli izveidos jaunus blokus virs nedrošo L2 bloku galvenēm. Pašlaik katram OP Stack tīklam ir tikai viens sekvencētājs.
Sekvencētājs ir atbildīgs arī par darījumu partiju publicēšanu L1, lai citi tīkla mezgli varētu sinhronizēt no tā.
Maisītājs
Sekvencētāja uzdevums ir izveidot transakciju paketes. Šim nolūkam sekvencētāji var palaist apkopojuma mezglus un tiem ir atsevišķi procesi, kas izpilda partijas, nolasot no uzticamajiem apkopojuma mezgliem, kuros tie darbojas.
Tas nodrošina, ka OP Stack pievienojumprogrammas komponents, ko sauc par pakešu transakciju apdarinātāju, nolasa transakciju datus no apkopojuma mezgla un interpretē tos pakešu transakcijā, kas jāieraksta L1. Paketētāja komponents ir atbildīgs par nolasīšanu un darbību sekvencētājs Mezgls apkopo nedrošo L2 bloka galveni, izveido pakešu transakcijas un ieraksta tās L1.
Standarta tilta līgums
Bedrock ietver arī dažus tilta līgumus par visizplatītākajiem noguldījumu veidiem, ko sauc par standarta tilta līgumu. Šie līgumi ietver depozīta un izņemšanas līgumus, nodrošinot vienkāršu saskarni ETH un ERC-20 marķieru iemaksai un izņemšanai.
Šie pārejas līgumi ir izstrādāti tā, lai vienā šķērsķēdes tilta pusē būtu iesaiņots marķieris, kas var pārvaldīt vietējā marķiera izveidi un bloķēšanu līgumā un pēc tam bloķēšanu. native token in cross-chain tilts Otrā pusē kalts vienāds daudzums iekapsulētu žetonu.
Papildinformāciju skatiet sadaļā Standarta šķērsķēžu tilta protokola specifikācijas.
Lielgabals
Lai gan programmā Cannon ir ieviesta kļūmju droša izveide un pārbaude, neveiksmīgas spēles specifikācija un izejas saknes izaicinājuma integrācija apkopojuma mezglā ir daļa no turpmākajiem specifikācijas atskaites punktiem.
Tālāka lasīšana
Protokola specifikācijas
Protokola specifikācija nosaka OP Stack tehniskās detaļas un ir visjaunākais patiesības avots par protokola iekšējo darbību.
Pamatiežu atšķirība
Lai padziļināti apskatītu atšķirības starp Bedrock un iepriekšējām versijām, skatiet sadaļu Kā Bedrock atšķiras.
