在SGX中保护算法

时间:2017-09-26 16:12:32

标签: c++ c code-access-security sgx

我正在寻找一个解释如何保护算法在英特尔SGX的上下文中说一个函数mysort(param x, param y),这样我的安全区外的mysort()函数就被加密了,它只在内部区域内解密。

我怎么能实现这个目标?我应该在哪里写mysort函数,即在安全区项目或应用程序项目中,并通过edl接口调用。 我应该如何加密它,我应该在哪里保留密钥和解密它的逻辑。

2 个答案:

答案 0 :(得分:0)

英特尔SGX不保证不会对已签名的库进行逆向工程。它们可能会被拆解。

请参阅:https://software.intel.com/en-us/forums/intel-software-guard-extensions-intel-sgx/topic/738239

答案 1 :(得分:0)

您可以通过证明与远程安全区建立安全的加密通道后,发送加密的库来实现此目的。然后解密区域中的库并运行您的算法。由于代码只能在安全区域内访问,因此您的功能逻辑将受到保护。