1
$\begingroup$

So say, I want to use a prime number p for anyone that wants to communicate with me using Shamir's Three Pass Protocol.

I will be maintaining my secret keypair (encryption exponent, decryption exponent) and will be expecting other parties to create their own secret keypairs according to the public prime p.

Assuming we have some method of authentication, so we won't be susceptible to man-in-the-middle attacks from that perspective.

But, is it safe to publish the prime number publicly?

$\endgroup$
0
$\begingroup$

But, is it safe to publish the prime number publicly?

It has to be. Otherwise the other party would not have access to it and could not participate in the protocol. It is called a "public prime" and not a "secret prime" for that reason.

So say, I want to use a prime number p for anyone that wants to communicate with me using Shamir's Three Pass Protocol.

If this isn't a hypothetical question and you actually plan to use this for securing real communications, you will want to consider learning about other more standard techniques such as Diffie-Hellman key agreement and hybrid cryptosystems. There are much more efficient and better studied methods for creating secured communication channels than the three pass protocol. Also, you'll want to find a pre-existing software library that already implements the relevant algorithms.

$\endgroup$
  • $\begingroup$ Thank you @ella-rose This is not really a hypothetical question, and I need to use a commutative cipher in a proprietary protocol I'm working on. Due to the nature of the protocol XOR based ciphers can not be used. Any cipher that is safe for three-pass is protocol is also safe for my use-case. I will ask a separate question to clarify this I guess. $\endgroup$ – zetaprime Jul 19 '18 at 8:05

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.