Attestix について
Attestixは、AIエージェントの構築とガバナンスに使うオープンソースのアイデンティティ・認証情報ツールキットです。アイデンティティ、委任、コンプライアンスのワークフローと複数言語でのオフライン検証を備えますが、1.0前の段階で、独立したセキュリティ監査は受けていません。
主な機能
- 01エージェントのアイデンティティ作成と検証
- 02W3C検証可能な認証情報の発行
- 03機能の委任と権限の管理
- 04コンプライアンスと来歴の記録
- 05ハッシュ連鎖監査記録の作成
- 06複数言語でのオフライン検証
活用シーン
- 01検証可能なエージェントIDの確立
- 02学習データとモデル系譜の記録
- 03認証情報と委任チェーンの確認
- 04コンプライアンス審査資料の整理
MCP 対応
AttestixはMCPサーバーを提供し、MCPクライアントからアイデンティティ、認証情報、委任、評判、コンプライアンスのツールを利用できます。RESTインターフェースも備えます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Attestix
AI エージェントのための署名付きアイデンティティと証拠
AI ガバナンスのワークフローを支える、暗号学的に検証可能な証拠を記録します。
オープンソースのアイデンティティ、認証情報、コンプライアンスの自動化、信頼スコアリングを提供します。
MCP および REST インターフェース、
自動機能テストと Attestix 相互運用性ベンチマークを備えています。
LangChain、OpenAI Agents SDK、CrewAI との実際の統合に対応しています。
ステータス:1.0 リリース前のツールキットです。この README では、現在の main ソースについて説明しています。 メンテナーは 1 人のプロジェクトです。コミュニティからの 貢献を歓迎します。独立した第三者によるセキュリティ監査はまだ 実施されていません。1.0 リリース前のオープンソース暗号スタックと同様に、十分な注意を払ってデプロイしてください。
ソースと検証状況
公開済みのランタイム強化版は、PyPI の Python attestix 0.4.2 で利用できます。このソースは、0.4.3 のウェブサイト/ドキュメント更新も準備します。ソースのメタデータは、レジストリへの公開を証明するものではありません。JavaScript のオフライン検証ツールも npm attestix 0.4.2 として公開されています。main にはその後の変更が含まれている可能性があります。リリースノートを確認し、レビューしたバージョンを固定してください。Go と Java の 0.4.2 は公開済みです。R と Rust は GitHub で 0.4.2 がリリースされていますが、このリリース時点では CRAN と crates.io で引き続き 0.4.1 が提供されています。
- 認証情報の検証では、記載された発行者を、サポート対象の証明コントローラーに結び付けます。NFC 正規化後に曖昧なキーがある場合、署名または検証の前に失敗します。
- プレゼンテーションの検証には、呼び出し元が指定する期待チャレンジとドメインが必要です。署名だけではリプレイ保護になりません。
- REST の利用では、デフォルトで API キーが必要です。デフォルトの REST サーバーはシングルテナントで、デフォルト以外のテナントヘッダーを拒否します。共有 API キーではテナント間の認可は提供されません。
- JSON の更新では、共有ストレージロックを使用します。ローカルの署名キーとデータディレクトリを保護してください。本番環境に移行する前に、バックアップの復元、分離、および選択した署名者/バックエンドをテストしてください。
workflow_completeは、記録されたドキュメントの完了状況を示します。legal_conformityは評価されません。非推奨のcompliantフィールドは、ワークフロー上の別名です。生成された宣言は、プロバイダーによるレビュー用のドラフトです。- ローカルでの消去では、外部のレプリカ、リモートログ、以前に共有された認証情報、サードパーティのバックアップは消去できません。過去のデータと認証情報の移行は、別途計画してください。
インストール
# Reviewed release (check release notes before upgrading):
pip install attestix==0.4.2
0.4.0 以降、サポート対象の名前空間は正規の
attestix.*名前空間です。以前のフラットなレイアウト(from services... import、from auth... importなど)も、初回インポート時にDeprecationWarningを出力する 薄い非推奨シムを介して引き続き動作し、v0.5.0 で削除される予定です。 できるだけ早く、インポートをfrom attestix.services... importに 更新してください。
CLI
attestix status # System overview
attestix init --name MyBot # Create agent identity
attestix compliance <agent-id> # Check recorded documentation gaps
attestix verify <agent-id> # Verify identity cryptographically
attestix audit <agent-id> # View hash-chained audit trail
attestix credential --list # List W3C Verifiable Credentials
REST API
pip install 'attestix[api]'
# Configure ATTESTIX_API_KEY in your environment before starting the API.
uvicorn attestix.api.main:app --reload # Swagger docs at http://localhost:8000/docs
Web ダッシュボード
pip install streamlit
streamlit run demo/webapp/app.py # Opens at http://localhost:8501
クイックデモ
python examples/quickstart.py # Local synthetic workflow
あらゆる言語で検証
Attestix の認証情報は、公開済みの正規 JSON および Ed25519 検証プロファイルを使用します。 言語別の検証ツールリポジトリでは適合性テスト用フィクスチャを共有していますが、信頼入力と 委任チェーンのチェックはそれぞれ異なります。各検証ツールの README を読み、レビュー済みのバージョンを固定してください。 暗号学的な有効性は、発行者の信頼性、認可、失効、リプレイポリシーとは別のものです。
| 言語 | インストール | 状況 |
|---|---|---|
| Python | pip install attestix==0.4.2 | 公開済みの強化ベースライン:PyPI 0.4.2 |
| JS / TS | npm install [email protected] | npm 0.4.2、検証ツールのソース(attestix-js) |
| Go | go get github.com/VibeTensor/[email protected] | Go モジュール v0.4.2、検証ツールのソース(attestix-go) |
| Rust | cargo add attestix | crates.io 0.4.1、GitHub の v0.4.2 ソース(attestix-rs) |
| Java | Maven com.vibetensor:attestix:0.4.2 | Maven 0.4.2、検証ツールのソース(attestix-java) |
| R | リポジトリのインストール手順を参照 | CRAN 0.4.1、GitHub の 0.4.2 ソース(attestix-r) |
すべての検証ツールは、厳密な RFC 8785 とは異なる Attestix の正規 JSON プロファイルと、
共有の spec/verify/v1
ベクトルに対する Ed25519 署名(RFC 8032)を対象としています。ブラウザーで https://attestix.io/verify から検証するか、
バンドルのワイヤーフォーマットを https://attestix.io/spec/bundle/v1 で確認してください。
Attestixを選ぶ理由
EU AI Actは段階的に適用されます。欧州委員会は現在、特定の高リスク用途については2027年12月2日、規制対象製品に組み込まれた高リスクシステムについては2028年8月2日を適用日として掲載しています。適用可否は、システムおよび事業者の役割によって異なります。欧州委員会の最新のAI Actガイダンスをご覧ください。
Attestixは証拠の整理を支援します。署名や生成された宣言は、法的な適合性を立証するものでも、該当する評価プロセスに代わるものでもありません。
Attestixは、アプリケーション内で持ち運び可能な証拠を必要とする開発者向けに、エージェントのアイデンティティ、署名付き認証情報、委任、オフライン検証を提供します。より広範なガバナンスプラットフォームも、API、SDK、エージェントガバナンス、コンプライアンスワークフローを提供しています。各プラットフォームの最新機能を要件と照らし合わせて評価してください。
エージェントのアイデンティティは、ウォールドガーデン(Microsoft Entra、AWS AgentCore、ERC-8004)の間で分断されています。Attestixは、エージェントのアイデンティティ、AIガバナンスの証拠、検証可能な認証情報を1つのツールキットにまとめています。
Attestixはこのギャップを埋めます。
モジュール
| モジュール | 機能 |
|---|---|
| Identity | MCP OAuth、A2A、DID、APIキーを橋渡しする統合エージェントアイデンティティトークン(UAIT)。ローカルデータ消去ツール |
| Agent Cards | A2A互換のエージェントカードの解析、生成、検出 |
| DID | W3C分散型識別子(did:key、did:web)の作成と解決 |
| Delegation | EdDSA署名付きJWTトークンによるUCAN形式のケイパビリティ委任 |
| Reputation | カテゴリー別内訳を含む、直近の情報に重み付けした信頼スコア(0.0 - 1.0) |
| Compliance | EU AI Actのリスクプロファイル、適合性評価(第43条)、附属書Vの宣言 |
| Credentials | Ed25519Signature2020証明を使用するW3C検証可能な認証情報とプレゼンテーション |
| Provenance | トレーニングデータの来歴(第10条)、モデルの系譜(第11条)、ハッシュチェーンによる監査証跡(第12条) |
| Blockchain | Ethereum Attestation ServiceによるBase L2への成果物ハッシュのアンカー登録、Merkleバッチ処理 |
クイックスタート
MCP サーバーとして(Claude Code)
Claude Codeの設定(~/.claude.json)に追加します。
{
"mcpServers": {
"attestix": {
"type": "stdio",
"command": "python",
"args": ["-m", "attestix.main"]
}
}
}
次に、Claudeに依頼します。
「データ分析エージェント用に、次の機能を持つアイデンティティを作成してください:data_analysis, reporting」
Pythonライブラリとして
from attestix.services.identity_service import IdentityService
from attestix.services.compliance_service import ComplianceService
from attestix.services.credential_service import CredentialService
identity_svc = IdentityService()
compliance_svc = ComplianceService()
credential_svc = CredentialService()
# 1. Create an agent identity
agent = identity_svc.create_identity(
display_name="MyAgent",
source_protocol="manual",
capabilities=["data_analysis", "reporting"],
description="Analyzes quarterly financial data",
issuer_name="VibeTensor",
expiry_days=365,
)
agent_id = agent["agent_id"] # attestix:f9bdb7a94ccb40f1
agent_did = agent["issuer"]["did"] # did:key:z6Mk...
# 2. Create a compliance profile
profile = compliance_svc.create_compliance_profile(
agent_id=agent_id,
risk_category="limited",
provider_name="VibeTensor",
intended_purpose="Analyzes quarterly financial data",
)
# 3. Issue a verifiable credential
credential = credential_svc.issue_credential(
subject_id=agent_id,
credential_type="AgentIdentityCredential",
issuer_name="VibeTensor",
claims={"capabilities": ["data_analysis", "reporting"]},
expiry_days=365,
)
print(credential["proof"]["type"]) # Ed25519Signature2020
9つすべてのモジュールを網羅する、最初から最後までの完全な手順を確認するには、クイックスタートを実行します。
python examples/quickstart.py
ソースから
git clone https://github.com/VibeTensor/attestix.git
cd attestix
pip install -r requirements.txt
python -m attestix.main
AIガバナンスの証拠ワークフロー
提供者によるレビューに向けて、高リスクAIエージェントのドキュメント作成ワークフローを記録します。
1. create_agent_identity --> UAIT with DID (Ed25519 signed)
2. record_training_data --> Article 10 data governance
3. record_model_lineage --> Article 11 technical documentation
4. create_compliance_profile --> Risk categorization + obligations
5. record_conformity_assessment --> Operator-recorded assessment details
6. generate_declaration_of_conformity --> Annex V declaration + W3C VC
7. create_verifiable_presentation --> Signed VP for a verifier with a fresh challenge
現在のAttestixワークフローでは、高リスクと指定されたプロファイルの自己評価をブロックします。この適用ポリシーは、法的に適用される評価経路を一律に決定するものではありません。
record_conformity_assessment(assessment_type="self", ...)
--> ERROR: "High-risk AI systems require third_party conformity assessment"
詳しい手順:EU AI Actコンプライアンスガイド
仕組み
認証情報とプレゼンテーションには署名が付与され、監査チェーンには完全性を確認するハッシュが付与されます。 すべての記録や外部成果物に、個別の署名が付与されているわけではありません。
| 成果物 | 標準 | 署名 |
|---|---|---|
| エージェントアイデンティティ(UAIT) | カスタム + DID | Ed25519 |
| 検証可能な認証情報 | W3C VC Data Model 1.1 | Ed25519Signature2020 |
| 検証可能なプレゼンテーション | W3C VP | Ed25519Signature2020 |
| 委任トークン | UCAN形式のJWT | EdDSA |
| 証拠認証情報のドラフト | Attestixドキュメントプロファイル | Ed25519 |
| 監査証跡 | ハッシュチェーンログ | SHA-256チェーン |
| ブロックチェーンアンカー | Base L2上のEAS | オンチェーン |
ローカルでの運用。 コアとなるアイデンティティおよび認証情報の操作では、ローカルのJSONストレージを使用できます。 リモートDID解決、ホスト型署名サービス、ブロックチェーン連携には、設定済みのサービスが必要です。
アーキテクチャ
attestix/ # Canonical Python package (v0.4.0)
main.py # MCP server entry point (MCP tools)
cli.py # `attestix` console script
config.py # Environment-based configuration
errors.py # Error handling with JSON logging
api/ # FastAPI REST surface
main.py # uvicorn entry: `attestix.api.main:app`
routers/ # REST routers
auth/
crypto.py # Ed25519 key management
ssrf.py # SSRF protection for outbound HTTP
services/
identity_service.py # UAIT lifecycle, local data erasure
agent_card_service.py # A2A agent card operations
did_service.py # DID creation and resolution
delegation_service.py # UCAN delegation tokens
reputation_service.py # Trust scoring
compliance_service.py # Operator-recorded profiles and assessment evidence
credential_service.py # W3C VCs and VPs
provenance_service.py # Training data, lineage, audit trail
blockchain_service.py # Base L2 anchoring via EAS
storage/ # Repository seam (file / memory / pg)
signing/ # Signer seam (in-process / kms)
audit/ # Tamper-evident event chain
tenancy/ # Tenant context
idempotency/ # Stripe-style idempotency keys + middleware
blockchain/
merkle.py # Merkle tree for batch anchoring
tools/ # MCP tool definitions (one file per module)
v0.4.0 より前のフラットなレイアウト(services/、auth/、storage/ など)は、同じパスに非推奨の互換用シムとして保持されています。これらは正規の attestix.* 名前空間から再エクスポートし、初回インポート時に DeprecationWarning を出力します。シムは v0.5.0 で削除される予定です。
MCP ツール
アイデンティティ
| ツール | 説明 |
|---|---|
create_agent_identity | 任意のアイデンティティソースから UAIT を作成します |
resolve_identity | トークンの種類を自動検出して登録します |
verify_identity | 存在、失効、有効期限、署名を確認します |
translate_identity | A2A、DID Document、OAuth、または要約に変換します |
list_identities | プロトコル/失効フィルターを指定して UAIT を一覧表示します |
get_identity | UAIT の詳細をすべて取得します |
revoke_identity | UAIT を失効済みとしてマークします |
purge_agent_data | ローカルで管理されているレコードと、解析可能なローカルバックアップを削除します。外部のコピーは別途処理が必要です |
エージェントカード
| ツール | 説明 |
|---|---|
parse_agent_card | A2A Agent Card JSON を解析します |
generate_agent_card | ホスティング用の agent.json を生成します |
discover_agent | URL から /.well-known/agent.json を取得します |
DID
| ツール | 説明 |
|---|---|
create_did_key | Ed25519 キーペアを使用して、一時的な did:key を生成します |
create_did_web | セルフホスト用の did:web DID Document を生成します |
resolve_did | 任意の DID を解決して、その DID Document を取得します |
委任
| ツール | 説明 |
|---|---|
create_delegation | UCAN 形式のケイパビリティ委任トークンを作成します |
verify_delegation | JWT の署名、有効期限、構造を検証します |
list_delegations | エージェントとロールごとに委任を一覧表示します |
revoke_delegation | 委任トークンを失効させます |
レピュテーション
| ツール | 説明 |
|---|---|
record_interaction | 結果を記録し、信頼スコアを更新します |
get_reputation | カテゴリー別の内訳とともにスコアを取得します |
query_reputation | レピュテーションの条件でエージェントを検索します |
コンプライアンス
| ツール | 説明 |
|---|---|
create_compliance_profile | リスク分類を含む EU AI Act プロファイルを作成します |
get_compliance_profile | コンプライアンスプロファイルの詳細をすべて取得します |
update_compliance_profile | 既存のコンプライアンスプロファイルを更新します |
get_compliance_status | ギャップ分析:完了済みと未対応の要件 |
record_conformity_assessment | 自己評価または第三者評価を記録します(第43条) |
generate_declaration_of_conformity | Annex V の適合宣言を生成し、VC を自動発行します |
list_compliance_profiles | リスクカテゴリーとコンプライアンス状況で絞り込みます |
認証情報
| ツール | 説明 |
|---|---|
issue_credential | Ed25519Signature2020 証明を含む W3C VC を発行します |
verify_credential | 署名、有効期限、失効を確認します |
verify_credential_external | 外部ソースからの任意の VC JSON を検証します |
revoke_credential | Verifiable Credential を失効させます |
get_credential | VC の詳細をすべて取得します |
list_credentials | エージェント、種類、有効性で絞り込みます |
create_verifiable_presentation | 検証者向けに VC を署名済み VP にまとめます |
verify_presentation | 埋め込み認証情報を含む VP を検証します |
来歴
| ツール | 説明 |
|---|---|
record_training_data | トレーニングデータのソースを記録します(第10条) |
record_model_lineage | モデルの系譜とメトリクスを記録します(第11条) |
log_action | ハッシュチェーン監査証跡とともにエージェントのアクションを記録します(第12条) |
get_provenance | 来歴レコードの詳細をすべて取得します |
get_audit_trail | フィルターを指定して監査ログを検索します |
ブロックチェーン
| ツール | 説明 |
|---|---|
anchor_identity | EAS を介して Base L2 にアイデンティティのハッシュをアンカーします |
anchor_credential | EAS を介して Base L2 にクレデンシャルのハッシュをアンカーします |
anchor_audit_batch | 監査ログエントリーを Merkle バッチとしてアンカーします |
verify_anchor | オンチェーンのアンカーをローカルデータと照合して検証します |
get_anchor_status | 成果物のアンカー状態を取得します |
estimate_anchor_cost | アンカーにかかるガスコストを見積もります |
標準への準拠
公開テストと準拠フィクスチャでは、署名、正規化、クレデンシャル、委任、インターフェースに関する一部の動作を検証しています。これらは、W3C との普遍的な相互運用性、法令への適合、認証、運用上の受け入れを保証するものではありません。テストケースと、選択した検証ツールの文書に記載された制限事項をご確認ください。 テストを実行してください。
docker build -f Dockerfile.test -t attestix-bench . && docker run --rm attestix-bench
| 標準 | テスト内容 | テスト数 |
|---|---|---|
| RFC 8032(Ed25519) | IETF の正規ベクトル 4 件:鍵導出、署名生成(完全一致)、検証、改ざんの拒否 | 18 |
| W3C VC Data Model 1.1 | クレデンシャル構造、Ed25519Signature2020 プルーフ、変更可能なフィールドの除外、VP 構造、リプレイ攻撃防止 | 25 |
| W3C DID Core 1.0 | did:key および did:web ドキュメントの構造、ラウンドトリップ解決、Ed25519VerificationKey2020 | 18 |
| UCAN v0.9.0 | JWT ヘッダー(alg/typ/ucv)、すべてのペイロードフィールド、ケイパビリティの段階的な制限、期限の適用、失効 | 18 |
| MCP プロトコル | MCP ツールの登録、9 モジュール、非同期規約、snake_case 命名 | 5 |
| パフォーマンス | Ed25519 鍵生成、JSON 正規化、署名/検証、アイデンティティ作成、クレデンシャル操作 | 7 |
パフォーマンス
ベンチマークの結果は、インタープリター、ハードウェア、ストレージ、ワークロードによって異なります。対象環境でリポジトリのベンチマークを実行してください。ここに記載の静的なレイテンシ値は、運用上の保証ではありません。
セキュリティ
- すべての UAIT、VC、評価、宣言、監査エントリーに Ed25519 署名を使用
- 改ざんを検知できるログ記録のための、SHA-256 による ハッシュチェーン監査証跡
- SSRF 保護により、プライベート IP、メタデータエンドポイント、DNS リバインディングをブロック
ATTESTIX_KEY_PASSWORDが設定されている場合、AES-256-GCM による 暗号化鍵ストレージ- ツールのレスポンスで秘密鍵が公開されることはありません
- コア操作に外部 API 呼び出しは不要です
研究論文
Attestix は、システムアーキテクチャ、暗号処理パイプライン、ガバナンス証跡ワークフロー、および自動テスト 531 件(機能テスト 440 件+RFC/W3C 準拠ベンチマーク 91 件)による評価を扱った研究論文で紹介されています。
Attestix: 自律型 AI エージェントのための統合アテステーション基盤 Pavan Kumar Dubasi、VibeTensor Private Limited、2026 年。
Attestix の引用
研究で Attestix を使用する場合は、次のように引用してください。
@article{dubasi2026attestix,
title = {Attestix: A Unified Attestation Infrastructure for Autonomous AI Agents},
author = {Dubasi, Pavan Kumar},
year = {2026},
url = {https://github.com/VibeTensor/attestix},
note = {Open-source. Apache License 2.0}
}
ドキュメント
ドキュメント全文は attestix.io/docs をご覧ください。
| ガイド | 説明 |
|---|---|
| はじめに | インストールと5分でできる最初のアイデンティティの作成 |
| EU AI Actへの準拠 | 段階的な準拠ワークフロー |
| リスク分類 | AIシステムのリスクカテゴリーを判断する方法 |
| アーキテクチャ | システム設計とデータフロー |
| APIリファレンス | パラメーター表付きのMCPツール |
| 統合ガイド | LangChain、OpenAI Agents SDK、CrewAI、MCPクライアント |
| 設定 | 環境変数、ストレージ、Docker |
| 研究論文 | 論文、引用形式、評価の概要 |
| レピュテーションスコアリング | 新しさを重視した信頼スコアリングとカテゴリー |
| 使用例 | 一般的なワークフローのエンドツーエンドのコード例 |
免責事項
Attestixは、機械可読で暗号署名されたコンプライアンス文書を生成します。これは文書化と証拠管理のためのツールシステムです。法律顧問への相談、認証機関による評価、または正式な規制当局への申請に代わるものではありません。 コンプライアンスに関する判断については、必ず有資格の法律専門家にご相談ください。
スポンサー
Attestixは無料のオープンソースソフトウェアです。ご自身または所属組織で役立てていただいている場合は、継続的な開発、セキュリティ監査、インフラストラクチャを支援するため、スポンサーをご検討ください。
貢献
開発環境のセットアップとガイドラインについては、CONTRIBUTING.mdをご覧ください。
ライセンス
Apache License 2.0です。LICENSEをご覧ください。
制作:VibeTensor
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。