Agent Identity Skill
Cryptographic identity system for AI agents. Sign messages, verify agents, prove who you are.
Files included:
identity.py- Python CLI (cross-platform)agent-identity.ps1- PowerShell wrapper (Windows)
What it does
- Generate Key Pair - Create Ed25519 or RSA keys for your agent
- Sign Messages - Cryptographically sign messages
- Verify Signatures - Verify messages from other agents
- Agent ID - Generate persistent agent ID from public key
- Agent Card - Generate signed Agent Card for A2A/MCP
Installation
# Install Python dependency
pip install cryptography
Usage
Option 1: PowerShell (recommended on Windows)
.\agent-identity.ps1 -Action generate -AgentName "MyAgent" -KeyType ed25519 -Password "secret123"
Option 2: Python CLI (cross-platform)
python identity.py generate --name MyAgent --key-type ed25519 --password secret123
Available Commands
All commands work with both PowerShell and Python:
Generate Identity (with password encryption)
.\agent-identity.ps1 -Action generate -AgentName "MyAgent" -KeyType ed25519 -Password "secret123"
Sign Message
.\agent-identity.ps1 -Action sign -Message "Hello world" -PrivateKeyPath "keys/private.pem" -Password "secret123"
Verify Signature
.\agent-identity.ps1 -Action verify -Message "Hello world" -Signature "base64-signature" -PublicKeyPath "keys/public.pem"
Get Agent ID
.\agent-identity.ps1 -Action id -PublicKeyPath "keys/public.pem"
Sign Agent Card
.\agent-identity.ps1 -Action card -PublicKeyPath "keys/public.pem" -PrivateKeyPath "keys/private.pem" -Name "MyAgent" -Description "Research agent" -Capabilities "research,analysis" -Endpoint "https://myagent.com/a2a" -Password "secret123"
⚠️ Security Warnings
Password on Command Line
WARNING: Passing passwords on the command line is insecure because:
- CLI arguments can be visible to other processes
- Command history is stored in logs
- Use only for testing, not production
For production, use interactive password input or environment variables.
Private Key Storage
- Keys are stored in
keys/directory - Ensure proper file permissions
- Back up your keys securely
- Never share your private key
Requirements
- Python 3.8+
- cryptography library
License
MIT