Skip to main content
. 2025 Aug 7;25(15):4856. doi: 10.3390/s25154856
Algorithm 6 TEE benchmarking procedure.
Require: Payload count N, thread count T, payload size S in bytes
Ensure: Timing arrays: signingTimes[], verificationTimes[]
  •   1:

    Initialize SGX enclave and crypto library

  •   2:

    Generate N random payloads of size S

  •   3:

    Initialize a thread pool executor with T workers

  •   4:

    signatures ← []                  ▹ Store generated signatures


    Parallel Signing:
  •   5:

    for all payload in payloads do             ▹ Executed in parallel

  •   6:

        start ← currentTime()

  •   7:

        σ enclave.sign(payload)

  •   8:

        signingTimes.append(currentTime() - start)

  •   9:

        signatures.append(σ)

  • 10:

    end for

    Parallel Verification:
  • 11:

    for all (payload, σ) in zip(payloads, signatures) do   ▹ Executed in parallel

  • 12:

        start ← currentTime()

  • 13:

        enclave.verify(payload, σ)

  • 14:

        verificationTimes.append(currentTime() - start)

  • 15:

    end for


  • 16:

    return signingTimes, verificationTimes