mcpField
E
Ethereum Keystore Encryption

Ethereum Keystore Encryption

ローカル
github.com/nirholas金融データ283 週間前に更新

Ethereum Keystore Encryption について

Keystore MCP Server は、Web3 Secret Storage Definition Version 3 標準に従って Ethereum キーストアを暗号化・復号するための MCP サーバーです。コールドストレージでウォレット鍵を保管するユーザー向けに、ファイル管理やパスワード変更のツールを提供します。

主な機能

  1. 01Web3 Secret Storage V3 形式に対応
  2. 02scrypt と PBKDF2 の KDF に対応
  3. 039 のツールと 4 のリソースを提供
  4. 044 つのプロンプトワークフローを含む
  5. 05キーストアファイルを 0600 権限で保存

活用シーン

  1. 01コールドストレージ用の暗号化キーストアファイルの作成
  2. 02複数ウォレットの鍵の一括暗号化
  3. 03既存キーストアファイルの監査や移行

MCP 対応

本プロジェクトは MCP サーバーであり、キーストア関連のツール、リソース、プロンプトを MCP クライアントに公開します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"nirholas-keystore": {
"command": "uvx",
"args": [
"keystore-mcp-server"
]
}
}
}
起動コマンドuvx keystore-mcp-server

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypikeystore-mcp-server1.0.0

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Keystore MCP サーバー

PyPI MCP Registry

Web3 Secret Storage Definition Version 3 標準に準拠した、Ethereum キーストアの暗号化、復号、および管理を行うための Model Context Protocol (MCP) サーバーです。

機能

ツール (9)
  • encrypt_keystore - 秘密鍵を Web3 Secret Storage V3 形式に暗号化します
  • decrypt_keystore - キーストアを復号して秘密鍵を復元します
  • save_keystore_file - Ethereum 標準の命名規則でキーストアを保存します
  • load_keystore_file - キーストアファイルを読み込んで検証します
  • get_keystore_info - 復号せずにメタデータを抽出します
  • validate_keystore - キーストアの構造を検証します
  • change_keystore_password - パスワードを変更し、必要に応じて KDF をアップグレードします
  • batch_encrypt_keystores - 複数のウォレットを暗号化します
  • keystore_to_private_key_file - 復号した秘密鍵をエクスポートします(危険)
リソース (4)
  • keystore://specification - Web3 Secret Storage V3 仕様
  • keystore://security-guide - セキュリティのベストプラクティス
  • keystore://kdf-comparison - Scrypt と PBKDF2 の比較
  • keystore://examples/{type} - キーストアの例
プロンプト (4)
  • secure_wallet_backup - ガイド付きのバックアップ作成
  • keystore_migration - レガシー形式からの移行
  • keystore_recovery - 復元のサポート
  • keystore_security_audit - セキュリティ監査ワークフロー

インストール

pip install -e .

# Or with dev dependencies
pip install -e ".[dev]"

使用方法

サーバーの起動
keystore-mcp-server
Claude Desktop の設定
{
  "mcpServers": {
    "keystore": {
      "command": "keystore-mcp-server"
    }
  }
}

暗号化標準

Web3 Secret Storage V3
  • KDF: scrypt(推奨)または pbkdf2
  • 暗号方式: AES-128-CTR
  • MAC: Keccak-256
  • UUID: バージョン 4
デフォルトの Scrypt パラメータ
パラメータ値説明
N262144 (2^18)CPU/メモリコスト
r8ブロックサイズ
p1並列化
dklen32派生鍵の長さ
デフォルトの PBKDF2 パラメータ
パラメータ値説明
c262144反復回数
prfhmac-sha256PRF
dklen32派生鍵の長さ

セキュリティ

⚠️ 重要なセキュリティ上の注意:

  1. キーストアのパスワードを決して共有しないでください - 秘密鍵と同様に扱ってください
  2. 強力なパスワードを使用してください - 最低 12 文字で、大文字と小文字、数字、記号を組み合わせてください
  3. ファイルを安全に保管してください - ファイルは 0600 のパーミッションで作成されます
  4. エアギャップ環境での操作 - 高額なウォレットにはオフラインで使用してください
  5. キーストアをバックアップしてください - 暗号化されたバックアップを複数の場所に保存してください

例

秘密鍵の暗号化
result = await encrypt_keystore(
    private_key="0x...",
    password="strong-password-123",
    kdf="scrypt"
)
キーストアの復号
result = await decrypt_keystore(
    keystore=keystore_json,
    password="strong-password-123"
)
キーストアファイルの保存
result = await save_keystore_file(
    keystore=keystore_json,
    directory="./keystores"
)
# Creates: UTC--2024-01-15T10-30-00.000Z--address.json

テスト

pytest tests/ -v

ライセンス

MIT License

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。