NC Program Encryption via Crypto-Coupler for NCK Protection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for protecting program instructions in numerical control devices pose a security risk to the control manufacturer by requiring decryption software in sensitive regions of the device, compromising security.

Innovation Solution

A method involving a crypto-coupler that uses separate encryption and decryption keys managed by the user and manufacturer, respectively, to encrypt and decrypt program instructions outside the Numerical Control Kernel (NCK), ensuring secure access and processing without exposing the NCK to unauthorized access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If decryption software is integrated into the Numerical Control Kernel (NCK) to enable program instruction decryption, then program instructions can be decrypted and executed, but the security of the control manufacturer is compromised due to exposure of sensitive regions

Engineering Contradiction:
Improveprogram instruction decryption capabilityVSAvoidcontrol manufacturer security
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The system separates decryption functionality from the NCK by creating a dedicated decryption module that operates independently. This segmentation allows program instructions to be decrypted without integrating decryption software into the sensitive NCK region, thus maintaining security while enabling decryption capability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A decryption module acts as an intermediary between the encrypted program instructions and the NCK. This intermediary handles all decryption operations externally, preventing direct exposure of the NCK to decryption software while still enabling the required functionality.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If user-managed encryption keys are used to protect program instructions, then users can securely encrypt and manage their own data, but the system complexity increases due to key management requirements

Engineering Contradiction:
Improveprogram instruction securityVSAvoidencryption key management system
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system enables users to manage their own encryption keys through the decryption module interface. Users can independently encrypt and decrypt their program instructions without requiring complex centralized key management infrastructure, reducing overall system complexity while maintaining security.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

Encryption of program instructions is performed in advance by users before transmission to the numerical control device. This preliminary encryption action simplifies the on-device processing requirements and reduces the complexity of key management during runtime operations.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12549339B2Encryption of program instructions in a numerical control device
Publication Date: 2026.02.10 SIEMENS AG
  • US12549339B2 patent drawing
  • US12549339B2 patent drawing
  • US12549339B2 patent drawing

AI summary

In a method for operating a numerical control device for controlling a production machine for producing a workpiece, program instructions generated by CAM software are encrypted with a first encryption key to generate first encrypted program instructions and the first encrypted program instructions are decrypted with a first decryption key to generate first decrypted program instructions. To prevent unauthorized access to the program instructions, the first decrypted program instructions are re-encrypted using a second encryption key to generate second encrypted program instructions, which are stored in a memory of the numerical control device. Subsequently, the second encrypted program instructions are read out of the memory and decrypted record-by-record or block-by-block, such that only those program instructions of the part program which are currently being processed by the numerical control device, or whose processing is imminent and used to control the production machine for the production of the workpiece.