Key-Specific Decryption Engine for Secure Symmetric Cryptography

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing digital signature techniques using asymmetric cryptography result in large digital signatures that increase message size, while symmetric encryption techniques are vulnerable to key exposure, compromising message authentication and tampering detection.

Innovation Solution

A key-specific decryption engine is generated for each symmetric key, using boolean functions to perform decryption without exposing the symmetric key, thus preventing key exposure and reducing message size.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If asymmetric cryptography is used for digital signatures, then message authentication and tampering detection are improved, but message size increases

Engineering Contradiction:
Improvemessage authenticationVSAvoidmessage size
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent extracts the authentication function from the encryption process by using a separate hash algorithm to generate a fixed-size digest of the message. This digest is then encrypted with the private key to create the signature, separating the authentication mechanism from the original message data and preventing the message size from increasing proportionally with the signature size.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent changes the parameter of signature size by using hash functions that produce fixed-length outputs regardless of the original message length. This transforms the signature size from being proportional to message size (in symmetric encryption) to being a fixed small value (in asymmetric encryption with hashing), resolving the contradiction between authentication reliability and message size.

Inventive Principle:
Principle #35Parameter changes

2Quantity of substance

If symmetric encryption is used, then message size is reduced, but key exposure vulnerability increases

Engineering Contradiction:
Improvemessage sizeVSAvoidauthentication security
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent applies asymmetry by using different keys for encryption and decryption in the signature verification process. The sender uses the private key to encrypt the hash, while the receiver uses the public key to decrypt and verify. This asymmetric key pair mechanism allows the symmetric encryption advantage of small message size to be maintained while eliminating the key exposure vulnerability through the use of asymmetric cryptography for key management.

Inventive Principle:
Principle #4Asymmetry

3Ease of operation

If the symmetric key is stored in readable form, then decryption ease is improved, but key security deteriorates

Engineering Contradiction:
Improvedecryption easeVSAvoidkey security
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent introduces the hash function as an intermediary between the message and the symmetric key. Instead of directly encrypting the message with the symmetric key, the system first computes a hash of the message and then encrypts this hash. This intermediary step allows the symmetric key to remain secure while still enabling efficient decryption and verification through the deterministic nature of hash functions.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentEP2286610B1Techniques for peforming symmetric cryptography
Publication Date: 2019.06.26 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP2286610B1 patent drawingFigure 1
  • EP2286610B1 patent drawingFigure 2
  • EP2286610B1 patent drawingFigure 3

AI summary

Techniques are described for performing decryption using a key-specific decryption engine. A message including an encrypted data portion is received. The encrypted data portion is formed by performing a symmetric encryption operation using a symmetric key. The encrypted data portion is decrypted using a key-specific decryption engine which does not use the symmetric key as an input. Also described are techniques for generating the key-specific decryption engine which may be implemented using boolean functions determined for the symmetric key.