すべてのプロダクト
Search
ドキュメントセンター

Elastic Compute Service:SGX コンフィデンシャルコンピューティング環境の構築

最終更新日:Aug 22, 2026

このトピックでは、Intel® SGX 対応の Elastic Compute Service (ECS) インスタンス (vSGX インスタンス) で、Software Guard Extensions (SGX) コンフィデンシャルコンピューティング環境を構築し、インスタンスで SGX 機能を検証する方法について説明します。

前提条件

vSGX インスタンスが作成され、そのインスタンスにログオンしていること。

説明

g7t、c7t、r7t、g9it のインスタンスファミリーのみが SGX 機能をサポートしています。詳細については、「インスタンスファミリー概要」をご参照ください。

背景情報

Intel® SGX は、物理レベルでコンフィデンシャルコンピューティング環境をセットアップし、ファームウェアやソフトウェアベースの保護ではなく、ハードウェアベースの保護を提供することでデータのセキュリティを確保します。Intel® SGX は、命令セット拡張とアクセス制御メカニズムを使用して、SGX プログラムのランタイム環境を分離します。これにより、マルウェア攻撃から主要なコードとデータの機密性と完全性を保護します。他のセキュリティ技術と比較して、Intel® SGX はハードウェアのみを含む信頼の基点を使用します。これにより、信頼の基点が依存するソフトウェアのセキュリティ脆弱性によって生じる欠陥を防ぎ、システムのセキュリティを向上させます。

g7t、c7t、r7t、g9it のセキュリティ強化型インスタンスファミリーは、Intel® SGX に基づく機密メモリを提供し、仮想マシン向けの SGX 技術をサポートしています。vSGX インスタンスで SGX プログラムを開発・実行できます。

重要

ハードウェアにバインドされているキー (SGXシーリングキーなど) を使用して、Intel SGXエンクレーブ内のインスタンスのデータを暗号化する場合、インスタンスのホストが変更された後、暗号化されたデータを復号化することはできません。 アプリケーションの信頼性を確保するために、アプリケーション層でデータの冗長化とバックアップを実行することを推奨します。

操作手順

ステップ 1: SGX が有効になっているかの確認

SGX コンフィデンシャルコンピューティング環境を構築する前に、CPUID を使用して SGX が有効になっているかを確認できます。このセクションでは、SGX が有効になっているかを確認する方法について説明します。以下の例では、Alibaba Cloud Linux 2 (UEFI) イメージまたは Alibaba Cloud Linux 3 (UEFI) イメージ、および Ubuntu 22.04 (UEFI) イメージを使用します。

Alibaba Cloud Linux 2/3 (UEFI) イメージ

  1. CPUID をインストールします。

    sudo yum install -y cpuid
  2. SGX が有効になっているかを確認します。

    cpuid -1 -l 0x7 |grep SGX

    以下のようなコマンド出力は、SGX が有効になっていることを示します。sgx_install

    説明

    SGX が有効になった後、SGX プログラムを実行するには SGX ドライバーが必要です。Alibaba Cloud が提供する専用イメージには、SGX ドライバーが組み込まれています。専用イメージを使用したくない場合は、SGX ドライバーをインストールしてください。

  3. SGX ドライバーがインストールされているかを確認します。

    ls -l /dev/{sgx_enclave,sgx_provision}

    以下のようなコマンド出力は、SGX ドライバーがインストールされていることを示します。sgx_driver

Ubuntu 22.04 (UEFI) イメージ

  1. CPUID をインストールします。

    sudo apt-get update && sudo apt-get install -y --no-install-recommends cpuid
  2. SGX が有効になっているかを確認します。

    cpuid -1 -l 0x7 |grep SGX

    以下のようなコマンド出力は、SGX が有効になっていることを示します。image

    説明

    SGX が有効になった後、SGX プログラムを実行するには SGX ドライバーが必要です。Alibaba Cloud が提供する専用イメージには、SGX ドライバーが組み込まれています。専用イメージを使用したくない場合は、SGX ドライバーをインストールしてください。

  3. SGX ドライバーをインストールします:

    1. install_sgx_dcap.sh スクリプトを作成します:

      cat <<'EOF' > install_sgx_dcap.sh
      #!/bin/bash
      
      version_id=$(cat /etc/os-release|grep "VERSION_ID"|cut -d"=" -f2|tr -d "\"")
      version_codename=$(cat /etc/os-release|grep "VERSION_CODENAME"|cut -d"=" -f2)
      apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y build-essential dkms curl wget
      
      if [ ! -e /dev/sgx/enclave -a ! -e /dev/sgx_enclave ]; then
        dcap_version=$(curl -s https://download.01.org/intel-sgx/latest/version.xml |grep dcap| sed -r 's/.*>(.*)<.*/\1/')
        dcap_files=$(curl -s https://download.01.org/intel-sgx/latest/dcap-latest/linux/SHA256SUM_dcap_${dcap_version}.cfg)
        echo "${dcap_files}" | grep "ubuntu${version_id}-server" |grep "sgx_linux_x64_driver" | awk '{print $2}' | xargs -I{} curl -O -J https://download.01.org/intel-sgx/latest/dcap-latest/linux/{}
        
        bash sgx_linux_x64_driver*.bin
      else
        echo "driver already installed"
      fi
      EOF
    2. スクリプトを実行して SGX ドライバーをインストールします:

      sudo bash ./install_sgx_dcap.sh
  4. SGX ドライバーがインストールされているかを確認します。

    ls -l /dev/{sgx_enclave,sgx_provision}

    以下のようなコマンド出力は、SGX ドライバーがインストールされていることを示します。

    image

ステップ 2: SGX コンフィデンシャルコンピューティング環境の構築

SGX プログラムを開発する前に、vSGX インスタンスに SGX ランタイムと SDK をインストールし、リモートアテステーションサービスを設定する必要があります。より良いユーザーエクスペリエンスを確保するために、Alibaba Cloud が提供する専用イメージを使用することを推奨します。専用イメージには SGX ドライバーが搭載されており、Intel® SGX SDK と完全な互換性がある高信頼実行環境 (TEE) SDK を提供します。このセクションでは、SGX コンフィデンシャルコンピューティング環境を構築する方法について説明します。以下の例では、Alibaba Cloud Linux 2 (UEFI) イメージまたは Alibaba Cloud Linux 3 (UEFI) イメージ、および Ubuntu 22.04 (UEFI) イメージを使用します。CentOS イメージなどの Linux イメージを使用する場合は、SGX ドライバーと Platform SoftWare (PSW) をインストールしてください。詳細については、「Intel® SGX SW Installation Guide for Linux」をご参照ください。

  1. SGX コンフィデンシャルコンピューティング環境の構築に必要なモジュールをインストールします。

    Alibaba Cloud Linux 2/3 (UEFI) イメージ

    1. (必須) Alibaba Cloud SGX ランタイムをインストールします。

      説明

      ECS コンソールで vSGX インスタンスを作成すると、Alibaba Cloud SGX ランタイムが自動的にインストールされます。このステップをスキップして、Alibaba Cloud TEE SDK をインストールできます。

      1. Alibaba Cloud コンフィデンシャルコンピューティング用の Yellowdog Updater Modified (YUM) ソフトウェアリポジトリをインポートします。

        説明

        以下の URL の [Region-ID] を vSGX インスタンスのリージョン ID に置き換えてください:

        • リポジトリのパブリック URL は次の形式です: https://enclave-[Region-ID].oss-[Region-ID].aliyuncs.com/repo/alinux/enclave-expr.repo

        • リポジトリの内部 URL は次の形式です: https://enclave-[Region-ID].oss-[Region-ID]-internal.aliyuncs.com/repo/alinux/enclave-expr.repo

        また、スクリプトを作成して実行し、Alibaba Cloud コンフィデンシャルコンピューティングの YUM ソフトウェアリポジトリをインポートすることもできます。

        1. install_sgx_repo.sh スクリプトを作成します:

          cat <<'EOF' > install_sgx_repo.sh
          ID=$(grep -w '^ID' /etc/os-release | awk -F= '{print $2}' | tr -d '"')
          VERSION_ID=$(grep -w '^VERSION_ID' /etc/os-release | awk -F= '{print $2}' | tr -d '"')
          
          # メタデータアクセス用のトークンを取得します。
          token=$(curl -s -X PUT -H "X-aliyun-ecs-metadata-token-ttl-seconds: 5" "http://100.100.100.200/latest/api/token")
          # インスタンスのリージョン ID を取得します。
          region_id=$(curl -s -H "X-aliyun-ecs-metadata-token: $token" http://100.100.100.200/latest/meta-data/region-id)
          
          # Alibaba Cloud Linux 2 (UEFI) イメージが使用されている場合、インスタンスの Alibaba Cloud 実験的リポジトリを有効にします。
          if [ "$ID" = "alinux" -a "$VERSION_ID" = "2.1903" ]; then
              sudo rpmkeys --import http://mirrors.cloud.aliyuncs.com/epel/RPM-GPG-KEY-EPEL-7
              sudo yum install -y alinux-release-experimentals
          fi
          
          yum install -y yum-utils && \
          yum-config-manager --add-repo \
          https://enclave-${region_id}.oss-${region_id}-internal.aliyuncs.com/repo/alinux/enclave-expr.repo
          
          EOF
        2. Alibaba Cloud コンフィデンシャルコンピューティング用の YUM リポジトリをインポートします:

          sudo bash ./install_sgx_repo.sh
      2. Alibaba Cloud SGX ランタイムをインストールします。

        sudo yum install -y 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-ql \
        libsgx-dcap-quote-verify libsgx-enclave-common libsgx-launch libsgx-pce-logic \
        libsgx-qe3-logic libsgx-quote-ex libsgx-ra-network libsgx-ra-uefi \
        libsgx-uae-service libsgx-urts sgx-ra-service sgx-aesm-service
        説明

        SGX Architectural Enclave Service Manager (AESM) は、エンクレーブの起動、キーの設定、リモートアテステーションなどのサービスを管理するために使用します。SGX AESM のデフォルトのインストールパスは /opt/intel/sgx-aesm-service です。

    2. Alibaba Cloud TEE SDK をインストールします。

      sudo yum install -y sgxsdk

    Alibaba Cloud TEE SDK は Intel® SGX SDK と完全な互換性があります。Alibaba Cloud TEE SDK をインストールした後、Intel® SGX Developer Reference を参照して SGX プログラムを開発できます。詳細については、「Intel® SGX Developer Reference」をご参照ください。

    説明

    Alibaba Cloud TEE SDK における Intel® SGX SDK のデフォルトのインストールパスは /opt/alibaba/teesdk/intel/sgxsdk/ です。

    Ubuntu 22.04 (UEFI) イメージ

    1. install_sgx_sdk.sh スクリプトを作成します:

      cat <<'EOF' > install_sgx_sdk.sh
      #!/bin/bash
      
      version_id=$(cat /etc/os-release|grep "VERSION_ID"|cut -d"=" -f2|tr -d "\"")
      version_codename=$(cat /etc/os-release|grep "VERSION_CODENAME"|cut -d"=" -f2)
      apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y build-essential dkms curl wget
      
      dcap_version=$(curl -s https://download.01.org/intel-sgx/latest/version.xml |grep dcap| sed -r 's/.*>(.*)<.*/\1/')
      linux_version=$(curl -s https://download.01.org/intel-sgx/latest/version.xml |grep linux| sed -r 's/.*>(.*)<.*/\1/')
      dcap_files=$(curl -s https://download.01.org/intel-sgx/latest/dcap-latest/linux/SHA256SUM_dcap_${dcap_version}.cfg)
      echo "${dcap_files}" | grep "ubuntu${version_id}-server" | awk '{print $2}' | xargs -I{} curl -O -J https://download.01.org/intel-sgx/latest/dcap-latest/linux/{}
      
      # sgx_sdk のインストール
      bash sgx_linux_x64_sdk*.bin --prefix /opt/intel
      source /opt/intel/sgxsdk/environment
      
      # psw のインストール
      echo "deb [arch=amd64] https://download.01.org/intel-sgx/sgx_repo/ubuntu ${version_codename} main" |  tee /etc/apt/sources.list.d/intelsgx.list
      wget -qO - https://download.01.org/intel-sgx/sgx_repo/ubuntu/intel-sgx-deb.key | apt-key add -
      apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y libsgx-launch libsgx-urts libsgx-epid libsgx-quote-ex libsgx-dcap-ql libsgx-dcap-ql-dev
      systemctl enable --now aesmd.service
      EOF
    2. スクリプトを実行して Intel® SGX SDK と PSW をインストールします:

      sudo bash ./install_sgx_sdk.sh
  2. Alibaba Cloud SGX リモートアテステーションサービスを設定します。

    Alibaba Cloud SGX リモートアテステーションサービスは、Intel® SGX Elliptic Curve Digital Signature Algorithm (ECDSA) に基づくリモートアтеステーションサービスおよび Intel® SGX SDK と完全な互換性があります。Alibaba Cloud が提供する vSGX インスタンスは、リモートアテステーションを使用することで、リモートのプロバイダーやプロデューサーからの信頼を得られます。詳細については、「Attestation & Provisioning Services」をご参照ください。

    Alibaba Cloud SGX リモートアテステーションサービスは、SGX SDK の以下の情報を提供します:

    • SGX 証明書:SGX 証明書。

    • 失効リスト:失効した SGX 証明書のリスト。

    • 高信頼コンピューティングベース情報:信頼の基点に関する情報。

    説明

    Intel Ice Lakeは、Intel Software Guard Extensions Data Center attestation Primitives (Intel SGX DCAP) に基づくリモート証明のみをサポートし、Intel Enhanced Privacy ID (EPID) に基づくリモート証明はサポートしていません。 リモート認証機能を使用する前に、アプリケーションを適応させる必要があります。 リモート認証の詳細については、「認証によるエンクレーブ信頼の強化」をご参照ください。

    Alibaba Cloud SGX リモートアテステーションサービスはリージョンごとにデプロイされます。最適な安定性を確保するために、vSGX インスタンスと同じリージョンにデプロイされたサービスにアクセスすることを推奨します。Alibaba Cloud TEE SDK をインストールすると、リモートアテステーションサービスのデフォルト設定ファイル /etc/sgx_default_qcnl.conf が自動的に生成されます。vSGX インスタンスがデプロイされているリージョンの Alibaba Cloud SGX リモートアテステーションサービスに合わせて、以下のいずれかの方法でファイルを変更する必要があります。

    説明

    以下の表は、Alibaba Cloud SGX リモートアテステーションサービスがサポートされているリージョンを示しています。

    サポートされているリージョン

    リージョン ID

    中国 (青島)

    cn-qingdao

    中国 (北京)

    cn-beijing

    中国 (張家口)

    cn-zhangjiakou

    中国 (ウランチャブ)

    cn-wulanchabu

    中国 (杭州)

    cn-hangzhou

    中国 (上海)

    cn-shanghai

    中国 (深圳)

    cn-shenzhen

    中国 (河源)

    cn-heyuan

    中国 (広州)

    cn-guangzhou

    中国 (成都)

    cn-chengdu

    中国 (香港)

    cn-hongkong

    シンガポール

    ap-southeast-1

    インドネシア (ジャカルタ)

    ap-southeast-5

    • (推奨) 方法 1: /etc/sgx_default_qcnl.conf ファイルを設定する。

      次のコマンドを実行して、/etc/sgx_default_qcnl.conf ファイルを自動的に設定します。詳細については、「インスタンスメタデータへのアクセス」をご参照ください。

      # メタデータアクセス用のトークンを取得します。
      token=$(curl -s -X PUT -H "X-aliyun-ecs-metadata-token-ttl-seconds: 5" "http://100.100.100.200/latest/api/token")
      # インスタンスのリージョン ID を取得します。
      region_id=$(curl -s -H "X-aliyun-ecs-metadata-token: $token" http://100.100.100.200/latest/meta-data/region-id)
      
      # インスタンスがデプロイされているリージョンの Alibaba Cloud Provisioning Certificate Caching Service (PCCS) の URL を指定します。
      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 サーバーアドレス
      PCCS_URL=${PCCS_URL}
      # 安全な HTTPS 証明書を要求するには、このオプションを TRUE に設定します。
      USE_SECURE_CERT=TRUE
      EOF
    • 方法 2: /etc/sgx_default_qcnl.conf ファイルを手動で変更する。

      • vSGX インスタンスにパブリック IP アドレスが割り当てられている場合、/etc/sgx_default_qcnl.conf ファイルの設定を次の内容に変更します。[Region-ID] を vSGX インスタンスのリージョン ID に置き換えてください。

        # PCCS サーバーアドレス
        PCCS_URL=https://sgx-dcap-server.[Region-ID].aliyuncs.com/sgx/certification/v4/
        # 安全な HTTPS 証明書を要求するには、このオプションを TRUE に設定します。
        USE_SECURE_CERT=TRUE
      • vSGX インスタンスが Virtual Private Cloud (VPC) 内にあり、内部 IP アドレスのみを持つ場合、/etc/sgx_default_qcnl.conf ファイルの設定を次の内容に変更します。[Region-ID] を vSGX インスタンスのリージョン ID に置き換えてください。

        # PCCS サーバーアドレス
        PCCS_URL=https://sgx-dcap-server-vpc.[Region-ID].aliyuncs.com/sgx/certification/v4/
        # 安全な HTTPS 証明書を要求するには、このオプションを TRUE に設定します。
        USE_SECURE_CERT=TRUE

SGX 機能の検証例

このセクションでは、エンクレーブを起動して、インストールされた SGX SDK が期待どおりに動作するかどうかを確認する方法について説明します。エンクレーブが起動した場合、SDK は期待どおりに動作しています。以下の例では、SampleEnclave という名前のサンプルコードファイルを使用します。

例 1: エンクレーブの起動

Alibaba Cloud Linux 2/3 (UEFI) イメージ

Alibaba Cloud TEE SDK は、SGX 機能を検証するための SGX サンプルコードを提供します。デフォルトでは、コードは /opt/alibaba/teesdk/intel/sgxsdk/SampleCode ディレクトリに保存されています。

  1. コンパイラーをインストールします。

  2. ID=$(grep -w '^ID' /etc/os-release | awk -F= '{print $2}' | tr -d '"')
    VERSION_ID=$(grep -w '^VERSION_ID' /etc/os-release | awk -F= '{print $2}' | tr -d '"')
    
    if [ "$ID" = "alinux" ]; then
        case "$VERSION_ID" in
            "2.1903" )
                sudo yum install -y devtoolset-9
                ;;
            "3" )
                sudo yum groupinstall -y "Development Tools"
                ;;
        esac
    fi
  3. SGX SDK に関連する環境変数を設定します。

    if [ "$ID" = "alinux" -a "$VERSION_ID" = "2.1903" ]; then
        source /opt/rh/devtoolset-9/enable
    fi
    source /opt/alibaba/teesdk/intel/sgxsdk/environment
  4. SampleEnclave ファイル内のサンプルコードをコンパイルします。

    1. SampleEnclave ディレクトリに移動します:

      cd /opt/alibaba/teesdk/intel/sgxsdk/SampleCode/SampleEnclave
    2. SampleEnclave のサンプルコードをコンパイルします:

      sudo -E make
  5. コンパイルされた実行可能ファイルを実行します。

    sudo ./app

    次のコマンド出力が返された場合、SGX は期待どおりに動作しています。

    image

Ubuntu 22.04 (UEFI) イメージ

  1. パッケージリストを更新します。

    sudo apt update
  2. build-essential コンパイラーをインストールします。

    sudo apt install -y build-essential
  3. SampleEnclave ファイル内のサンプルコードをコンパイルします。

    1. SampleEnclave ディレクトリに移動します:

      cd /opt/intel/sgxsdk/SampleCode/SampleEnclave/
    2. SampleEnclave のサンプルコードをコンパイルします:

      sudo make SGX_DEBUG=1
  4. コンパイルされた実行可能ファイルを実行します。

    sudo ./app

    次のコマンド出力が返された場合、SGX は期待どおりに動作しています。

    image

例 2: SGX リモートアテステーションサービスの使用

Alibaba Cloud TEE SDK は、SGX 機能を検証するための SGX サンプルコードを提供します。デフォルトでは、コードは /opt/alibaba/teesdk/intel/sgxsdk/SampleCode ディレクトリに保存されています。このセクションでは、SGX リモートアテステーションサービスの使用方法について説明します。この例では、Alibaba Cloud Linux 2 (UEFI) イメージまたは Alibaba Cloud Linux 3 (UEFI) イメージを使用します。

期待される結果は、QuoteGenerationSample ファイルを使用してクォートが生成され、QuoteVerificationSample ファイルを使用して検証されることです。この例には、被検証者 (vSGX インスタンスで実行される SGX プログラム) と検証者 (SGX プログラムが信頼できるかどうかを検証する側) が登場します。この例では、被検証者がクォートを生成するために QuoteGenerationSample という名前のサンプルコードファイルを使用し、検証者がクォートを検証するために QuoteVerificationSample という名前のサンプルコードファイルを使用します。

  1. コンパイラーをインストールします。

    • Alibaba Cloud Linux 2 (UEFI) イメージを使用している場合は、devtoolset をインストールします。

      1. devtoolset をインストールします。

        sudo yum install -y devtoolset-9
      2. devtoolset に関連する環境変数を設定します。

        source /opt/rh/devtoolset-9/enable
    • Alibaba Cloud Linux 3 (UEFI) イメージを使用している場合は、Development Tools をインストールします。

      sudo yum groupinstall -y "Development Tools"
  2. SGX SDK に関連する環境変数を設定します。

    source /opt/alibaba/teesdk/intel/sgxsdk/environment
  3. SGX リモートアテステーションの依存パッケージをインストールします。

    sudo yum install -y libsgx-dcap-ql-devel libsgx-dcap-quote-verify-devel libsgx-dcap-default-qpl-devel
  4. 被検証者が使用する QuoteGenerationSample ファイル内のサンプルコードをコンパイルします。

    1. QuoteGenerationSample ディレクトリに移動します。

      cd /opt/alibaba/teesdk/intel/sgxsdk/SampleCode/QuoteGenerationSample
    2. QuoteGenerationSample ファイル内のサンプルコードをコンパイルします。

      sudo -E make
  5. コンパイルされた実行可能ファイルを実行してクォートを生成します。

    sudo ./app

    次のコマンド出力が返された場合、クォートの生成は成功です。

    image

  6. 検証者が使用する QuoteVerificationSample ファイル内のサンプルコードをコンパイルします。

    1. QuoteVerificationSample ディレクトリに移動します。

      cd /opt/alibaba/teesdk/intel/sgxsdk/SampleCode/QuoteVerificationSample
    2. QuoteVerificationSample ファイル内のサンプルコードをコンパイルします。

      sudo -E make
  7. QuoteVerificationSample エンクレーブに署名します。

    エンクレーブの公式バージョンをリリースするには、署名キーを使用してエンクレーブに署名する必要があります。

    sudo sgx_sign sign -key Enclave/Enclave_private_sample.pem -enclave enclave.so -out enclave.signed.so -config Enclave/Enclave.config.xml
    説明

    Failed to open file "Enclave/Enclave_private_sample.pem" というエラーメッセージが表示された場合は、次のコマンドを実行して再度署名してください:

    sudo sgx_sign sign -key ../QuoteGenerationSample/Enclave/Enclave_private_sample.pem -enclave enclave.so -out enclave.signed.so -config Enclave/Enclave.config.xml
  8. コンパイルされた実行可能ファイルを実行してクォートを検証します。

    sudo ./app

    次のコマンド出力が返された場合、クォートの検証は成功です。

    image

SGX SDK、PSW、および DCAP ソフトウェアの更新

Intel® SGX ソフトウェアスタックには、SGX SDKSGX PSW、および SGX Data Center Attestation Primitives (DCAP) が含まれています。最適なセキュリティを確保するために、定期的にソフトウェアのバージョンを更新することを推奨します。この例では、Alibaba Cloud Linux 3 UEFI イメージを使用して、SGX SDK、SGX PSW、および SGX DCAP ソフトウェアパッケージを更新します。

  1. SGX SDK、SGX PSW、および SGX DCAP ソフトウェアを更新します。

    sudo rpm -qa --qf "%{NAME}\n"|grep -E "sgxsdk|libsgx-|libtdx-|^sgx-|^tdx-"|sudo xargs bash -c '</dev/tty yum update "$@"' _
  2. SGX SDK、SGX PSW、および SGX DCAP ソフトウェアのバージョンを表示します。

    1. SGX SDK および SGX PSW ソフトウェアのバージョンを表示します。

      sudo rpm -qa|grep -E "sgxsdk|sgx-aesm-service|libsgx-(ae-epid|ae-le|ae-pce|aesm|enclave|epid|headers|launch|quote-ex|uae-service|urts)"

      次のコマンド出力が返されます。

      image

    2. SGX DCAP ソフトウェアのバージョンを表示します。

      sudo rpm -qa|grep -E "sgx-(dcap-pccs|pck|ra-service)|libsgx-(ae-id-enclave|ae-qe3|ae-qve|ae-tdqe|dcap|pce-logic|qe3-logic|ra-|tdx-)|libtdx-|^tdx-"

      次のコマンド出力が返されます。image

既知の問題

カーネルバージョンが 4.19.91-23.al7.x86_64 の Alibaba Cloud Linux 2 に同梱されている SGX ドライバーでは、メモリリークが発生する可能性があります。この問題は最新バージョンで修正されています。カーネルを最新バージョンに更新することを推奨します。この古いカーネルバージョンを引き続き使用する場合は、この問題を回避するため、次のコマンドを実行してホットフィックスをインストールすることを推奨します:

sudo yum install -y alinux-release-experimentals && \
sudo yum install -y kernel-hotfix-5577959-23.al7.x86_64