Treceți la conținutul principal

Ajutați-ne să actualizăm această pagină

🌏

Există o nouă versiune a acestei pagini, dar este doar în limba engleză pentru moment. Ajutați-ne să traducem versiunea cea mai recentă.

Traduceți pagina
Afișați versiunea în limba engleză

Nici o eroare aici!🐛

Această pagină nu este tradusă. Am lăsat în mod intenționat această pagină în limba engleză deocamdată.

Această pagină este incompletă și ne-ar face plăcere să ne ajutați. Modificați această pagină adăugând orice considerați util pentru ceilalți.

Canalele de stare

Ultima modificare: , Invalid DateTime
Modificați pagina

Canalele de stare permit participanților să tranzacționeze off-chain de un număr de ori, în timp ce trimit doar două tranzacții on-chain către rețeaua Ethereum. Aceasta permite efectuarea unui număr extrem de mare de tranzacții.

Condiții prealabile

Ar trebui să înţelegeţi bine toate subiectele fundamentale și să aveţi un nivel înalt de înţelegere a scalării în Ethereum. Implementarea soluțiilor de scalare, cum ar fi canalele, este un subiect avansat, deoarece tehnologia este mai puțin testată în luptă și se află în continuare în faza de cercetare şi dezvoltare.

Canale

Participanții trebuie să blocheze o parte din starea Ethereum, ca un depozit ETH, într-un contract multisig. Un contract multisig este un tip de contract care necesită semnarea (și prin urmare, acordul) mai multor chei private pentru a fi executat.

Blocarea stării în acest mod este prima tranzacție și deschide canalul. Participanții pot tranzacționa rapid și liber off-chain. Când interacțiunea este finalizată, este trimisă o tranzacție finală on-chain, care deblochează starea.

Util pentru:

  • o mulțime de actualizări de stare
  • atunci când numărul de participanți este cunoscut în avans
  • atunci când participanții sunt întotdeauna disponibili

Există două tipuri de canale în acest moment: canale de stare și canale de plată.

Canalele de stare

Canalele de stare sunt poate cel mai bine explicate printr-un exemplu, cum ar fi un joc de tic tac toe:

  1. Creează un contract inteligent multisig „Judecător” pe lanțul principal Ethereum care înțelege regulile tic-tac-toe și îi poate identifica pe Alice și pe Bob ca fiind cei doi jucători din jocul nostru. Acest contract deține un premiu de 1 ETH.

  2. Apoi Alice și Bob încep să joace, deschizând canalul de stare. Fiecare mișcare creează o tranzacție off-chain care conține un „nonce”, ceea ce înseamnă că putem întotdeauna spune ulterior în ce ordine au avut loc mutările.

  3. Când există un câștigător, acesta închide canalul trimiţând starea finală (de exemplu, o listă de tranzacții) la contractul Judecător, plătind doar o singură taxă de tranzacție. Judecătorul se asigură că această „stare finală” este semnată de ambele părți și așteaptă un timp pentru a se asigura că nimeni nu poate contesta în mod legitim rezultatul, iar apoi plătește premiul de 1 ETH lui Alice.

Canalele de plată

Canale de stare simplificate care se ocupă doar de plăți (de exemplu, transferurile de ETH). Acestea permit transferuri off-chain între doi participanți, atâta timp cât suma netă a transferurilor lor nu depășește tokenurile depuse.

Avantaje și dezavantaje

AvantajeDezavantaje
Retragere/plată instantanee pe Mainnet (dacă ambele părți ale unui canal cooperează)Durata și costul configurării și stabilirii unui canal - nu sunt atât de utile pentru tranzacțiile ocazionale unice între utilizatori arbitrari.
Este posibil un flux extrem de ridicatTrebuie să urmăriţi periodic rețeaua (cerința de „liveness”) sau să delegaţi această responsabilitate altcuiva pentru a vă asigura securitatea fondurilor.
Cel mai mic cost pe tranzacție - utile pentru microplăți în streamingTrebuie să blocaţi fonduri în canalele de plată deschise
Nu acceptă participarea deschisă

Utilizarea canalelor de stare

Numeroase proiecte oferă implementări ale canalelor de stare pe care le puteți integra în aplicațiile dvs. dapp:

  • Connext
  • Kchannels
  • Perun
  • Raiden
  • Statechannels.org

Referințe suplimentare

Canale de stare

Canale de plată

Cunoașteți o resursă a comunității care v-a ajutat? Editaţi această pagină și adăugaţi-o!

Ajută-ne cu această pagină

Dacă ești expert pe această temă și dorești să contribui, editează această pagină și presar-o cu înțelepciunea ta.

Vei fi creditat și vei ajuta comunitatea Ethereum!

Utilizează acest șablon de documentație flexibil

Întrebări? Întreabă-ne pe canalul #content de pe serverul nostru Discord

Editare pagină

A fost util acest articol?