Modular Arithmetic Encryption Using Non-Prime Numbers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing encryption algorithms using modular arithmetic are limited by their inability to utilize non-prime numbers, leading to potential encryption results of zero and non-unique mappings, which hampers secure and efficient data transmission.

Innovation Solution

A method employing modular arithmetic with random numbers P and Q, where a message M is encrypted as E = (MP^i) mod (PQ - 1), and decrypted as M = (EQ^i) mod (PQ - 1), using a tuple (E, i) for secure transmission, allowing non-prime numbers and reducing computational burden through precomputed tables.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If modular arithmetic is used in encryption algorithms, then encryption speed is improved, but the algorithm cannot use non-prime numbers which limits versatility

Engineering Contradiction:
Improveencryption speedVSAvoidnumber selection flexibility
Core Design Contradiction:
SpeedVSAdaptability or versatility

Solution Approach 1:

The patent changes the parameter constraints by allowing non-prime numbers to be used in modular arithmetic encryption. Specifically, it uses the property that for any integer a coprime to n, there exists an integer b such that (a*b) mod n = 1, extending the applicability of modular arithmetic from only prime moduli to any integer modulus, thereby improving versatility while maintaining encryption speed.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If modular arithmetic is used in encryption, then computational efficiency is improved, but encryption may result in zero or non-unique mappings which reduces reliability

Engineering Contradiction:
Improvecomputational efficiencyVSAvoidencryption uniqueness
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent applies local quality by imposing specific conditions on the choice of parameters: the message M must be less than the modulus n, and the exponent a must be coprime to n. These localized constraints ensure that the encryption function E = (M^a) mod n produces unique, non-zero results while maintaining computational efficiency. The decryption uses the corresponding exponent b where (a*b) mod φ(n) = 1, ensuring unique mapping recovery.

Inventive Principle:
Principle #3Local quality

3Reliability

If traditional encryption algorithms are used, then security is maintained, but data transmission length and computational effort increase

Engineering Contradiction:
Improveencryption securityVSAvoiddata transmission length
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent extracts only the essential elements needed for encryption and decryption: the message M, modulus n, exponent a for encryption, and exponent b for decryption. By using the mathematical property that (M^a)^b mod n = M when (a*b) mod φ(n) = 1, it transmits only the encrypted value E = (M^a) mod n and the exponent a, rather than transmitting the entire message or complex key material, thereby reducing data transmission length while maintaining security.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS8615649B2Use of a private key to encrypt and decrypt a message
Publication Date: 2013.12.24 LENOVO GLOBAL TECHNOLOGIES SWITZERLAND INTERNATIONAL GMBH
  • US8615649B2 patent drawing
  • US8615649B2 patent drawing
  • US8615649B2 patent drawing

AI summary

The invention includes a method for encrypting and transmitting a message M from a first location to a second location. Random numbers P and Q are initially selected, each of them being either a prime or a non-prime number. P and Q are both furnished to a sender and a recipient at the first and second locations, respectively. A client at the first location generates an encrypted message E, which is the remainder left when a modulus operator divides a first quantity, equal to M multiplied by P to the i power, where i is a selected number, by a second quantity equal to (PQ−1). A tuple comprising E and i is transmitted from the first location to the second location, and a second data processing system at the second location to determines the message M from E, i and Q.