Definicja
Anytrust to kryptograficzny (cryptography) i protokołowy mechanizm, który zapewnia gwarancje dotyczące dostępności lub poprawności danych przy założeniu, że co najmniej jeden członek określonego zbioru stron jest uczciwy. Zamiast wymagać, by każdy uczestnik w tym zbiorze był w pełni godny zaufania, mechanizm jest zaprojektowany tak, aby system pozostawał bezpieczny, o ile choć jedna strona nie wchodzi w zmowę z pozostałymi ani nie działa w sposób złośliwy. Przesuwa to model zaufania z „ufaj wszystkim” na „ufaj któremukolwiek”, skąd pochodzi nazwa Anytrust. Mechanizm ten jest powszechnie stosowany w architekturach związanych z łańcuchami bloków (blockchain), aby zmniejszyć zależność od jednego w pełni zaufanego operatora, a jednocześnie uniknąć kosztów i złożoności całkowicie beztrustowych projektów.
W ustawieniu Anytrust protokół zazwyczaj koduje dane lub zobowiązania w taki sposób, aby uczciwa strona w wyznaczonej grupie mogła zapewnić wykrycie lub odtworzenie zatajonych bądź niepoprawnych danych. Założenia bezpieczeństwa są więc słabsze niż w mechanizmach całkowicie beztrustowych, ale silniejsze niż w modelach opartych na pojedynczym scentralizowanym, bezwarunkowo zaufanym podmiocie. Jako mechanizm, Anytrust jest definiowany przez swoje jawne założenie zaufania dotyczące minimalnego uczciwego podzbioru, a nie przez konkretną implementację czy rolę w sieci.
Kontekst i zastosowanie
W systemach opartych na łańcuchach bloków (blockchain) mechanizmy Anytrust są często stosowane w warstwach zapewniania dostępności danych, komitetach lub wyspecjalizowanych dostawcach usług wspierających weryfikację on-chain. Kluczowa idea polega na tym, że łańcuch bazowy lub środowisko weryfikujące może bezpiecznie polegać na zewnętrznych danych lub usługach, o ile przynajmniej jeden wyznaczony uczestnik pozostaje uczciwy. Umożliwia to projekty bardziej skalowalne (scalability) lub tańsze niż w pełni replikowane podejścia on-chain, przy jednoczesnym zapewnieniu kryptograficznych (cryptography) lub protokołowych środków obrony przed całkowitą zmową.
Anytrust nie eliminuje założeń dotyczących zaufania; zamiast tego czyni je jawnymi i minimalnymi pod względem liczby wymaganych uczciwych stron. Jako mechanizm charakteryzuje się formalnymi gwarancjami powiązanymi z tymi założeniami, często wyrażonymi w dowodach bezpieczeństwa lub specyfikacjach protokołów. Termin ten służy więc do opisu konkretnego modelu zaufania i bezpieczeństwa osadzonego w architekturze systemu, a nie samodzielnego produktu czy roli w sieci.