Philip DiSarro prijavljuje dva kritična nedostatka u Aiken implementaciji CIP-113
Ažurirani benchmarkovi koje je objavio osnivač Anastasia Labs pokazuju niže troškove izvršavanja za Plutarch kroz scenarije istaknute u usporedbi. Javne tehničke pojedinosti o dvjema prijavljenim ranjivostima još nisu objavljene.
By SongMarketCap
Philip DiSarro, osnivač i CEO Anastasia Labs te autor CIP-143, rekao je 24. srpnja da je identificirao dvije kritične ranjivosti tijekom pregleda Aiken implementacije Cardano CIP-113 programabilnog okvira za tokene. U istoj niti objavio je ažurirane benchmarkove koji uspoređuju Aiken kodnu bazu s izvornom Plutarch implementacijom koju su razvili DiSarro i tim Input Output. Otkrivanje dolazi dok je CIP-113 još uvijek u fazi Last Check i njegova se implementacija nastavlja kroz sigurnosni pregled.
Plutarch bilježi niže troškove u CIP-113 benchmarkovima
Objavljena datoteka s benchmarkovima uspoređuje dvije implementacije u okviru Cardano maksimalnog transakcijskog budžeta od 10 milijardi CPU jedinica i 14 milijuna memorijskih jedinica. I Aiken i Plutarch na kraju se kompiliraju u Untyped Plutus Core, kod koji izvršavaju Cardano čvorovi.
Plutarch je zabilježio nižu ukupnu potrošnju CPU resursa i memorije u svakom od pet istaknutih scenarija.
U standardnom testu prijenosa, Aiken je koristio 1.19 puta više CPU resursa i 1.17 puta više memorije nego Plutarch. Najveća razlika među prikazanim scenarijima pojavila se u testu koji kombinira akciju zapljene, vanjsku skriptu i 50 ulaza s javnim ključem, gdje je Aiken potrošio 3.23 puta više CPU resursa i 2.36 puta više memorije.
Obje su implementacije ostale unutar Cardano transakcijskih ograničenja u testu s 16 swapova $NIGHT DEX. Plutarch je koristio 6.66% dostupnog CPU budžeta i 11.68% memorijskog budžeta, u usporedbi sa 7.59% i 15.25% za Aiken.
DiSarrova objava uključila je i linearne projekcije o tome koliko se elemenata može uklopiti u jednu transakciju. Procjene su smjestile Plutarch na 658 ulaza u usporedbi sa 162 za Aiken, 472 izlaza u usporedbi s 334, 36,489 tokena u usporedbi s 1,661, te 527 politika u usporedbi sa 160. Ove brojke su projekcije kapaciteta skripte izvedene iz testiranih troškova izvršavanja, a ne izmjereni throughput na mainnetu.
Usporedba kompajliranih skripti dala je manje Plutarch skripte u šest od sedam kategorija. Skripta directoryNodeSpending imala je 331 bajt u Plutarch i 1,698 bajtova u Aiken. Iznimka je bila programmableLogicGlobal, gdje je Aiken proizveo skriptu veličine 3,157 bajtova u usporedbi s 3,437 bajtova za Plutarch.
CIP-113 dodaje programabilna pravila Cardano izvornoj imovini
CIP-113 predlaže okvir za dodavanje programabilnih pravila provjere Cardano izvornoj imovini bez potrebe za promjenom registra ili hard forkom. Izdavatelji bi mogli definirati uvjete koji se izvršavaju tijekom prijenosa tokena, mintanja i spaljivanja.
Pravila mogu uključivati popise dopuštenih, popise zabranjenih, ograničenja prijenosa, vremenska zaključavanja te opcijske funkcije zamrzavanja ili zapljene. Okvir je namijenjen stablecoinima, tokeniziranim vrijednosnim papirima i imovini iz stvarnog svijeta koja zahtijeva kontrole nad vlasništvom i kretanjem.
Prema predloženoj arhitekturi, programabilni tokeni drže se na zajedničkoj adresi pametnog ugovora, dok se vlasništvo predstavlja preko stake vjerodajnica. On-chain registar povezuje svaku politiku tokena s njezinim pravilima prijenosa, logikom izdavanja i svim ovlaštenim kontrolama trećih strana.
Novčanici bi trebali razrješavati stake vjerodajnice kako bi ispravno prikazivali stanja. Decentralizirane mjenjačnice, indeksatori, exploreri i druge aplikacije također bi trebali podržati dodatni proces validacije prije nego što korisnici mogu interagirati s programabilnim tokenima kroz postojeću Cardano infrastrukturu.
Aiken i Plutarch nude različite razvojne pristupe dok se kompiliraju u isti on-chain format koda. Cardano dokumentacija za programere predstavlja Aiken kao pristupačnu početnu točku s integriranim testiranjem i namjenski oblikovanom sintaksom. Plutarch je ugrađeni jezik temeljen na Haskellu koji programerima daje detaljniju kontrolu nad generiranim kodom i troškovima izvršavanja.
DiSarro je autor CIP-143, Interoperable Programmable Tokens, te je radio s timom Input Output na njegovoj izvornoj Plutarch referentnoj implementaciji. Repozitorij Cardano Foundationa navodi da su trenutačni Aiken validatori migrirani iz te implementacije i prilagođeni za širi CIP-113 okvir.
Njegovo izravno sudjelovanje u izvornoj arhitekturi i kodnoj bazi smješta novu usporedbu benchmarkova u razvojnu povijest projekta. CIP-143 je sada označen kao neaktivan nakon što je uklopljen u kandidata CIP-113, koji ostaje u fazi pregleda Last Check kod CIP urednika.
Dvije prijavljene ranjivosti čekaju tehničku objavu
DiSarro je rekao da je njegov pregled Aiken implementacije otkrio dvije kritične ranjivosti koje su propuštene tijekom procesa audita. Njegova nit nije identificirala pogođeni kod, moguće vektore napada, potencijalni utjecaj niti status sanacije.
Repozitorij već sadrži javne nalaze iz početnog audita, uključujući dva zatvorena issuea označena kao kritična. Issue 56 opisao je put kojim bi novoizdani tokeni mogli izbjeći programabilno skrbništvo tijekom radnje treće strane. Issue 64 bavio se mogućom kontaminacijom nepovezanih UTxO-ova kroz istu administrativnu funkciju.
Ti su nalazi prijavljeni tijekom početnog audita i ne mogu se identificirati kao dvije ranjivosti za koje je DiSarro kasnije rekao da ih je pronašao bez daljnje tehničke objave.
Sigurnosne zabrinutosti također su iznesene u raspravi o pregledu CIP-113. Jedan je suradnik 20. srpnja rekao da je propušteno više ranjivosti visoke ozbiljnosti te da su neke predložene promjene upotrebljivosti uvele dodatne sigurnosne probleme. Tijekom naknadnog CIP pregleda sudionici su se složili da bi sljedeći korak trebao uključivati obuhvatniji audit dok prijedlog ostaje u fazi Last Check.
Repozitorij Cardano Foundationa navodi da su nalazi iz početnog audita i naknadnog reaudita sanirani na glavnoj grani. Međutim, konačno izvješće o auditu još nije objavljeno, a repozitorij označava implementaciju kao neprikladnu za produkcijsku upotrebu s pravom imovinom dok se izvješće, šire testiranje i daljnji stručni pregled ne dovrše.
Prije nego što implementacija CIP-113 može napredovati prema implementacijama s pravom imovinom, tri konkretna ishoda još su otvorena: objava konačnog izvješća o auditu, objava i sanacija dviju ranjivosti koje je prijavio DiSarro te dovršetak šireg sigurnosnog pregleda zatraženog tijekom CIP procesa. Ti će ishodi odrediti koje će promjene koda i specifikacije biti uključene prije nego što se prijedlog spoji i implementacija razmotri za produkcijsku upotrebu.