IP Library › Granted Patent US 12,621,148
Granted Patent B2
US 12,621,148 · App. 18/437,201 · Granted May 5, 2026

System and method for performing operation using linear-integer-programing for RSA factorization

Inventors: Han-Lin Li (Hong Kong, HK); Way Kuo (Hong Kong, HK)
Assignee: City University of Hong Kong
H04L9/302H04L9/3033
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,621,148
App. No.
18/437,201
Granted
May 5, 2026
Kind
B2
Abstract

A system for performing operations using linear integer programming for RSA factorization is provided, including an n/e extractor, a prime factorization calculator, a private key determiner, and a decryptor. The n/e extractor is configured to extract a modulus and a public key exponent from a public key. The prime factorization calculator is configured to: determine a semi-prime number of the modulus according to the modulus; use a tail digit and a head digit set of the semi-prime number of the modulus to perform decomposition and factorization with respect to the semi-prime number into two prime factors. The private key determiner is configured to determine a private key using the public key exponent and the two prime numbers. The decryptor is configured to decrypt an encrypted message using the private key so as to generate a decrypted message.

Claims (32)

1 . A system for reducing computer processing time during private key decryption during digital communication, the system performing operations using linear integer programming for RSA factorization, comprising:

an n/e extractor configured to extract a modulus and a public key exponent from a public key;

a prime factorization calculator electrically coupled with the n/e extractor and configured to:

determine a semi-prime number of the modulus according to the modulus;

use a tail digit and a head digit set of the semi-prime number of the modulus to perform decomposition and factorization with respect to the semi-prime number into two prime factors via one of a first mode, a second mode, and a third mode, wherein the tail digit represents the last or least significant digit of the semi-prime number, and the head digit set represents the first two or most significant digits of the semi-prime number; and

a private key determiner electrically coupled with the prime factorization calculator and configured to determine a private key using the public key exponent and the two prime numbers; and

a decryptor electrically coupled with the private key determiner and configured to decrypt an encrypted message using the private key, so as to generate a decrypted message;

wherein the prime factorization calculator is further configured to determine if the semi-prime number is in a form of 4k+1, k being a positive integer, wherein the decomposition and factorization is performed via the first mode as the semi-prime number is in the form of 4k+1, and the decomposition and factorization is performed via the third mode as the semi-prime number is not in the form of 4k+1;

wherein the prime factorization calculator performs the decomposition by creating subproblems that are structured as linear integer programming problems, using the tail digit and the head digit set of the semi-prime number as decimal digit information, and performs the factorization by solving corresponding linear binary programs derived from the decomposition, such that, during execution of the private key decryption on a computer, the system solves the subproblems using linear integer programming techniques to reduce computer processing time and power consumption.

2 . The system of claim 1 , wherein the two prime factors are determined at the third mode, if the performing the decomposition and factorization by the prime factorization calculator begins from the third mode, as a form of 4m+1 and 4n+3 by the prime factorization calculator, where m and n are different positive integers, and m is not equal to n.

3 . The system of claim 1 , wherein the prime factorization calculator is further configured to determine if the decomposition and factorization is performed via the second mode, after the prime factorization calculator performs decomposition and factorization via the first mode.

4 . The system of claim 3 , wherein the two prime factors are determined at the second mode, if performing the decomposition and factorization by the prime factorization calculator is via the second mode, as a form of 4m+3 and 4n+3 by the prime factorization calculator, where m and n are different positive integers, and m is not equal to n.

5 . The system of claim 3 , wherein the two prime factors are determined at the first mode, if determining by the prime factorization calculator is not to perform decomposition and factorization via the second mode, as a form of 4m+1 and 4n+1 by the prime factorization calculator, where m and n are different positive integers, and m is not equal to n.

6 . The system of claim 1 , further comprising a result presenter electrically couple with the decryptor and configured to:

extract relevant details from the decrypted message; and

provide an interface to access and display the decrypted message.

7 . A method for reducing computer processing time during private key decryption during digital communication, the method performing operations using linear integer programming for RSA factorization, comprising:

extracting a modulus and a public key exponent from a public key;

determining a semi-prime number of the modulus according to the modulus;

using a tail digit and a head digit set of the semi-prime number of the modulus to perform decomposition and factorization with respect to the semi-prime number into two prime factors via one of a first mode, a second mode, and a third mode, wherein the tail digit represents the last or least significant digit of the semi-prime number, and the head digit set represents the first two or most significant digits of the semi-prime number;

determining a private key using the public key exponent and the two prime numbers;

decrypting an encrypted message using the private key so as to generate a decrypted message; and

determining if the semi-prime number is in a form of 4k+1, k being a positive integer, wherein the decomposition and factorization is performed via the first mode as the semi-prime number is in the form of 4k+1, and wherein the decomposition and factorization is performed via the third mode as the semi-prime number is not in the form of 4k+1;

wherein the decomposition comprises creating subproblems that are structured as linear integer programming problems using the tail digit and the head digit set of the semi-prime number as decimal digit information, and the factorization comprises solving corresponding linear binary programs derived from the decomposition, such that, during execution of the private key decryption on a computer, the subproblems are solved using linear integer programming techniques to reduce computer processing time and power consumption.

8 . The method of claim 7 , wherein the two prime factors are determined at the third mode, if the performing the decomposition and factorization begins from the third mode, as a form of 4m+1 and 4n+3, where m and n are different positive integers, and m is not equal to n.

9 . The method of claim 7 , further comprising:

determining if the decomposition and factorization is performed via the second mode, upon the performing decomposition and factorization via the first mode.

10 . The method of claim 9 , wherein the two prime factors are determined at the second mode, if the performing the decomposition and factorization is via the second mode, as a form of 4m+3 and 4n+3, where m and n are different positive integers, and m is not equal to n.

11 . The method of claim 9 , wherein the two prime factors are determined at the first mode, if the determining is not to perform decomposition and factorization via the second mode, as a form of 4m+1 and 4n+1, where m and n are different positive integers, and m is not equal to n.

12 . The method of claim 7 , further comprising:

extracting relevant details from the decrypted message; and

providing an interface to access and display the decrypted message.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 7, 2024
From: LI, HAN-LIN; KUO, WAY
To: CITY UNIVERSITY OF HONG KONG
Reel/Frame 066673/0837 →
Continuity (1)
Related Publication 20250260571A1 · Aug 14, 2025
References Cited (15)
US 11456863B1 · Conor · 2022 [cited by applicant]
US 20200304306A1 · Cheung · 2020 [cited by examiner]
US 20210344476A1 · Bezzateev · 2021 [cited by examiner]
US 20220166618A1 · Grant · 2022 [cited by examiner]
US 20240235834A1 · Grant · 2024 [cited by examiner]
US 20250094524A1 · Kim · 2025 [cited by examiner]
R. L. Rivest et al., “A Method for Obtaining Digital Signatures and Public-key Cryptosystems,” Communications of the ACM, 1978, vol. 21(2), p. 120-126. [cited by applicant]
Alan G. Konheim, “Computer Security and cryptography,” Wiley-Interscience, A John Wiley & Sons, inc., Publication, 2007, p. 1-536. [cited by applicant]
Shi Bai et al., “Factorisation of RSA-220 With CADO-NFS,” https://members.loria.fr/PZimmermann/papers/rsa220.pdf, 2016, p. 1-3. [cited by applicant]
Peter W. Shor, “Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer,” Siam Review, 1999, vol. 41, No. 2, pp. 303-332. [cited by applicant]
Claus Peter Schnorr, “Fast factoring integers by SVP algorithms, corrected,” Cryptology ePrint Archive, 2021, p. 1-12. [cited by applicant]
Claus Peter Schnorr, “Factoring Integers by CVP algorithms,” Number Theory and Cryptography, 2013, p. 73-93. [cited by applicant]
Brandon Dixon et al., “Factoring Integers using SIMD Sieves,” Lecture Notes in Computer Science, 1994, vol. 765, pp. 28-39. [cited by applicant]
J. M. Polland, “The Lattice Sieve,” Lecture Notes in Mathematics, 1993, vol. 1554, p. 43-44. [cited by applicant]
Alfred J. Menezes et al., “Elliptic curve cryptosystems and their implementation,” Journal of Cryptology, 1993, vol. 6, p. 209-224. [cited by applicant]