Information Security Stack Exchange is a question and answer site for information security professionals. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Is it a good and/or frequent practice to sign a file (with your own private key) without encrypting it (with the intended recipient's public key?) I haven't really been able to find a direct answer to this question anywhere.

share|improve this question
up vote 4 down vote accepted

Such a signature is good for two things:

  • It protects the email against alteration (i.e. any modification will be, at least, reported as such by the recipient's software).

  • It gives to the recipient a proof that you the message is really from you; that proof can be shown to a third party (that's a signature, not a mere integrity check).

In email context, we usually encrypt when we sign, because if there is an attacker who is willing to modify the email contents, he is probably interested in reading the email as well, and you probably want to prevent that, too. A signed-but-not-encrypted email is still a rather common occurrence, for the side effect of making the recipient aware that you are using OpenPGP; some people systematically sign all the emails they send, even those that they cannot encrypt because the recipient owns no key whatsoever.

In other situations, signing without encryption can be common and good practice. The typical example is software distribution. In some Linux distributions such as Debian and Ubuntu, software packages are signed (indeed using the OpenPGP format), so that you can be sure that you are installing genuine packages without backdoors inserted by malicious third parties; but the packages are not encrypted because they are, ultimately, public data.

Note that a signature from you can, be essence, be used as proof against you. Therefore, from your point of view, signatures are good as long as they are signatures from other people when they send messages to you, and not the other way round.

share|improve this answer
A newsletter would be another application. – CodesInChaos Feb 14 '12 at 12:45

EDIT: The answer below was based on the (mis)understanding that the question was about signing a message with a a recipient's public key.

Typically, you'd sign a message with your own private key, and the recipient can verify that it was you who signed the message, by using your public key.

The reverse doesn't quite make sense to me... Anybody can use the recipient's public key to sign any message they want. So what would you achieve by doing this?

Same goes to encrypted messages of course. Anybody can create one (which usually confuses people who are used to symmetric key crypto). But at least with encrypted messages, nobody can read their content but the recipient.

share|improve this answer
Amended for clarity - I think the question is not around the signing with a public key, but is it common practice to sign but not encrypt. @eouw - please let me know if this is not what you meant. – Rory Alsop Feb 14 '12 at 9:15
why the downvote? My answer was based on the original question which said sign with public key – Yoav Aner Feb 14 '12 at 12:26
I just added the brackets to clarify - the original question didn't say sign with public key, but said encrypt with public key, but the punctuation left a lot to be desired. – Rory Alsop Feb 14 '12 at 12:32
yep, now I see it. Not sure which version I responded on, but my interpretation was that somehow the question was about signing with the recipient public key. Playing catch-up is a little hard some times with questions – Yoav Aner Feb 14 '12 at 12:37
Very true - if you amend your answer, we can always upvote again :-) – Rory Alsop Feb 14 '12 at 12:42

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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