1.1 Check Your Hardware, BIOS and System

General Khala Hardware Requirements

A system can potentially mine Phala if it meets these general requirements:

It will also need a motherboard and BIOS which support using Intel SGX to run a Trusted Execution Environment (TEE).

Check Your CPU

  1. Look up your computer’s Processor. On Windows, you can find this in Control Panel/Settings, or right-click on the Start icon and select System. On Ubuntu, click in the upper-right corner, pick Settings, and then pick About.

  2. Confirm the CPU supports SGX

    Open Intel’s website at ark.intel.com and search for your exact CPU; and confirm that CPU supports Intel Software Guard Extensions (Intel SGX).

    (This image shows a CPU that supports SGX.)

Check BIOS settings

  1. Boot your computer into BIOS: either search the internet for the right method to boot into BIOS on your computer or look for instructions on screen immediately after a cold boot; this varies by computer model.
  2. Disable Secure Boot. Go to Security -> Secure Boot, set it to Disabled.
  3. Use UEFI Boot. Go to Boot -> Boot Mode, and make it’s set to UEFI.
  4. Enable SGX Extensions. Go to Security -> SGX (The exact name may vary by manufacturer), set it to Enabled.

    If you only see the SGX: Software Controlled option, you will have to later run Intel’s sgx-software-enable in Ubuntu. You can follow Intel’s instructions to build it from source and execute it. We also provide a prebuilt binary for Ubuntu 18.04 / 20.04 that can be found here. You can download and execute it with the following commands:

    1wget https://github.com/Phala-Network/sgx-tools/releases/download/0.1/sgx_enable
    2chmod +x sgx_enable
    3sudo ./sgx_enable
    
  5. Save and reboot.

Supported Operating Systems: Ubuntu 18.04 and 20.04

You’ll need to be able to boot your computer into a supported version of Ubuntu to mine. Versions above 18.04 and 20.04 should work, but are not guaranteed.

Installing Ubuntu Desktop

References

  1. What is a Trusted Execution Environment (TEE)?
  2. What is Intel SGX