2017-02-01 9 views

답변

0

enclave 내부에서 Linux 명령을 실행할 수 없습니다. 비록 우리가 자신의 cryptsetup을 영토 내에 구현한다고해도, cryptsetup source로부터의 몇몇 OS 호출이 있기 때문에,이 특별한 경우에 sgx를 사용하는 것은 쓸모가 없습니다.

당신의 대답에 링크의 내용을 요약하여주십시오 위의 질문 On intel SGX forum

+0

에 완전한 해답을 찾아주세요. 이렇게함으로써 a) 미래의 독자는 링크를 따라갈 가치가 있고 정보가 문제에 적용될 수 있는지 여부를 알 수 있습니다. b) 외부 링크가 영구적으로 또는 일시적으로 액세스 할 수 없게 되더라도 응답에 대한 가치가있다. – IMSoP

+0

예 편집 된 답변입니다. – Rajendra

2

예, 그렇지만 많은 마이그레이션 작업이 필요할 수 있습니다.

인클로저 내부에서 실행되는 코드는 특정 명령어를 실행할 수 없습니다. 가장 중요한 것은 syscall 명령이 허용되지 않기 때문에 OS의 서비스를 직접 사용할 수 없다는 의미입니다. Intel's SGX SDK 코드를 사용하여 cryptsetup 또는 ln 코드를 영토로 이동하는 경우 파일을 여는 것처럼 OS 서비스를 요청하자마자 프로그램이 종료되어 SIGILL이라는 잘못된 명령을 표시합니다 (여기서는 컴파일한다고 가정).

인텔 SDK에서 코드를 작동 시키려면 소위 OCALLs을 사용하여 영토를 종료하고 외부에서 OS 서비스를 요청할 수 있습니다.

Intel's SGX website에 나열된 일부 연구 (Graphene, SCONE, Haven)는 일반적인 시스템 호출 전달 메커니즘을 사용하여 마이그레이션 부담을 덜어줍니다. 영원히 고립 된 내부 시스템 호출을 외부로 전송하여 실행합니다.