Processor Control Unit with External Memory Encryption

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing processor systems that store programs and data in external memory are vulnerable to unauthorized analysis and interpolation due to the lack of confidentiality in external memory, leading to increased costs and security risks.

Innovation Solution

A processor apparatus with a control unit that encrypts and decrypts addresses and data when accessing external memory, ensuring that all data and address transmissions between the control unit and external memory remain encrypted, preventing unauthorized access and analysis.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If data is stored in external memory, then program size can be increased and cost reduced, but data confidentiality is compromised and unauthorized analysis becomes possible

Engineering Contradiction:
Improveprogram sizeVSAvoiddata confidentiality
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

An encryption/decryption circuit is introduced as an intermediary between the CPU and external memory. This circuit encrypts data before writing to external memory and decrypts data when reading from it, allowing large program storage while maintaining confidentiality. The intermediary transforms the interaction between CPU and external memory to preserve security.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent applies parameter changes by transforming data from plaintext to ciphertext state during storage in external memory. The encryption process changes the parameter state of the data, making it unreadable without the decryption key, thus maintaining confidentiality while allowing unlimited storage capacity.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If data is encrypted and stored in external memory, then data confidentiality is improved, but additional encryption/decryption circuitry is required

Engineering Contradiction:
Improvedata confidentialityVSAvoidencryption circuit
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The encryption/decryption circuit is merged with the CPU or memory control logic, allowing security functionality to be integrated rather than added as a separate complex subsystem. This combining approach achieves confidentiality while minimizing the increase in device complexity.

Inventive Principle:
Principle #5Merging (Combining)

3Speed

If program is expanded to external RAM, then execution speed is improved, but data becomes vulnerable to monitoring and analysis

Engineering Contradiction:
Improveprogram execution speedVSAvoidsignal monitoring vulnerability
Core Design Contradiction:
SpeedVSObject-affected harmful factors

Solution Approach 1:

Data is encrypted before being written to external memory (preliminary encryption action). This preliminary action ensures that even when data is transferred to external RAM for execution, it remains in encrypted form, preventing monitoring and analysis while allowing fast access.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The encryption/decryption circuit acts as an intermediary that maintains encrypted state during data transfer to external memory, allowing fast execution speeds while blocking unauthorized observation of data contents.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS8170205B2Processor apparatus
Publication Date: 2012.05.01 LAPIS SEMICON CO LTD

AI summary

The control unit includes a CPU which generates an access signal for performing writing or reading on the external memory, encryption/decryption means which, when the access signal is used for writing, encrypts an address designated by the CPU to generate a write address and encrypts write data contained in the access signal to generate write encrypted data, and which, when the access signal is used for reading, encrypts an address designated by the CPU to generate a read address and decrypts the encrypted data read from the external memory to generate plaintext data, and external control means which writes the write encrypted data in a position designated by the write address generated by the encryption/decryption means and which reads the encrypted data from a position designated by the read address generated by the encryption/decryption means and supplies the same to the encryption/decryption means for its decryption.