Information Security Stack Exchange is a question and answer site for information security professionals. Join them; it only takes a minute:

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

I want to implement secure communication for my application. The A sends a message/data and B receives it. The message should be encrypted so the internet provider would not be able to read it even if it gets intercepted.


  • I cannot use https (but should be included for completness)
  • It's possible to use other protocols then http, but not desirable

I found many sources to this problem, but decided to ask to see all alternatives and maybe create a list of methods/solutions/scenarios to this problem, since many people new to this domain spend a lot of time researching these methods. Thank you!

share|improve this question

migrated from Jul 14 '13 at 9:49

This question came from our site for software developers, mathematicians and others interested in cryptography.

Why doesn't SSL work for you? How do you find the public key of your communication partner? Is there a connection where both are online at the same time, or is it store-and-forward like email? – CodesInChaos Jul 13 '13 at 11:24
when you say "it's possible to use other protocols then http..." did you mean https? Why is it not desirable to use well established, deeply studied security protocols? – mikeazo Jul 13 '13 at 13:05
@CodesInChaos 1.Yes there are time when they are both online. 2.The key can be stored on the recipient (implied by your "store and forward"), but was hoping for another solution than this one, considering the limitations of this method. @ mikeazo SSL and HTTPS are already known solutions that I've taken into account, i'm interested in the alternatives. Especially new protocols that are specially designed for secure communication (again, except https) – user1960178 Jul 13 '13 at 14:46
@mikeazo "did you mean https", no I meant http (since I know about the https solution already). Although I don't know how secure communication over HTTP would work except encrypting and encrypting at both ends with same or symmetric key. (Again, I'm not that good at this part, that's why I ask you guys for help). Thank you! – user1960178 Jul 13 '13 at 15:17
If you don't know for sure that both parties are online all the time then you could think about message encryption. Should we include message encryption formats like CMS, PGP and XML encryption? I think that together with SSH they are the most common formats. There are endless possibilities here though. – Maarten Bodewes Jul 13 '13 at 15:31
up vote 1 down vote accepted

I'd recommend OpenPGP GNU has a good implementation of that that is GPG or GnuPG that comes with it. Check with gpg --version GNU also has a windows implementation called Gpg4win.

A better place to get these answers that allows for more discussion is IRC. I suggest ##crypto on freenode.

I personally use it with Enigmail(Thunderbird add on) for my email. For more on encryption and digital signatures see this.

share|improve this answer

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.