External Dongle for Secure Application Execution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for executing applications on untrusted devices are complex, time-consuming, and require significant changes to the kernel or operating system, while also penalizing performance and failing to adequately ensure the correctness of application execution.
Innovation Solution
A method utilizing an external dongle to modify and verify the instruction sequences of sensitive applications, ensuring correct execution by connecting with the untrusted device to check results and detect misbehavior, without modifying the underlying device or kernel, and allowing flexible use with any operating system or device implementation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional sandboxing and memory isolation methods are used to ensure correct application execution, then execution correctness is improved, but device complexity and implementation time increase significantly
Solution Approach 1:
The patent introduces an external dongle as an intermediary device that mediates between the untrusted device and the application execution environment. The dongle verifies application binaries externally and provides runtime monitoring, acting as a mediator that ensures execution correctness without requiring complex modifications to the untrusted device's kernel or operating system.
Solution Approach 2:
The patent extracts the security verification functionality from the untrusted device's kernel space and places it in an external dongle device. By taking out the complex sandboxing and verification logic from the main system, the patent reduces device complexity while maintaining execution correctness through external validation.
2Reliability
If instruction set randomization is applied to secure application execution, then execution correctness is improved, but performance of other applications deteriorates
Solution Approach 1:
The patent applies security measures locally only to sensitive applications through the external dongle's selective verification and monitoring capabilities. Non-sensitive applications continue to execute without interference, maintaining their normal performance. The dongle focuses its verification efforts on specific applications that require security assurance, rather than applying randomization globally to all applications.
3Reliability
If complete sandboxing is implemented to prevent compromised device effects, then system security is improved, but ease of operation and user flexibility decrease
Solution Approach 1:
The patent implements partial sandboxing through the external dongle that applies security measures only to sensitive applications rather than completely sandboxing the entire system. The dongle performs selective verification and monitoring on a partial basis, providing sufficient security for critical applications while leaving non-sensitive applications and user operations unaffected, thus maintaining user flexibility.
4Reliability
If kernel or operating system modifications are made to ensure secure execution, then execution correctness is improved, but ease of manufacture and adaptability worsen
Solution Approach 1:
The patent segments the security verification function into a separate external dongle device that operates independently from the untrusted device's kernel and operating system. This segmentation allows the security functionality to be implemented without modifying various OS kernels, making the solution adaptable to multiple operating systems and device types while ensuring execution correctness for sensitive applications.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
The present invention relates to a method for executing applications on an untrusted device, comprising the steps of a) Selecting one or more applications as sensitive applications, b) Modifying one or more Instruction sequences of the said one or more sensitive applications by an external dongle, c) Executing the one or more sensitive applications on the untrusted device according to the modified Instruction sequences and d) Checking correct execution of the Instructions of the said modified Instruction sequences by the external dongle. The present invention further relates to a System for executing applications on an untrusted device.