-
Notifications
You must be signed in to change notification settings - Fork 543
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
USE_OPT_LIBS=0 "Please run download_prebuilt.sh" #363
Comments
Yes. Running "download_prebuilt.sh" is a prerequisite to build SGX SDK and PSW just as the README.md mentions. So please run this script first and then start your build. |
I just find it strange - isn't it supposed to be open-source? Why would I need to download prebuilt libraries? |
The pre-built binaries includes some optimized math/string libraries and Intel Enclaves. Optimized math/string libraries are not open sourced, but we provide a non-optimized version in the repo. Intel Enclaves need to be signed by Intel, it cannot be signed during build process so we provide the pre-built version for download and source code in the repo. |
Ah, that makes some sense, it'd be nice to have this explained in the README, though. Would it be possible to have a signed, non-optimized, prebuilt version available? We can then check the source, compile it, and then verify whether the signature matches. This way, we could verify that the prebuilt binaries match the actual source code. |
This is not in the plan at this point. Currently we only provide what will be ended up in the product, apparently non-optimized version is not recommended in product. |
OK, so the project is not open source then. We must include closed-source components. Noted, thanks! |
Please provide a way to build without downloading non-OSS components. |
I must agree that any trusted binary must be reproducible from source that is open for inspection. |
Thanks for the advice. There is no way temporarily to build without downloading non-OSS components, as the SgxSSL based SDK build also depends on the IPP crypto header files. We will try to improve it as well as the reproducibility in future release. |
Has any progress been made on this? I'm still really interested in trying out SGX, but our security policies prevent this since it's not open source. |
We are working on using Open Source IPP, but it will take some time to get it ready to publish. |
Hi, |
It might, but that's not what I was asking for. I don't care about reproducing the binaries made by someone else. I just want to build from source from all-open-source components. |
I think that what cannot be built from source are the enclaves signed by Intel. One can build the same enclaves, but unsigned, and then signed them with one's own private key and verify the associated metadata against the metadata of Intel's signed enclaves. I think it would be useful to have documentation clarifying what is closed source, and why. Also what can be done with the strictly open source components. |
Hi @lzha101 and @andyzyb, could you please provide us with some update on the following two comments:
From what I understand it is now possible to build the ipp binaries, as one can reproduce them (e.g.: linux-sgx/linux/reproducibility/start_build.sh.tmp Lines 75 to 86 in 33f4499
If one can indeed produce the binaries, then it seems to me that the current |
We are still providing the prebuilt IPP library but users could reproduce this prebuilt library. The main reason is that IPP crypto has the requirement for the build toolchain version, while not all the official supported OSes for SGX meet this requirement. The prebuilt signed AEs are part of the PSW, not needed for the SDK. |
This does not work as of now due to the missing header file |
Trying to built without downloading prebuild headers fails. USE_OPT_LIBS=0 does not make any difference.
The text was updated successfully, but these errors were encountered: