From ae19a076cbf5ddeed63605753bcb0c6ab48ad3bb Mon Sep 17 00:00:00 2001 From: Jacob Barthelmeh Date: Wed, 14 Dec 2016 11:52:09 -0700 Subject: [PATCH 1/2] add SGX example --- SGX_example/Benchmarks.sln | 58 +++ SGX_example/Benchmarks/Benchmarks.cpp | 484 ++++++++++++++++++ SGX_example/Benchmarks/Benchmarks.h | 39 ++ SGX_example/Benchmarks/Benchmarks.vcxproj | 363 +++++++++++++ .../Benchmarks/Benchmarks.vcxproj.filters | 53 ++ SGX_example/Benchmarks/stdafx.cpp | 8 + SGX_example/Benchmarks/stdafx.h | 15 + SGX_example/Benchmarks/targetver.h | 8 + SGX_example/Enclave/Enclave.config.xml | 11 + SGX_example/Enclave/Enclave.cpp | 119 +++++ SGX_example/Enclave/Enclave.edl | 47 ++ SGX_example/Enclave/Enclave.vcxproj | 426 +++++++++++++++ SGX_example/Enclave/Enclave.vcxproj.filters | 48 ++ SGX_example/Enclave/Enclave_private.pem | 39 ++ SGX_example/Enclave/SGX_Benchmark.h | 15 + .../README-images/expected-results.PNG | Bin 0 -> 78124 bytes .../README-images/set-include-path.PNG | Bin 0 -> 161568 bytes SGX_example/README-images/wolfssl-lib.PNG | Bin 0 -> 40367 bytes SGX_example/README.md | 37 ++ 19 files changed, 1770 insertions(+) create mode 100755 SGX_example/Benchmarks.sln create mode 100755 SGX_example/Benchmarks/Benchmarks.cpp create mode 100755 SGX_example/Benchmarks/Benchmarks.h create mode 100755 SGX_example/Benchmarks/Benchmarks.vcxproj create mode 100755 SGX_example/Benchmarks/Benchmarks.vcxproj.filters create mode 100755 SGX_example/Benchmarks/stdafx.cpp create mode 100755 SGX_example/Benchmarks/stdafx.h create mode 100755 SGX_example/Benchmarks/targetver.h create mode 100755 SGX_example/Enclave/Enclave.config.xml create mode 100755 SGX_example/Enclave/Enclave.cpp create mode 100755 SGX_example/Enclave/Enclave.edl create mode 100755 SGX_example/Enclave/Enclave.vcxproj create mode 100755 SGX_example/Enclave/Enclave.vcxproj.filters create mode 100755 SGX_example/Enclave/Enclave_private.pem create mode 100755 SGX_example/Enclave/SGX_Benchmark.h create mode 100755 SGX_example/README-images/expected-results.PNG create mode 100755 SGX_example/README-images/set-include-path.PNG create mode 100755 SGX_example/README-images/wolfssl-lib.PNG create mode 100644 SGX_example/README.md diff --git a/SGX_example/Benchmarks.sln b/SGX_example/Benchmarks.sln new file mode 100755 index 00000000..cd30e294 --- /dev/null +++ b/SGX_example/Benchmarks.sln @@ -0,0 +1,58 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 2013 +VisualStudioVersion = 12.0.31101.0 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "benchmark", "Benchmarks\Benchmarks.vcxproj", "{C1574FBF-5346-480F-8DAD-A547480FF9F1}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Enclave", "Enclave\Enclave.vcxproj", "{BA00CB73-68CC-4BAD-8C00-ABEE66B4EB1C}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Win32 = Debug|Win32 + Debug|x64 = Debug|x64 + Prerelease|Win32 = Prerelease|Win32 + Prerelease|x64 = Prerelease|x64 + Release|Win32 = Release|Win32 + Release|x64 = Release|x64 + Simulation|Win32 = Simulation|Win32 + Simulation|x64 = Simulation|x64 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {C1574FBF-5346-480F-8DAD-A547480FF9F1}.Debug|Win32.ActiveCfg = Debug|Win32 + {C1574FBF-5346-480F-8DAD-A547480FF9F1}.Debug|Win32.Build.0 = Debug|Win32 + {C1574FBF-5346-480F-8DAD-A547480FF9F1}.Debug|x64.ActiveCfg = Debug|x64 + {C1574FBF-5346-480F-8DAD-A547480FF9F1}.Debug|x64.Build.0 = Debug|x64 + {C1574FBF-5346-480F-8DAD-A547480FF9F1}.Prerelease|Win32.ActiveCfg = Prerelease|Win32 + {C1574FBF-5346-480F-8DAD-A547480FF9F1}.Prerelease|Win32.Build.0 = Prerelease|Win32 + {C1574FBF-5346-480F-8DAD-A547480FF9F1}.Prerelease|x64.ActiveCfg = Prerelease|x64 + {C1574FBF-5346-480F-8DAD-A547480FF9F1}.Prerelease|x64.Build.0 = Prerelease|x64 + {C1574FBF-5346-480F-8DAD-A547480FF9F1}.Release|Win32.ActiveCfg = Release|Win32 + {C1574FBF-5346-480F-8DAD-A547480FF9F1}.Release|Win32.Build.0 = Release|Win32 + {C1574FBF-5346-480F-8DAD-A547480FF9F1}.Release|x64.ActiveCfg = Release|x64 + {C1574FBF-5346-480F-8DAD-A547480FF9F1}.Release|x64.Build.0 = Release|x64 + {C1574FBF-5346-480F-8DAD-A547480FF9F1}.Simulation|Win32.ActiveCfg = Simulation|Win32 + {C1574FBF-5346-480F-8DAD-A547480FF9F1}.Simulation|Win32.Build.0 = Simulation|Win32 + {C1574FBF-5346-480F-8DAD-A547480FF9F1}.Simulation|x64.ActiveCfg = Simulation|x64 + {C1574FBF-5346-480F-8DAD-A547480FF9F1}.Simulation|x64.Build.0 = Simulation|x64 + {BA00CB73-68CC-4BAD-8C00-ABEE66B4EB1C}.Debug|Win32.ActiveCfg = Debug|Win32 + {BA00CB73-68CC-4BAD-8C00-ABEE66B4EB1C}.Debug|Win32.Build.0 = Debug|Win32 + {BA00CB73-68CC-4BAD-8C00-ABEE66B4EB1C}.Debug|x64.ActiveCfg = Debug|x64 + {BA00CB73-68CC-4BAD-8C00-ABEE66B4EB1C}.Debug|x64.Build.0 = Debug|x64 + {BA00CB73-68CC-4BAD-8C00-ABEE66B4EB1C}.Prerelease|Win32.ActiveCfg = Prerelease|Win32 + {BA00CB73-68CC-4BAD-8C00-ABEE66B4EB1C}.Prerelease|Win32.Build.0 = Prerelease|Win32 + {BA00CB73-68CC-4BAD-8C00-ABEE66B4EB1C}.Prerelease|x64.ActiveCfg = Prerelease|x64 + {BA00CB73-68CC-4BAD-8C00-ABEE66B4EB1C}.Prerelease|x64.Build.0 = Prerelease|x64 + {BA00CB73-68CC-4BAD-8C00-ABEE66B4EB1C}.Release|Win32.ActiveCfg = Release|Win32 + {BA00CB73-68CC-4BAD-8C00-ABEE66B4EB1C}.Release|Win32.Build.0 = Release|Win32 + {BA00CB73-68CC-4BAD-8C00-ABEE66B4EB1C}.Release|x64.ActiveCfg = Release|x64 + {BA00CB73-68CC-4BAD-8C00-ABEE66B4EB1C}.Release|x64.Build.0 = Release|x64 + {BA00CB73-68CC-4BAD-8C00-ABEE66B4EB1C}.Simulation|Win32.ActiveCfg = Simulation|Win32 + {BA00CB73-68CC-4BAD-8C00-ABEE66B4EB1C}.Simulation|Win32.Build.0 = Simulation|Win32 + {BA00CB73-68CC-4BAD-8C00-ABEE66B4EB1C}.Simulation|x64.ActiveCfg = Simulation|x64 + {BA00CB73-68CC-4BAD-8C00-ABEE66B4EB1C}.Simulation|x64.Build.0 = Simulation|x64 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/SGX_example/Benchmarks/Benchmarks.cpp b/SGX_example/Benchmarks/Benchmarks.cpp new file mode 100755 index 00000000..c3eec6a6 --- /dev/null +++ b/SGX_example/Benchmarks/Benchmarks.cpp @@ -0,0 +1,484 @@ +/* Benchmarks.cpp +* +* Copyright (C) 2006-2016 wolfSSL Inc. +* +* This file is part of wolfSSL. +* +* wolfSSL is free software; you can redistribute it and/or modify +* it under the terms of the GNU General Public License as published by +* the Free Software Foundation; either version 2 of the License, or +* (at your option) any later version. +* +* wolfSSL is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU General Public License for more details. +* +* You should have received a copy of the GNU General Public License +* along with this program; if not, write to the Free Software +* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA +*/ + + +#include "stdafx.h" +#include "Benchmarks.h" /* contains include of Enclave_u.h which has wolfSSL header files */ + +/* Check settings of wolfSSL */ +#if !defined(HAVE_AESGCM) || defined(NO_RSA) || defined(NO_SHA256) +#error please enable AES-GCM, RSA, and SHA256 +#endif + +/* Use Debug SGX ? */ +#if _DEBUG + #define DEBUG_VALUE SGX_DEBUG_FLAG +#else + #define DEBUG_VALUE 1 +#endif + +#define WIN32_LEAN_AND_MEAN +#include + + +/* Choose AES Key size */ +//#define WC_AES_KEY_SZ 16 /* 128 bit key */ +#define WC_AES_KEY_SZ 24 /* 192 bit key */ + +static double current_time(int reset) +{ + static int init = 0; + static LARGE_INTEGER freq; + LARGE_INTEGER count; + + (void)reset; + + if (!init) { + QueryPerformanceFrequency(&freq); + init = 1; + } + + QueryPerformanceCounter(&count); + return (double)count.QuadPart / freq.QuadPart; +} + + +static void free_resources(byte* plain, byte* cipher) { + delete[] plain; + delete[] cipher; +} + + +/* benchmark is performed calling into Enclave on each update + * This function tests speeds at different message sizes during update */ +static double sha256_getTime_multiple(sgx_enclave_id_t id, double* total) { + double start, end; + int ret, sgxStatus; + byte* plain; + byte digest[64]; + int plainSz = (1024 * 1024); + int tSz = (1024 * 1024) * numBlocks; + int i, k; + + Sha256 sha256; + + ret = 0; + k = numBlocks; + printf("\n"); + for (k = 1; k <= numBlocks; k++) { + plainSz = tSz / k; + plain = new byte[plainSz]; + ret |= wc_sha256_init(id, &sgxStatus, &sha256); + start = current_time(1); + for (i = 0; i < k; i++) { + ret |= wc_sha256_update(id, &sgxStatus, &sha256, plain, plainSz); + } + ret |= wc_sha256_final(id, &sgxStatus, &sha256, digest); + end = current_time(0); + + if (ret != SGX_SUCCESS || sgxStatus != 0) { + printf("Error in SHA256 operation with Enclave: %d sgxStatus = %d.\n", ret, sgxStatus); + return -1; + } + *total = end - start; + printf("%8.3f\n", *total); + delete[] plain; + } + printf("\n"); + *total = end - start; + return 1 / *total * numBlocks; +} + + +/* benchmark is performed calling into Enclave on each update */ +static double sha256_getTime(sgx_enclave_id_t id, double* total) { + double start, end; + int ret = 0; + int sgxStatus = 0; + int i; + byte* plain; + byte digest[64]; + int plainSz = (1024 * 1024); + + Sha256 sha256; + + plain = new byte[plainSz]; + ret |= wc_sha256_init(id, &sgxStatus, &sha256); + start = current_time(1); + + /* perform work and get digest */ + for (i = 0; i < numBlocks; i++) { + ret |= wc_sha256_update(id, &sgxStatus, &sha256, plain, plainSz); + } + ret |= wc_sha256_final(id, &sgxStatus, &sha256, digest); + end = current_time(0); + + delete[] plain; + if (ret != SGX_SUCCESS || sgxStatus != 0) { + printf("Error in SHA256 operation with Enclave: %d sgxStatus = %d.\n", ret, sgxStatus); + return -1; + } + + *total = end - start; + return 1 / *total * numBlocks; +} + + +static int sha256_print(sgx_enclave_id_t id) +{ + double total, persec; + + printf("SHA-256 "); + persec = sha256_getTime(id, &total); + printf("%d megs took %5.3f seconds , %8.3f MB/s\n", numBlocks, total, persec); + + return 0; +} + + +/* return time in MB/s with crossing into enclave boundary with each encrypt */ +static double aesgcm_encrypt_getTime(sgx_enclave_id_t id, double* total, byte* plain, byte* cipher, word32 sz, byte* tag, word32 tagSz) +{ + Aes aes; + double start, end; + int i; + int ret, sgxStatus; + + const byte ad[13] = { 0 }; + + const XGEN_ALIGN byte iv[] = + { + 0x12, 0x34, 0x56, 0x78, 0x90, 0xab, 0xcd, 0xef, + 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, + 0x11, 0x21, 0x31, 0x41, 0x51, 0x61, 0x71, 0x81 + }; + + const XGEN_ALIGN byte key[] = + { + 0x01, 0x23, 0x45, 0x67, 0x89, 0xab, 0xcd, 0xef, + 0xfe, 0xde, 0xba, 0x98, 0x76, 0x54, 0x32, 0x10, + 0x89, 0xab, 0xcd, 0xef, 0x01, 0x23, 0x45, 0x67 + }; + + ret = wc_aesgcm_setKey(id, &sgxStatus, &aes, key, WC_AES_KEY_SZ); + if (ret != SGX_SUCCESS || sgxStatus != 0) { + printf("AES set key failed %d sgxStatus = %d\n", ret, sgxStatus); + return -1; + } + + start = current_time(1); + for (i = 0; i < numBlocks; i++) { + ret = wc_aesgcm_encrypt(id, &sgxStatus, &aes, cipher, plain, sz, iv, 12, tag, tagSz, ad, 13); + } + end = current_time(0); + + if (ret != SGX_SUCCESS || sgxStatus != 0) { + printf("Error in AES-GCM encrypt operation with Enclave: %d sgxStatus = %d.\n", ret, sgxStatus); + return -1; + } + + *total = end - start; + return 1 / *total * numBlocks; +} + + +static int aesgcm_encrypt_print(sgx_enclave_id_t id, byte* plain, byte* cipher, word32 sz, byte* tag, word32 tagSz) +{ + double total, persec; + + printf("AES-GCM encrypt "); + persec = aesgcm_encrypt_getTime(id, &total, plain, cipher, sz, tag, tagSz); + printf("%d megs took %5.3f seconds , %8.3f MB/s\n", numBlocks, total, persec); + + return 0; +} + + +/* return MB/s with crossing into Enclave boundary with each decrypt */ +static double aesgcm_decrypt_getTime(sgx_enclave_id_t id, double* total, byte* plain, const byte* cipher, word32 sz, const byte* tag, word32 tagSz) +{ + Aes aes; + double start, end; + int ret, sgxStatus; + int i; + + const byte ad[13] = { 0 }; + + const XGEN_ALIGN byte iv[] = + { + 0x12, 0x34, 0x56, 0x78, 0x90, 0xab, 0xcd, 0xef, + 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, + 0x11, 0x21, 0x31, 0x41, 0x51, 0x61, 0x71, 0x81 + }; + + const XGEN_ALIGN byte key[] = + { + 0x01, 0x23, 0x45, 0x67, 0x89, 0xab, 0xcd, 0xef, + 0xfe, 0xde, 0xba, 0x98, 0x76, 0x54, 0x32, 0x10, + 0x89, 0xab, 0xcd, 0xef, 0x01, 0x23, 0x45, 0x67 + }; + + ret = wc_aesgcm_setKey(id, &sgxStatus, &aes, key, WC_AES_KEY_SZ); + if (ret != SGX_SUCCESS || sgxStatus != 0) { + printf("AES set key failed %d sgxStatus = %d\n", ret, sgxStatus); + return -1; + } + + start = current_time(1); + for (i = 0; i < numBlocks; i++) { + ret = wc_aesgcm_decrypt(id, &sgxStatus, &aes, plain, cipher, sz, iv, 12, tag, tagSz, ad, 13); + } + end = current_time(0); + + if (ret != SGX_SUCCESS || sgxStatus < 0) { + printf("Error in AES-GCM decrypt operation with Enclave: %d sgxStatus = %d.\n", ret, sgxStatus); + return -1; + } + + *total = end - start; + return 1 / *total * numBlocks; +} + + +static int aesgcm_decrypt_print(sgx_enclave_id_t id, byte* plain, byte* cipher, word32 sz, const byte* tag, word32 tagSz) +{ + double total, persec; + + printf("AES-GCM decrypt "); + persec = aesgcm_decrypt_getTime(id, &total, plain, cipher, sz, tag, tagSz); + printf("%d megs took %5.3f seconds , %8.3f MB/s\n", numBlocks, total, persec); + + return 0; +} + + +/* return time for each in milliseconds */ +static double rsa_encrypt_getTime(sgx_enclave_id_t id, int* sgxStatus, double* total, const byte* message, word32 mSz, byte* cipher, word32 cSz) +{ + double start, end; + int ret, i; + int freeStatus = 0; + RsaKey rsa; + + ret = 0; *sgxStatus = 0; + ret = wc_rsa_init(id, sgxStatus, &rsa); /* loads RSA key from buffer and inits RNG */ + if (ret != SGX_SUCCESS || *sgxStatus != 0) { + printf("Initializing RSA failed %d sgxStatus = %d\n", ret, *sgxStatus); + return -1; + } + + start = current_time(1); + for (i = 0; i < ntimes; i++) { + ret = wc_rsa_encrypt(id, sgxStatus, message, mSz, cipher, cSz, &rsa); + } + end = current_time(0); + + if (ret != SGX_SUCCESS || *sgxStatus < 0) { + printf("Error in rsa encrypt operation with Enclave: %d sgxStatus = %d.\n", ret, *sgxStatus); + return -1; + } + + ret = wc_rsa_free(id, &freeStatus, &rsa); + if (ret != 0 || freeStatus != 0) { + printf("Failed to free RSA key %d sgxStatus = %d\n", ret, freeStatus); + return -1; + } + + *total = end - start; + return (*total / ntimes) * 1000; +} + + +static int rsa_encrypt_print(sgx_enclave_id_t id, int* sgxStatus, byte* plain, word32 pSz, byte* cipher, word32 cSz) +{ + double total, each; + + printf("RSA-2048 encrypt "); + each = rsa_encrypt_getTime(id, sgxStatus, &total, plain, pSz, cipher, cSz); + printf("took %6.3f milliseconds, avg over %d\n", each, ntimes); + + return 0; +} + + +/* return time in milliseconds for each */ +static double rsa_decrypt_getTime(sgx_enclave_id_t id, double* total, byte* m, word32 mSz, const byte* c, word32 cSz) +{ + double start, end; + int ret, sgxStatus, i; + RsaKey rsa; + + ret = wc_rsa_init(id, &sgxStatus, &rsa); /* loads RSA key from buffer and inits RNG */ + if (ret != SGX_SUCCESS || sgxStatus != 0) { + printf("Initializing RSA failed %d sgxStatus = %d\n", ret, sgxStatus); + return -1; + } + + start = current_time(1); + for (i = 0; i < ntimes; i++) { + ret = wc_rsa_decrypt(id, &sgxStatus, c, cSz, m, mSz, &rsa); + } + end = current_time(0); + + if (ret != SGX_SUCCESS || sgxStatus < 0) { + printf("Error in rsa decrypt operation with Enclave: %d sgxStatus = %d.\n", ret, sgxStatus); + return -1; + } + + ret = wc_rsa_free(id, &sgxStatus, &rsa); + if (ret != 0 || sgxStatus != 0) { + printf("Failed to free RSA key %d sgxStatus = %d\n", ret, sgxStatus); + return -1; + } + + *total = end - start; + return (*total / ntimes) * 1000; +} + + +static int rsa_decrypt_print(sgx_enclave_id_t id, byte* m, word32 mSz, const byte* c, word32 cSz) +{ + double total, each; + + printf("RSA-2048 decrypt "); + each = rsa_decrypt_getTime(id, &total, m, mSz, c, cSz); + printf("took %6.3f milliseconds, avg over %d\n", each, ntimes); + + return 0; +} + +int main(int argc, char* argv[]) +{ + sgx_enclave_id_t id; + sgx_launch_token_t t; + + int ret = 0; + int sgxStatus = 0; + int updated = 0; + byte message[] = "Secure wolfSSL."; + + byte* plain = new byte[1024 * 1024]; + byte* cipher = new byte[1024 * 1024]; + const byte tag[16] = { 0 }; + int plainSz = 1024 * 1024; + int i; + + /* only print off if no command line arguments were passed in */ + if (argc == 1) { + printf("Setting up Enclave ... "); + } + + memset(t, 0, sizeof(sgx_launch_token_t)); + + ret = sgx_create_enclave(_T("Enclave.signed.dll"), DEBUG_VALUE, &t, &updated, &id, NULL); + if (ret != SGX_SUCCESS) { + printf("Failed to create Enclave : error %d - %#x.\n", ret, ret); + free_resources(plain, cipher); + return 1; + } + + /* test if only printing off times */ + if (argc > 1) { + double total; + int idx = 1; + while (1) { + for (idx = 1; idx < argc; idx++) { + if (strncmp(argv[idx], "-s256", 6) == 0) { + printf("%8.3f - SHA-256\n", sha256_getTime(id, &total)); + fflush(stdout); + } + else if (strncmp(argv[idx], "-ag", 3) == 0) { + printf("%8.3f - AES-GCM\n", aesgcm_encrypt_getTime(id, &total, plain, cipher, plainSz, (byte*)tag, sizeof(tag))); + fflush(stdout); + } + else if (strncmp(argv[idx], "-re", 4) == 0) { + printf("%8.3f - RSA-ENC\n", rsa_encrypt_getTime(id, &sgxStatus, &total, message, sizeof(message), cipher, plainSz)); + fflush(stdout); + } + else if (strncmp(argv[idx], "-rd", 4) == 0) { + rsa_encrypt_getTime(id, &sgxStatus, &total, message, sizeof(message), cipher, plainSz); + printf("%8.3f - RSA-DEC\n", rsa_decrypt_getTime(id, &total, plain, plainSz, cipher, sgxStatus)); + fflush(stdout); + } + else { + printf("\"%s\" Not yet implemented\n\t-s256 for SHA256\n\t-ag for AES-GCM\n\t-re for RSA encrypt", argv[idx]); + fflush(stdout); + free_resources(plain, cipher); + return 0; + } + } + } + } + + printf("Success\nCollecting benchmark values for wolfSSL using SGX\n"); + + /*********** SHA-256 ***************/ + if (sha256_print(id) != 0) { + free_resources(plain, cipher); + return -1; + } + printf("\n"); + + + /*********** AES-GCM ***************/ + /* place message in first bytes of plain and test encrypt/decrypt with aesgcm */ + memcpy(plain, message, sizeof(message)); + + if (aesgcm_encrypt_print(id, plain, cipher, plainSz, (byte*)tag, sizeof(tag)) != 0) { + free_resources(plain, cipher); + return -1; + } + + memset(plain, 0, plainSz); + if (aesgcm_decrypt_print(id, plain, cipher, plainSz, tag, sizeof(tag)) != 0) { + free_resources(plain, cipher); + return -1; + } + + printf("\tdecrypted message = "); + for (i = 0; i < sizeof(message); i++) { printf("%c", plain[i]); } + printf("\n\n"); + + /*********** RSA ***************/ + memset(cipher, 0, 256); + ret = rsa_encrypt_print(id, &sgxStatus, message, sizeof(message), cipher, plainSz); + if (ret < 0) { + free_resources(plain, cipher); + return -1; + } + + memset(plain, 0, plainSz); + ret = rsa_decrypt_print(id, plain, plainSz, cipher, sgxStatus); + if (ret != 0) { + free_resources(plain, cipher); + return -1; + } + + printf("\tdecrypted message = "); + for (i = 0; i < 15; i++){ printf("%c", plain[i]); } + printf("\n"); + + + /*********** Free arrays and exit ***************/ + free_resources(plain, cipher); + return 0; +} + diff --git a/SGX_example/Benchmarks/Benchmarks.h b/SGX_example/Benchmarks/Benchmarks.h new file mode 100755 index 00000000..409debaf --- /dev/null +++ b/SGX_example/Benchmarks/Benchmarks.h @@ -0,0 +1,39 @@ +/* Benchmarks.h +* +* Copyright (C) 2006-2016 wolfSSL Inc. +* +* This file is part of wolfSSL. +* +* wolfSSL is free software; you can redistribute it and/or modify +* it under the terms of the GNU General Public License as published by +* the Free Software Foundation; either version 2 of the License, or +* (at your option) any later version. +* +* wolfSSL is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU General Public License for more details. +* +* You should have received a copy of the GNU General Public License +* along with this program; if not, write to the Free Software +* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA +*/ + +#ifndef BENCHMARKS_H +#define BENCHMARKS_H + +#include "sgx_urts.h" /* Manages Enclave */ +#include /* IO stream Operations */ +#include "sgx_status.h" /* checks the status of the sgx APIs */ +#include "Enclave_u.h" /* contains untrusted wrapper functions used to call enclave functions*/ +#include + +#define BENCH_RSA + +enum BenchmarkBounds { + /* these numbers are lower then default wolfSSL one to collect benchmark values faster for GUI */ + numBlocks = 10, /* how many megs to test */ + ntimes = 30 /* how many itteration to run RSA decrypt/encrypt */ +}; + +#endif \ No newline at end of file diff --git a/SGX_example/Benchmarks/Benchmarks.vcxproj b/SGX_example/Benchmarks/Benchmarks.vcxproj new file mode 100755 index 00000000..f1961be2 --- /dev/null +++ b/SGX_example/Benchmarks/Benchmarks.vcxproj @@ -0,0 +1,363 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Prerelease + Win32 + + + Prerelease + x64 + + + Release + Win32 + + + Release + x64 + + + Simulation + Win32 + + + Simulation + x64 + + + + {C1574FBF-5346-480F-8DAD-A547480FF9F1} + Win32Proj + Benchmarks + benchmark + + + + Application + true + Intel C++ Compiler 16.0 + Unicode + + + Application + true + Intel C++ Compiler 16.0 + Unicode + + + Application + true + Intel C++ Compiler 16.0 + Unicode + + + Application + true + Intel C++ Compiler 16.0 + Unicode + + + Application + false + Intel C++ Compiler 16.0 + true + Unicode + + + Application + false + Intel C++ Compiler 16.0 + true + Unicode + + + Application + false + Intel C++ Compiler 16.0 + true + Unicode + + + Application + false + Intel C++ Compiler 16.0 + true + Unicode + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + + + true + + + true + + + true + + + false + + + false + + + false + + + false + + + + Use + Level3 + Disabled + WOLFSSL_SGX;WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions) + true + $(SGXSDKInstallPath)\include;%(AdditionalIncludeDirectories) + + + Console + true + $(SGXSDKInstallPath)\bin\$(Platform)\Debug;%(AdditionalLibraryDirectories) + sgx_urts.lib;sgx_uae_service.lib;%(AdditionalDependencies) + + + + + Use + Level3 + Disabled + WOLFSSL_SGX;WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions) + true + $(SGXSDKInstallPath)\include;%(AdditionalIncludeDirectories) + + + Console + true + $(SGXSDKInstallPath)\bin\$(Platform)\Debug;%(AdditionalLibraryDirectories) + sgx_urts.lib;sgx_uae_service.lib;%(AdditionalDependencies) + + + + + Use + Level3 + Disabled + WOLFSSL_SGX;WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions) + true + $(SGXSDKInstallPath)\include;%(AdditionalIncludeDirectories) + + + Console + true + $(SGXSDKInstallPath)\bin\$(Platform)\Debug;%(AdditionalLibraryDirectories) + sgx_urts_sim.lib;sgx_uae_service_sim.lib;%(AdditionalDependencies) + + + + + Use + Level3 + Disabled + WOLFSSL_SGX;WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions) + true + $(SGXSDKInstallPath)\include;%(AdditionalIncludeDirectories) + + + Console + true + $(SGXSDKInstallPath)\bin\$(Platform)\Debug;%(AdditionalLibraryDirectories) + sgx_urts_sim.lib;sgx_uae_service_sim.lib;%(AdditionalDependencies) + + + + + Level3 + Use + MaxSpeed + true + true + WOLFSSL_SGX;WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions) + true + $(SGXSDKInstallPath)\include;%(AdditionalIncludeDirectories) + + + Console + true + true + true + $(SGXSDKInstallPath)\bin\$(Platform)\Release;%(AdditionalLibraryDirectories) + sgx_urts.lib;sgx_uae_service.lib;%(AdditionalDependencies) + + + + + Level3 + Use + MaxSpeed + true + true + WOLFSSL_SGX;WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions) + true + $(SGXSDKInstallPath)\include;%(AdditionalIncludeDirectories) + + + Console + true + true + true + $(SGXSDKInstallPath)\bin\$(Platform)\Release;%(AdditionalLibraryDirectories) + sgx_urts.lib;sgx_uae_service.lib;%(AdditionalDependencies) + + + + + Level3 + Use + MaxSpeed + true + true + WOLFSSL_SGX;EDEBUG;WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions) + true + $(SGXSDKInstallPath)\include;%(AdditionalIncludeDirectories) + + + Console + true + true + true + $(SGXSDKInstallPath)\bin\$(Platform)\Release;%(AdditionalLibraryDirectories) + sgx_urts.lib;sgx_uae_service.lib;%(AdditionalDependencies) + + + + + Level3 + Use + MaxSpeed + true + true + WOLFSSL_SGX;EDEBUG;WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions) + true + $(SGXSDKInstallPath)\include;%(AdditionalIncludeDirectories) + + + Console + true + true + true + $(SGXSDKInstallPath)\bin\$(Platform)\Release;%(AdditionalLibraryDirectories) + sgx_urts.lib;sgx_uae_service.lib;%(AdditionalDependencies) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Create + Create + Create + Create + Create + Create + Create + Create + + + + + "$(SGXSDKInstallPath)\bin\win32\Release\sgx_edger8r.exe" --untrusted ".\..\Enclave\Enclave.edl" --search-path ".\..\Enclave%3b$(SGXSDKInstallPath)\include" + "$(SGXSDKInstallPath)\bin\win32\Release\sgx_edger8r.exe" --untrusted ".\..\Enclave\Enclave.edl" --search-path ".\..\Enclave%3b$(SGXSDKInstallPath)\include" + Creating untrusted proxy/bridge routines + Creating untrusted proxy/bridge routines + $(ProjectDir)%(Filename)_u.h;$(ProjectDir)%(Filename)_u.c;%(Outputs) + $(ProjectDir)%(Filename)_u.h;$(ProjectDir)%(Filename)_u.c;%(Outputs) + "$(SGXSDKInstallPath)\bin\win32\Release\sgx_edger8r.exe" --untrusted ".\..\Enclave\Enclave.edl" --search-path ".\..\Enclave%3b$(SGXSDKInstallPath)\include" + "$(SGXSDKInstallPath)\bin\win32\Release\sgx_edger8r.exe" --untrusted ".\..\Enclave\Enclave.edl" --search-path ".\..\Enclave%3b$(SGXSDKInstallPath)\include" + Creating untrusted proxy/bridge routines + Creating untrusted proxy/bridge routines + $(ProjectDir)%(Filename)_u.h;$(ProjectDir)%(Filename)_u.c;%(Outputs) + $(ProjectDir)%(Filename)_u.h;$(ProjectDir)%(Filename)_u.c;%(Outputs) + "$(SGXSDKInstallPath)\bin\win32\Release\sgx_edger8r.exe" --untrusted ".\..\Enclave\Enclave.edl" --search-path ".\..\Enclave%3b$(SGXSDKInstallPath)\include" + "$(SGXSDKInstallPath)\bin\win32\Release\sgx_edger8r.exe" --untrusted ".\..\Enclave\Enclave.edl" --search-path ".\..\Enclave%3b$(SGXSDKInstallPath)\include" + Creating untrusted proxy/bridge routines + Creating untrusted proxy/bridge routines + $(ProjectDir)%(Filename)_u.h;$(ProjectDir)%(Filename)_u.c;%(Outputs) + $(ProjectDir)%(Filename)_u.h;$(ProjectDir)%(Filename)_u.c;%(Outputs) + "$(SGXSDKInstallPath)\bin\win32\Release\sgx_edger8r.exe" --untrusted ".\..\Enclave\Enclave.edl" --search-path ".\..\Enclave%3b$(SGXSDKInstallPath)\include" + "$(SGXSDKInstallPath)\bin\win32\Release\sgx_edger8r.exe" --untrusted ".\..\Enclave\Enclave.edl" --search-path ".\..\Enclave%3b$(SGXSDKInstallPath)\include" + Creating untrusted proxy/bridge routines + Creating untrusted proxy/bridge routines + $(ProjectDir)%(Filename)_u.h;$(ProjectDir)%(Filename)_u.c;%(Outputs) + $(ProjectDir)%(Filename)_u.h;$(ProjectDir)%(Filename)_u.c;%(Outputs) + + + + + + \ No newline at end of file diff --git a/SGX_example/Benchmarks/Benchmarks.vcxproj.filters b/SGX_example/Benchmarks/Benchmarks.vcxproj.filters new file mode 100755 index 00000000..09df17e0 --- /dev/null +++ b/SGX_example/Benchmarks/Benchmarks.vcxproj.filters @@ -0,0 +1,53 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hh;hpp;hxx;hm;inl;inc;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + {926368bf-c0ee-493d-a234-f605ef22f69a} + + + + + + + + Header Files + + + Header Files + + + Generated Files + + + Header Files + + + + + Source Files + + + Source Files + + + Generated Files + + + + + Source Files + + + \ No newline at end of file diff --git a/SGX_example/Benchmarks/stdafx.cpp b/SGX_example/Benchmarks/stdafx.cpp new file mode 100755 index 00000000..e5951754 --- /dev/null +++ b/SGX_example/Benchmarks/stdafx.cpp @@ -0,0 +1,8 @@ +// stdafx.cpp : source file that includes just the standard includes +// Benchmarks.pch will be the pre-compiled header +// stdafx.obj will contain the pre-compiled type information + +#include "stdafx.h" + +// TODO: reference any additional headers you need in STDAFX.H +// and not in this file diff --git a/SGX_example/Benchmarks/stdafx.h b/SGX_example/Benchmarks/stdafx.h new file mode 100755 index 00000000..47a0d025 --- /dev/null +++ b/SGX_example/Benchmarks/stdafx.h @@ -0,0 +1,15 @@ +// stdafx.h : include file for standard system include files, +// or project specific include files that are used frequently, but +// are changed infrequently +// + +#pragma once + +#include "targetver.h" + +#include +#include + + + +// TODO: reference additional headers your program requires here diff --git a/SGX_example/Benchmarks/targetver.h b/SGX_example/Benchmarks/targetver.h new file mode 100755 index 00000000..90e767bf --- /dev/null +++ b/SGX_example/Benchmarks/targetver.h @@ -0,0 +1,8 @@ +#pragma once + +// Including SDKDDKVer.h defines the highest available Windows platform. + +// If you wish to build your application for a previous Windows platform, include WinSDKVer.h and +// set the _WIN32_WINNT macro to the platform you wish to support before including SDKDDKVer.h. + +#include diff --git a/SGX_example/Enclave/Enclave.config.xml b/SGX_example/Enclave/Enclave.config.xml new file mode 100755 index 00000000..3ed892ba --- /dev/null +++ b/SGX_example/Enclave/Enclave.config.xml @@ -0,0 +1,11 @@ + + 0 + 0 + 0x100000 + 0x200000 + 1 + 1 + 0 + 0 + 0xFFFFFFFF + diff --git a/SGX_example/Enclave/Enclave.cpp b/SGX_example/Enclave/Enclave.cpp new file mode 100755 index 00000000..10180f3b --- /dev/null +++ b/SGX_example/Enclave/Enclave.cpp @@ -0,0 +1,119 @@ +/* Enclave.cpp +* +* Copyright (C) 2006-2016 wolfSSL Inc. +* +* This file is part of wolfSSL. +* +* wolfSSL is free software; you can redistribute it and/or modify +* it under the terms of the GNU General Public License as published by +* the Free Software Foundation; either version 2 of the License, or +* (at your option) any later version. +* +* wolfSSL is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU General Public License for more details. +* +* You should have received a copy of the GNU General Public License +* along with this program; if not, write to the Free Software +* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA +*/ + + +#include "Enclave_t.h" /* includes header files from wolfSSL */ +#include "wolfssl/certs_test.h" +#include "sgx_trts.h" + +static volatile byte RNG_unset = 1; +static WC_RNG rng; + +int wc_sha256_init(Sha256* sha256) { + return wc_InitSha256(sha256); +} + +int wc_sha256_update(Sha256* sha256, byte* buf, int bufSz) +{ + return wc_Sha256Update(sha256, buf, bufSz); +} + +int wc_sha256_final(Sha256* sha256, byte* digest) +{ + return wc_Sha256Final(sha256, digest); +} + + +int wc_aesgcm_setKey(Aes* aes, const byte* key, word32 sz) +{ + return wc_AesGcmSetKey(aes, key, sz); +} + +int wc_aesgcm_encrypt(Aes* aes, byte* c, const byte*p, word32 pSz, const byte* iv, word32 ivSz, byte* tag, word32 tagSz, const byte* ad, word32 adSz) +{ + return wc_AesGcmEncrypt(aes, c, p, pSz, iv, ivSz, tag, tagSz, ad, adSz); +} + +int wc_aesgcm_decrypt(Aes* aes, byte* p, const byte* c, word32 cSz, const byte* iv, word32 ivSz, const byte* tag, word32 tagSz, const byte* ad, word32 adSz) +{ + return wc_AesGcmDecrypt(aes, p, c, cSz, iv, 12, tag, 16, ad, 13); +} + + +/* return size of encrypted data */ +int wc_rsa_encrypt(const byte* m, word32 mSz, byte* out, word32 outSz, RsaKey* rsaKey) +{ + return wc_RsaPublicEncrypt(m, mSz, out, outSz, rsaKey, &rng); +} + +int wc_rsa_decrypt(const byte* in, word32 inSz, byte* m, word32 mSz, RsaKey* rsaKey) +{ + return wc_RsaPrivateDecrypt(in, inSz, m, mSz, rsaKey); +} + + +int wc_rsa_free(RsaKey* rsaKey) +{ + return wc_FreeRsaKey(rsaKey); +} + + +/* RSA key is set from wolfSSL certs_test.h */ +int wc_rsa_init(RsaKey* rsaKey) +{ + int ret; + word32 bytes; + word32 idx = 0; + const byte* tmp; + +#ifdef USE_CERT_BUFFERS_1024 + tmp = rsa_key_der_1024; + bytes = sizeof_rsa_key_der_1024; +#elif defined(USE_CERT_BUFFERS_2048) + tmp = rsa_key_der_2048; + bytes = sizeof_rsa_key_der_2048; +#else +#error "need a cert buffer size" +#endif /* USE_CERT_BUFFERS */ + + ret = wc_InitRsaKey(rsaKey, 0); + if (ret < 0) { + return -1; + } + ret = wc_RsaPrivateKeyDecode(tmp, &idx, rsaKey, bytes); + if (ret != 0) { + return -1; + } + + if (RNG_unset) { /* not atomic, for demo only. RNG could be moved to user APP and passed by reference */ + RNG_unset = 0; + ret = wc_InitRng(&rng); + if (ret < 0) { + return -1; + } + } + + #ifdef WC_RSA_BLINDING + wc_RsaSetRNG(rsaKey, rng); + #endif + + return 0; +} diff --git a/SGX_example/Enclave/Enclave.edl b/SGX_example/Enclave/Enclave.edl new file mode 100755 index 00000000..70e28b54 --- /dev/null +++ b/SGX_example/Enclave/Enclave.edl @@ -0,0 +1,47 @@ +enclave { + + include "wolfssl/wolfcrypt/settings.h" + include "wolfssl/wolfcrypt/types.h" + include "wolfssl/wolfcrypt/sha256.h" + include "wolfssl/wolfcrypt/aes.h" + include "wolfssl/wolfcrypt/rsa.h" + include "wolfssl/wolfcrypt/random.h" + + + trusted { + + /* SHA 256 opperations + * Using user_check to increase performance, in copies over the buffer */ + public int wc_sha256_init([user_check]Sha256* sha256); + public int wc_sha256_update([user_check]Sha256* sha256, [user_check]byte* buf, int bufSz); + public int wc_sha256_final([user_check]Sha256* sha256, [user_check]byte* digest); + + + /* AES GCM opperations + * Using user_check to increase performance */ + public int wc_aesgcm_setKey([user_check]Aes* aes, [user_check]const byte* key, word32 len); + public int wc_aesgcm_encrypt([user_check]Aes* aes, [user_check]byte* out, + [user_check]const byte* in, word32 sz, + [user_check]const byte* iv, word32 ivSz, + [user_check]byte* authTag, word32 authTagSz, + [user_check]const byte* authIn, word32 authInSz); + public int wc_aesgcm_decrypt([user_check]Aes* aes, [user_check]byte* out, + [user_check]const byte* in, word32 sz, + [user_check]const byte* iv, word32 ivSz, + [user_check]const byte* authTag, word32 authTagSz, + [user_check]const byte* authIn, word32 authInSz); + + + /* RSA opperations + * Using user_check to increase performance */ + public int wc_rsa_encrypt([user_check]const byte* m, word32 mSz, [user_check]byte* out, word32 outSz, [user_check]RsaKey* key); + public int wc_rsa_decrypt([user_check]const byte* in, word32 inSz, [user_check]byte* out, word32 mSz, [user_check]RsaKey* key); + public int wc_rsa_init([user_check]RsaKey* rsa); + public int wc_rsa_free([user_check]RsaKey* rsa); + }; + + untrusted { + /* define OCALLs here. */ + + }; +}; diff --git a/SGX_example/Enclave/Enclave.vcxproj b/SGX_example/Enclave/Enclave.vcxproj new file mode 100755 index 00000000..36c4ada3 --- /dev/null +++ b/SGX_example/Enclave/Enclave.vcxproj @@ -0,0 +1,426 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Prerelease + Win32 + + + Prerelease + x64 + + + Release + Win32 + + + Release + x64 + + + Simulation + Win32 + + + Simulation + x64 + + + + {BA00CB73-68CC-4BAD-8C00-ABEE66B4EB1C} + v4.5 + + + + DynamicLibrary + Intel C++ Compiler 16.0 + + + DynamicLibrary + Intel C++ Compiler 16.0 + + + DynamicLibrary + v120 + + + DynamicLibrary + v120 + + + DynamicLibrary + Intel C++ Compiler 16.0 + + + DynamicLibrary + Intel C++ Compiler 16.0 + + + DynamicLibrary + v120 + + + DynamicLibrary + v120 + + + DynamicLibrary + Intel C++ Compiler 16.0 + + + DynamicLibrary + Intel C++ Compiler 16.0 + + + DynamicLibrary + Intel C++ Compiler 16.0 + + + DynamicLibrary + Intel C++ Compiler 16.0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + false + false + + + $(NoInherit) + + + false + false + + + $(NoInherit) + + + false + false + $(SolutionDir)\wolfSSLEnclaveLib;$(NoInherit);;$(SolutionDir)\wolfSSLEnclaveLib;$(SolutionDir)\wolfSSLEnclaveLib + $(NoInherit) + + + false + false + $(SolutionDir)\wolfSSLEnclaveLib;$(NoInherit);;$(SolutionDir)\wolfSSLEnclaveLib;$(SolutionDir)\wolfSSLEnclaveLib + $(NoInherit) + + + false + false + + + $(NoInherit) + + + false + false + + + $(NoInherit) + + + false + false + + + $(NoInherit) + + + false + false + + + $(NoInherit) + + + + Default + MultiThreadedDebug + Disabled + Level3 + $(SGXSDKInstallPath)include;$(SGXSDKInstallPath)include\tlibc;$(SGXSDKInstallPath)include\stlport;%(AdditionalIncludeDirectories) + WOLFSSL_SGX;%(PreprocessorDefinitions) + + + wolfssl.lib;sgx_trts.lib;sgx_tstdc.lib;sgx_tservice.lib;sgx_tcrypto.lib;sgx_tstdcxx.lib + $(OutDir);$(SGXSDKInstallPath)bin\$(Platform)\$(Configuration);$(SolutionDir) + true + + true + true + + + "$(SGXSDKInstallPath)bin\win32\release\sgx_sign.exe" sign -key "Enclave_private.pem" -enclave "$(OutDir)Enclave.dll" -out "$(OutDir)Enclave.signed.dll" -config "Enclave.config.xml" + sign the enclave + + + + + Default + MultiThreadedDebug + Disabled + Level3 + $(SGXSDKInstallPath)include;$(SGXSDKInstallPath)include\tlibc;$(SGXSDKInstallPath)include\stlport;%(AdditionalIncludeDirectories) + WOLFSSL_SGX;_WINDLL;%(PreprocessorDefinitions) + + + wolfssl.lib;sgx_trts.lib;sgx_tstdc.lib;sgx_tservice.lib;sgx_tcrypto.lib;sgx_tstdcxx.lib + $(OutDir);$(SGXSDKInstallPath)bin\$(Platform)\$(Configuration);$(OutDir) + true + + + true + true + + + "$(SGXSDKInstallPath)bin\x64\release\sgx_sign.exe" sign -key "Enclave_private.pem" -enclave "$(OutDir)Enclave.dll" -out "$(OutDir)Enclave.signed.dll" -config "Enclave.config.xml" + sign the enclave + + + + + Default + MultiThreadedDebug + Disabled + Level3 + $(SGXSDKInstallPath)include;$(SGXSDKInstallPath)include\tlibc;$(SGXSDKInstallPath)include\stlport;%(AdditionalIncludeDirectories) + WOLFSSL_SGX;_WINDLL;%(PreprocessorDefinitions) + + + wolfSSLEnclaveLib.lib;sgx_trts_sim.lib;sgx_tstdc.lib;sgx_tservice_sim.lib;sgx_tcrypto.lib;sgx_tstdcxx.lib + $(OutDir);$(SGXSDKInstallPath)bin\$(Platform)\Debug + true + + + true + true + + + "$(SGXSDKInstallPath)bin\win32\release\sgx_sign.exe" sign -key "$(ProjectDir)Enclave_private.pem" -enclave "$(OutDir)Enclave.dll" -out "$(OutDir)Enclave.signed.dll" -config "$(ProjectDir)Enclave.config.xml" + sign the enclave + + + + + Default + MultiThreadedDebug + Disabled + Level3 + $(SGXSDKInstallPath)include;$(SGXSDKInstallPath)include\tlibc;$(SGXSDKInstallPath)include\stlport;%(AdditionalIncludeDirectories) + WOLFSSL_SGX;_WINDLL;%(PreprocessorDefinitions) + + + wolfSSLEnclaveLib;sgx_trts_sim.lib;sgx_tstdc.lib;sgx_tservice_sim.lib;sgx_tcrypto.lib;sgx_tstdcxx.lib + $(OutDir);$(SGXSDKInstallPath)bin\$(Platform)\Debug + true + + + true + true + + + "$(SGXSDKInstallPath)bin\win32\release\sgx_sign.exe" sign -key "$(ProjectDir)Enclave_private.pem" -enclave "$(OutDir)Enclave.dll" -out "$(OutDir)Enclave.signed.dll" -config "$(ProjectDir)Enclave.config.xml" + sign the enclave + + + + + Default + MultiThreaded + MaxSpeed + Level3 + $(SGXSDKInstallPath)include;$(SGXSDKInstallPath)include\tlibc;$(SGXSDKInstallPath)include\stlport;%(AdditionalIncludeDirectories) + true + WOLFSSL_SGX;_WINDLL;%(PreprocessorDefinitions) + + + wolfssl.lib;sgx_trts.lib;sgx_tstdc.lib;sgx_tservice.lib;sgx_tcrypto.lib;sgx_tstdcxx.lib + $(OutDir);$(SGXSDKInstallPath)bin\$(Platform)\$(Configuration);$(OutDir) + true + + true + true + true + + + "$(SGXSDKInstallPath)bin\win32\release\sgx_sign.exe" gendata -enclave "$(OutDir)Enclave.dll" -out "$(OutDir)Enclave.hex" -config "$(ProjectDir)Enclave.config.xml" + generate the enclave signing material + + + + + Default + MultiThreaded + MaxSpeed + Level3 + $(SGXSDKInstallPath)include;$(SGXSDKInstallPath)include\tlibc;$(SGXSDKInstallPath)include\stlport;%(AdditionalIncludeDirectories) + true + WOLFSSL_SGX;_WINDLL;%(PreprocessorDefinitions) + + + wolfSSLEnclaveLib.lib;sgx_trts.lib;sgx_tstdc.lib;sgx_tservice.lib;sgx_tcrypto.lib;sgx_tstdcxx.lib;wolfSSLEnclaveLib.lib + $(OutDir);$(SGXSDKInstallPath)bin\$(Platform)\$(Configuration) + true + + + true + true + true + + + "$(SGXSDKInstallPath)bin\win32\release\sgx_sign.exe" gendata -enclave "$(OutDir)Enclave.dll" -out "$(OutDir)Enclave.hex" -config "$(ProjectDir)Enclave.config.xml" + generate the enclave signing material + + + + + Default + MultiThreaded + MaxSpeed + Level3 + $(SGXSDKInstallPath)include;$(SGXSDKInstallPath)include\tlibc;$(SGXSDKInstallPath)include\stlport;%(AdditionalIncludeDirectories) + true + WOLFSSL_SGX;_WINDLL;%(PreprocessorDefinitions) + + + wolfSSLEnclaveLib.lib;sgx_trts.lib;sgx_tstdc.lib;sgx_tservice.lib;sgx_tcrypto.lib;sgx_tstdcxx.lib + $(OutDir);$(SGXSDKInstallPath)bin\$(Platform)\Release;$(SolutionDir) + true + + + true + true + true + + + "$(SGXSDKInstallPath)bin\win32\release\sgx_sign.exe" sign -key "$(ProjectDir)Enclave_private.pem" -enclave "$(OutDir)Enclave.dll" -out "$(OutDir)Enclave.signed.dll" -config "$(ProjectDir)Enclave.config.xml" + sign the enclave + + + + + Default + MultiThreaded + MaxSpeed + Level3 + $(SGXSDKInstallPath)include;$(SGXSDKInstallPath)include\tlibc;$(SGXSDKInstallPath)include\stlport;%(AdditionalIncludeDirectories) + true + WOLFSSL_SGX;_WINDLL;%(PreprocessorDefinitions) + + + wolfssl.lib;sgx_trts.lib;sgx_tstdc.lib;sgx_tservice.lib;sgx_tcrypto.lib;sgx_tstdcxx.lib + $(OutDir);$(SGXSDKInstallPath)bin\$(Platform)\Release;$(SolutionDir) + true + + + true + true + true + + + "$(SGXSDKInstallPath)bin\win32\release\sgx_sign.exe" sign -key "$(ProjectDir)Enclave_private.pem" -enclave "$(OutDir)Enclave.dll" -out "$(OutDir)Enclave.signed.dll" -config "$(ProjectDir)Enclave.config.xml" + sign the enclave + + + + + + + + + + + + "$(SGXSDKInstallPath)bin\win32\release\sgx_edger8r.exe" --trusted "$(ProjectDir)Enclave.edl" --search-path "$(SGXSDKInstallPath)include" + "$(SGXSDKInstallPath)bin\win32\release\sgx_edger8r.exe" --trusted "$(ProjectDir)Enclave.edl" --search-path "$(SGXSDKInstallPath)include" + Creating proxy/bridge routines + Creating proxy/bridge routines + $(ProjectName)_t.h;$(ProjectName)_t.c;%(Outputs) + $(ProjectName)_t.h;$(ProjectName)_t.c;%(Outputs) + Enclave.config.xml;%(AdditionalInputs) + Enclave.config.xml;%(AdditionalInputs) + "$(SGXSDKInstallPath)bin\win32\release\sgx_edger8r.exe" --trusted "$(ProjectDir)Enclave.edl" --search-path "$(SGXSDKInstallPath)include" + "$(SGXSDKInstallPath)bin\win32\release\sgx_edger8r.exe" --trusted "$(ProjectDir)Enclave.edl" --search-path "$(SGXSDKInstallPath)include" + Creating proxy/bridge routines + Creating proxy/bridge routines + $(ProjectName)_t.h;$(ProjectName)_t.c;%(Outputs) + $(ProjectName)_t.h;$(ProjectName)_t.c;%(Outputs) + Enclave.config.xml;%(AdditionalInputs) + Enclave.config.xml;%(AdditionalInputs) + "$(SGXSDKInstallPath)bin\win32\release\sgx_edger8r.exe" --trusted "$(ProjectDir)Enclave.edl" --search-path "$(SGXSDKInstallPath)include" + "$(SGXSDKInstallPath)bin\win32\release\sgx_edger8r.exe" --trusted "$(ProjectDir)Enclave.edl" --search-path "$(SGXSDKInstallPath)include" + Creating proxy/bridge routines + Creating proxy/bridge routines + $(ProjectName)_t.h;$(ProjectName)_t.c;%(Outputs) + $(ProjectName)_t.h;$(ProjectName)_t.c;%(Outputs) + Enclave.config.xml;%(AdditionalInputs) + Enclave.config.xml;%(AdditionalInputs) + "$(SGXSDKInstallPath)bin\win32\release\sgx_edger8r.exe" --trusted "$(ProjectDir)Enclave.edl" --search-path "$(SGXSDKInstallPath)include" + "$(SGXSDKInstallPath)bin\win32\release\sgx_edger8r.exe" --trusted "$(ProjectDir)Enclave.edl" --search-path "$(SGXSDKInstallPath)include" + Creating proxy/bridge routines + Creating proxy/bridge routines + $(ProjectName)_t.h;$(ProjectName)_t.c;%(Outputs) + $(ProjectName)_t.h;$(ProjectName)_t.c;%(Outputs) + Enclave.config.xml;%(AdditionalInputs) + Enclave.config.xml;%(AdditionalInputs) + + + + + + Designer + + + + + + \ No newline at end of file diff --git a/SGX_example/Enclave/Enclave.vcxproj.filters b/SGX_example/Enclave/Enclave.vcxproj.filters new file mode 100755 index 00000000..0b97402c --- /dev/null +++ b/SGX_example/Enclave/Enclave.vcxproj.filters @@ -0,0 +1,48 @@ + + + + + {068eae22-7203-4e1c-854d-a433a15212ff} + + + {10eec786-fad8-432e-8225-ed17e418af2c} + cpp;c;edl;def; .. and other options + + + {30fcb149-c376-4064-84a4-7534d550c8d1} + h;hpp; .. and other options + + + {bf60dc36-c54c-4b85-830b-1446ecf54231} + rc;xml;pem; .. and other options + + + + + Generated Files + + + Source Files + + + + + Generated Files + + + + + Resource Files + + + + + Resource Files + + + + + Source Files + + + \ No newline at end of file diff --git a/SGX_example/Enclave/Enclave_private.pem b/SGX_example/Enclave/Enclave_private.pem new file mode 100755 index 00000000..987ac726 --- /dev/null +++ b/SGX_example/Enclave/Enclave_private.pem @@ -0,0 +1,39 @@ +-----BEGIN RSA PRIVATE KEY----- +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 +-----END RSA PRIVATE KEY----- diff --git a/SGX_example/Enclave/SGX_Benchmark.h b/SGX_example/Enclave/SGX_Benchmark.h new file mode 100755 index 00000000..f417f8a4 --- /dev/null +++ b/SGX_example/Enclave/SGX_Benchmark.h @@ -0,0 +1,15 @@ + +#ifndef SGX_BENCHMARK_H +#define SGX_BENCHMARK_H + +#include + +enum BenchmarkBounds { + numBlocks = 50, /* how many megs to test (en/de)cryption */ + ntimes = 100, + genTimes = 100, + agreeTimes = 100 +}; + +static byte plain[1024 * 1024]; +#endif \ No newline at end of file diff --git a/SGX_example/README-images/expected-results.PNG b/SGX_example/README-images/expected-results.PNG new file mode 100755 index 0000000000000000000000000000000000000000..6778a07604ac0564a71e014e41d89001a46471de GIT binary patch literal 78124 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 zð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

j!3SwvG;eadyJ-D~_re3T(%3 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

m#I%G1S4FHxuqH%Conmh_t}?XYz8j9sIU>hW`L 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 e&?-GX{AW~|8}g&F-)1KR5O})!xvX/IDE/WIN-SGX +then copy wolfssl.lib to SGX_example/ + +![location for wolfssl.lib](README-images/wolfssl-lib.PNG) + +After creating and moving wolfssl.lib add the include path to wolfSSL header +files. It's suggested to add this with all platforms and all configurations +selected so that it only has to be added once. + +![setting the include path](README-images/set-include-path.PNG) + +Next optionally set the platform toolset for the compiler desired to use. +By default it is set to Intel C++ 16.0. + +Below is the expected results when running the created benchmark application. + +![expected results](README-images/expected-results.PNG) + +## Limitations +This code has been developed and tested on Visual Studio 2013 with the +default Intel compiler set. It may work for other versions but building +has not been tested on other versions. + +1)Single Threaded +2)Crypto Only +3)AES-NI intrensics not added + +## Support + +Please contact wolfSSL at support@wolfssl.com with any questions, bug fixes, +or suggested feature additions. + From e47840d11f7c6fa4ac3b73cfa8ffe26d8f985579 Mon Sep 17 00:00:00 2001 From: Jacob Barthelmeh Date: Thu, 15 Dec 2016 16:35:45 -0700 Subject: [PATCH 2/2] update SGX README --- SGX_example/README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/SGX_example/README.md b/SGX_example/README.md index 8e29a3b3..0433d208 100644 --- a/SGX_example/README.md +++ b/SGX_example/README.md @@ -4,7 +4,8 @@ wolfSSL Enclave Example This repository contains an example application, written in C++, which demonstrates how to link with the wolfSSL lightweight SSL/TLS library with a simple Enclave. First create wolfssl.lib from /IDE/WIN-SGX -then copy wolfssl.lib to SGX_example/ +then copy wolfssl.lib to SGX_example/. Steps for creating wolfssl.lib can be +found in the main wolfSSL directory. /IDE/WIN-SGX/ReadMe.txt. ![location for wolfssl.lib](README-images/wolfssl-lib.PNG)