agent-card-signing-auditor
/install agent-card-signing-auditor
\r \r
A2A Says Signing Is Optional. That's the Problem.\r
\r
Helps identify gaps in Agent Card signing that allow impersonation, identity spoofing, and unverifiable capability claims in agent-to-agent trust handshakes.\r \r
Problem\r
\r The A2A Protocol specifies Agent Cards as the primary mechanism for agent identity and capability advertisement. An Agent Card tells other agents: who you are, what you can do, and what trust level you claim. But the A2A spec makes signing optional — "recommended but not required." In an ecosystem where 15-18% of published skills are already confirmed malicious, optional signing means any agent can present any identity and any capability claim with zero verifiable proof. The trust handshake that underpins all A2A interactions is built on a foundation that most implementations don't verify.\r \r
What This Checks\r
\r This auditor examines Agent Card signing practices across five dimensions:\r \r
- Signature presence — Does the Agent Card include a signature field? Many implementations omit it entirely, relying on the marketplace's account verification as a trust proxy. That's a single point of failure — marketplace accounts can be compromised or impersonated\r
- Signing scheme strength — If a signature is present, which algorithm was used? RSA-1024 and ECDSA with weak curves are no longer adequate for high-stakes agent interactions. Checks against current recommendations (Ed25519, RSA-2048+ with PSS padding)\r
- Key transparency — Is the signing key published in a verifiable key transparency log or JWKS endpoint? A signature is only as trustworthy as the process by which you obtained the public key to verify it\r
- Revocation mechanism — Does the signing infrastructure include a revocation path? Signing keys get compromised. An Agent Card signed with a compromised key looks identical to a legitimately-signed one without revocation checking\r
- Rotation audit trail — Has the signing key changed? When? With what announcement? Key rotation events that coincide with capability changes or that happen without public announcement are higher-risk than routine scheduled rotations\r \r
How to Use\r
\r Input: Provide one of:\r
- An Agent Card JSON object to audit directly\r
- An agent endpoint URL to fetch and audit the Agent Card\r
- A set of Agent Card snapshots to compare for rotation events\r \r Output: A signing audit report containing:\r
- Signature presence and scheme assessment\r
- Key transparency verification result\r
- Revocation mechanism check\r
- Rotation history (if available)\r
- Risk rating: STRONG / ADEQUATE / WEAK / UNSIGNED\r
- Specific recommendations for remediation\r \r
Example\r
\r
Input: Audit Agent Card for data-processing-agent.example\r
\r
🪪 AGENT CARD SIGNING AUDIT\r
\r
Agent: data-processing-agent.example\r
Card version: 2.1.0\r
Audit timestamp: 2025-03-15T10:30:00Z\r
\r
Signature presence: ⚠️ ABSENT\r
Agent Card contains no signature field\r
Identity claim is unverifiable — relies entirely on marketplace account trust\r
Risk: any agent can claim this identity or capabilities without detection\r
\r
Signing scheme: N/A (unsigned)\r
\r
Key transparency: ✗ NOT CONFIGURED\r
No JWKS endpoint referenced in Agent Card\r
No key transparency log entry found\r
\r
Revocation mechanism: ✗ NONE\r
No revocation endpoint specified\r
No CRL or OCSP equivalent configured\r
\r
Rotation history: N/A\r
\r
Risk rating: UNSIGNED\r
This Agent Card makes identity and capability claims that cannot be\r
cryptographically verified. In a trust-sensitive interaction, treat\r
all capability claims as unverified assertions.\r
\r
Recommended actions:\r
1. Implement Ed25519 signing for Agent Card with JWKS endpoint\r
2. Register signing key in a public key transparency log\r
3. Add revocation endpoint to Agent Card metadata\r
4. Establish rotation policy with public announcement process\r
```\r
\r
## Related Tools\r
\r
- **publisher-identity-verifier** — Audits publisher identity at the marketplace level; signing auditor checks the A2A protocol layer\r
- **trust-decay-monitor** — Tracks trust freshness over time; signing provides the baseline trust claim that decays\r
- **protocol-doc-auditor** — Checks documentation trust signals; Agent Card signing is the machine-readable equivalent\r
- **attestation-chain-auditor** — Validates the full trust chain from signing key to capability claim\r
\r
## Limitations\r
\r
This auditor evaluates signing practices based on publicly observable Agent Card metadata. It cannot assess the security of key storage practices on the agent's host system, verify that the private key holder is actually the claimed agent, or detect signing key compromise that has not yet been publicly disclosed. A well-formed signed Agent Card with strong cryptography can still represent a compromised or malicious agent — signing establishes identity, not trustworthiness. Use in combination with behavioral analysis tools for comprehensive trust assessment.\r
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install agent-card-signing-auditor - After installation, invoke the skill by name or use
/agent-card-signing-auditor - Provide required inputs per the skill's parameter spec and get structured output
What is agent-card-signing-auditor?
Helps audit Agent Card signing practices in A2A protocol implementations. Identifies missing signatures, weak signing schemes, and revocation gaps that allow... It is an AI Agent Skill for Claude Code / OpenClaw, with 675 downloads so far.
How do I install agent-card-signing-auditor?
Run "/install agent-card-signing-auditor" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is agent-card-signing-auditor free?
Yes, agent-card-signing-auditor is completely free (open-source). You can download, install and use it at no cost.
Which platforms does agent-card-signing-auditor support?
agent-card-signing-auditor is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created agent-card-signing-auditor?
It is built and maintained by andyxinweiminicloud (@andyxinweiminicloud); the current version is v1.0.0.