一个用于安全时间操作的模型上下文协议服务器,具备定时攻击防护和时间锁加密功能。
┌──────────────┐
│ Claude │
│ Desktop │
└──────┬───────┘
│
▼
┌──────────────┐ ┌──────────────┐
│ Timelock │◄──────────────────►│ Slowtime │
│ Encryption │ │ MCP │
└──────────────┘ │ Server │
└──────┬───────┘
│
▼
┌──────────────┐ ┌──────────────┐
│ Timing │◄─────────────────►│ Interval │
│ Protection │ │ Manager │
└──────────────┘ └──────────────┘
输入时间 ──┐
┌▼─────────────┐
│ 随机模糊处理 │ ┌─────────────┐
│ (100-5000ms) ├────►│ 带抖动的 │
└─────────────┘ │ 时间戳 │
└─────────────┘
数据 ───────┐
┌▼────────────┐ ┌────────────┐ ┌────────────┐
│ 加密 │ │ 区间 │ │ 联盟熵 │
│ 使用 ├───►│ 持续时间 ├───►│ 网络 │
│ 时间锁 │ │ 剩余时间 │ │ │
└────────────┘ └────────────┘ └────────────┘
[开始]──►[活动]──┐
▲ │
│ ▼
[恢复] [暂停]
│ ▲
▼ │
[暂停中]
在 Claude Desktop 配置文件 ~/Library/Application Support/Claude/claude_desktop_config.json 中添加以下内容:
{
"mcpServers": {
"slowtime": {
"command": "node",
"args": ["/path/to/slowtime-mcp-server/build/index.js"]
}
}
}
start_interval "专注时间" 25 ───► [创建了25分钟区间]
│
check_interval <id> ◄───────────────────┘
│
pause_interval <id> ◄───────────────────┘
│
resume_interval <id> ◄───────────────────┘
1. 开始区间:
"专注时间" (25分钟) ──► [区间ID: abc123]
2. 加密数据:
"秘密" + abc123 ──► [时间锁ID: xyz789]
3. 尝试解密:
- 在区间结束前: "尚未可解密"
- 在区间结束后: "秘密"
操作 ──┬──► 随机延迟 (100-5000ms)
│
├──► 带抖动的时间戳
│
└──► 常数时间比较
┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ 加密 │ │ 分布式 │ │ 时间锁 │ │ DuckDB │
│ 数据 ├───►│ 随机性 ├───►│ 保护的数据 ├───►│ 时间金库 │
│ │ │ 网络 │ │ │ │ 存储 │
└─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘
│ ▲
│ ┌──────────────┘
▼ │
┌─────────────┴─┐
│ 分析 │
│ & 统计 │
└───────────────┘
查询历史 ──┐
├──► ┌─────────────┐
过滤选项 ┘ │ DuckDB │ ┌─────────────┐
│ WASM ├───►│ 分析结果 │
金库统计 ─────►│ 引擎 │ │ │
└─────────────┘ └─────────────┘
服务器由四个主要组件构成:
TimeFuzz:通过以下方式提供定时攻击防护:
TimeKeeper:管理区间,包括:
TimeLock:处理加密,包括:
TimeVault:提供持久存储和分析:
查询加密时间金库的历史数据和统计信息:
# 列出带过滤条件的金库历史
list_vault_history --interval_id=abc123 --decrypted_only=true --limit=10
# 获取金库统计信息
get_vault_stats
示例输出:
总金库数量: 150
已解密金库数量: 75
平均解密时间: 45秒
TimeVault 使用 DuckDB WASM 进行持久存储,其模式如下:
CREATE TABLE timevaults (
id VARCHAR PRIMARY KEY,
encrypted_data TEXT NOT NULL,
round_number BIGINT NOT NULL,
created_at TIMESTAMP NOT NULL,
decrypted_at TIMESTAMP,
interval_id VARCHAR NOT NULL,
metadata JSON
);
-- 用于高效查询的索引
CREATE INDEX idx_interval_id ON timevaults(interval_id);
CREATE INDEX idx_created_at ON timevaults(created_at);
MIT 许可证 - 详情见 LICENSE 文件