Przejdź do treści
Słownikbezpieczenstwo

Przynależność do grupy

Przynależność do grupy, po angielsku group membership, to możliwość udowodnienia, że należysz do określonego zbioru uprawnionych uczestników, bez ujawniania, którym dokładnie uczestnikiem jesteś.

Czym jest przynależność do grupy

W systemach prywatnościowych przynależność do grupy oznacza, że aplikacja może sprawdzić twoje uprawnienie bez poznawania twojej pełnej tożsamości.

Przykład: system wie, że głos oddał członek uprawnionej grupy. Nie musi wiedzieć, który konkretnie członek to zrobił.

Taki mechanizm jest używany przy anonimowym głosowaniu, sygnalizowaniu, reputacji, prywatnym dostępie do społeczności i niektórych systemach atestacji.

Co udowadnia taki mechanizm

Członkostwo
Użytkownik należy do określonego zbioru uprawnionych uczestników.
Prywatność
System nie musi poznać konkretnej osoby ani adresu stojącego za dowodem.
Uprawnienie
Aplikacja może dopuścić akcję, na przykład głosowanie albo dostęp do funkcji.
Zero-knowledge proof
Dowód może potwierdzić fakt przynależności bez ujawniania danych źródłowych.
Ograniczenie nadużyć
System może wykrywać podwójne użycie tego samego uprawnienia, jeśli projekt tak to zaprojektuje.

Jak działa intuicyjnie

Użytkownik ma sekret albo identity commitment powiązany z grupą. Grupa może być listą adresów, identyfikatorów, commitmentów albo innych wpisów.

Gdy użytkownik chce wykonać akcję, generuje dowód, że jego sekret odpowiada jednemu z wpisów w grupie.

Weryfikator widzi poprawny dowód i wie, że akcję wykonał uprawniony uczestnik. Nie poznaje konkretnego wpisu, który został użyty do wygenerowania dowodu.

Semaphore i MACI

Semaphore jest jednym z najbardziej znanych przykładów narzędzi do prywatnych dowodów członkostwa. Pozwala udowodnić, że należysz do grupy, i wysłać sygnał bez ujawniania swojej tożsamości.

MACI używa pokrewnych założeń dotyczących członkostwa i tożsamości przy prywatnym głosowaniu oraz ograniczaniu przekupstwa wyborców.

Dla użytkownika najważniejsze jest zrozumienie idei: aplikacja może sprawdzić uprawnienie bez robienia z każdej akcji publicznego przecieku tożsamości.

Gdzie to ma zastosowanie

  • Prywatne głosowania w DAO.
  • Dostęp do funkcji tylko dla członków określonej grupy.
  • Anonimowe sygnalizowanie opinii lub zgłoszeń.
  • Aplikacje reputacyjne bez publicznego ujawniania użytkownika.
  • Atestacje, w których liczy się uprawnienie, a nie pełna tożsamość.

Najczęstsze błędne założenia

  • Dowód przynależności do grupy nie musi oznaczać ujawnienia tożsamości.
  • Członkostwo w grupie nie jest tym samym co pełny identity proof.
  • Prywatność zależy od konstrukcji systemu, wielkości grupy i sposobu użycia dowodów.
  • Mała grupa daje słabszą anonimowość niż duża grupa.
  • ZK proof potwierdza określone twierdzenie matematyczne. Nie rozwiązuje automatycznie problemów UX, phishingu ani złej konfiguracji aplikacji.

To dowód uprawnienia, nie ujawnienie osoby

Przynależność do grupy pozwala aplikacji sprawdzić, że użytkownik ma prawo wykonać akcję, bez poznawania dokładnej tożsamości uczestnika. Właśnie dlatego ten mechanizm jest ważny dla prywatnych głosowań i aplikacji ZK.

Najczęstsze pytania

Nie. Mechanizm może działać bez ujawniania pełnej tożsamości. Chodzi o dowód, że użytkownik należy do uprawnionego zbioru.

W dobrze zaprojektowanym systemie nie. Weryfikator widzi, że dowód pochodzi od członka grupy, ale nie poznaje konkretnego członka.

Pozwala sprawdzić, że głos oddała osoba uprawniona, bez publicznego ujawniania jej tożsamości albo adresu.

Nie. Poziom prywatności zależy od wielkości grupy, konstrukcji aplikacji, danych pobocznych i sposobu użycia dowodów.