买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】面向Intel SGX的程序自动化移植系统_上海交通大学_202010065323.4 

申请/专利权人:上海交通大学

申请日:2020-01-20

公开(公告)日:2024-04-02

公开(公告)号:CN113138797B

主分类号:G06F8/76

分类号:G06F8/76

优先权:

专利状态码:有效-授权

法律状态:2024.04.02#授权;2021.08.06#实质审查的生效;2021.07.20#公开

摘要:一种面向IntelSGX的程序自动化移植系统,包括:标记模块、分析模块和代码生成模块,其中:标记模块与分析模块相连并传输敏感变量相关信息,分析模块与代码生成模块相连并传输敏感变量相关的函数信息,代码生成模块根据原程序代码以及敏感函数信息,生成可信代码和不可信代码。本发明将源代码中敏感的部分抽取到Enclave中,减少了内存的负载;使可信计算基尽可能小,从而减小了攻击面;不用将程序所需的运行时环境以LibraryOS等形式移植进Enclave内部,适用范围更加广泛。

主权项:1.一种面向IntelSGX的程序自动化移植系统,其特征在于,包括:标记模块、分析模块和代码生成模块,其中:标记模块与分析模块相连并传输敏感变量相关信息,分析模块与代码生成模块相连并传输敏感变量相关的函数信息,代码生成模块根据原程序代码以及敏感函数信息,生成可信代码和不可信代码;所述的标记模块包括:用于向配置文件中写明敏感变量的名称、敏感变量所在的源代码文件名以及敏感变量在文件中对应的行数标记单元;所述的代码生成模块基于敏感函数集列表将源代码切分成可信部分,即Enclave源代码和不可信部分,即外部源代码,即:基于敏感函数集对源代码做基本的切分;基于源代码中的函数定义识别出可信部分与不可信部分的调用接口,即EcallOcall函数;处理敏感函数中系统调用相关API的使用;生成IntelSGXSDK所需的调用接口说明,即EDL文件;该代码生成模块包括:基本代码切分单元、调用接口识别单元、系统调用API处理单元与EDL生成单元,其中:基本代码切分单元的输入为源代码以及敏感函数集,源代码中的敏感函数由基本代码切分单元切分到可信部分,即Enclave源代码,而其余函数则切分到不可信部分,即外部源代码,基本代码切分单元的输出为被切分后的源代码,由Enclave源代码与外部源代码共同组成,调用接口识别单元和系统调用API处理单元与代码切分单元直接相连,调用接口识别单元和系统调用API处理单元的输入即代码切分单元的输出,调用接口识别单元和系统调用API处理单元在被切分后的源代码基础上,进一步分析可信部分与不可信部分之间的调用接口,即EcallOcall函数,对源代码做相应的修改,同时输出EcallOcall函数列表,EDL生成单元与调用接口识别单元以及系统调用API处理单元直接相连,其输入为EcallOcall函数列表,并以Intel规定的EDL,即EnclaveDefinitionLanguage格式生成接口说明,即EDL文件。

全文数据:

权利要求:

百度查询: 上海交通大学 面向Intel SGX的程序自动化移植系统

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。