Skip to main content
即刻安装 Cobo WaaS Skill,在 Claude Code、Cursor 等 AI 开发环境中使用自然语言集成 WaaS API,显著提升开发效率 🚀
本文提供了有关如何部署服务端签名人的分步指南,涵盖了 TSS Node 包的安装以及 TSS Node 的初始化和启动。

前提条件

在部署服务端签名人之前,请确保您的环境符合我们的网络和服务器要求。有关详细信息,请参阅:

安装 TSS Node 包

首先,在您的服务器上安装 TSS Node 包。

获取 TSS Node 包

TSS Node 包有两个版本,适用于不同的部署环境:
  • SGX 安全增强版:专为配备 SGX 功能的服务器设计。您可以在这里下载此 TSS Node 包,并在这里下载相应的 SHA256 文件。
  • 通用版:兼容所有服务器,包括云提供商的服务器、自建服务器、通用服务器和 Apple MacBooks。虽然此版本也可以在 SGX 准备好的服务器上运行,但 SGX 特定功能将不会启用。您可以在这里下载此 TSS Node 包,并在这里下载相应的 SHA256 文件。
以下示例使用通用版的 TSS Node 包。
要验证包的完整性:
  1. 从 SHA256 文件中显示预期的校验和:
  1. 将其与下载包的实际校验和进行比较。它们必须完全匹配:
如果您使用的是 Apple MacBook,请改用 shasum -a 256
如果校验和不匹配,包可能在下载过程中被损坏或篡改。在这种情况下,请重新下载包。 验证包完整性后,请执行以下命令来解压 TSS Node 包。
解压 TSS Node 包后,将显示以下目录。
除非另有说明,请在解压后的 TSS Node 包的根目录下执行所有后续命令。例如,在执行任何进一步命令之前,请导航到 cobo-tss-node-generic 路径。

TSS Node 命令行命令

TSS Node 命令行命令在所有部署环境中保持一致。但是,命令的执行可能会略有不同。对于 SGX 准备好的服务器和其他类型的服务器,sudo 访问是部署和运行 TSS Node 的必要条件。换句话说,请确保在命令中插入 sudo。
对于 Apple MacBook,不需要 sudo 访问。
除非另有说明,后续命令将使用通用服务器作为示例。 要了解有关 TSS Node 命令行命令的更多信息,请参阅 TSS Node 命令行命令

获取 TSS Node 容器镜像

请执行以下命令来验证必要依赖项和驱动程序的安装。如果这是 TSS Node 的初始配置,命令还将自动获取最新的容器镜像。
输出示例如下。
到目前为止,所有依赖项都已成功配置,TSS Node 已准备好初始化。

配置 TSS Node

默认配置文件是 configs/cobo-tss-node-config.yaml.template TSS Node 默认配置为连接到开发环境,因此不需要额外的配置文件即可运行。但是,如果您希望连接到生产环境,则需要手动修改配置文件。 要开始,请创建 cobo-tss-node-config.yaml.template 的副本,并将其重命名为 cobo-tss-node-config.yaml。将新文件粘贴到 configs 目录中。有关说明,请参阅 配置 TSS Node 。请记住,在修改配置文件后重新启动 TSS Node 包。

启动脚本

TSS Node 包包含一个启动脚本 tss-node.sh,用于:
  • 检查所需软件和驱动程序是否成功安装。
  • 拉取 TSS Node 容器镜像。
  • 管理容器的运行状态。
启动脚本将传递大多数命令和参数给容器内的 cobo-tss-node 程序。

初始化 TSS Node

请执行以下命令:
输出示例如下。
执行工作流:
  • 在 TSS Node 初始化期间,系统将验证 Docker 引擎的成功安装,并继续构建容器镜像。您将被提示批准 Docker 引擎的自动安装。
  • 如果使用的是 SGX 准备好的服务器,系统还将验证 SGX 驱动程序的成功安装。您将被提示批准 Intel DCAP 1.41 驱动程序的自动安装。
  • 设置一个密码来加密在 TSS Node 初始化期间生成的数据。在丢失访问权限或需要修改密码的情况下,请参阅 从另一个活动持有者组恢复私钥分片。建议设置一个复杂的密码,长度在 16-32 个字符之间,使用密码管理器(例如 1Password),并在受信任的设备上安全存储密码。
  • 数据库文件将自动生成,默认路径为 db/secrets.db
  • 节点 ID 将自动生成(例如 cobo73VA6C6WvofPg8tWYmqvdUF1cPYhd7EmGUxTexz5HCzYe),并作为 TSS Node 的唯一标识符。
  • TSS Node Callback 私钥将自动生成,用于验证与 TSS Node Callback 服务器的通信,并打印出相应的公钥。

启动 TSS Node

执行以下命令来启动 TSS Node :
输出示例如下。
此时,TSS Node 已准备好加入私钥分片持有者组。一旦您创建了一个持有者组,并将 TSS Node 添加到其中,您将在日志中看到成功注册的状态。

创建私钥分片持有者组

您现在可以继续创建持有者组,请参阅 通过 Cobo Portal 创建持有者组 创建持有者组后,注册状态将更新为以下内容:
您可以按 Ctrl+C 退出,TSS Node 将继续在后台运行。有关检查 TSS Node 状态的更多信息,请参阅 TSS Node 命令

管理私钥分片

一旦您成功创建了一个持有者组,并将 TSS Node 添加到其中,生成的私钥分片将被加密并存储在 TSS Node 包的数据库文件中,默认路径为 db/secrets.db。强烈建议创建数据库文件和用于加密的密码的备份,并将备份文件存储在单独的设备上以增强安全性。有关更多信息,请参阅 备份您的私钥分片

导出运行指标

TSS Node 支持将服务器运行指标导出到您的 InfluxDB 数据库以进行性能监控。这些指标可以通过 Grafana 进行可视化。要配置指标导出,请参阅配置 TSS Node 部分。如需其他帮助,请通过 [email protected] 联系我们的支持团队。