Technologia

Protokół AC2: brakująca warstwa bezpieczeństwa dla agentów AI


AC2 to otwarty standard, który oddaje użytkownikom kontrolę nad operacjami podpisywania inicjowanymi przez agentów AI. Daje dwie rzeczy, których większości systemów agentowych dziś brakuje: weryfikowalny dowód intencji i izolację poświadczeń.

Znamy dewelopera, który uruchomił agenta AI do recenzji pull requestów, przygotowywania merge’y i odpalania testów. Dobry setup — w dzisiejszym autonomicznym świecie oszczędza godziny.

A potem ktoś przejął środowisko uruchomieniowe agenta. To nie był wyrafinowany atak, tylko złośliwa zależność we wtyczce. Atakujący dostał wszystko, co agent miał: klucze API wstrzyknięte przy starcie, tokeny sesji z przepływu zatwierdzania i wystarczający dostęp, żeby wypchnąć merge wyglądający tak, jakby zatwierdził go lead engineer.

Zespół nie był w stanie udowodnić, że człowiek tego nie zatwierdził. Zatwierdzenie było wiadomością na Slacku, a poświadczenia leżały w środowisku runtime. Nie dało się odróżnić, co było prawdziwe, a co nie.

Ten jeden incydent odsłania dwie luki, które dziś występują w większości systemów agentowych:

  1. nie było kryptograficznego dowodu, że człowiek faktycznie autoryzował działanie,
  2. agent miał dostęp do poświadczeń, które w ogóle nie powinny były być mu udostępnione.

Protokół AC2

Agentic Communication & Control Protocol (AC2) to otwarty protokół, który zamyka obie te luki.

AC2 daje zatwierdzeniom agentów coś, czego im dziś brakuje: podpis kryptograficzny, który dowodzi, że konkretne działanie autoryzował prawdziwy człowiek. Agent wysyła żądanie, Ty przeglądasz je na swoim urządzeniu, a zatwierdzenie to podpis passkey FIDO2. Powiązany ze sprzętem, odporny na phishing i fałszerstwo. Nie wiadomość na czacie — weryfikowalny ślad audytowy.

AC2 zmienia też miejsce, w którym żyją Twoje poświadczenia. Zamiast wstrzykiwać klucze API do środowiska agenta, a potem próbować je zabezpieczyć, AC2 od początku trzyma je na Twoim urządzeniu. Agent dostaje podpisaną autoryzację, nie sam klucz. Jeśli runtime zostanie skompromitowany, nie ma kluczy API do kradzieży.

W praktyce AC2 nawiązuje bezpośrednie, szyfrowane end-to-end połączenie WebRTC między portfelem lub aplikacją użytkownika a agentem AI. Gdy agent musi wykonać operację podpisywania — na przykład płatność, commit gita albo autoryzację API — wysyła żądanie do użytkownika przez AC2. Użytkownik przegląda je i zatwierdza we własnym interfejsie portfela, a podpis wraca do agenta. Klucz prywatny nigdy nie opuszcza kontroli użytkownika.

AC2 jest lekki — podstawowy przepływ to około pięćdziesięciu linii kodu — i niezależny od blockchaina. Bez kontenerów, bez SDK do wiadomości, bez proxy do poświadczeń. Działa obok istniejącego setupu.

Dlaczego obecne zatwierdzenia agentów nie wystarczają

Zatwierdzenia da się sfałszować

Potwierdzenia przez czat — WhatsApp, Telegram, Slack — opierają się na tokenach sesji, które w 2026 roku obchodzono wieloma CVE. Wstrzyknięcie promptu potrafi skłonić agenta do samodzielnego zatwierdzenia. Stuknięcie w przycisk da się podszyć, przejąć sesję i ukryć przed kimkolwiek poza rozmową. Nie ma prawdziwej odpowiedzialności. Zwykłe „tak” na czacie nie dowodzi, kto je wysłał, kiedy i co zatwierdzał.

Poświadczenia są wystawione

Większość setupów agentowych wstrzykuje klucze API, tokeny i sekrety w runtime. Agent potrzebuje dostępu do usługi, więc dostaje klucz. Gdy środowisko zostanie przejęte — a było, wielokrotnie — te poświadczenia giną. Nie tylko sesja. Twoje prawdziwe klucze. Obecny model to: wstrzyknij i miej nadzieję. To nie jest architektura bezpieczeństwa.

Jak działa AC2

Protokół AC2 opiera się na trzech otwartych standardach, dobranych celowo:

  1. DIDComm v2.0 do formatowania wiadomości — każdy framework, który składa wiadomość DIDComm, mówi AC2.
  2. WebAuthn / FIDO2 do uwierzytelniania — podpisy powiązane z fizycznym sprzętem (TPM, Secure Enclave), a nie z tokenami na poziomie aplikacji.
  3. WebRTC DataChannel do transportu — P2P po wstępnym handshake’u. Bez serwerów pośredniczących.

Integracja podstawowego przepływu zatwierdzania to jedna wtyczka i jedna komenda. AC2 działa obok istniejącego setupu: podnosi poziom zaufania, nie zmienia workflow.

Dlaczego Algorand Foundation i Pera Wallet zbudowali AC2

Zespół Algorand Foundation od lat buduje produkty do bezpiecznego uwierzytelniania i komunikacji P2P, w tym Pera Wallet, Rocca, Intermezzo oraz LiquidAuth (otwarty FIDO2 + WebRTC). Gdy przyjrzeliśmy się zatwierdzeniom agentów, luka była oczywista: przepływów zatwierdzania było mnóstwo, dowodu zatwierdzenia — zero.

AC2 opakowuje sprawdzoną infrastrukturę uwierzytelniania w protokół zaprojektowany dla agentów.

Co można robić z AC2

  • Wdrożenia kodu: agent przygotowuje commit lub deploy i prosi o podpis przed wypchnięciem. Podpis dowodzi, co dokładnie zostało przejrzane i zatwierdzone.
  • Komunikacja z klientami: agent szkicuje treść i prosi o akceptację przed wysłaniem. Podpis dowodzi, że konkretna wiadomość została zatwierdzona przez człowieka.
  • Dostęp do API: agent przedstawia parametry żądania do zatwierdzenia przed wykonaniem. Podpis dowodzi, co zostało autoryzowane, przez kogo i kiedy.
  • Płatności x402: agent wysyła szczegóły płatności do portfela użytkownika przed dokończeniem wywołania API. Podpis dowodzi autoryzacji bez ujawniania kluczy prywatnych.
  • Działania oparte na intencji: agent przesyła IntentMandate w standardzie AP2, określający, co może robić i w jakich granicach. Po podpisaniu może działać autonomicznie w kryptograficznie wymuszonych limitach.

Co dalej: delegacja, nie tylko zatwierdzenie

AC2 na razie pyta o każdy podpis. To bezpieczny domyślny tryb, ale nie najbardziej autonomiczny. Kolejna iteracja doda delegację: raz zdefiniujesz granice, zamiast zatwierdzać każdą akcję od zera. W tych granicach agent działa swobodnie. Poza nimi — wraca do Ciebie. Model bezpieczeństwa się nie zmienia: agent nadal nie dostaje Twoich kluczy. Zmienia się tylko to, jak często Cię o to pytają.

Wypróbuj AC2

AC2 da się łatwo dodać do dowolnego SDK lub portfela agentowego. Jeśli budujesz narzędzia dla agentów, a Twoi użytkownicy potrzebują weryfikowalnych zatwierdzeń, a nie tylko kroków w UI, AC2 daje tę warstwę bez budowania jej od zera.

Specyfikacja jest dostępna i otwarta. Implementacja referencyjna, AC2 Wallet, jest na GitHubie, w Google Play i w App Store, razem z wtyczką AC2, jeśli chcesz zobaczyć pełny przepływ zatwierdzania w akcji.

To pierwsza wersja. Czekamy na feedback, jak protokół może pomagać zabezpieczać komunikację człowiek–agent i budować zaufanie w ekosystemie agentowym. Każda platforma agentów i każdy dostawca portfela tożsamości powinien móc rozmawiać z AC2 bez własnych wtyczek, wystawionych poświadczeń i zastrzeżonych przepływów zatwierdzania.


Źródło: Introducing AC2 Protocol: The missing security layer for AI agents – blog Algorand