SoC Encryption Engine for Secure Data Transmission
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing systems on chip (SoC) face performance variability and security concerns due to data exchange paths between main memory and non-volatile memory, with existing encryption methods not adequately securing data transmission.
Innovation Solution
Incorporating an encryption/decryption engine within the SoC that converts plain data into cipher data using an encryption key, stored in a one-time programmable memory, and directly transmits it to a memory controller, while also decrypting cipher data received from the non-volatile memory, with a secure mode ensuring only the encryption engine accesses the key.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If data is transmitted through multiple paths between main memory and non-volatile memory, then system performance may improve through path selection, but data security is compromised due to unauthorized access risks
Solution Approach 1:
The system divides data transmission into two separate paths: a secure path through the encryption engine for confidential data, and a direct path through the bus for non-sensitive data. This segmentation allows performance optimization by selecting appropriate paths while maintaining security through dedicated encryption routing.
Solution Approach 2:
The encryption engine acts as an intermediary component between main memory and non-volatile memory. It receives plain data from memory, encrypts it using keys from OTP memory, and transmits cipher data to the memory controller, thereby securing the data transmission path without blocking performance-critical operations.
2Reliability
If encryption is implemented using existing methods with multiple access points, then data can be protected, but access complexity increases and performance decreases
Solution Approach 1:
The encryption engine consolidates multiple security functions into a single integrated unit: key storage from OTP memory, encryption processing, and secure transmission to the memory controller. This merging reduces access complexity compared to distributed encryption approaches while maintaining robust data protection.
Solution Approach 2:
The encryption engine automatically retrieves encryption keys from OTP memory and performs encryption operations without requiring external intervention. This self-service mechanism simplifies the access structure by eliminating the need for complex key management interfaces while ensuring data protection.
3Speed
If encryption keys are stored in accessible memory locations, then key retrieval is fast, but security is compromised due to potential unauthorized access
Solution Approach 1:
The system uses OTP (one-time programmable) memory for key storage, which combines the speed of electronic memory access with the security of non-reprogrammable storage. The OTP memory provides fast key retrieval to the encryption engine while preventing unauthorized modification or extraction, creating a composite security-performance solution.
Data Source
AI summary
A method of operating a system on chip (SoC) includes converting plain data into cipher data by using an encryption key and transmitting the cipher data directly to a memory controller which controls an operation of a non-volatile memory. The encryption key may be output by a one-time programmable (OTP) memory.


