Charlie knows both Alice and Bob. Alice wants to send a message to Bob. Charlie must at all times know that Alice is sending Bob a message but must never know the content of the message.

The message can go from Alice to Bob direct or via Charlie. But at no time should Charlie know the content of the message.

The solution I can think of is to use Signal protocol with Noise Pipes (like WhatsApp).

Is that approach ok? Is there a simpler approach to the problem?


  • 3
    $\begingroup$ Doesn't simple encryption fulfill this? Only Alice and Bob know the content and Bob only sees that encrypted messages are exchanged between them. $\endgroup$ – AleksanderRas Aug 28 '19 at 12:14
  • 1
    $\begingroup$ Interestingly, a similar question was asked during last week. Yes, a signal may enough for you. However, keep in mind that, a third person on your system can acts as another relay so that you think that Alice sends to Bob, but actually, Alice sends the message for Karen. Alice and Bob can achieve this with layered encryptions. $\endgroup$ – kelalaka Aug 28 '19 at 12:24
  • $\begingroup$ @AleksanderRas is it possible that Charlie acts as a CA issuing certs to both Bob and Alice and then just acts as a proxy in between to transfer messages and at all times see only the encrypted payload? $\endgroup$ – cryptotan Sep 3 '19 at 6:46

Yes, there is a simpler approach: radio. You could use a symmetric cipher--just take your pick according to your security needs.

Over VHF, for example, you set up a repeater for the signal between Alice and Bob, otherwise known as a relay station. In this case, the traffic is collected and forwarded by Charlie.

A repeater is usually set up to increase the working distance and maintain signal strength between two parties.

But one must be careful about sending encrypted radio messages. Doing so is often illegal, no matter your frequency band/modulation, depending on local/state/federal laws. Get informed before you try this at home.

The symmetric encryption method you choose--out of those available--might not matter that much in this scenario, but you now have other problems: an integrity check, authentication, and jamming (otherwise known as denial). Furthermore, how will Alice know that her message was forwarded?

In practice, such a system may result in Bob getting two messages: first from Alice, then from Charlie, depending on atmospherics (even for VHF); that is, the occasional strangeness of wave propagation, which can result from many factors--some variable, some not.

By the way, one reason that sending encrypted radio transmissions is commonly illegal (even over a legal frequency band), even though it can be cheap and work very well indeed, is that this is an effective way to communicate while staying off of a collection platform.

For example, a VHF radio signal using a directional antenna on relatively low power from Alice to Charlie and then Charlie to Bob might make sense in certain situations. One could even use a one-time pad. Charlie then has no chance to break your traffic--if he ever had that in mind. There are simple programs that send ciphertext from a GUI on your computer over an attached VHF radio.

  • 1
    $\begingroup$ Re.legal. It would be interesting to explore the legality of this further. There are legal examples like LoRaWAN (128 bit encryption). And others like AX.25 + IP packet radio. It may be the case that legislation is falling behind technology (as is common) with the gap providing opportunities for private speech. $\endgroup$ – Paul Uszak Aug 28 '19 at 20:30

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.