OKEx Academy Talks Recap: DCEP – Hur säkerställer DeFi-investerare säkerhet?

DeFi, en förkortning för decentraliserad finansiering, hade blivit ett motord i kryptovalutautrymmet sedan 2019. När DeFi växer går vi ett steg längre mot framtiden för ekonomi. Skapa en global och mer transparent ram för alla finansiella tjänster idag: sparande, lån, handel och mer.

OKEx Academy hade satt ihop ett online-webinar med några speciella gäster för att dela med sig av sina insikter om DeFi-säkerhet och hur DeFi-investerare kan se till att deras investeringar är säkra.

Den här artikeln guidar dig genom sammanfattningen av diskussionen.

Gästtalare:

Yu Guo – Grundare av SECBIT Labs

Dominik Teiml – ledande Ethereum-revisor för Certik

Zhengchao Du – Senior säkerhetsingenjör på Slowmist

Moderator:

Michael Gui – Boxmining

Michael: Decentraliserad ekonomi växer i snabb takt, för närvarande har vi mer än 800 miljoner dollar med krypto låst i DeFi Smart-kontrakt. Eftersom dessa kontrakt är decentraliserade måste skaparna se till att koden bakom dessa kontrakt är säker. Underlåtenhet att göra det kan leda till katastrofala hack – till exempel för mindre än två veckor sedan lyckades en hackare “stjäla” 25 miljoner dollar i krypto från dForce-kontrakt. Säkerhet från hack som är så viktig för att säkerställa en långsiktig tillväxt av DeFi. Lyckligtvis idag har vi en panel med säkerhetsexperter.

Börjar med ett kritiskt citat från en DeFi Critic "Jag lär mig bara om DeFi när ett projekt misslyckas och tappar pengar". Vad tror du är de största säkerhetsriskerna för decentraliserad finansiering?

SECBIT: DeFi är byggd på kod, som består av många moduler, som har utvecklats av olika team. Misförståelsen av grundläggande moduler, byggstenar skulle medföra större förluster. Gränssnittet för varje modul är inte lätt att klargöra, specificera eller formalisera.

Certik: Bortsett från off-chain-saker som säkerhet för nycklar, kapning av frontendar och / eller DNS-servrar, OpSec, etc. Jag tror att de största riskerna i kedjan är felaktig körning (Hegic bug) och interaktion med andra konton, nämligen : manipulerbara orakel (bZx-hack) och återinträdesattacker (Uniswap & Lendf.me hacka)

Slowmist: Decentraliserad ekonomi ger oss tre huvudfunktioner: interoperabilitet, programmerbarhet och komposibilitet. På grund av dessa tre funktioner kan vi kombinera alla typer av smarta kontrakt som att kombinera legoblock, vilket ger oss rikliga finansiella produkter och oändliga möjligheter. DeFi är dock ett så komplicerat system att riskerna kommer att förstärkas. Med ett annat ord, för det centraliserade finansiella systemet kan de möjliga riskscenarierna kontrolleras genom att arbeta med standarder och begränsa åtkomstbehörigheterna, medan för DeFi kan något av två kontrakt som uppfyller standarderna i avtalet kombineras, vilket innebär att många fler möjliga scenarier och varje nytt scenario medför potentiella nya risker. Och det viktigaste av allt, en egenskap hos en standard kan bli en defekt under alla omständigheter.

Michael: Kan vi någonsin uppnå fullständig säkerhet med DeFi?


SECBIT: Det är en helig gral. Det är omöjligt att nå målet, både teoretiskt och praktiskt. Varje säkerhet baseras på antaganden. Ju mer komplex systemet är, desto mer säkerhetsantaganden är beroende av. Men tillförlitligheten hos dessa säkerhetsantaganden är okänd. I många fall kan dessa säkerhetsantaganden lossna.

I teorin är definitionen av säkerhet ganska vag. Vi kan definiera specifik säkerhet, till exempel utan heltalsflöden. Men det är i allmänhet ofullständigt. Eftersom begreppet DeFi fortsätter att växa växer också betydelsen av säkerhet. Vi definierar inte ett fullständigt säkerhetsbegrepp.

Ekonomi är riskabelt. Konventionellt kommer vinsten från risktagande. Nu blandas de finansiella riskerna med beräkningskomplexitet och därmed är de kombinerade riskerna svårare att kontrollera. I praktiken är säkerheten svår att upptäcka, svår att verifiera. Det finns säkerhetsproblem som kan uppstå på olika nivåer, säkerhetsantagande, blockkedjor, virtuell maskin och kompilatorer, bibliotek, kodens logik, gränssnittet för tjänster. Ingen av dem är lätta att uppnå utan buggar.

En av de lovande funktionerna i DeFi är att de smarta avtalen är mycket komponerbara, även om de smarta avtalen utvecklades av olika team. Men vi har sett buggar som finns på gränssnitten – till exempel ERC777, ERC827, ERC 233. Kompositibiliteten kommer att göra systemet mer öppet och dynamiskt. Många traditionella tillvägagångssätt handlar om att göra det statiska systemet säkert inte skulle fungera för det nya, öppna, dynamiska och enorma systemet.

Certik: Säkerhet är en fråga om minskande avkastning. Vi kan aldrig vara säkra på att något logiskt resonemang är giltigt eftersom vi kan göra ett misstag i själva verifieringen, logikens paradox. På samma sätt kan vi aldrig vara 100% säkra på att något är säkert. Jag är dock mycket optimistisk att vi kan uppnå höga säkerhetsgarantier med rätt åtgärder. Omfattande och intensiva granskningar, formell verifiering, generösa bugbounties …

Den mer intressanta frågan är om dessa skalor. Kan vi hitta ett verktyg som automatiserar säkerheten? Ingen har uppnått det ännu; det är fortfarande en öppen fråga.

Slowmist: Fullständig säkerhet är omöjlig för alla produkter inklusive DeFi. Vi bör inse att säkerhet innebär motåtgärder i syfte att hackaren skulle kosta mycket mer än de fördelar han kan få. Och säkerhet är dynamisk, nya scenarier, nya tekniker och iteration av DeFi-produkter kan orsaka nya säkerhetsproblem, så var säker en gång för alla är inte möjligt.

Michael: Med nya programmeringsspråk antagna – Vyper (Ethereum), Haskell (Cardano) – tror du att detta kommer att hjälpa till med blockchain-säkerhet?

SECBIT: Vyper är ungefär som soliditet, de flesta av förbättringarna. Haskell, å andra sidan, är mer matematisk. Men som sagt är de största säkerhetsfrågorna från logiknivå, inte språknivå. Nya attacker är inte bara på språknivå och de kommer från hela blockchain-systemet, vilket är mycket komplicerat. Hackarna fortsätter att uppfinna nya attacker som vi aldrig har sett förut. De nya sårbarheterna är svåra att upptäcka med verktyg inbäddade i kompilatorer. Vi kan inte föreställa oss att attacker skulle förhindras automatiskt. Vi kommer att se fler sårbarheter rotade från logiknivån, även om språkverktygen förbättras. Koden måste granskas av experter.

Jag uppskattar arbetet från programmeringsspråkets community, där statisk typning hindrar programmerare från att göra dumma misstag. Till exempel, språket som föreslås av Facebook, med namnet MOVE, körs på Libra-kedjan. Det lånar idén från RUST of "flytta kontra kopia", "ägande och upplåning". Det statiska systemet ser till att den totala mängden digitala tillgångar är oförändrad, så att varken utvecklare eller hackare kan göra det.

Å andra sidan behöver vi formella specifikationer eller formella verifieringar för att säkerställa att "korrekthet" i viss utsträckning. Inte 100%, men maximal säkerhet beror vi bara på matematik. Verktygen och praxis är dock fortfarande på väg. Jag föreslår arbetet från CertiK-teamet.

Certik: Förmodligen. Jag tror att vi underskattade säkerheten i de tidiga faserna i vårt ekosystem. Vi tog arkitektoniska beslut som är extremt svåra att ändra efteråt. EVM har dynamiska hopp, vilket gör någon statisk analys extremt besvärlig, och det finns knappast fördelar alls. Soliditet sedan 0,5, enligt min mening, har blivit säkerhetsfokuserad, vilket vänder om något av det som var bakom synen dåliga språkdesignbeslut.

Vyper är bättre, men tyvärr är den inte produktionsklar för stora projekt och saknar många viktiga funktioner.

Jag är faktiskt upphetsad över DeapSEA, ett EVM-riktat programmeringsspråk som försöker övervinna dessa EVM-pålagda utmaningar och möjliggör enklare formell verifiering av Ethereums smarta kontrakt. Det utvecklas av Certik och Yale, och vi kommer snart att höra mer om det.

Även om det är på en längre horisont, tror jag att övergången till eWASM kommer att vara bra för säkerheten. Wasm är inte bara mer sek-fokuserad, men vi kommer också att kunna utnyttja dess ekosystem av säkerhetsverktyg.

Slowmist: Dessa språk har sina egna säkerhetsfunktioner. Till exempel utför Vyper många överflödskontroller som gäller för aritmetiska beräkningar, och funktionella språk som Haskell kan hjälpa till med formell verifiering. Men säkerhet är flerdimensionell, och bortsett från säkra funktioner för programmeringsspråket är säkerheten för produktutveckling och affärslogik lika viktig som språk.

Michael: Vad är det mest förödande kontohacket du någonsin har stött på? Någon personlig upplevelse som du kan dela?

SECBIT: Nyckel stulen. Några hundra ETH från en av våra kunder. Men fler fall som kom mot oss för att få hjälp gick förlorade. Folk glömde bara minneskoden eller lösenordet. Det är ännu ett dilemma i säkerhetsvärlden. Hur kunde vi komma ihåg ett säkert lösenord? Ett svagt lösenord är lätt att komma ihåg men med låg entropi. Det är sårbart för brutala tvingande attacker. (t.ex. Rainbow Table Attack); medan ett mer slumpmässigt lösenord är dödligt svårt att komma ihåg. Skriva det på ett papper? Vi kanske glömmer tidningen den andra morgonen.

Certik: Jag har turen att inget av de projekt jag någonsin arbetat med hackades.

Slowmist: Ethereum Black Valentine’s Day, utsedd av vårt team. Denna säkerhetsincident observerades första gången i mars 2018. Hackaren hade stulit etherna och andra tokens från användarens plånbok med det automatiska skriptet i två år innan vi först hittade det. Vid det här laget stal cirka 54864 ETH med det nuvarande värdet på 10 miljoner dollar från 6679 plånböcker. Detta hack är mycket imponerande med tanke på dess inflytande och varaktighetstiden.

Micahel: Om det fanns ETT säkerhetstips för våra tittare – tipset som du tror kommer att spara våra tittare potentiellt tusentals dollar – vad skulle det vara?

SECBIT: Öva dig på att komma ihåg minneskoden; Jag vet att det är svårt. Det är extremt svårt. Men lita på mig, det är det enda sättet att skydda dina digitala tillgångar. Fråga tjänsteleverantörer hur mycket budget de har spenderat på säkerhet och riskkontroll, vilka motåtgärder de har vidtagit, och läs material som granskningsrapport, systemdesigndokument på webbplatsen. Jag tycker att leverantörerna som seriöst driver ett företag på blockchain bör ha strikta policyer för det.

Certik: Läs rapporter. Läs en granskningsrapport innan du använder någon decentraliserad applikation. Ibland ser vi sårbarheter som pekas ut under revisioner, aldrig korrigerats och senare utnyttjas. Kontrollera om den senast publicerade rapporten nämner några kritiska eller betydande sårbarheter.

Slowmist: För personliga tillgångar föreslår vi att du skyddar din privata nyckel från Internet.

För kryptovalutor i DeFi-produkter föreslår vi att användaren bör ta hänsyn till både riskkontrollmekanismen och godkännandet av säkerhetsrevisionsrapporter från ett enastående tredjeparts säkerhetsteam när de väljer DeFi-produkter och plattformar. Dessutom är säkerheten dynamisk så alla bör kontrollera säkerhetsbakgrunden för defi-produkter och plattformar från och med då.

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me
Like this post? Please share to your friends:
Adblock
detector
map