Permit2
Kontrakt Uniswap Labs do scentralizowanego zarządzania zatwierdzeniami tokenów. Użytkownik raz zatwierdza kontrakt Permit2, a potem podpisuje wiadomości upoważniające poszczególne protokoły — z limitem kwoty i terminem wygaśnięcia.
Jak działa Permit2
Model dwustopniowy: użytkownik jednorazowo wysyła onchain approve do kontraktu Permit2. Potem dla każdej interakcji z protokołem podpisuje wiadomość Permit2 autoryzującą konkretny protokół do wydania tokenów pod konkretnymi warunkami — limit kwoty, deadline.
Czyni powtarzające się interakcje tańszymi (brak nowych transakcji approve) i bardziej kontrolowanymi (każde pozwolenie ma wygaśnięcie). Ale przenosi ciężar bezpieczeństwa na sygnatury — użytkownicy muszą weryfikować co podpisują bardzo uważnie.
Dokumentacja Uniswap wprost ostrzega: złośliwe zatwierdzenie sygnatury może umożliwić wydanie tokenów przez atakującego.
Permit2 to warstwa autoryzacji, nie bridge ani router swapów. Phishing ataki często polegają na skłonieniu ofiary do podpisania pozornie niewinnej wiadomości Permit2 — która w rzeczywistości daje dostęp do wszystkich tokenów zatwierdzonych dla Permit2.
Najczęstsze błędne założenia
- Permit2 to nie swap router ani bridge — to warstwa zatwierdzania.
- Wygaśnięcie allowance w Permit2 nie działa automatycznie wstecz dla już przyznanych uprawnień — musi je odwołać użytkownik.
- Jeden złośliwy podpis Permit2 może dać atakującemu dostęp do wszystkich tokenów, dla których approve do Permit2 jest aktywny.
