Filosofia stergerii

Protocolul de stergere se bazeaza pe cele trei primitive ale unei relatii economice: inregistrare, plata si recurs.

  1. Urmariti inregistrarile prin mesaje si fluxuri
  2. Plati prin orice criptomoneda
  3. Recurs prin Griefing

Urmariti inregistrarile prin mesaje si fluxuri

Erasure_Posts tine evidenta hashului si a marcajului de timp al tuturor datelor trimise protocolului. Aceasta serveste ca o dovada a existentei pe care se poate construi o inregistrare. Crearea unei instante de postare este la fel de simpla ca trimiterea unui hash din datele dvs. la contractul dvs. inteligent Feed. La inceput, datele sunt ascunse, dar pot fi dezvaluite public intr-un moment ulterior, incarcandu-le in stocarea descentralizata. Un feed permite utilizatorului sa stabileasca credibilitatea printr-un istoric ordonat al trimiterilor de mesaje. Intrucat aceste postari se afla intr-o singura matrice numai pentru adaugare, nu este posibila stergerea sau reordonarea acestora odata trimise. O singura postare functioneaza excelent pentru trimiteri o singura data si un feed este conceput pentru cazuri de utilizare cu predictii continue.

Hash-ul care este supus stergerii se numeste ProofHash. O dovada ar trebui sa fie generata prin luarea hash-ului SHA-256 al datelor trimise insotite de o adresa de utilizator si de un utilizator generat de sare pentru a evita imitatia potentiala sau atacurile de spionaj.

Plati prin orice criptomoneda

Protocolul de stergere este conceput pentru a sprijini orice criptomonede native din Ethereum, cum ar fi ETH, WBTC si RMN, in cadrul contractelor sale inteligente de escrow programabile. Primul sablon de escrow numit CountdownGriefingEscrow accepta plati in RMN. Toate escrow-urile Erasure sunt inregistrate in registrul Erasure_Escrows care contribuie la sursa unica de adevar.

Recurs prin Griefing

Recursul se realizeaza atunci cand o parte este pedepsita pentru faptele gresite. In lumea Stergerii, acest lucru se traduce direct prin mizare si arsura. Cand doua parti decid sa se angajeze, ele incep prin a juca RMN si a conveni asupra unui set de conditii pentru pedeapsa. Numim aceasta combinatie de skin in joc si reguli de angajament Erasure_Agreements.

Primul tip de acord utilizat pentru stergere se numeste Griefing. Griefing-ul permite unei parti sa ajunga la o rezolutie fara un tert arbitru, pedepsindu-si contrapartida cu un cost. Aceasta urmeaza cercetarilor in neuroeconomie, care observa ca cooperarea evolueaza la populatiile in care este posibila pedeapsa altruista, precum durerea.

Crearea unui acord de plangere este la fel de simpla ca si faptul ca doua parti sunt de acord cu privire la „raportul” lor si la suma miza. Raportul dvs.

pelis porno francesas sexo con cincuentonas
porno jovencitas españolas porno xxxxx
megacorridas follando abuelas
tangas xxx porno incesto italiano
porno suizo incesto italiano porno
follando a mi compañera de piso follada a traicion
porno flash chochitos jovenes
porno casero en españa españolas amater
orgias amateur realincest
videos culos follando en silencio
enanas porno maduras gordas desnudas
pajas de madres videos de sexo en español
porno con abuelas pollas peludas
sexo gratis hijo viola a su madre porno
parejas liberales españolas comic porno en español
pono gay venezolanas maduras
abuelas sexi videos gays argentinos
porno sin censura maduras sensuales
incesto lesbianas me gusta follar
putas vic buenas pajas

reprezinta o cantitate de RMN pe care o poate cheltui contrapartea dvs. („cost”) pentru a arde 1 RMN al dvs. („pedeapsa”). Cand apare durerea, atat costul, cat si pedeapsa sunt arse pentru totdeauna din aprovizionarea RMN.

Luati, de exemplu, un acord intre Alice si Bob. Alice este anonima si nu si-a construit un palmares. Mizeaza 500 RMN si selecteaza un raport de 0,5. Bob, insa, si-a dezvaluit identitatea din lumea reala si are un palmares excelent. Ca atare, el mizeaza 100 RMN si selecteaza un raport de 1,0.

Va rugam sa retineti: pedepsele sunt platite din miza RMN pre-angajata, dar costurile sunt platite din jetoanele NMR lichide.

Actiune Miza Alice rezultata Miza Bob rezultata Alice mizeaza 500 RMN cu raport 0,5 500 0 Bob mizeaza 100 RMN cu raport 1,0 500 100 Bob plateste 5 RMN pentru a pedepsi Alice pentru 10 RMN 490 100 Alice plateste 10 RMN pentru a pedepsi pe Bob pentru 10 RMN 490 90

Griefing-ul evita sa se bazeze pe un oracol centralizat sau pe un tert de incredere pentru a efectua arbitrajul conform termenilor acordului si, in schimb, permite partilor sa ajunga la o rezolutie pe cont propriu. Deoarece noile tehnici de rezolutie, cum ar fi oracolele descentralizate, sunt construite pe Ethereum, va fi posibil sa le adaugati la setul de Erasure_Agreements.

Arhitectura

Fiecare acord, utilizator, intrare, orice cont poate avea propriul cont si acele conturi (sau fabricile care le implementeaza) pot raporta inapoi la registre simple, partajate, care stabilesc o singura sursa de adevar pentru Protocolul de stergere. Acest lucru acorda agentilor individuali din sistem autoritatea de a opta pentru noi schimbari, da nastere la o diversitate de optiuni pentru modul de interactiune cu sistemul si face sistemul mai descentralizat.

Pana in prezent, registrele dezvoltate sunt:

  • Erasure_Agreements
  • Erasure_Posts
  • Erasure_Users
  • Erasure_Escrows

Folosind biblioteca Spawner, fiecare articol de pe Erasure este creat ca o clona a unui sablon implementat anterior. Numim aceste fabrici de clonare . Fiecare clona este, de asemenea, inregistrata intr-un registru care ofera o singura sursa de adevar asupra starii protocolului.

Exemplu de utilizare a ErasureClient

Inregistrare utilizator nou

  • Utilizatorul nou se conecteaza la ErasureClient
  • ErasureClient genereaza chei de criptare asimetrice PubKey, PrivKey
  • ErasureClient incarca PubKey in Erasure_Users

Crearea unei postari

  • Vanzatorul creeaza un feed folosind Feed_Factory.create () cu parametri optionali
  • Vanzatorul incarca date brute in ErasureClient_Seller
  • ErasureClient_Seller genereaza cheia de criptare simetrica SymKey
  • ErasureClient_Seller calculeaza encryptedData = SymKey.encrypt (rawdata)
  • ErasureClient_Seller calculeaza keyhash = sha256 (SymKey)
  • ErasureClient_Seller calculeaza datahash = sha256 (rawdata)
  • ErasureClient_Seller calculeaza encryptedDatahash = sha256 (encryptedData)
  • ErasureClient_Seller calculeaza json_proofhash_v120 = JSON (address_seller, multihashformat (datahash), multihashformat (keyhash), multihashformat (encryptedDatahash))
  • ErasureClient_Seller calculeaza proofhash = sha256 (json_proofhash_v120)
  • ErasureClient_Seller transmite dovezi privind contractul sau de feed
  • ErasureClient_Seller incarca json_proofhash_v120 pe ipfs la multihashformat (proofhash)
  • ErasureClient_Seller incarca date criptate pe ipfs la multihashformat (encryptedDatahash)
  • ErasureClient_Seller creeaza o postare folosind Feed.submitHash (proofhash)

Vanzarea unui post

  • Vanzatorul creeaza Escrow folosind CountdownGriefingEscrow_Factory.create () cu parametrii obligatorii
  • ErasureClient_Seller depune miza necesara folosind Escrow.depositStake ()
  • Cumparatorul depune plata necesara utilizand Escrow.depositPayment ()
  • ErasureClient_Seller preia PubKey_Buyer din contractul Erasure_Users
  • ErasureClient_Seller calculeaza encryptedSymKey_Buyer = PubKey_Buyer.encrypt (SymKey)
  • ErasureClient_Seller calculeaza json_selldata_v120 = JSON (encryptedSymKey_Buyer, multihashformat (proofhash))
  • ErasureClient_Seller finalizeaza escrow folosind Escrow.finalize () cu creeaza un acord de durere Acord
  • ErasureClient_Seller incarca json_selldata_v120 pe ipfs la multihashformat (sha256 (json_selldata_v120))
  • ErasureClient_Seller trimite json_selldata_v120 cumparatorului utilizand Escrow.submitData (multihashformat (sha256 (json_selldata_v120)))
  • ErasureClient_Buyer preia encryptedSymKey_Buyer din contractul Escrow
  • ErasureClient_Buyer preia datele criptate din ipfs.proofhash.encryptedDatahash
  • ErasureClient_Buyer preia datahash din ipfs.proofhash.datahash
  • ErasureClient_Buyer preia keyhash din ipfs.proofhash.keyhash
  • ErasureClient_Buyer calculeaza SymKey = PrivKey_Buyer.decrypt (encryptedSymKey_Buyer)
  • ErasureClient_Buyer calculeaza rawdata = SymKey.decrypt (encryptedData)
  • ErasureClient_Buyer valideaza potrivirile keyhash sha256 (SymKey)
  • ErasureClient_Buyer valideaza datahash potriviri sha256 (rawdata)

Dezvaluirea unui post

  • ErasureClient_Seller incarca SymKey pe ipfs la multihashformat (keyhash)
  • ErasureClient_Seller incarca date brute pe ipfs la multihashformat (datahash)

Contracte desfasurate

A se vedea ultima versiune.

Pachete

  • Sterge Abis
  • Erasure Crypto + IPFS Helpers
  • Client GraphQL
  • Mediu de dezvoltare locala