ตัวเลือกสําหรับการผสมโค้ด Python* และ C++ ในแอปพลิเคชัน Intel® Software Guard Extensions (Intel® SGX)
- การพยายามพัฒนาแอปพลิเคชันที่ไม่น่าเชื่อถือใน Python*
- เขียนโค้ดขอบเขตใน C++
- ไม่สามารถระบุวิธีเรียกรหัสขอบเขตจากแอปพลิเคชันที่ไม่น่าเชื่อถือที่ใช้ Python
ทางเลือกที่ 1: สร้าง แอปพลิเคชันที่ไม่น่าเชื่อถือใน C++ เป็นเลเยอร์การแปลจากแอปพลิเคชัน Python* ไปยังขอบเขต
เชื่อมโยง แอปพลิเคชันที่ไม่น่าเชื่อถือเข้ากับขอบเขต
แอปพลิเคชัน Python* เรียกใช้ฟังก์ชันในแอปพลิเคชันที่ไม่น่าเชื่อถือและแอปพลิเคชันที่ไม่น่าเชื่อถือจะเรียกรหัสขอบเขตในนามของแอปพลิเคชัน Python*
ตัวเลือกที่ 2: ปรับใช้ โซลูชันทั้งหมดใน Python*
มีโซลูชันของบริษัทอื่นมากมายที่ช่วยให้คุณสามารถเขียนโค้ด Python* (และภาษาอื่นๆ) แบบเนทีฟ และเรียกใช้งานภายในสภาพแวดล้อมที่ป้องกัน Intel® SGX ระบบปฏิบัติการในไลบรารีโซลูชันของบริษัทอื่นเหล่านี้ (LibOS)
วิธีที่ง่ายที่สุดในการเรียกใช้สคริปต์ Python* ของคุณคือการใช้ Gramine (เดิมเรียกว่า Graphene) ในการรันโปรแกรมของคุณในสภาพแวดล้อมที่ป้องกัน Intel® SGX
Gramine (เดิมชื่อ Graphene) เป็นระบบปฏิบัติการไลบรารีน้ําหนักเบาที่ออกแบบมาเพื่อใช้งานแอปพลิเคชันเดียวที่มีข้อกําหนดโฮสต์น้อยที่สุด Gramine สามารถเรียกใช้แอปพลิเคชันในสภาพแวดล้อมที่แยกต่างหากพร้อมข้อดีที่เทียบได้กับการใช้งานระบบปฏิบัติการที่สมบูรณ์ในเครื่องเสมือน รวมถึงการปรับแต่งระดับแขก ความสะดวกในการพอร์ตไปยัง OSes ต่างๆ และประมวลผลการย้าย
Gramine รองรับไบนารี Linux แบบเนทีฟและไม่มีการปรับแต่งบนทุกแพลตฟอร์ม ปัจจุบัน Gramine ทํางานบน Linux* และ Intel® SGX ขยายแพลตฟอร์ม Linux*
ตัวอย่างเหล่านี้จะช่วยให้คุณเริ่มใช้งานโค้ดของคุณบน Gramine ซึ่งได้รับการปกป้องโดย Intel® SGX:
ค้นหาโซลูชันของบุคคลที่สามเพิ่มเติมในส่วนรักษาความปลอดภัยของแอปพลิเคชันที่มีอยู่ของคุณใน Intel® SGX เริ่มต้นใช้งาน
เนื่องจาก Intel ไม่ได้สร้างโซลูชัน LibOS การสนับสนุนโครงการเหล่านี้อาจได้รับจากบุคคลที่สามและชุมชนของพวกเขา