mcpField
E
Ethereum Keystore Encryption

Ethereum Keystore Encryption

本地服务
github.com/nirholas金融数据283 周前更新

关于 Ethereum Keystore Encryption

Keystore MCP Server 是一个 Ethereum keystore 加解密 MCP 服务,遵循 Web3 Secret Storage Definition Version 3 标准。它面向需要离线保管钱包私钥的用户,提供加密、解密、文件管理和密码更换等工具。

主要功能

  1. 01遵循 Web3 Secret Storage V3 格式
  2. 02支持 scrypt 与 PBKDF2 两种 KDF
  3. 03提供 9 个工具和 4 个资源
  4. 04包含 4 个提示词工作流
  5. 05keystore 文件以 0600 权限保存

适用场景

  1. 01为冷存储钱包生成加密 keystore 文件
  2. 02批量加密多个钱包私钥
  3. 03审计或迁移已有 keystore 文件

MCP 相关

该项目是一个 MCP 服务,向 MCP 客户端暴露 keystore 相关的 tools、resources 和 prompts。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 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

一个用于以太坊 keystore 加密、解密和管理的 Model Context Protocol (MCP) 服务,遵循 Web3 Secret Storage Definition Version 3 标准。

功能

工具(9)
  • encrypt_keystore - 将私钥加密为 Web3 Secret Storage V3 格式
  • decrypt_keystore - 解密 keystore 以恢复私钥
  • save_keystore_file - 使用标准以太坊命名保存 keystore
  • load_keystore_file - 加载并校验 keystore 文件
  • get_keystore_info - 无需解密即可提取元数据
  • validate_keystore - 校验 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} - 示例 keystore
提示词(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
  • Cipher:AES-128-CTR
  • MAC:Keccak-256
  • UUID:版本 4
默认 Scrypt 参数
参数值描述
N262144 (2^18)CPU/内存开销
r8块大小
p1并行度
dklen32派生密钥长度
默认 PBKDF2 参数
参数值描述
c262144迭代次数
prfhmac-sha256PRF
dklen32派生密钥长度

安全

⚠️ 重要安全注意事项:

  1. 切勿分享 keystore 密码 - 与私钥同等对待
  2. 使用强密码 - 至少 12 个字符,包含大小写字母、数字、符号
  3. 安全存储文件 - 文件以 0600 权限创建
  4. 气隙隔离操作 - 高价值钱包请离线使用
  5. 备份 keystore - 将加密备份存储在多个位置

示例

加密私钥
result = await encrypt_keystore(
    private_key="0x...",
    password="strong-password-123",
    kdf="scrypt"
)
解密 Keystore
result = await decrypt_keystore(
    keystore=keystore_json,
    password="strong-password-123"
)
保存 Keystore 文件
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

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。