Vad är Race Attack?
En Race Attack är när någon sänder ut två motstridiga kryptotransaktioner nästan samtidigt i hopp om att fel transaktion accepteras först. Det är ett klassiskt trick mot handlare som accepterar zero conf betalningar. Tänk dig att skicka två checkar från samma konto och hoppas att kassören behandlar den du föredrar.
”Race Attack needs Replace by Fee.” Inte helt korrekt. Även om RBF är relaterat kan en Race Attack ske utan uttryckliga ersättningsregler, och därför skiljer den sig från en Transaction Replacement Attack.
Hur Race Attack fungerar
Föreställ dig någon som betalar i en butik med krypto vid disken. Personen vill ha kaffet men behålla mynten. Så här går det till.
- Steg 1: Angriparen skapar två transaktioner som använder samma myntinmatningar men har olika mottagare.
- Steg 2: De skickar en till handlaren och samtidigt sprider de den andra till olika nodes i hopp om att den sprids snabbare.
- Steg 3: Handlaren ser den första transaktionen och betraktar köpet som betalt och lämnar över varan.
- Steg 4: Gruvarbetare bekräftar en av de motstridiga transaktionerna. När en block publiceras förkastar nätverket den andra.
- Steg 5: Om den bekräftade transaktionen är angriparens version får handlaren inget betalt och lär sig en läxa.
Ja, det är så pass enkelt och tajmingen avgör.
Varför Race Attack spelar roll
Vad händer om någon försöker detta?
- Fördel: Att känna till Race Attack hjälper dig sätta rimliga betalningsregler så att du inte lämnar över varor för ett löfte som inte kommer att gå igenom.
- Perspektiv: Det är en variant av en bredare Double Spending Attack, men kräver inte dyr utrustning eller stora resurser.
- Relevans: Du stöter ofta på ämnet i kassawallets, e handel och alla tjänster som överväger zero conf betalningar.
Om du säljer något som skickas eller har verkligt värde, vänta på en eller flera transaction confirmations innan du levererar. För små köp i butik, sätt gränser och använd wallets som varnar för konflikter.
Kännetecken för Race Attack
Vad som särskiljer en Race Attack:
- Omedelbar: Den sker innan första blockbekräftelsen.
- Motstridig: Två transaktioner använder samma inputs; bara en kan bli bekräftad.
- Hastighet: Spridning i nätverket och vilka gruvarbetare som väljer transaktionen avgör vinnaren, inte dyr hårdvara.
- Olika: Den kräver inte 51% attacks eller kontroll över gruvdrift.
Variationer
Race Attack har några varianter du kan stöta på:
- Classic: Två motstridiga transaktioner sänds nästan samtidigt.
- Finney: En miner förminerar ett block med en spendering, betalar sedan en handlare och publicerar därefter blocket.
- Vector76: Kombinerar element av förminerade block och tajming för att lura börser.
- RBF: Liknande mål men förlitar sig på avgiftsbaserade ersättningsregler istället för ren spridningskapplöpning.
Nätverkstopologi spelar roll. Angripare kan öka sina chanser om de kontrollerar många peers eller använder fejkade identiteter, vilket är anledningen till att Sybil attacks ofta kommer upp i diskussioner om Race Attack försvar.
Exempel
En bedragare betalar en kiosk med en zero conf överföring, tävlar sedan ut en motstridig transaktion till gruvarbetare och vinner, vilket lämnar kiosken utan betalning även om skärmen kort visade betalt.
Kul fakta
Race Attack diskuterades redan i de tidiga Bitcoinforum och Satoshis gamla råd att vänta på flera bekräftelser är fortfarande det säkra rådet. Rolex möter Reddit trådar.
Sammanfattning
På en rad: en Race Attack är ett tajmingspel riktat mot zero conf, så lite tålamod gör att problemet försvinner.
