You are here

encrypted messenger with support for offline messages?

9 posts / 0 new
Last post
jps
Offline
Last seen: 16 years 2 months ago
Joined: 2007-06-09 13:23
encrypted messenger with support for offline messages?

We are currently using Pidgin Portable with OTR Portable which works great. It only lacks an important feature: sending messages while the correspondent is offline (normally it works with jabber without any problems but the encryption plugins do not support this).

Psi with OpenPGP also works very well but does not support portable use together with OpenPGP.

So currently I am looking for a new messenger with the following features:
- support for jabber (or any other free protocol)
- portable
- Open Source
- secure encryption
- also supporting offline messages

wraithdu
Offline
Last seen: 11 years 11 months ago
Developer
Joined: 2007-06-27 20:22
Are you sure that encryption

Are you sure that encryption and offline messaging aren't mutually exclusive?

John T. Haller
John T. Haller's picture
Online
Last seen: 53 min 43 sec ago
AdminDeveloperModeratorTranslator
Joined: 2005-11-28 22:21
Perhaps

I think all the current plugins only work online by design.

Best bet would be to just use encrypted email instead.

Sometimes, the impossible can become possible, if you're awesome!

jps
Offline
Last seen: 16 years 2 months ago
Joined: 2007-06-09 13:23
I see no technical or legal

I see no technical or legal reason not to do this. The jabber server allows to use encryption. Most jabber servers also support storing messages.

Your correspondent is offline. You encrypt a message with a symmetric key and send it. The server stores it. As soon the correspondent goes online he gets the encrypted message from the server and decrypts it.

I could theoretically write a small plugin for that myself. But it`s always three times harder then you think. So I would be quite happy with a mature solution, if any. That`s why I ask here.

Jimbo
Offline
Last seen: 5 years 3 months ago
Joined: 2007-12-17 05:43
They're currently mutually exclusive

Since the protocol sequence used by ALL current IM encryption techniques (as well as SSL, TLS, SSH, etc) is basically as follows

* request secure communications
* handshake with the known asymmetric key (i.e. public key) to ensure identity.
* use the asymmetric keys to negotiate an encryption algorithm and a symmetric session key
* use the symmetric key to encrypt the IMs.

Without the key negotiation phase, which requires both parties to be online, there is no symmetric key to use, so any message that you stored would be undecryptable by the other party since they don't know the key.

Only you have verified the key of the other user to your satisfaction, so only you can authenticate that you are actually talking to the person you think you are in order to negotiate the session keys.

There is no safe and secure way that you can pass this task off to the server, so the server cannot authenticate the receiver, and cannot negotiate a session key on their behalf.

All of the above is for synchronous messaging. What you want to do is asynchronous, and you really need to switch over to something like email and gpg to get the asyn equivalent. It simply isn't the way that encrypted synchronous messaging works.

wraithdu
Offline
Last seen: 11 years 11 months ago
Developer
Joined: 2007-06-27 20:22
Nice explanation

Nice explanation Biggrin

jps
Offline
Last seen: 16 years 2 months ago
Joined: 2007-06-09 13:23
I am aware of the handshake

I am aware of the handshake and OTR features such as Deniability and Perfect Forward Secrecy.

1) The symmetric key / plugin will be send over an presecure channel.
2) I encrypt a message with the symetric key and aes 256 (or cascade with more then one cipher).
(Maybe it`s also a good idea to add some random stuff the the string to make the ciphertext longer.)
3) Send this string to the server.
4) The server will deliver this message to the correspondent at some time. Any man in the middle such as the server can manipulate the following things: not send any messages, send only partial.
5) The correspondent will receive this message and decrypt it with the preshared symmetric key. (nothing in plaintext has been send at all)

- If the symmetric key gets lost any previous conversation is compromised. (That`s why it`s a good idea to change it from time to time.)
- There is no authentication at all. But authentication isn`t needed. If someone receives a message in plaintext you know that something is going wrong. Or if someone receives a message encrypted with the wrong key you simple can`t read it.
- There is also no Deniability.
- No man in the middle such as the server can read any messages in plaintext. That`s the hole point and that`s fine enough.

It`s not professional and not for multiple users but it`s fine so no one from outside can read plaintext.

That`s how I plan to implement it soon. Or did I miss something?

Jimbo
Offline
Last seen: 5 years 3 months ago
Joined: 2007-12-17 05:43
But why?

what you are describing would technically work, but why not simply use email?

If you want to keep the channel separate from other comms, set up a gmail account and use the FireGPG plugin, and you will get much more reliable security, for much less effort, without the hassle of having to change the symmetric key that you use from time to time, with perfect forward security, with a codebase that has been tested and eyeballed by many many crypto coders, and as such, is much less likely to have bug or implementation errors in it.

jps
Offline
Last seen: 16 years 2 months ago
Joined: 2007-06-09 13:23
Instant messages are

Instant messages are currently our preferred way to communicate. Pidgin Portable is in autostart and has a great look and feel. If there are new messages the try icon blinks, you double click on it, read the message and answer.

Also sending some notes, hints, news or whatever if you have a short mind is easy. Just double clicking the tray icon, open a new query and paste it.

E-Mail has not such an easy and nice look and feel. That`s why.

I wasn`t aware of FireGPG but I wouldn`t use gmail. My provider has a much more restrictive policy about privacy. But still interesting idea.

Log in or register to post comments