Memory Access Control via Security Element for Software Protection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Mobile communication device providers face challenges in protecting their software from unauthorized copying and modification, particularly when ICs are outsourced for manufacturing, as existing security mechanisms can be circumvented by third parties.
Innovation Solution
An apparatus and method that utilize a memory with at least two sections, a security element, and a processor to control access to these sections based on a security element's value, including a one-time programmable bit to ensure only authorized software can run, by controlling the memory map and using a root key for verification.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If software images are encrypted and ICs are programmed with a root key, then software protection is improved, but device complexity increases
Solution Approach 1:
The memory is divided into multiple sections (first section for provider-specific code, second section for other code) with different access control mechanisms. This segmentation allows selective protection of critical software portions without encrypting the entire system, reducing overall complexity while maintaining security.
Solution Approach 2:
A security element is programmed during IC manufacturing with access control parameters before the device is deployed. This preliminary action establishes security credentials in advance, eliminating the need for complex runtime key management and reducing operational complexity.
2Productivity
If ICs are outsourced for manufacturing, then production efficiency is improved, but security against unauthorized copying deteriorates
Solution Approach 1:
The security element contains provider-specific parameters that create local quality differences between ICs from different manufacturers. Each IC has customized access control credentials embedded during manufacturing, making unauthorized copying difficult even when production is outsourced, while maintaining high production efficiency.
3Reliability
If memory access control is implemented based on security element values, then software cloning difficulty is increased, but device complexity increases
Solution Approach 1:
Access control functionality is extracted into a dedicated security element separate from the main processor. This extraction isolates the complex security logic into a specialized component, making the overall system easier to manage while effectively preventing software cloning through hardware-enforced access control.
Data Source
Figure 1~2
Figure 3~4b
Figure 5
AI summary
An apparatus comprising: a memory having at least two sections; a security element associated with at least one of said at least two sections; and a processor for controlling access to at least one of the at least two sections of the memory in dependence on a value of the security element. The apparatus may be an integrated circuit and the memory may be a read-only-memory storing generic code in one of the sections and code specific to a mobile communication device provider in the second section. The security element may be a permanently programmed memory element programmed by the IC manufacturer.