Kryptocenter – miejsce, gdzie znajdziesz wszystko, czego potrzebujesz, by zrozumieć kryptowaluty

Airdropy & Giveaway’e

Airdropy 2.0: zkKYC i Proof‑of‑Personhood bez KYC – jak zrobić zgodny z AML, odporny na Sybil airdrop na L2

Airdropy 2.0: zkKYC i Proof‑of‑Personhood bez KYC – jak zrobić zgodny z AML, odporny na Sybil airdrop na L2

Kategorie: Airdropy & Giveaway’e, Bezpieczeństwo, Regulacje & Prawo, Web3 & DAO, Portfele (Wallets)

Wstęp: czy da się rozdawać tokeny bez wycieku danych?

Gwałtowny wzrost liczby Sybil-farm, rosnące wymogi AML/CFT i presja na ochronę prywatności stawiają projekty Web3 pod ścianą. Czy można przeprowadzić airdrop, który jest jednocześnie zgodny z regulacjami i nie zbiera danych osobowych? Odpowiedź brzmi: tak — dzięki zkKYC, anonimowym poświadczeniom i proof‑of‑personhood opartym o zero‑knowledge proofs na L2.

Dlaczego „stare” airdropy są dziś nie do utrzymania

Tradycyjne airdropy (snapshot → lista → claim) cierpią na trzy kluczowe problemy:

  • Sybil: jedna osoba może kontrolować setki adresów, zawyżając alokację.
  • Ryzyko prawne: rosną oczekiwania w zakresie weryfikacji użytkownika i sankcji geograficznych.
  • Prywatność: KYC zrywa z ethos Web3 i odstrasza technicznych użytkowników.

Zamiast pełnego KYC, projekty wykorzystują dowody wiedzy zerowej do potwierdzenia spełnienia warunków — bez ujawniania danych źródłowych.

Co to jest zkKYC i jak działa w airdropach

zkKYC to parasolowy termin dla rozwiązań, w których użytkownik uzyskuje poświadczenie (credential) od wydawcy (issuer), a następnie generuje dowód ZK potwierdzający, że spełnia politykę (np. „nie jest z kraju X”, „jest pełnoletni”, „unikalny człowiek”) bez ujawniania tożsamości.

Minimalny model architektury

  • Issuer: zaufany wydawca credentiali (np. dostawca eID, uczelnia, weryfikator zgodności).
  • Holder: użytkownik przechowujący credential w portfelu (np. smart wallet z ERC‑4337).
  • Verifier: kontrakt airdropu, który akceptuje dowód ZK i zapobiega podwójnym roszczeniom (nullifiers).

Dowód ZK często zawiera nullifier — kryptograficzny „odcisk palca” instancji credentialu pozwalający odrzucić drugi claim tej samej osoby, bez ujawnienia jej klucza czy tożsamości.

Wzorce wdrożenia: od „badges” do anonimowych credentiali

Wzorzec Jak działa Prywatność Koszt (L1/L2) Ryzyka / Uwaga
Sismo‑style Badges Użytkownik posiada dowód przynależności lub historii on‑chain; generuje ZK‑proof bez ujawniania adresu źródłowego. Wysoka (ukrywa adres źródłowy) Niskie na L2 Wymaga ostrożnego doboru grup i limitu na „list leakage”.
Polygon ID / anon. credentials Wydawca wystawia credential (np. „18+”, „non‑US”). Użytkownik prezentuje selektywnie atrybuty w ZK. Bardzo wysoka (selektywne ujawnianie) Niskie/średnie na L2 Wymaga kanału dystrybucji credentiali i polityki odwołań.
Semaphore / RLN (Rate‑Limit Nullifier) Dowód unikalności i ograniczenie liczby roszczeń w czasie (1 osoba → 1 claim/okres). Wysoka Niskie Dobór okna czasowego i parametrów anty‑farmowych kluczowy.
zkEmail / zkPass‑style Dowód posiadania konta e‑mail lub statusu (np. staż konta) bez ujawniania adresu. Średnia–wysoka Niskie Zależność od dostawcy e‑mail; ryzyko automatyzacji farm na jednorazowych skrzynkach.
World‑ID‑style PoP Proof‑of‑Personhood dostarczany przez zewnętrzny system; kontrakt akceptuje ZK‑dowody unikalności. Wysoka (on‑chain) Niskie na L2 Kontrowersje dot. źródła PoP; sprawdź warunki użycia i jurysdykcję.

Projekt airdropu z zkKYC: plan działania 0 → 1

Krok 1: Polityka i granice ryzyka

  • Zdefiniuj cele: wzrost aktywnych adresów vs. głęboka adopcja produktu.
  • Określ kryteria zgodności (np. wykluczenia sankcyjne, minimalny wiek, regiony).
  • Wybierz wzorzec ZK (Sismo/Polygon ID/Semaphore) oraz L2 (np. rollup EVM) dla niskich kosztów gas.

Krok 2: Model tożsamości i anty‑Sybil

  • Połącz proof‑of‑uniqueness (Semaphore/RLN) z risk‑signals poza łańcuchem (powierzchnia aktywności, staż portfela) mapowanymi do score.
  • Wymuś „1 osoba → 1 claim” przez nullifiers oraz rate‑limit na okno czasowe.
  • Rozważ device‑binding w portfelach ERC‑4337 (passkeys, klucze sprzętowe) bez gromadzenia PII.

Krok 3: Kontrakt i logika dowodu

  • Kontrakt przyjmuje zk‑proof + nullifier; zapisuje nullifier jako spent.
  • Opcjonalnie uwzględnia reputację (próg punktowy → warstwowe pule, np. Base/Gold).
  • Wersja cross‑chain: publikuj korzeń Merkle credentiali i weryfikuj na wielu L2 z mostem komunikatów.

Krok 4: UX i onboarding

  • Portfele smart accounts (ERC‑4337) z session keys i paymasterem pokrywającym gas dla pierwszego claimu.
  • QR‑flow dla credentiali (np. Polygon ID) i 1‑klik claim na mobile.
  • Transparentny privacy notice: co jest przetwarzane lokalnie, co trafia on‑chain.

Krok 5: Observability i bezpieczeństwo

  • Metryki: claim‑rate, unikalność (nullifiers), wskaźniki podejrzanych wzorców czasowych.
  • Alarmy na anomalię gazu, klastry adresów, farm botów (np. identyczne ścieżki transakcyjne).
  • Audyty obwodów ZK, kontraktów i logiki rate‑limit.

Regulacje: jak łączyć AML z prywatnością (bez porady prawnej)

Uwaga: poniższe ma charakter informacyjny, nie jest poradą prawną. W praktyce projekty muszą uwzględnić lokalne prawo (np. ramy unijne dotyczące krypto‑aktywów i przeciwdziałania praniu pieniędzy) i ewentualne obowiązki VASP.

  • Risk‑based approach: zamiast pełnego KYC dla wszystkich, zastosuj progi ryzyka i warstwowe credentiale (np. „nieobjęty sankcjami”, „rezydent UE”).
  • Selektywne ujawnianie: dowody typu „spełnia/nie spełnia” (age‑over, geo‑allowlist) ograniczają przetwarzanie PII.
  • Revocation: mechanizm odwołania credentialu (lista odwołań podpisana przez issuerów) propagowany do weryfikatorów.
  • Travel Rule kompatybilność w transferach z custodianami: w airdropie non‑custodial można stosować soft‑gating (credential przy odbiorze), a przy wypłatach do VASP — przekazywać wyłącznie wymagane atrybuty (ZK).

Tokenomika airdropu odporna na farmy

  • Warstwowe pule: Base (PoP), Plus (PoP + aktywność on‑chain), Pro (PoP + aktywność + wkład off‑chain potwierdzony ZK).
  • Dynamiczna alokacja: część puli rozdzielana ex‑post na podstawie aktywności w okresie prób (np. 30 dni), mierzonej na L2 z minimalnym kosztem gas.
  • Anti‑dump: vesting z soulbound‑escrow możliwy do przeniesienia dopiero po spełnieniu ZK‑mission (np. udział w głosowaniu DAO).

Case study (hipotetyczne): Airdrop gry Web3 na L2

  • Cel: 100k unikalnych graczy, bez farmy z botów.
  • Stos: L2 EVM, portfele ERC‑4337 z passkeys, Semaphore (PoP) + Polygon ID (geo/18+).
  • Reguły:
    • Warstwa 1: 1 claim/OSOBA/7 dni (RLN), 100 tokenów bazowych.
    • Warstwa 2: +150 tokenów za ukończenie 3 zadań on‑chain (misje w grze).
    • Warstwa 3: +250 tokenów za wkład w społeczność potwierdzony anonimowym credentialem moderatora.
  • Bezpieczeństwo: Audyt obwodów ZK; testnet z fałszywą pulą i honeypotem wykrywającym farmy.
  • Wynik (oczekiwany): wysoki wskaźnik retencji dzięki misjom i minimalne duplikaty dzięki nullifierom.

Najczęstsze błędy i jak ich uniknąć

  • Za słabe kryteria PoP: Połącz co najmniej dwa sygnały (Semaphore + staż adresu lub reputacja).
  • Brak odwołań: Projektuj revocation w dniu 0, nie po wycieku credentiali.
  • On‑chain deanonimizacja: Nie publikuj list surowych adresów kwalifikowanych; używaj grup/korzeni Merkle + ZK.
  • Zły UX: Bez paymastera i mobilnego QR‑flow konwersja dramatycznie spada.
  • Hard‑geofencing bez komunikacji: Transparentnie wyjaśnij powody i alternatywy (np. testnet‑missions).

Warstwa portfela: ERC‑4337, passkeys i session keys

Account Abstraction pozwala na portfele z logowaniem passkeys, które:

  • Redukują bariery wejścia (brak fraz seed),
  • Umożliwiają session keys do mikropodpisów w trakcie claimu,
  • Wspierają policy engine (podpisz tylko jeśli dowód ZK ważny → mniej błędów użytkownika).

Warstwa danych: prywatność domyślna

  • Minimalizacja danych: przechowuj wyłącznie hash/nullifier i znacznik czasu.
  • Odcinanie korelacji: stosuj ephemeral relayers lub privacy‑preserving RPC do składania roszczeń.
  • Analiza ryzyka off‑chain w trybie ZK (np. „score >= 70” bez ujawniania składowych).

Roadmapa technologiczna (co warto śledzić)

  • Szybsze ZK‑provery na urządzeniach mobilnych i przeglądarce (krótszy czas generowania dowodu).
  • Intents i bundlery łączące claim z natychmiastowym użyciem tokenów (np. stake/lock w jednej operacji).
  • Cross‑chain claims z bezpiecznym mostem komunikatów i jednolitym nullifier set na wielu L2.
  • Reputation composability: agregacja credentiali z różnych źródeł bez utraty prywatności.

Checklist: gotowość do startu

  • Masz zdefiniowane kryteria zgodności i politykę prywatności?
  • Wybrałeś stack ZK i zaprojektowałeś nullifiers + rate‑limits?
  • Portfele ERC‑4337 z paymasterem działają na docelowym L2?
  • Przeprowadziłeś audyty kontraktów i obwodów?
  • Masz telemetrię i plan reakcji na nadużycia (pause/upgrade)?

Wnioski i następne kroki

Nowa fala airdropów nie opiera się na listach i botach, ale na poświadczeniach ZK, unikalności i account abstraction. Dzięki temu można pogodzić zgodność z regulacjami i prywatność użytkowników, a przy tym realnie ograniczyć farmy. Jeśli planujesz airdrop w tym roku:

  • Wybierz stack credentiali (np. Polygon ID + Semaphore) i docelowe L2.
  • Zaprojektuj nullifiers i rate‑limits, zanim napiszesz tokenomikę.
  • Przetestuj UX na ERC‑4337 z paymasterem i mobilnym QR‑flow.

CTA: Chcesz checklistę wdrożeniową i szablony polityk? Daj znać, przygotujemy wersję dopasowaną do Twojego projektu i jurysdykcji.