Kryptografia od dawna jest domeną matematyków i informatyków. Jednak ostatnie postępy, szczególnie w technologiach wiedzy zerowej, sprawiają, że projekty systemów kryptograficznych przekształcają się obecnie ze złożonych konstrukcji matematycznych w bardziej przystępne i proste zadania programistyczne. Ten transformacyjny proces, znany jako programowalna kryptografia, skutecznie wypełnia lukę między projektami protokołów a ich praktycznymi wdrożeniami i będzie miał głębokie konsekwencje dla naszego bezpieczeństwa i prywatności, zarówno w łańcuchu, jak i online.
Wyzwania związane z wprowadzeniem teorii kryptografii w praktykę
W swej istocie kryptografia to po prostu proces wysyłania prywatnych wiadomości pomiędzy podmiotami. Sama ustawa wprowadza kilka wymagań — aby zarówno nadawca, jak i odbiorca mogli zrozumieć wiadomości, ale żaden zewnętrzny przechwytywacz nie. Co ważne, musi także mieć pewność, że wiadomość nie zostanie zmodyfikowana przed jej dostarczeniem. Na przykład podpisy cyfrowe zapewniają uwierzytelnianie i integralność komunikacji w niezabezpieczonych kanałach.
Zaawansowane systemy kryptograficzne zaspokajają obecnie potrzebę ochrony wszelkiego rodzaju danych i wiadomości online podczas przechowywania, przesyłania i obliczeń, w tym bankowości, aukcji, handlu elektronicznego i blockchain, żeby wymienić tylko kilka. Systemy te obejmują między innymi dowody wiedzy zerowej (ZKP), obliczenia wielostronne (MPC) i szyfrowanie w pełni homomorficzne (FHE). Każdy z tych systemów, zakorzeniony w matematyce, uwzględnia określone scenariusze i potrzeby.
MPC chroni prywatność danych wejściowych w scenariuszach, w których wiele stron wykonuje wspólne obliczenia. Jednym z przypadków użycia MPC jest depozyt instytucjonalny, używany przez firmy takie jak Fireblocks, umożliwiający podział odpowiedzialności pomiędzy osobami nadzorującymi portfel. ZKP skutecznie umożliwiają weryfikowalne obliczenia i prywatność danych w kontekstach jednostronnych i są obecnie wykorzystywane w prywatności i skalowaniu blockchain.
Wprowadzenie zaawansowanych systemów kryptograficznych wnosi do cyfrowego świata wiele ekscytujących możliwości, ale wiąże się również z poważnymi wyzwaniami. Przez długi czas ludzie mają dostęp jedynie do dedykowanych protokołów kryptograficznych przeznaczonych do konkretnych zastosowań, takich jak prywatne skrzyżowania, prywatne aukcje i głosowanie oraz fizyczna weryfikacja tożsamości. Sprawienie, by te systemy działały w prawdziwym świecie, nie jest proste. Kryptografowie muszą wszystko dokładnie zaplanować, na przykład założenia bezpieczeństwa, prymitywne wybory i optymalizację wydajności. Ogranicza to szerokie zastosowanie kryptosystemów. Możliwość skutecznego wdrożenia protokołu kryptograficznego w uogólnionym scenariuszu odgrywa kluczową rolę w przenoszeniu kryptografii z teorii do świata rzeczywistego.
Rola programowalnej kryptografii
Aby rozwiązać powszechne problemy z przyjęciem, przed którymi stoją kryptosystemy, w niektórych projektach uwzględniono opisy funkcjonalne oparte na obwodach. Teoretycznie, jeśli podstawowe moduły kryptosystemu są w stanie emulować maszynę Turinga, można ją wykorzystać do ogólnych problemów obliczeniowych. To podejście, w którym kryptosystemy są wykorzystywane poprzez opisy obwodów, znane jest jako kryptografia programowalna. Jednak teoretyczna wykonalność jest daleka od wystarczającej do zastosowań w świecie rzeczywistym. Gdy złożoność takiego kryptosystemu będzie rosła zbyt szybko wraz z rozmiarem problemu obliczeniowego, jego praktyczne zastosowanie stanie się nierealne. Aby wypełnić lukę między teorią a praktyką, kryptografowie stale udoskonalają te algorytmy. Obejmuje to projektowanie nowych frameworków, optymalizację podstawowych elementów podstawowych i refaktoryzację implementacji inżynierskich.
Naukowcy pracujący w 0xPARC oraz Privacy and Scaling Explorations prowadzą pionierskie prace, dzięki którym zkSNARK, konstrukcja odporna na wiedzę zerową, obecnie szeroko wdrażana w infrastrukturze blockchain, takiej jak ZCash i zkEVM, staje się programowalną kryptografią.
Zaprezentowali dowód koncepcji oświadczeń tożsamości przy użyciu programowalnych ZKP. To innowacyjne podejście pozwala na weryfikację uprawnień danej osoby do usług za pośrednictwem poczty elektronicznej lub mediów społecznościowych, bez ujawniania faktycznej treści tej komunikacji, dzięki czemu dane osobowe pozostają poufne.
W innej przełomowej aplikacji programowalna kryptografia ułatwia poufne obliczanie punktacji kredytowej na podstawie interakcji użytkownika z usługami Web 2.0, takimi jak media społecznościowe, bez ujawniania konkretnych działań. Umożliwia to ocenę zdolności kredytowej skupioną na prywatności, rewolucjonizując ocenę wiarygodności finansowej w dzisiejszym cyfrowym świecie.
Korzyści z programowalnej kryptografii są wielopoziomowe. Po pierwsze, sprawia, że praktyczne zastosowania kryptografii są znacznie bardziej elastyczne i łatwe do dostosowania. Programowalność sprawia, że kryptografia stosowana staje się dyscypliną niszową dostępną jedynie dla nielicznych naukowców, a staje się globalną pulą programistów, sprzyjającą eksperymentom i innowacjom.
Nie złoty środek, ale punkt zwrotny
Kluczowym ograniczeniem programowalnej kryptografii w jej obecnym stanie jest to, że jej badania skupiały się głównie na zkSNARK. Warto jednak zauważyć, że wiele technologii kryptograficznych znajduje się wciąż na stosunkowo wczesnym etapie rozwoju, a znaczące przełomy w przypadkach użycia nastąpiły dopiero w ciągu ostatnich dwóch dekad. Technologia ZK była szczególnym obszarem inwestycji i zainteresowania ze względu na zainteresowanie blockchainem i kryptowalutami w tym samym okresie. Przy podobnym poziomie zainteresowania i innowacyjności możliwe jest, że praktyczne przełomy w obszarach MPC czy HE mogą zaowocować pojawieniem się elementów programowalnych.
Ponieważ coraz większa część naszego życia toczy się w Internecie, możliwość ochrony i uwierzytelniania naszych danych i komunikacji staje się coraz ważniejsza. Programowalna kryptografia oferuje możliwość przełamania barier i zapoczątkowania nowej ery nowoczesnego szyfrowania, które jest bardziej dostępne i gotowe do przyszłego rozwoju.
O ARPA
ARPA Network (ARPA) to zdecentralizowana, bezpieczna sieć obliczeniowa zbudowana w celu poprawy uczciwości, bezpieczeństwa i prywatności łańcuchów bloków. Sieć podpisów BLS z progiem ARPA służy jako infrastruktura weryfikowalnego generatora liczb losowych (RNG), bezpiecznego portfela, mostu międzyłańcuchowego i zdecentralizowanej opieki w wielu łańcuchach bloków.
ARPA była wcześniej znana jako ARPA Chain i chroniła prywatność sieci Multi-Party Computation (MPC), założonej w 2018 roku. W ubiegłych latach ARPA Mainnet wykonała ponad 224 000 zadań obliczeniowych. Nasze doświadczenie w zakresie MPC i innej kryptografii położyło podwaliny pod nasz innowacyjny projekt systemu progowych schematów podpisu BLS (TSS-BLS) i doprowadziło nas do dzisiejszej sieci ARPA.
Randcast, weryfikowalny generator liczb losowych (RNG), to pierwsza aplikacja wykorzystująca ARPA jako infrastrukturę. Randcast oferuje kryptograficznie generowane losowe źródło o najwyższym bezpieczeństwie i niskim koszcie w porównaniu do innych rozwiązań. Metaverse, gry, loterie, wybijanie i umieszczanie na białych listach NFT, generowanie kluczy i dystrybucja zadań walidatora blockchain mogą skorzystać na losowości Randcast odpornej na manipulacje.
Aby uzyskać więcej informacji na temat ARPA lub dołączyć do naszego zespołu, skontaktuj się z nami pod adresem contact@arpanetwork.io.
Poznaj najnowsze oficjalne wiadomości ARPA:
Twitter: @arpaofficial
Medium: https://medium.com/@arpa
Discord: https://dsc.gg/arpa-network
Telegram (w języku angielskim): https://t.me/arpa_community
Telegram (po turecku): https://t.me/Arpa_Turkey
Telegram (koreański): https://t.me/ARPA_Korea
Telegram (Wietnam): https://t.me/ARPAVietnam
Telegram (rosyjski): https://t.me/arpa_community_ru
Telegram (indonezyjski): https://t.me/Arpa_Indonesia
Telegram (Sri Lanka): https://t.me/arpa_srilanka
Telegram (Afryka): https://t.me/arpaafrica
Reddit: https://www.reddit.com/r/arpachain/