返回市场
慢时间-mcp-服务器

慢时间-mcp-服务器

作者:bmorphism3 星标更新:2025-01-02

项目介绍

Slowtime MCP 服务器

一个用于安全时间操作的模型上下文协议服务器,具备定时攻击防护和时间锁加密功能。

                                     ┌──────────────┐
                                     │   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      ├───►│  分析结果  │
金库统计 ─────►│   引擎      │    │            │
              └─────────────┘    └─────────────┘

架构

服务器由四个主要组件构成:

  1. TimeFuzz:通过以下方式提供定时攻击防护:

    • 随机持续时间模糊处理
    • 常数时间比较
    • 带抖动的时间戳
    • 随机操作延迟
  2. TimeKeeper:管理区间,包括:

    • 创建/暂停/恢复操作
    • 进度跟踪
    • 自动清理
    • 模糊处理集成
  3. TimeLock:处理加密,包括:

    • drand网络集成
    • 基于区间的解密
    • 自动清理
    • 安全随机数生成
  4. TimeVault:提供持久存储和分析:

    • DuckDB WASM 基础存储
    • 加密数据的历史追踪
    • 分析和统计
    • 带过滤条件的查询能力

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);

贡献

  1. 分叉仓库
  2. 创建你的功能分支
  3. 提交更改
  4. 推送到分支
  5. 创建拉取请求

许可证

MIT 许可证 - 详情见 LICENSE 文件