Set Top Box Virtualization for Secure Framework Isolation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Integrating untrusted software frameworks and applications with secure operating systems in devices like set-top boxes poses challenges due to certification requirements and security risks, as conventional methods often fail to isolate unsecured components effectively, leading to potential breaches and instability.

Innovation Solution

Implementing a secure software abstraction layer with virtual containers and secure access interfaces to segregate trusted and untrusted components, using container-based virtualization and hardware sandboxing to isolate untrusted frameworks like Android within a secure Linux kernel environment, ensuring secure communication and resource access while preventing unauthorized access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If untrusted software frameworks are integrated with secure operating systems, then functionality and platform independence are improved, but security and certification compliance deteriorate

Engineering Contradiction:
ImprovefunctionalityVSAvoidsecurity
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system is divided into separate trusted and untrusted execution environments. The secure operating system kernel runs in a protected mode, while untrusted frameworks like Android are isolated in separate process spaces with restricted access. This segmentation allows both secure and untrusted software to coexist without compromising each other's integrity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

An intermediary security layer is introduced between the untrusted framework and the secure operating system. This intermediary manages and controls all interactions, ensuring that untrusted code cannot directly access or compromise secure system resources. The intermediary acts as a buffer that maintains security boundaries while enabling necessary functionality.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If hardware boundaries are created to separate secure and untrusted components, then security isolation is improved, but device complexity increases

Engineering Contradiction:
Improvesecurity isolationVSAvoiddevice complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

Instead of using physical hardware separation in space, the system implements isolation in the software dimension through virtualization and process management. Multiple execution environments are created as logical layers within the same hardware, allowing security isolation without adding physical complexity to the device architecture.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Adaptability or versatility

If untrusted code is executed in the operating system environment, then platform independence and application compatibility are improved, but system stability and security compliance deteriorate

Engineering Contradiction:
Improveapplication compatibilityVSAvoidsystem stability
Core Design Contradiction:
Adaptability or versatilityVSStability of the object's composition

Solution Approach 1:

The potentially harmful elements of untrusted code are extracted and contained within isolated execution contexts. The untrusted framework is allowed to run with its full functionality, but its ability to affect the core operating system is removed through process isolation and access restrictions. This extraction allows application compatibility while protecting system stability.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS9405562B2Set top box application in a concurrent dual environment
Publication Date: 2016.08.02 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LTD
  • US9405562B2 patent drawing
  • US9405562B2 patent drawing
  • US9405562B2 patent drawing

AI summary

A set top box or like device utilizing virtualization techniques to isolate secure device resources from an untrusted software framework incorporated in the device. In one implementation, a first virtual machine container is provided for secure execution of a traditional set top box application, while a second virtual machine container is utilized to host a software framework or untrusted portions of a software framework. A secure access client/server interface is provided to support interactions between the first and second virtual machine containers. The software framework may comprise, for example, an Android framework supported by an underlying Linux operating system environment and isolated in a Linux resource container. Virtual container constructs in various embodiments may employ varying levels of hardware sandboxing, including use of dedicated processing resources in multi-processor environments. In further embodiments, the software framework may be partitioned into trusted and untrusted portions that are executed in separate virtual containers.