Stealth adresy i klucze podglądu: prywatne płatności w Web3 zgodne z prawem (ERC‑5564, ERC‑4337, zk‑KYC)
Stealth adresy i klucze podglądu: prywatne płatności w Web3 zgodne z prawem (ERC‑5564, ERC‑4337, zk‑KYC)
Czy da się wysłać prywatny przelew na Ethereum bez miksera, nie łamiąc regulacji i bez psucia UX? Nowe standardy – ERC‑5564 (Stealth Addresses), klucze podglądu oraz połączenie z ERC‑4337 i zk‑KYC – pozwalają budować płatności, wypłaty DAO, airdropy czy wypłaty wynagrodzeń tak, by odbiorca zachował prywatność, a nadawca i organizacja mogli spełnić wymogi compliance.
Co to są stealth adresy (ERC‑5564) i po co je stosować?
Stealth adres to jednorazowy adres generowany deterministycznie dla odbiorcy, ale widoczny publicznie tylko jako „nowe konto”. Dzięki kryptografii krzywych eliptycznych nadawca i odbiorca potrafią się „dogadać” co do klucza, bez ujawniania powiązań on-chain.
Jakie elementy wchodzą w grę?
- Meta‑adres odbiorcy – publiczny identyfikator (np. ENS + rekord z kluczem skanowania), który można bezpiecznie udostępniać płatnikom.
- Klucz podglądu (viewing key) – pozwala skanować łańcuch i wykrywać, które anonimowe adresy należą do nas, bez możliwości wydawania środków.
- Klucz wydawania (spending key) – służy do spendowania środków ze stealth adresu, gdy je wykryjemy.
- Ephemeralny klucz nadawcy – tymczasowy klucz użyty do wyprowadzenia wspólnego sekretu (Diffie–Hellman) i wygenerowania jednorazowego adresu.
Krok po kroku: przepływ płatności stealth
- Nadawca pobiera meta‑adres odbiorcy (np. z ENS) i tworzy efemeryczny klucz.
- Za pomocą wymiany DH wylicza wspólny sekret i z niego wyprowadza jednorazowy stealth adres.
- Publikuje minimalny „sygnał” (np. event log) oraz wysyła środki na stealth adres.
- Portfel odbiorcy używa klucza podglądu do skanowania zdarzeń i rozpoznaje własne wpłaty.
- Odbiorca wydaje środki kluczem wydawania – opcjonalnie korzystając z paymastera (ERC‑4337), by nie „spalić” prywatności przy doładowaniu gazu.
Koszty i skalowanie
- Skanowanie: portfel sczytuje eventy z kontraktu sygnałów; dzięki filtrom Bloom i indeksom RPC koszt po stronie użytkownika jest niski, a po stronie węzła zależny od wolumenu.
- Opłata za sygnał: pojedynczy event to kilka tysięcy gas – zwykle ułamek kosztu samego transferu.
- Warstwy 2: na rollupach (Arbitrum/Optimism/zk) koszty maleją, a skanowanie bywa szybsze – to dobry kierunek do wdrożeń masowych.
Integracja z portfelami i DeFi: jak nie zepsuć prywatności gazem
ERC‑4337 i paymasterzy
Najczęstszy błąd to doładowanie stealth adresu z „głównego” konta – natychmiast zdradza to powiązanie. Rozwiązania:
- Gasless via Paymaster – sponsor transakcji (DAO, pracodawca, dApp) pokrywa gaz, by odbiorca nie musiał zasilać nowego adresu.
- Pakietowanie (bundlers) – łączy wiele operacji AA w jedną, utrudniając łączenie heurystyk.
- Session keys – czasowe uprawnienia dla dAppów eliminują konieczność ujawniania głównego klucza.
Zastosowania praktyczne
- DAO i granty: wypłaty, które nie eksponują listy beneficjentów on-chain.
- NFT airdropy: wysyłka rzadkich NFT bez narażania odbiorców na phishing i scraping.
- Wynagrodzenia Web3: payroll z zgodnością Travel Rule (dowód tożsamości poza łańcuchem, prywatność on-chain).
- DeFi: prywatne zabezpieczenia/pozycje, by ograniczyć MEV i frontrunning na wrażliwych strategiach.
Porównanie metod prywatności płatności on-chain
| Mechanizm | Poziom prywatności | UX | Koszt | Ryzyko regulacyjne |
|---|---|---|---|---|
| Wymiana CEX → wypłata | Niska–średnia (CEX wie wszystko) | Wysoki (znajome) | Niski | Wysokie (KYC/Travel Rule w CEX) |
| Miksery (pool‑based) | Wysoka (jeśli duży anonimity set) | Średni | Średni–wysoki | Wysokie (sankcje/OFAC w niektórych jurysdykcjach) |
| Stealth adresy (ERC‑5564) | Średnia–wysoka (brak oczywistych linków) | Wysoki (jak zwykły transfer) | Niski–średni | Niskie–średnie (brak wspólnych pul, możliwe zk‑KYC) |
| Shielded DeFi (np. prywatne zestawy UTXO/ZK) | Bardzo wysoka | Średni | Średni–wysoki | Średnie (zależnie od konstrukcji i jurysdykcji) |
Ryzyka deanonymizacji i jak je ograniczać
- Finansowanie gazu: nie doładowuj stealth adresu z głównego portfela. Używaj paymastera, airdropu gazu z wielu źródeł lub mostów z publicznymi pulami.
- Ścieżka wypłat: wypłaty z wielu stealth adresów sklejają się w heurystykach, gdy trafiają do jednego walleta – stosuj time/amount randomization i warstwy 2.
- Mempool: publiczne mempoole zdradzają zależności; rozważ prywatne kanały do builderów/relayerów.
- Fingerprinting aplikacji: identyczne wzorce gas/nonce mogą zdradzać tożsamość – korzystaj z middleware różnicującego parametry.
- Warstwa aplikacji: nie publikuj linków ENS/stealth w tym samym miejscu co główny adres (OSINT!).
Regulacje & Prawo: prywatność a zgodność
Stealth adresy nie wymagają wspólnej puli środków, więc zmniejszają ryzyko powiązań z niepożądanymi podmiotami. Jednocześnie dają możliwość zgodności:
- zk‑KYC/zk‑Attestations: odbiorca/kontrahent ujawnia dowód „jestem z listy dozwolonych / nie jestem na liście sankcyjnej” bez ujawniania tożsamości. Technicznie: dowód członkostwa/wykluczenia w strukturze Merkle.
- Selective disclosure: w razie audytu można ujawnić viewing key lub podpisane potwierdzenia przychodów – bez klucza wydawania.
- Travel Rule: VASP może przechowywać metadane odbiorcy poza łańcuchem, a on‑chain używać stealth adresów, minimalizując ślad publiczny.
Studium przypadku: DAO z prywatnymi grantami na L2
- Cel: 120 grantów kwartalnie, transparentne budżety DAO, prywatni beneficjenci.
- Setup:
- Beneficjenci publikują meta‑adres ENS z kluczem podglądu.
- Multisig DAO wysyła granty na Arbitrum, używając paymastera do pokrycia gazu.
- Odbiorcy generują sesyjne klucze AA i deponują środki do własnych portfeli w losowych odstępach czasu.
- Wyniki (pilotaż 3 mies.):
- Średni koszt operacji per grant: ~0,35–0,60 USD (wliczając event + transfer).
- Brak wykrytych powiązań między grantami a głównymi adresami beneficjentów w zewnętrznych heurystykach (próba 30 przypadków).
- Poziom satysfakcji UX: 4,6/5 (ankieta wśród 42 beneficjentów).
Narzędzia & Kalkulatory
- Biblioteki: implementacje stealth/scan (np. klienci JS do kontraktów sygnałów), integracje z ENS recordami.
- Paymastery AA: moduły do sponsorowania gazu na L2; sprawdź konfigurację limitów i polityki AML.
- Kalkulator skanowania: oszacuj koszt RPC: liczba bloków × rozmiar logów × filtr Bloom.
- Monitor prywatności: skrypty do wykrywania korelacji amount/time/gas – testuj swoje przepływy przed produkcją.
Roadmap i ekosystem
- Standaryzacja eventów sygnału – ułatwia zgodność portfeli (wspólne topiki i formaty).
- Wallet‑native scanning – skan w tle z minimalnym zużyciem danych, w tym na mobile.
- Integracja z prywatnymi mempoolami – mniejsza ekspozycja na MEV i linkowanie transakcji.
- zk‑Attestations w mainstreamie – prywatne dowody zgodności jako standard w wypłatach Web3.
FAQ & Support
- Czy mogę używać stealth adresów na L1? Tak, ale L2 zwykle obniża koszty i poprawia UX.
- Co jeśli zgubię klucz podglądu? Środków nie tracisz, ale trudniej wykryć nowe wpłaty – rozważ kopie zapasowe i sejf sprzętowy.
- Czy to legalne? Sam mechanizm jest neutralny; spełnienie lokalnych wymogów zależy od procesu (np. zk‑KYC, Travel Rule).
Wnioski i następne kroki
Stealth adresy + viewing keys dostarczają brakującego ogniwa między prywatnością a zgodnością. Dają praktyczną alternatywę dla mikserów, poprawiają bezpieczeństwo użytkowników i otwierają nowe modele wypłat w DeFi, NFT i DAO. Jeśli budujesz produkt Web3, zacznij od pilotażu na L2: wdroż kontrakt sygnałów, włącz paymastera i przetestuj przepływy pod kątem korelacji amount/time/gas.
CTA: Chcesz pilotaż dla DAO lub payrollu Web3? Napisz do nas – pomożemy dobrać standardy, narzędzia i polityki zgodności.
