Dlaczego phishing w Web3 jest tak łatwy do zrealizowania?
Nie dlatego, że użytkownicy są zbyt głupi, ani dlatego, że hakerzy są tacy utalentowani.
A jednak - ten system od samego początku zrzucił „koszt zrozumienia bezpieczeństwa” na użytkownika.
Dwa dni temu jeden z braci w grupie miał problem.
Zatwierdziłem nowy protokół, wyglądało to całkiem normalnie, a interfejs użytkownika również był dość przekonujący.
W rezultacie, w ciągu mniej niż dziesięciu sekund, aktywa w portfelu zostały wyczyszczone.
W Web3 takie rzeczy są powszechne, poza tym, że musimy być ostrożni, nie mamy innego wyjścia.
Ale powiedzmy szczerze, teraz te umowy agencyjne, przekazywanie uprawnień i złożone wywołania,
Nie mówiąc o detalistach, nawet zwykli deweloperzy muszą się nad tym zastanowić.
Pytanie jest w rzeczywistości bardzo proste:
Dlaczego system wymaga, aby użytkownicy rozumieli kod, aby zapewnić bezpieczeństwo?
Logika Web3 jest teraz taka:
Twój podpis = autoryzacja
Treść autoryzacji = całkowicie publiczna
Koszt zrozumienia = obciążenie dla użytkownika
Wygląda na to, że jest "zdecentralizowane", ale oznacza to również, że ryzyko jest również zdecentralizowane.
Ostatnio przeglądałem białą księgę @MidnightNetwork i zauważyłem, że w rzeczywistości próbuje zmienić tę podstawową logikę.
Jego kluczowa technologia to nie tylko ZK (dowody zerowej wiedzy),
Ale to jest kombinacja trzech rzeczy:
wybiórcze ujawnienie + programowalne zabezpieczenie danych + podwójny model zasobów.
1. Wybiórcze ujawnienie (Selective Disclosure).
Na tradycyjnej blockchainie wszystkie dane są domyślnie publiczne. A logika Midnight jest odwrotna:
Domyślnie prywatne, tylko te części, które sam aktywnie zadeklarujesz, będą publiczne.
To opiera się na dowodach zerowej wiedzy (ZK). Prosto mówiąc: możesz udowodnić, że "masz rację", ale nie musisz mówić innym, "co dokładnie zrobiłeś".
Na przykład weryfikacja tożsamości: na tradycyjnej blockchainie musisz dostarczyć pełne informacje; na $NIGHT wystarczy, że udowodnisz, że "spełniam wymagania". To nie tylko prywatność, ale także granice bezpieczeństwa.
2. To programowalne zabezpieczenie danych (Programmable Data Protection).
To jest bardzo ważne, rozwiązując problem "nieprzezroczystości uprawnień".
Obecny problem z kontraktami polega na tym:
Podpisujesz, ale nie wiesz, jak twoje uprawnienia będą używane.
A projekt Midnight jest następujący:
Deweloperzy muszą jednoznacznie określić:
Jakie dane będą używane, a jakie będą publiczne. Innymi słowy, uprawnienia nie są już "domyślne", lecz muszą być "jawnie zadeklarowane".
To, co przynosi zmiany, to:
Atakujący mają trudności z ukrywaniem "ścieżki uprawnień" przez skomplikowaną logikę, ponieważ system sam w sobie nie pozwala na istnienie takiej niejasnej przestrzeni.
3. To jego model ekonomiczny: NIGHT + DUST.
Na tradycyjnej blockchainie za każdą transakcję musisz płacić Gas, a Gas jest publiczny. Oznacza to, że twoje ścieżki działania, czas, kwota mogą być śledzone.
Midnight rozdzielił tę kwestię:
NIGHT: publiczny token (zarządzanie, nagrody
DUST: zasoby prywatności (do transakcji)
DUST ma kilka kluczowych cech: nieprzenoszalność, degradacja, użycie tylko do wykonania operacji.
Oznacza to, że transakcje nie ujawniają już bezpośrednio działań finansowych. Inni nie mogą cofnąć się do twojej logiki operacyjnej przez opłaty i ścieżki.
Technicznie rzecz biorąc, te trzy punkty tworzą rzeczywiście zamkniętą pętlę:
Domyślnie dane są ukryte (ZK)
Uprawnienia muszą być zadeklarowane (programowalne zabezpieczenie)
Osłabienie ścieżki działania (mechanizm DUST)
Jeśli pewnego dnia w przyszłości zdarzeń typu "kliknij, aby opróżnić portfel" będzie mniej, to z dużym prawdopodobieństwem nie dlatego, że użytkownicy stali się mądrzejsi, ale dlatego, że system w końcu zaczął brać na siebie część odpowiedzialności.
