tencent cloud

Cloud Virtual Machine

DocumentaçãoCloud Virtual MachineTutorial práticoOutros tutoriais práticosConstruir o ambiente de computação confidencial Tencent SGX

Construir o ambiente de computação confidencial Tencent SGX

PDF
Modo Foco
Tamanho da Fonte
Última atualização: 2026-04-20 12:13:26

Cenário de uso

Este artigo explica como construir um ambiente de computação confidencial Tencent SGX em instâncias de memória aprimorada para segurança M6ce e usar o Intel SGXSDK para verificar a funcionalidade SGX.

Pré-requisitos

Para criar instâncias, consulte Criar instâncias através da página de compra.
Os servidores em nuvem precisam de capacidade de acesso à Internet externa. Você pode optar por atribuir um IP público ao criar o servidor em nuvem ou configurar um IP público elástico após a criação.
Observação:
Este artigo usa uma instância com o sistema operacional TencentOS Server 3.1(TK4) como exemplo. Como os passos podem variar entre diferentes versões do sistema operacional, por favor, adapte de acordo com sua situação específica.

Instalar o Intel SGXSDK

1. Execute o seguinte comando para verificar a versão do kernel.
uname -a
Verifique se a versão do kernel é inferior a 5.4.119-19.0008:
Sim, execute o seguinte comando para atualizar o kernel.
Aviso:
A atualização do kernel do sistema operacional é uma operação complexa e de alto risco, que pode causar instabilidade do sistema ou problemas de compatibilidade. Antes de prosseguir com a atualização, recomenda-se fazer backup dos dados importantes, compreender o processo de atualização e os possíveis problemas, e proceder com cautela.
yum update kernel
Não, por favor, execute o próximo passo.
2. Execute o seguinte comando para instalar os pacotes de software necessários para o SGX runtime. O diretório de instalação padrão para o serviço SGX AESM é /opt/intel/sgx-aesm-service.
yum install \\
libsgx-ae-le libsgx-ae-pce libsgx-ae-qe3 libsgx-ae-qve \\
libsgx-aesm-ecdsa-plugin libsgx-aesm-launch-plugin libsgx-aesm-pce-plugin libsgx-aesm-quote-ex-plugin \\
libsgx-dcap-default-qpl libsgx-dcap-default-qpl-devel libsgx-dcap-ql libsgx-dcap-ql-devel \\
libsgx-dcap-quote-verify libsgx-dcap-quote-verify-devel libsgx-enclave-common libsgx-enclave-common-devel libsgx-epid-devel \\
libsgx-launch libsgx-launch-devel libsgx-pce-logic libsgx-qe3-logic libsgx-quote-ex libsgx-quote-ex-devel \\
libsgx-ra-network libsgx-ra-uefi libsgx-uae-service libsgx-urts sgx-ra-service \\
sgx-aesm-service -y
3. Execute o seguinte comando para instalar o Intel SGXSDK.
wget https://mia-1251783334.cos.ap-shanghai.myqcloud.com/sgx_linux_x64_sdk_2.23.100.2.bin -O sgx_linux_x64_sdk_2.23.100.2.bin
chmod +x ./sgx_linux_x64_sdk_2.23.100.2.bin
./sgx_linux_x64_sdk_2.23.100.2.bin
Observação:
Execute ./sgx_linux_x64_sdk e selecione o diretório de instalação. Não é recomendado instalar no diretório atual; instale em /opt/intel/. Neste caso, o diretório de instalação padrão do Intel SGXSDK será /opt/intel/sgxsdk. Consulte o manual do usuário do Intel SGXSDK para desenvolver programas SGX.
4. Após a instalação do SGX runtime e do Intel SGXSDK, reinicie a instância. Para mais detalhes, consulte Reiniciar a instância.
Atenção:
Durante a reinicialização, a instância não poderá fornecer serviços normalmente. Por isso, antes de reiniciar, certifique-se de que o servidor em nuvem já suspendeu as solicitações de serviço.

Configurar o serviço de atestação remota SGX da Tencent Cloud

O serviço de atestação remota SGX da Tencent Cloud adota uma implantação regionalizada. Recomenda-se que você acesse o serviço de atestação remota na região onde a instância do servidor em nuvem SGX está localizada para obter a melhor experiência.

Observações

O serviço de atestação remota SGX da Tencent Cloud está implantado nas regiões de Pequim, Xangai, Cantão, Nanquim e Singapura.
Mesmo que sua instância do servidor em nuvem SGX não esteja nas regiões mencionadas acima, você ainda pode usar normalmente o serviço de atestação remota SGX. Basta escolher qualquer serviço de região implantada próxima para acessar, pois as solicitações entre regiões são interconectadas, o que não afeta a disponibilidade da funcionalidade.
Região
[Region-ID]
Pequim
bj
Xangai
sh
Cantão
gz
Nanquim
nj
Singapura
sg
O Intel Ice Lake suporta apenas o método de atestação remota baseado em Intel SGX DCAP e não suporta o método de atestação remota Intel EPID.

Atualização do serviço de atestação remota SGX da Tencent Cloud

De acordo com o anúncio relevante da Intel, a Intel descontinuará completamente os serviços da Intel® SGX PCS API versão 2 e versão 3 em 30 de abril de 2026, às 23:00 (horário de Pequim). Se você ainda estiver usando o serviço de atestação remota SGX, certifique-se de atualizar para a Intel® SGX PCS API versão 4 antes desse prazo.

Para atualizar para a Intel® SGX PCS API versão 4, basta modificar a URL do serviço de atestação remota no arquivo de configuração /etc/sgx_default_qcnl.conf, substituindo v3 por v4. Após salvar as alterações, revalide a funcionalidade de atestamento remoto SGX. Para detalhes sobre a modificação da configuração, consulte o procedimento operacional.


Etapas de operação

Por favor, modifique manualmente o arquivo /etc/sgx_default_qcnl.conf seguindo as etapas abaixo.
Observação:
Após a instalação do Intel SGX SDK, o arquivo de configuração padrão do serviço de atestação remota /etc/sgx_default_qcnl.conf será gerado automaticamente.
/etc/sgx_default_qcnl.conf pertence ao pacote rpm libsgx-dcap-default-qpl, cujo formato suporta tanto arquivos toml quanto JSON. A seguir será apresentado como configurar em ambos os casos.

Se estiver usando a configuração JSON em /etc/sgx_default_qcnl.conf: Use o editor VIM para abrir /etc/sgx_default_qcnl.conf, localize pccs_url e modifique essa linha para o seguinte conteúdo:
"pccs_url": "https://sgx-dcap-server-tc.[Region-ID].tencent.cn/sgx/certification/v4/"
Substitua [Region-ID] de acordo com a região selecionada. Tomando a região de Pequim como exemplo, a modificação é a seguinte:
"pccs_url": "https://sgx-dcap-server-tc.bj.tencent.cn/sgx/certification/v4/"

Se estiver usando a configuração toml /etc/sgx_default_qcnl.conf: Use o editor VIM para modificar /etc/sgx_default_qcnl.conf para o seguinte conteúdo:
# PCCS server address
PCCS_URL=https://sgx-dcap-server-tc.[Region-ID].tencent.cn/sgx/certification/v4/
# To accept insecure HTTPS cert, set this option to FALSE
USE_SECURE_CERT=TRUE
Substitua [Region-ID] de acordo com a região selecionada. Tomando a região de Pequim como exemplo, a modificação é a seguinte:
# PCCS server address
PCCS_URL=https://sgx-dcap-server-tc.bj.tencent.cn/sgx/certification/v4/
# To accept insecure HTTPS cert, set this option to FALSE
USE_SECURE_CERT=TRUE



Exemplo de verificação da funcionalidade SGX

Exemplo 1: Iniciar Enclave

O Intel SGX SDK fornece códigos de exemplo SGX para verificar a funcionalidade SGX, com o diretório padrão sendo /opt/intel/sgxsdk/SampleCode. O código neste exemplo (SampleEnclave) inicia um Enclave para verificar se o SGX SDK instalado está sendo usado corretamente e se os recursos de memória confidencial da instância do servidor em nuvem SGX estão disponíveis.
1. Execute o seguinte comando para configurar as variáveis de ambiente relacionadas ao Intel SGXSDK.
source /opt/intel/sgxsdk/environment
2. Execute o seguinte comando para compilar o código de exemplo SampleEnclave.
cd /opt/intel/sgxsdk/SampleCode/SampleEnclave && make
3. Execute o seguinte comando para executar o arquivo executável compilado.
./app
Retornar o resultado conforme mostrado na figura abaixo significa que foi iniciado com sucesso.




Exemplo 2: SGX atestação remota

A árvore de código do Intel SGX fornece códigos de exemplo para verificar a funcionalidade de atestação remota SGX (DCAP). Este exemplo envolve a geração e verificação de Quote, abrangendo o gerador de Quote (QuoteGenerationSample) e o verificador de Quote (QuoteVerificationSample).
1. Execute o seguinte comando para configurar as variáveis de ambiente relacionadas ao Intel SGXSDK.
source /opt/intel/sgxsdk/environment
2. Execute os seguintes comandos sequencialmente para instalar o git e baixar a árvore de código do intel sgx DCAP.
cd /root && yum install git -y
git clone https://github.com/intel/SGXDataCenterAttestationPrimitives.git
3. Execute os seguintes comandos sequencialmente para compilar e executar o código de exemplo do gerador de Quote, QuoteGenerationSample.
3.1 Entre no diretório QuoteGenerationSample.
cd /root/SGXDataCenterAttestationPrimitives/SampleCode/QuoteGenerationSample
3.2 Compile o QuoteGenerationSample.
make
3.3 Execute o QuoteGenerationSample e gere o Quote.
./app
4. Execute o seguinte comando para compilar o código de exemplo do verificador de Quote, QuoteVerificationSample.
cd /root/SGXDataCenterAttestationPrimitives/SampleCode/QuoteVerificationSample && make
5. Execute o seguinte comando para assinar o Enclave do QuoteVerificationSample.
sgx_sign sign -key Enclave/Enclave_private_sample.pem -enclave enclave.so -out enclave.signed.so -config Enclave/Enclave.config.xml
sgx_sign sign -key ../QuoteGenerationSample/Enclave/Enclave_private_sample.pem -enclave enclave.so -out enclave.signed.so -config Enclave/Enclave.config.xml # Caminho da nova versão DCAP_1.16
6. Execute o seguinte comando para executar o QuoteVerificationSample e verificar o Quote.
./app
Se retornar o resultado conforme mostrado na figura abaixo, significa que foi verificado com sucesso.





Ajuda e Suporte

Esta página foi útil?

comentários