Sikkerhedsrevision af smarte kontrakter: verificering af DeFi (Pavlo Farb)

Kildeknude: 1771443

Når de først er implementeret, kan mange smarte kontrakter ikke nemt ændres. Så det ville være klogt at se nærmere på potentielle svagheder, udnyttelser og indbyggede begrænsninger, når det ikke er for sent til ændringer. Men se ud over koden.

Smart kontrakter er uforanderlige stykker kode, der udfører bestemte operationer i blockchain-netværk eller forbinder forskellige blockchains sammen. Økosystemet for smarte kontrakter er i fremmarch. Nogle gange, når nye muligheder for hurtig udvikling blinker før
blockchain & cryptocurrency folks øjne, er sikkerheden udregnet. Det kan være en kæmpe fejl. 

Jeg vil gerne give anledning til din interesse for smart kontraktsikkerhed og fortælle et par ord om sikkerhedsrevision, så du ved, hvad du skal bede om. I denne sammenhæng betyder en revision meget mere end blot at kontrollere selve koden, men at studere interaktion mellem kontrakter,
centrale ledelsesspørgsmål, driftssikkerhed hos udviklere, der understøtter kontrakterne osv. Få hele sikkerhedsbilledet med revisionen. Hvis det udføres korrekt, hjælper det med at reducere omkostninger, risici for økonomiske tab og mange andre problemer. 

Sådan ser processen med en smart kontraktrevision ud udført i et team med sikkerhedsingeniører:

Ud fra min erfaring skyldes mange hændelser flere mindre sikkerhedssvagheder snarere end én fatal fejl. Så i starten er det værd at se på smarte kontrakter sammen med et større system, de tilhører. Forståelse og formulering
risici og unikke trusselsvektorer, der påvirker kontraktens konsistens, er også et must i denne fase.

Det næste skridt er en rigtig fest for dem, der kan lide at følge med i den seneste udvikling. Da blockchain-industrien hurtigt ændrer sig, skal sikkerhedsbevidste teams kende de seneste sårbarheder, afbødninger og værktøjer i den virkelige verden for at være med i billedet. Grav og udforsk.

Pansret med resultaterne kan vi gå over til at studere designfejl og use cases. Lær, hvad der kan gå galt. For eksempel tjekker vores ingeniører på dette stadium, hvordan kontrakten opfører sig, dens indgangspunkter, offchain-visninger og interaktionerne mellem kontrakter. Der
bør ikke være smertefulde overraskelser.

Så er det tid til mere sofistikeret arbejde: gennemgang af kryptografisk design og implementering, sikkerhedskontroladfærd, infrastruktur og drift. Dette kedelige arbejde skal resultere i fravær af sikkerhedsoverraskelser i disse områder. Til sidst, a
kombination af kryptografiske primitiver og deres implementering valgt af udviklerne skal svare til de ønskede sikkerhedsegenskaber. Sikkerhedskontrol skal effektivt virke mod genindtræden, gentagelsesangreb, lammelsesangreb og ikke efterlade nogen blinde
pletter og ubehandlede kantsager. Sikkerhed og pålidelighed af den omgivende infrastruktur og drift bør være verificeret og tillidsfuld.

Når alt er gjort, får udviklere en lang liste over problemer at arbejde på. Men hvad jeg kan lide endnu mere, de kan få rettelsesråd (spørg om det, hvis dit revisionsteam ikke mente det) relateret til fundne problemer og målrettet mod forbedring af generel kodekvalitet, vedligeholdelse,
og brugeroplevelse. Så i det lange løb lærer udviklere ikke kun om svagheder, men forstår, hvordan de kan fjernes. 

Jeg håber, du lærer mere om smarte kontrakters sikkerhedsrevision, og hvordan det hjælper med at sikre transaktionskonsistens i DeFI.

Tidsstempel:

Mere fra Fintextra