xPython, Novel Secure Real- Time Operating System for IoT Subsystems Development using Micro-Python Language

Mervat Elalem, Mohamed Sobh, Ayman Mohammad Bahaa-Eldin · 2023

The deep integration of IoT into our daily lives has made the security of IoT everyone's priority, from IoT device manufacturers to IoT developers and final customers. Even though every year millions of IoT devices are introduced to the market, security, and privacy have not been competently addressed. Based on the survey of IoT challenges, IoT applications face many threats in Network communication, storage access, device identification and Authentication, program execution, firmware update, Secure Boot, etc. IoT devices are vulnerable to attacks, which breach the security and privacy of users and systems. Commonly most IoT applications are deployed using common operating systems that do not address IoT specialized security requirements. This paper introduces xPython, a novel secure-by-design operating system for IoT subsystems (devices and gateways). xPython provides transparent security solutions for common threats in addition to a security library for custom security implementation. xPython minimizes the time required to develop security features. xPython is secure by design to ensure security features are included at all stages of product creation and deployment. This paper proposes a new architecture for IoT operating systems, and it ends with a complete prototype implementation. The proposed architecture integrates security services inside operating system layers. It affects device initiation, communication protocols, application deployment, and application execution, ensuring software is executed securely, including non-secure applications (secure boot) and storage access. The proposed security solutions are inspired by previous work in Smart Cards. Smart Cards are considered a trusted environment for identification, authentication, and confidentiality. Finally, xPython is built over a real-time operating system to fulfill embedded systems requirements. The xPython development is also performed using Micro-Python to simplify the development process and reduce the development cost.

Read the paper · More papers on PaperTik