Skip to main content

Cryptographically secure agent identity protocol with exclusive leasing, state continuity, and verification

Project description

SigAid - Secure Agent Identity Protocol

A cryptographically secure agent identity protocol with exclusive leasing, state continuity, and verification capabilities.

Features

  • Cryptographic Identity: Ed25519-based agent identities with checksums
  • Exclusive Leasing: Prevents "clone" attacks - only one instance per agent
  • State Chain: Hash-linked action log for verifiable history
  • Proof Bundles: Cryptographic proofs for service verification
  • Framework Integrations: One-line wrapping for LangChain, CrewAI, AutoGen

Installation

pip install sigaid

For framework integrations:

pip install sigaid[langchain]   # LangChain support
pip install sigaid[crewai]      # CrewAI support
pip install sigaid[autogen]     # AutoGen support
pip install sigaid[all-integrations]  # All frameworks

Quick Start

One-Line Framework Integration

import sigaid

# Wrap your existing agent - that's it!
agent = sigaid.wrap(my_langchain_agent)

# Use exactly as before
result = agent.invoke({"input": "Hello"})

# Agent now has verifiable identity
print(agent._sigaid.agent_id)

Direct SDK Usage

import asyncio
from sigaid import AgentClient

async def main():
    # Create new agent
    client = AgentClient.create()
    print(f"Agent ID: {client.agent_id}")
    
    # Acquire exclusive lease
    async with client.lease() as lease:
        # Record actions
        await client.record_action(
            "transaction",
            {"amount": 100, "recipient": "merchant_123"},
            summary="Processed payment"
        )
        
        # Create proof for verification
        proof = client.create_proof(challenge=b"verifier_nonce")
    
    await client.close()

asyncio.run(main())

Service-Side Verification

from sigaid import Verifier

verifier = Verifier(api_key="...")

result = await verifier.verify(
    proof_bundle,
    require_lease=True,
    min_reputation_score=0.7,
)

if result.valid:
    print(f"Agent {result.agent_id} verified!")

Core Concepts

Agent Identity

Each agent has a unique cryptographic identity:

  • AgentID: Derived from Ed25519 public key (aid_7Xq9YkPz...)
  • KeyPair: Used for signing actions and proofs
  • Stored in encrypted keyfiles for persistence

Exclusive Leasing

Prevents "clone" attacks where multiple instances use the same identity:

  • Only one instance can hold a lease at a time
  • Atomic acquisition via Authority service
  • Automatic renewal while in use
  • Clone attempts are rejected

State Chain

Tamper-evident log of agent actions:

  • Hash-linked entries (BLAKE3)
  • Signed with Ed25519
  • Fork detection for clone prevention
  • Verifiable by services

Proof Bundles

Complete proof for verification:

  • Agent identity
  • Active lease
  • State chain head
  • Challenge-response signature

Security

Feature Implementation
Identity Keys Ed25519
Hashing BLAKE3
Lease Tokens PASETO v4
Domain Separation Prevents cross-protocol attacks
Constant-time comparisons Timing attack prevention

Framework Support

Framework Status Installation
LangChain Supported pip install sigaid[langchain]
CrewAI Supported pip install sigaid[crewai]
AutoGen Supported pip install sigaid[autogen]
OpenAI Agents Supported Base package

Environment Variables

SIGAID_API_KEY=sk_live_xxx     # API key for Authority
SIGAID_AUTHORITY_URL=https://api.sigaid.com  # Authority URL
SIGAID_LOG_LEVEL=INFO          # Logging verbosity

Development

# Install dev dependencies
pip install -e ".[dev]"

# Run tests
pytest tests/ -v

# Type checking
mypy sigaid/

# Linting
ruff check sigaid/

License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sigaid-0.1.0.tar.gz (493.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sigaid-0.1.0-py3-none-any.whl (103.1 kB view details)

Uploaded Python 3

File details

Details for the file sigaid-0.1.0.tar.gz.

File metadata

  • Download URL: sigaid-0.1.0.tar.gz
  • Upload date:
  • Size: 493.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for sigaid-0.1.0.tar.gz
Algorithm Hash digest
SHA256 c7595708ed26a85f0a059825e4e9f5179bdf6a2ef16b84ea4df2ea02ab70204c
MD5 62bde11b1e72b44bf94e93fc3e69347f
BLAKE2b-256 d9ddb51c06b9bff7d2ce92820449062018f8af26b176df47c355f5e54abf03fc

See more details on using hashes here.

Provenance

The following attestation bundles were made for sigaid-0.1.0.tar.gz:

Publisher: publish.yml on trustorno/sigaid

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sigaid-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: sigaid-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 103.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for sigaid-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 15df06c4ec6d7c24f15e1dc520371d5e102226ace12497681f9f1e0d0b5515a7
MD5 6268eb6317816392993b55dcdbbe599c
BLAKE2b-256 f6be7222681796a60d18cb5fb3f8455f1db75aa6459d375578656b67830378b3

See more details on using hashes here.

Provenance

The following attestation bundles were made for sigaid-0.1.0-py3-none-any.whl:

Publisher: publish.yml on trustorno/sigaid

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page