I was thinking about some of the things that could be added to Live Messenger, and encryption comes to my mind. Since text messages are sent in plain text, any sniffer on a corporate (or other) gateways could sniff the messages.
I searched for any existing plugins and came across this one
http://www.secway.fr...msn/getsimp.php
However, I think it kind of comes into the way of chatting. I am thinking about making a cleaner encryption plugin that would allow to encrypt/decrypt the messages ( something like toggling the encryption with Ctrl + E). Also I'm planning to use public/private key encryption.
Do suggest what do you guys think about this. Is this something useful or a total waste of time ?
Page 1 of 1
Plugin Idea Encryption good or bad ?
#2
Posted 22 February 2010 - 02:28 PM
I would imagine that if you really want security for you messages that you should be using a protocol that encypted at the actual protocol level. From there you could attempt to add RSA encryption. If I recall correctly, skype's protocol is already using encryption.
As for adding it to windows live messenger, it's probably not worth the effort.
If a company wanted to see what you were saying, they could always install a monitoring software on your computer.
As for adding it to windows live messenger, it's probably not worth the effort.
If a company wanted to see what you were saying, they could always install a monitoring software on your computer.
#3
Posted 23 February 2010 - 03:04 AM
I was thinking on the lines of Public-Private key where the plugin will generate the private keys automatically by adding some padding to the userid ( say huge prime numbers), have to do some more research on this. However, this will have a hint of obscurity that will make it secure, but still I think it will be enough to secure the daily chit-chats and would require a lot of effort to decrypt.
But yes, the usability is questionable. Just how many users are going to use it. And the effort will be significant too.
Any suggestions for some basic plugins that require text manipulation ? It's just that although I can capture what's being typed in the richedit, there seems no use :P
But yes, the usability is questionable. Just how many users are going to use it. And the effort will be significant too.
Any suggestions for some basic plugins that require text manipulation ? It's just that although I can capture what's being typed in the richedit, there seems no use :P
#4
Posted 23 February 2010 - 01:26 PM
coldsource, on 23 February 2010 - 12:04 PM, said:
Any suggestions for some basic plugins that require text manipulation ? It's just that although I can capture what's being typed in the richedit, there seems no use :P
Well, you can take examples from other programs that use richedit hooks. For example, Messenger Plus allows text formatting. Various addons such as SweetIM or HiYo allow custom animations/winks to be added in to the edit control(custom embedded OLE object?).
As far as the Public/Private key idea goes, you would need to implement a form of public key exchange that is not susceptible to the man in the middle attack.
This could consist of pre-exchanged public keys or form of key caching similar to SSH's host verification.
In addition, since public and private key encryption is much slower than symmetric encryption, you can use public/private key encryption to transfer a session symmetric encryption key and from there, use that key to encrypt/decrypt.
#5
Posted 12 July 2010 - 07:09 PM
TheSteve, on 23 February 2010 - 08:26 AM, said:
In addition, since public and private key encryption is much slower than symmetric encryption, you can use public/private key encryption to transfer a session symmetric encryption key and from there, use that key to encrypt/decrypt.
I've actually looked into this one a fair deal on the side while working on my new MSNV18 c++ library (GPLv3)...
Simp uses AES or Twofish for the Session, and stores the keys on a per-contact basis. It also does it in a way that actually moves this information over the existing protocol.
I believe it's not centralized, at all.
I'm not sure how the initial key exchange is done to avoid man in the middle attacks (their spec page doesn't indicate this either). The kind of attack I'm talking about is similar to what Self-Signed SSL Certs are vulnerable to on the initial exchange.
If they were smart, they would have picked something like Diffie-Hellman to do the initial key exchange... but even then, any initial key exchange is still susceptible to anyone that can change the data before it gets to the destination (which kills the security). If you have the fingerprint or PUB key already, or if you verified it through external means, you're safe.
Users of Simp would notice that it actually encrypts the Notification Server commands to/from any user that also has Simp. They do this by automatically configuring WLM to use a Proxy, and then their proxy (which runs locally on your computer) changes the Notification Server commands on the way in/out of a user that has a known encryption fingerprint.
I'm pretty sure the way they managed to do this is by appending tags to the first few messages in a conversation, so that any Remote Simp can recognize the payload, and know what to do with it.
It's a long shot, but if they managed to do it with a proxy, then theoretically so can you. Don't worry about trying to further-encrypt any SSL-encrypted data (i.e. SSO, etc). They shouldn't be able to decode that either, for the exact same reason that PKI is safe in the first place.
As far as the conversations go, you could try writing a proxy (you'll need a basic Socks one to start), and then change it to snoop for specific conversation messages, append a tag, and then service it two-way.
Or try to manipulate an existing MSNP implementation, preferably an opensource one. MSNP-Sharp is by far the easiest one imo. It's a pretty big job, though I'm sure you'll be seeing more of it the deeper you get into the protocol :)
Page 1 of 1

Sign In
Register
Help


MultiQuote