Seems like “ask for approval, except you approve by spending a little of some random altcoin”
> Disclaimer: AC2 is a self-custodial Algorand wallet. You — and only you — hold your seed phrase, your keys, and your crypto-assets on your own device. Pera Wallet, Lda does not hold, custody, or have access to your seed phrase, your keys, or your crypto-assets, and cannot recover them on your behalf.Is that actually what the text explicitly says? I'm not getting the same impression from the protocol they suggest, where is the spending happening?
AFAIK, they're using the cryptographic primitives from Algorand for signing, no transactions required to approve stuff. But happy to be shown otherwise, I might have misunderstood.
/ignore
The analogy I would use is the only thing reliably containing humanity is interstellar distances, and the equivalent for ASI would be cryptographic distances, where the only way to relate to anything safely will be via a crypto interface. Compute is the physics of an ASI's substrate, and cryptography is the only meaningful barrier we've been able to create in it so far.
Regardless, thanks for expanding and explaining, and good luck to you all! :)
josephcecala•1h ago
The problem: a compromised agent runtime (e.g. a malicious plugin dependency) can leak everything injected into it like API keys or session tokens, and there's no way to prove whether a human actually approved what happened, since chat-based "approvals" are just messages, spoofable and session-hijackable.
AC2 closes both gaps. Approvals become a FIDO2 passkey signature from your device, that's hardware-bound, phishing-resistant, and a real audit trail instead of a chat message. And credentials never enter the runtime at all: the agent gets a signed authorization, not the key. Compromise the runtime, there's nothing to steal.
Under the hood: AC2 opens a direct, end-to-end encrypted WebRTC connection between a user's wallet and an agent. When the agent needs to sign something (a payment, a commit, an API call), it sends the request via AC2, the user approves from their own wallet, and the signature is delegated back. The private key never leaves the user's device.
Built on three open standards: DIDComm v2.0 (messaging), WebAuthn/FIDO2 (hardware-bound auth), and WebRTC DataChannel (P2P transport, no relay servers). Lightweight (~50 lines for a basic flow), blockchain-agnostic, and works alongside your existing setup. One plugin, one command.
Built by the Algorand Foundation team behind Pera Wallet, Rocca, Intermezzo, and LiquidAuth. Use cases include code deploys, client comms, API access, x402 payments, and intent-based delegation via AP2 IntentMandates.
Spec is live and open. Reference implementation (AC2 Wallet) is on GitHub, Play Store, and App Store, with a plugin to try the full flow. This is v1, feedback welcome.
Disclaimer: The content provided in this blog is for informational purposes only. The information is provided by the Algorand Foundation and while we strive to keep the information up-to-date and correct, we make no representations or warranties of any kind, express or implied, about the completeness, accuracy, reliability, suitability, or availability with respect to the blog or the information, products, services, or related graphics contained in the blog for any purpose. Any forward-looking statements are subject to change. The content of this blog is not intended to be legal, financial, or investment advice nor is it an endorsement, guarantee, or investment recommendation. You should not take any action before conducting your own research or consulting with a qualified professional. Any reliance you place on such information is therefore strictly at your own risk. All companies are independent entities solely responsible for their operations, marketing, and compliance with applicable laws and regulations. In no event will Algorand Foundation nor any affiliates be liable for any loss or damage including without limitation, indirect, or consequential loss or damage, or any loss or damage whatsoever arising from loss of data or profits arising out of, or in connection with, the use of this blog. Through this blog, you may be able to link to other websites which are not under the control of the Algorand Foundation. We have no control over the nature, content, and availability of those sites. The inclusion of any links does not imply a recommendation nor endorse the views expressed therein. Any statements about future plans, integrations, or protocol upgrades are forward-looking and subject to change. The use of agentic commerce involves risks, including potential fraud and identity verification issues. Users and merchants should ensure they are using verified agents and follow best practices for security and compliance.
Miyamura80•1h ago
But FIDO2 passkey signature I absolutely agree should be the way to go. Just need more open standard without tokens involved
josephcecala•19m ago
Algorand only shows up in the reference implementation for the payment use case (x402), since something has to settle an actual transfer. That's opt-in, not required. Skip payments and you never touch it.
embedding-shape•35m ago
josephcecala•22m ago
For that case we use Algorand, but AC2 is chain-agnostic, meaning any chain could plug in. Algorand fit because of instant finality (no forking), low predictable fees for frequent small agent payments, and post-quantum resilient signatures. zCash optimizes for privacy, which isn't really our problem, we care about speed/finality for agent-authorized actions, not hiding the payment.
So the blockchain piece is more of a plugin for one use case than the foundation of the protocol. Hope that answers your questions!