Commit Graph

75 Commits

Author SHA1 Message Date
Zhang Lili 4d78a1a6cf Rebase to 2.13 & bug fix.
Signed-off-by: Zhang Lili <lili.z.zhang@intel.com>
2021-02-07 15:17:02 +00:00
Zhang Lili 0891f5b40d Add sim instruction ERESUME and support FPE and SEGV signal in sim mode
Signed-off-by: Zhang Lili <lili.z.zhang@intel.com>
2020-12-10 16:34:16 +00:00
Li, Xun 608fe1df4c Linux 2.12 Open Source Gold Release
Added Ubuntu 20.04 and CentOS 8.2 support.
Added Intel(R) Provisioning Certification Service V3 API support for ECDSA attestation.
Fixed bugs.

Signed-off-by: Li, Xun <xun.li@intel.com>
2020-11-11 17:17:33 +08:00
Yu Ding d10c025eb0 Typo fixes (#588)
Signed-off-by: Yu Ding dingelish@gmail.com
2020-09-09 16:31:22 +08:00
Li, Xun b9b071b544 Linux 2.11 Open Source Gold Release
Supported new OS: RHEL 8.2 and SUSE 15.
Provided standalone Intel(R) SGX DCAP Quote verification library installer.
Added Intel(R) SGX DCAP Platform Certificate ID Retrieval Tool and Multi-package Registration
  Agent (MPA) installers into SGX installation repo.
Fixed bugs.

Signed-off-by: Li, Xun <xun.li@intel.com>
2020-08-28 09:01:06 +08:00
Zhang Lili Z adaeb2af79 Fix bug of setting large reserved momory.
Signed-off-by: Zhang Lili Z <lili.z.zhang@intel.com>
2020-07-23 18:28:33 +08:00
Guilhem Niot 746e602864 Fix some more typos 2020-07-17 10:46:10 +02:00
Li, Xun 60d36e0de7 Linux 2.10 Open Source Gold Release
Provided a reproducible SDK.
Supported new OS: RHEL 8.1, CentOS 8.1 and Fedora 31.
Supported user to specify platform id in PCK Cert ID Retrieval Tool’s command line option.
Added ability to execute Platform Cert ID Retrieval Tool on multi-package platforms without
  loading enclaves. PCCS now supports this functionality. The platform still needs to support
  SGX.
Updated Platform Cert ID Retrieval Tool and Multi-package registration tool to align with BIOS
  platform manifest changes.
Added .deb and .rpm installers for Platform Cert ID Retrieval Tool and Multi-package
  Registration Agent.
Fixed bugs.

Signed-off-by: Li, Xun <xun.li@intel.com>
2020-07-07 08:42:08 +08:00
JunjunGu1 fdc9b33ee1 loading enclave will fail in enclave_create with oot driver (#542)
* fix the failure of enclave_common for oot driver

* update the fix for comment
2020-05-13 20:12:10 -05:00
Haitao Huang 32169592d0 Changes for kernel sgx patch V29
Signed-off-by: Haitao Huang <4699115+haitaohuang@users.noreply.github.com>
2020-05-09 12:38:13 -05:00
Li, Xun 1eaa4551d4 Linux 2.9.1 Open Source Gold Release
Supported to query Intel(R) SGX attestation key ID list.
Fixed bugwqs.

Signed-off-by: Li, Xun <xun.li@intel.com>
2020-04-09 14:45:01 +08:00
Ismo Puustinen b460a4b2e5 config: aesmd.service support for the new device files.
The current upstream candidate driver users /dev/sgx/enclave and
/dev/sgx/provision files. Add the device files to aesmd systemd service
file so that they can be accessed.

Signed-off-by: Ismo Puustinen <ismo.puustinen@intel.com>
2020-03-19 15:15:17 +02:00
Seth Moore 0280f97a07 Fix CPU feature detection on non-Intel CPUs (#474)
Some developers may have workstations that are not Intel
based. These developers should be able to test their enclaves
with the SGX simulation before building real SGX enclaves and
running those enclaves on genuine Intel processors.

By fixing CPU feature detection, developers with non-Intel
workstations can use SGX simulation to develop SGX enclaves.

Signed-off-by: Seth Moore <sethmo@google.com>
2020-03-16 10:10:35 +08:00
Li, Xun 4589daddd5 Linux 2.9 Open Source Gold Release
Fixed bugs.

Signed-off-by: Li, Xun <xun.li@intel.com>
2020-03-10 12:47:50 +08:00
Zhang Lili Z 9ddec08fb9 Linux 2.8 Open Source Gold Release.
Signed-off-by: Zhang Lili Z <lili.z.zhang@intel.com>
2020-01-16 09:56:26 +08:00
Seth Moore 3d8c60e5b8 Add support for building sim AE
Fix psw/ae/buildenv.mk so that it uses the sim runtime libraries when
$(SGX_MODE) is not set to "HW". This allows the PCE and QE code paths
to be tested on platforms that do not support flexible launch control.

Add a rule to automatically sign the sim PCE with a test key.

Signed-off-by: Seth Moore <sethmo@google.com>
2019-12-16 09:35:21 -08:00
Seth Moore 73a64e9e42 Initialize outputs passed to realpath
On error, realpath does not populate the output array. Zero out the
arrays before passing them to realpath.

Signed-off-by: Seth Moore <sethmo@google.com>
2019-11-26 07:46:33 -08:00
Li, Xun d166ff0c80 Linux 2.7.1 Open Source Gold Release
Updated OpenSSL to 1.1.1d.
Fixed bugs.

Signed-off-by: Li, Xun <xun.li@intel.com>
2019-11-12 13:55:35 +08:00
Li, Xun 97581758ef Fix sgx_report_attestation_status() and sgx_check_update_status()
Remove the dependency on platform service from epid quote service in aesm_service.

Signed-off-by: Li, Xun <xun.li@intel.com>
2019-10-31 10:35:24 +08:00
Zhang Lili Z 52af6661f6 Fix build failure with GCC 9
Signed-off-by: Zhang Lili Z <lili.z.zhang@intel.com>
2019-10-24 20:22:15 +08:00
lzha101 e240c6150b Merge pull request #455 from deeglaze/elf_error_messages
Add trace messages for elf parser failures

Signed-off-by: Zhang Lili Z <lili.z.zhang@intel.com>
2019-10-23 16:52:54 +08:00
Zhang Lili Z b13ab0eae7 Linux 2.7 Open Source Gold Release
Changes:
Added a command option “-resign” for Signing Tool.
Split the header file of Un-trusted Architecture Services.
Supported Red Hat* Enterprise Linux* Server 8.0 (for x86_64). And we do not support
Red Hat* Enterprise Linux* Server 7.6 (for x86_64) from this release
Added support for new version Intel(R) Provisioning Certification Server interfaces.
Added new libraries libsgx_epid.so, libsgx_launch.so, libsgx_platform.so and libsgx_quote_ex.so
Fixed bugs.

Signed-off-by: Zhang Lili Z <lili.z.zhang@intel.com>
2019-10-18 00:16:40 +08:00
Dionna Glaze 898853bd97 Add trace messages for elf parser failures
These messages are useful for toolchain debugging.

Signed-off-by: Dionna Glaze <dionnaglaze@google.com>
2019-10-10 08:59:23 -07:00
Li, Xun 100ca03afd Handle new PIB flag in AESM to close #306
CONFIGURATION_NEEDED Flag is added to Platform Info Blob TLV (version 2). Current implementation is based on version 1.

Signed-off-by: Li, Xun <xun.li@intel.com>
2019-07-26 09:50:31 +08:00
Li, Xun c505e6129a Linux 2.6 Open Source Gold Release
Added support for Reproducible Enclave Build using Docker file.
Added support for Intel AVX-512 instructions and Intel SHA Extensions New Instructions (SHA-NI) in trusted libraries.
Support both EPID and ECDSA based quote for quoting related interfaces in sgx_uae_service library.
Updated key exchange library to support both EPID and ECDSA based remote attestation.
Support new interface to check platform information blob from remote attestation response message.
Fixed bugs.

Signed-off-by: Li, Xun <xun.li@intel.com>
2019-07-05 14:12:24 +08:00
Li, Xun d10cabebb5 Linux 2.5 Open Source Gold Release
Added new APIs in sgx_uae_service.h and sgx_ukey_exchange.h to support ECDSA quote based remote attestation.
  The set of legacy APIs supports EPID only and the set of new APIs supports ECDSA quotes.
Enhanced Edger8r with structure deep-copy feature.
Fixed bugs.

Signed-off-by: Li, Xun <xun.li@intel.com>
2019-04-02 13:26:58 +08:00
Yu Ding 4baa19d19f Fix signature verification error in sgx_report_attestation_status
In 2.4.0, sgx_report_attestation_status always returns SGX_ERROR_INVALID_PARAMETER due to oal_map_result returns AESM_PLATFORM_INFO_BLOB_INVALID_SIG. The problem is caused by a change in u_certificate_provisioning.cpp, removing essential endian conversion. This commit aims at reverting this change and making sgx_report_attestation_status works again.

One test case on my testbed: 1502006500000800000202020401800000000000000000000007000006000000020000000000000B0D292FE7F0F37C075567E227A454318D29A3E94F035693794FADECD6C31606DE989858BF7FB718A096B52A90EFCD50270C9A0A2F4500CFAC159DD44EAA2C014179

Signed-off-by: Yu Ding <dingelish@gmail.com>
2018-12-30 23:37:46 -08:00
Li, Xun 28817533cc Linux 2.4 Open Source Gold Release
Added support for the Key Separation and Sharing (KSS) feature.
Provided a set of new encryption and decryption functions such as sgx_hmac256_*.
Provided a new untrusted API: sgx_get_target_info.
Provided a new untrusted API: sgx_create_enclave_from_buffer_ex.
Updated the cryptography library and Architecture Enclaves to use Intel(R) Integrated
  Performance Primitives Cryptography 2019 Update 1.
Fixed bugs.

Signed-off-by: Li, Xun <xun.li@intel.com>
2018-12-20 11:02:39 +08:00
lzha101 af25522a05 Merge pull request #323 from deeglaze/remove_using_std
Remove using namespace std

Signed-off-by: Zhang Lili Z <lili.z.zhang@intel.com>
2018-10-30 08:46:19 +08:00
Dionna Glaze 1cd53405cc Remove using namespace std
Header files that contain "using namespace std;" do not work well in
codebases that have custom implementations for common classes such as
"string". This is a C++ Core guideline (SF.7).

Signed-off-by: Dionna Glaze <dionnaglaze@google.com>
2018-09-29 21:01:49 -07:00
Li, Xun 12223e5a17 Linux 2.3.1 Open Source Gold Release
Bug fixes

Signed-off-by: Li, Xun <xun.li@intel.com>
2018-09-28 08:42:40 +08:00
Li, Xun 68f44d6e68 Linux 2.3 Open Source Gold Release
Support for Ubuntu 18.04 LTS 64-bit Desktop and Server version
Provided a new set of SGX common loader APIs in sgx_enclave_common.h
Provided the sample code for Switchless Call
Provided a new API in tcrypto: sgx_ecc256_calculate_pub_from_priv
sgx_create_enclave API will ignore the parameter of launch token and will not update it after function successfully returns
Change Intel SGX PSW installer for Ubuntu by
    - Using .deb installer.
    - Using name libsgx-enclave-common_{version string}-1_amd64.deb.
    - Installing Intel SGX Enclave Common loader library.
Bug fixes

Signed-off-by: Li, Xun <xun.li@intel.com>
2018-09-13 09:47:41 +08:00
Zhang Lili Z 62dc69d355 Add 'const' to sgx_create_enclave_ex()
Signed-off-by: Zhang Lili Z <lili.z.zhang@intel.com>
2018-08-07 22:31:27 +08:00
Li, Xun a169a69497 Linux 2.2 Open Source Gold Release
Support for Switchless Calls
Bug fixes

Signed-off-by: Li, Xun <xun.li@intel.com>
2018-07-03 10:48:20 +08:00
Li, Xun 75dd558bda Linux 2.1.3 Open Source Gold Release
Security updates to Linux SDK and PSW
Support for Intel SGX Protected Code Loader

Signed-off-by: Li, Xun <xun.li@intel.com>
2018-05-10 11:05:38 +08:00
Yu Yuan 2544dbd729 fix ref_le build issue with edger8r
Signed-off-by: Yu Yuan <yuan.yu@intel.com>
2018-04-16 18:14:29 +08:00
Yu Yuan b588e5d43e add -Wno-unused-parameter to protobufs
Signed-off-by: Yu Yuan <yuan.yu@intel.com>
2018-04-09 22:24:08 +08:00
lzha101 a31b0b6034 Merge pull request #143 from deeglaze/ioctl_retry
Expose an internal error on enclave_create ioctl interrupt.

Signed-off-by: Zhang Lili Z <lili.z.zhang@intel.com>
2018-03-16 17:13:40 +08:00
Li, Xun bd59dc35dc Linux 2.1.2 Open Source Gold Release
Security updates to Linux SDK and PSW

Signed-off-by: Li, Xun <xun.li@intel.com>
2018-03-16 12:56:41 +08:00
Dionna Glaze 25709d8403 Expose an internal error on enclave_create ioctl interrupt.
After months of debugging to find the source of the interrupt, this
is the middle ground solution to make progress.

Signed-off-by: Dionna Glaze <dionnaglaze@google.com>
2018-03-14 11:26:27 -07:00
Dionna Glaze 22f9f6008e Adds includes to allow use of some typedefs when in pickier compilers.
Signed-off-by: Dionna Glaze <dionnaglaze@google.com>
2018-03-02 09:58:08 -08:00
Andy Zhao 1bcdf2ed21 Linux 2.1.1 Open Source Gold Release
Signed-off-by: Andy Zhao <yebin.andy.zhao@intel.com>
2018-02-13 06:29:03 +00:00
Li, Xun 1ccf25b64a Linux 2.1 Open Source Gold release
Signed-off-by: Li, Xun <xun.li@intel.com>
2018-01-19 11:02:56 +08:00
Li, Xun cbdce63643 Fix bug in aesm_service and uae_service shared code
Object is not allocated before dereferencing pointer.

Signed-off-by: Li, Xun <xun.li@intel.com>
2017-11-15 10:50:32 +08:00
Li, Xun 159f60223e Linux 2.0 Open Source Gold release
Signed-off-by: Li, Xun <xun.li@intel.com>
2017-11-07 14:41:20 +08:00
Haitao Huang 9d8046e310 Check and handle signal interrupts in sockets
Signed-off-by: Haitao Huang <4699115+haitaohuang@users.noreply.github.com>
2017-09-22 16:57:45 +08:00
Haitao Huang 960ad91a4a Add error code in oal for invalid inputs
Signed-off-by: Haitao Huang <4699115+haitaohuang@users.noreply.github.com>
2017-09-22 16:57:45 +08:00
Vytautas Mickus 2e00f11ed5 Make code compatible with OpenSSL 1.0 and 1.1 2017-09-06 10:22:07 +08:00
Yu Ding 1366102364 Fix to a mis-understood in enclave_create(). The memory alignment is mistakenly done twice. Once in urts and once in driver. It is unnecessary. This bug has a great impact on the upper limit of enclave memory. 2017-07-24 20:00:04 -07:00
Li Xun 8032507348 Update server port to 80 (#128)
Signed-off-by: Li, Xun <xun.li@intel.com>
2017-07-25 10:44:47 +08:00