2
$\begingroup$

I came to know of semiprimes recently. The simplest explanation of semiprimes is you take any two prime numbers and you multiply them, say 3*11 = 33 in which case 33 would be a semiprime. The numbers may grow bigger but the idea is same.

Hypothetically (or maybe in reality as well), you could use a good large semiprime as your public key and one of the primes as the private key so encoding and decoding is simpler for the one who has access to the private key.

Now what is/are multi-primes? Are they multiple prime numbers which are multiplying with each other or some other thing ? As in the above scenario, if somebody encodes some data with result of multiplication of 3 or more primes. In this case, how would the above example work while decoding the data?

Looking forward to know and understand. I did use various search engines but didn't get any explanations for this.

Looking forward to know.

$\endgroup$
4
$\begingroup$

You got what a "semiprime" number is; it's a number which is the product of two primes.

When people talk about "multi-prime RSA", what they mean is something which is pretty much the standard RSA algorithm; however the modulus is the product of at least 3 prime numbers (as opposed to standard RSA, which has only 2 prime factors).

Why would anyone do this? Well, for performance; using the CRT optimization, we can do the private operations (signature generation, public key decryption) somewhat faster than we can do with standard RSA. And, it doesn't affect someone that has only the public key as well (they can't even tell if the key they've been given is standard RSA or multi-prime").

Why doesn't everyone do this? Well, I'm not certain, but I can think of a few plausible reasons:

  • I believe this idea is patented.

  • If someone goes hog wild, and puts too many factors into the modulus, that will make the modulus easier to factor. IIRC, having 3 or 4 factors is safe for common modulus sizes is safe; I know that having 10 is not.

  • Conservatism; we trust RSA as it was originally designed, we're not going to go to an unproven version for a modest performance gain.

$\endgroup$
  • $\begingroup$ The patent, and more generally history of multi-prime RSA, are described in this question $\endgroup$ – fgrieu Nov 25 '14 at 4:26
  • $\begingroup$ It is difficult to asses how many are using multiple factors, because anybody deciding to use multiple factors would be better off keeping it secret. The patent is not the only reason for keeping the number of factors secret. Telling the adversary how many factors you are using means you are telling the adversary a few bits of information about your secret key. If we are talking about 2 bits of information about a 4096 bit key, that isn't a lot. But still there is no point in telling the adversary even one bit of your private key. $\endgroup$ – kasperd Nov 25 '14 at 11:19
  • $\begingroup$ Is using many factors (like 10) a problem when they are all as large as they would be for a standard two-factor 4096-bit RSA key? I can imagine that ten 400-bit primes would not make for a very secure key, but ten 4096-bit primes? $\endgroup$ – forest May 28 '18 at 2:22

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.