Back to MCP directory
publicPublicdnsLocal runtime

gibber-mcp

一个基于Express.js的MCP服务器,提供加密工具包括密钥对生成、共享密钥派生和消息加密/解密功能,支持SSE实时通信。

article

README

🚀 小型加密术

小型加密术旨在实现一个简单的加密系统,用于在机器人之间安全传输信息,保障信息的安全性。

🚀 快速开始

本项目的主要目标是实现一个简单的加密系统,用于在机器人之间安全传输信息。下面为你详细介绍操作流程和实施步骤。

✨ 主要特性

  • 实现了一个简单的加密系统,可用于机器人之间的安全信息传输。
  • 运用了 RSA 密钥对生成、Diffie - Hellman 算法导出共享秘密以及 AES - 256 - CBC 加密等技术。

📦 安装指南

文档中未提及安装步骤,故跳过此章节。

💻 使用示例

基础用法

以下是实现加密和解密的基本代码示例:

// 生成公钥和私钥
const { publicKey, privateKey } = await generateKeyPair();

// 导出共享秘密
const sharedSecret = await deriveSharedSecret({
  userPublicKey: publicKey,
  myPrivateKey: privateKey
});

// 加密明文
const { iv, ct } = await encrypt({
  sharedSecret,
  plaintext: "PAPERCLIP"
});

// 解密密文
const decryptedText = await decrypt({
  sharedSecret,
  iv,
  ct
});

高级用法

以下是机器人之间典型对话的示例,展示了整个加密和解密过程在实际对话中的应用:

1. 生成公钥和私钥

{
  "role": "assistant",
  "content": [
    {
      "type": "tool_use",
      "id": "toolu_0123456789abcdef",
      "name": "generate_key_pair"
    }
  ]
}

2. 导出共享秘密

{
  "role": "user",
  "content": [
    {
      "type": "tool_result",
      "tool_use_id": "toolu_0123456789abcdef",
      "content": "共享秘密已生成: abcdefghijklmnopqrstuvwxyz"
    }
  ]
}

3. 加密明文

{
  "role": "assistant",
  "content": [
    {
      "type": "tool_use",
      "id": "toolu_0123456789abcdef",
      "name": "encrypt",
      "input": {
        "sharedSecret": "abcdefghijklmnopqrstuvwxyz",
        "plaintext": "PAPERCLIP"
      }
    }
  ]
}

4. 解密密文

{
  "role": "user",
  // 此处原文档未完整,推测后续是解密相关内容
}

📚 详细文档

任务描述

  • 目标:实现一个简单的加密系统,用于在机器人之间安全传输信息。
  • 工具:使用加密和解密功能。
  • 操作流程
    1. 首先,双方需要生成公钥和私钥。
    2. 然后,使用这些密钥导出共享秘密。
    3. 接着,用共享秘密对明文进行加密。
    4. 最后,对方利用共享秘密对密文进行解密。

实施步骤

  1. 生成公钥和私钥:使用 generateKeyPair 方法生成 RSA 密钥对。
  2. 导出共享秘密:利用用户的公钥和自己的私钥,使用 Diffie - Hellman 算法导出共享秘密。
  3. 加密明文:使用导出的共享秘密对明文进行 AES - 256 - CBC 加密,并生成初始化向量 (IV)。
  4. 解密密文:对方使用相同的共享秘密、IV 和密文进行解密,恢复明文。

📄 许可证

本项目采用 MIT 许可证。

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client