本文档指导你验证Confidential-AI的基本流程,该流程包括以下几个步骤。
- 部署Trustee,作为用户控制的、保存机密数据的组件;
- 加密模型文件,上传该加密模型到阿里云OSS,并将加密密钥保存在Trustee;
- 部署Trustiflux,作为云端可信组件;
- 经过远程证明验证云端环境,从Trustee获取加密密钥,并从阿里云OSS下载加密模型,将其解密后挂载在可信环境中。
根据威胁模型,前两个步骤在用户侧发生,后两个步骤在云端发生。不过为了方便演示,本文档展示的流程基于同一台阿里云TDX ECS,并且使用本地网络。
- 阿里云TDX ECS:参考构建TDX机密计算环境中“创建TDX实例”章节,推荐通过控制台创建。
- 阿里云OSS:开通阿里云OSS服务。
- 阿里云账号访问密钥:参考创建AccessKey,获取并保存Access Key和Access Secret。
(启用Docker试验性功能让我们可以使用oras)
- 编辑 Docker 配置文件
Docker 的配置文件通常为/etc/docker/daemon.json
。可以使用任意文本编辑器(如 nano
或 vim
)打开该文件。如果文件不存在,可以创建一个新的文件。
sudo vim /etc/docker/daemon.json
- 添加实验性功能配置
在 daemon.json
文件中,添加以下内容以启用实验性功能。
{
"experimental": true
}
- 重启 Docker 服务
sudo systemctl restart docker
- 运行下方命令即可为阿里云ECS自动配置阿里云PCCS。
token=$(curl -s -X PUT -H "X-aliyun-ecs-metadata-token-ttl-seconds: 5" "http://100.100.100.200/latest/api/token")
region_id=$(curl -s -H "X-aliyun-ecs-metadata-token: $token" http://100.100.100.200/latest/meta-data/region-id)
# 配置PCCS_URL指向实例所在Region的PCCS
PCCS_URL=https://sgx-dcap-server-vpc.${region_id}.aliyuncs.com/sgx/certification/v4/
sudo bash -c 'cat > /etc/sgx_default_qcnl.conf' << EOF
# PCCS server address
PCCS_URL=${PCCS_URL}
# To accept insecure HTTPS cert, set this option to FALSE
USE_SECURE_CERT=FALSE
EOF
- 下载Confidential-AI代码。
git clone https://github.com/inclavare-containers/Confidential-AI.git
-
将准备好的阿里云账号访问密钥写入
Confidential-AI/.env
文件的对应位置。 -
进入Trustee文件夹,运行
run.sh
文件。
cd Confidential-AI/Trustee
./run.sh
- 下载Confidential-AI代码。
git clone https://github.com/inclavare-containers/Confidential-AI.git
-
将准备好的阿里云账号访问密钥写入
Confidential-AI/.env
文件的对应位置。 -
进入Trustiflux文件夹,运行
run.sh
文件。
cd Confidential-AI/Trustiflux
./run.sh
- 镜像拉取缓慢甚至失败
基于阿里云ACR配置镜像加速,参考官方镜像加速。
- 自动配置阿里云PCCS失败
可以手动配置。如果你根据环境准备中的指导正确创建阿里云TDX ECS,你的实例所属地域应为华北2(北京),即cn-beijing
。手动创建/etc/sgx_default_qcnl.conf
文件,并写入下述内容即可。
# PCCS server address
PCCS_URL=https://sgx-dcap-server.cn-beijing.aliyuncs.com/sgx/certification/v4/
# To accept insecure HTTPS cert, set this option to FALSE
USE_SECURE_CERT=FALSE
- 运行run.sh失败
先运行同目录下的clean.sh
文件,再运行run.sh
。