Virtual OTP Memory Emulation for Secure On-Chip Programming
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The challenge is to provide one-time programming capability on an integrated circuit without using dedicated one-time-programmable memory, while ensuring security against unauthorized reprogramming, especially in mobile communications equipment where OTP memory is not always feasible due to technical and cost limitations, and external OTP memory exposes data transfer to manipulation risks.
Innovation Solution
Implementing a virtual OTP memory on the integrated circuit by reading OTP data only once during boot-up, using a random challenge and Message Authentication Code to verify data integrity, and storing the OTP content in a hardware-protected internal memory, eliminating the need for on-chip OTP memory and reducing exposure of the secret key.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If external OTP memory is used to avoid on-chip OTP memory costs, then cost is reduced, but security is worsened due to exposed data transfer
Solution Approach 1:
The patent creates a virtual copy of OTP memory functionality within the processor using software routines. Instead of using physical external OTP memory, the system reads OTP data through a communications link, verifies it cryptographically, and creates a software-based virtual OTP memory that mimics the security properties of physical OTP memory without the hardware costs or external communication vulnerabilities.
Solution Approach 2:
The patent introduces cryptographic verification (MAC computation) as an intermediary layer between the external OTP memory read and the processor. This intermediary mechanism ensures data integrity and authenticity, allowing secure use of external OTP memory by mediating the trust relationship through cryptographic proofs rather than direct physical security.
2Reliability
If on-chip OTP memory is used to improve security, then security is improved, but device complexity and cost increase
Solution Approach 1:
The patent makes the processor universal by enabling it to perform both main processing functions and OTP memory emulation functions. The processor executes specialized software routines that allow it to read, verify, and emulate OTP memory functionality, eliminating the need for dedicated OTP memory hardware and reducing overall device complexity while maintaining security.
Solution Approach 2:
The patent replaces the mechanical/physical OTP memory hardware system with a software-based virtual memory system. Instead of relying on physical OTP memory chips or on-chip OTP cells, the system uses software routines executed on the processor to create and manage virtual OTP memory, substituting physical hardware with software functionality.
3Reliability
If OTP memory is used to prevent unauthorized reprogramming, then protection against reprogramming is improved, but the system requires dedicated OTP memory hardware
Solution Approach 1:
The patent creates a virtual copy of OTP memory functionality within the processor using software routines. Instead of using physical external OTP memory, the system reads OTP data through a communications link, verifies it cryptographically, and creates a software-based virtual OTP memory that mimics the security properties of physical OTP memory without the hardware costs or external communication vulnerabilities.
Solution Approach 2:
The patent makes the processor universal by enabling it to perform both main processing functions and OTP memory emulation functions. The processor executes specialized software routines that allow it to read, verify, and emulate OTP memory functionality, eliminating the need for dedicated OTP memory hardware and reducing overall device complexity while maintaining security.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
One time programming functionality is provided on an integrated circuit by receiving one time programmable (OTP) data from a source that is external to the integrated circuit. It is determined whether the received OTP data is authentic, and if so, the received OTP data is stored in a write-lockable memory device that is located on the integrated circuit. The write-lockable memory device is thereafter locked to prevent any further writing to the write-lockable memory device for so long as power is maintained to the integrated circuit. After locking the write-lockable memory device while power is maintained, the OTP data is retrieved from the write-lockable memory device whenever the OTP data is needed. A key used to authenticate the received OTP data is stored on the integrated circuit within a memory device configured to permit reading of the key only one time.