Encryption Method Combining User and Random Sub Keys

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing encryption and authentication methods are vulnerable to brute forcing due to the high performance of modern computers and computer clusters, which can rapidly test large numbers of password combinations, making keys with human-memorized lengths insufficiently secure.

Innovation Solution

The method combines a first sub key entered by the user with a randomly generated second sub key of a different length, increasing the total number of combinations that must be tested, thereby significantly extending the time required for brute forcing attacks. This is achieved by concatenating, inserting, or interleaving the sub keys, and using a verifier to validate the combined key.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a password is made longer to increase security against brute forcing, then the security level improves, but the memorability and ease of use deteriorates

Engineering Contradiction:
Improvesecurity levelVSAvoidmemorability
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The password is segmented into two distinct parts: a user-chosen first sub-key and a system-generated second sub-key. This segmentation allows the user to remember only the first sub-key while the system handles the second sub-key, resolving the contradiction between security (longer password) and memorability (shorter password).

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system acts as an intermediary that generates and manages the second sub-key, which the user does not need to remember. This intermediary function allows the user to work with a shorter, memorable first sub-key while the system ensures overall security through the combined two-sub-key structure.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If idle time is introduced after wrong key entry to prevent brute forcing, then the number of testable keys decreases, but the method can only be applied to predetermined interfaces and can be circumvented by computer clusters

Engineering Contradiction:
Improvebrute force resistanceVSAvoidinterface dependency
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

Instead of changing the time parameter (idle time), the invention changes the key space parameter by introducing a second sub-key. This transforms the security approach from temporal restriction to combinatorial complexity, making brute forcing computationally infeasible regardless of the interface or system performance.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If a second sub-key is appended to the user key before hashing (salt), then pre-calculated hashing tables become useless, but the key becomes more complex and the user must manage additional key material

Engineering Contradiction:
Improvehashing securityVSAvoidkey management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The key is segmented into two parts with distinct roles: the first sub-key is user-managed and memorable, while the second sub-key is system-managed and random. This segmentation reduces key management complexity compared to traditional salting, where the user would need to manage the entire complex key including the salt.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10263780B2Encryption and authentication method and apparatus
Publication Date: 2019.04.16 SOFTWAREGILDE GMBH
  • US10263780B2 patent drawing
  • US10263780B2 patent drawing
  • US10263780B2 patent drawing

AI summary

The invention discloses a method for encrypting and/authenticating, comprising the following steps:Sending a request for a first bit combination or character combination as a first sub key (102);storing said first bit combination or character combination in the memory (104);generating a second bit combination or character combination as a second sub key (106), wherein the second bit combination or character combination is a random or pseudo random pattern; andcombining said first sub key and second sub key to a key (108);further comprising at least one of the following steps:encrypting the data with the key (110);using the key as an authentication password (112); and a method of decrypting and/or authenticating, comprising the following steps:sending a request for a first bit combination or character combination as a first sub key (202);storing said first bit combination or character combination in the memory (204);repeating the following steps until a key has been verified as valid:generating one by one a second bit combination or character combination as a second sub key (206), wherein the second bit combination or character combination is one by one taken from the set of all possible second sub keys (208);combining said first sub key and second sub key to a key (210);verifying, whether the key is valid (212);if said key has been verified as valid, decrypting the data with the key (214) and/or using the key an authentication password (216).