Adding More Privacy to Users of Existing Messengers

Environment: VC6, SP4, NT4, Win2K, Win9x

Introduction

SQLProxy is a program created for adding more privacy to users of existing messengers (first, Yahoo Messenger and later MSN, ICQ...). In the first versions, only Yahoo! messenger protocol is supported.

Updates will be found at squrelayerproxy.sourceforge.net.

How It Works

SQLProxy will run on your computer and a friend's computer. Acting as an HTTP proxy, it will intercept the messages before they are sent on the network and will encrypt them. At their destination, SQLProxy will decrypt them. SQLProxy is acting as an HTTP proxy, but it knows just enough Yahoo! messenger protocol to encrypt/decrypt the message's content. The transfer of files is not encrypted in any other way.

You need only to set a secret key with your friend (by phone or mail, not by messenger). Encryption is done with DES provided by the Crypt++ library. I have plans to add RSA (and key exchange protocol) later.

Crypt++ library is not provided here.

The sources exemplify an HTTP proxy, a simple connection forwarding to other host and port techniques and basics of Yahoo! messenger protocols. I heavily used CAsyncSocket because of its integration with MFC. Also, the sources exemplify use of Crypt++ library, a free C++ library with support for many cryptographic algorithms.

To add support for other messengers, I should get this code to a new level of generalization and I should add an improved structure, but the code is a good lesson about how to interact with an existing communication protocol without a perfect knowledge of it.

Please give me feedback if is working for you (or not) at my e-mail address.

Downloads

Download demo project -- 132 KB
Download source -- 33 KB



Comments

  • There are no comments yet. Be the first to comment!

Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • On-demand Event Event Date: December 18, 2014 The Internet of Things (IoT) incorporates physical devices into business processes using predictive analytics. While it relies heavily on existing Internet technologies, it differs by including physical devices, specialized protocols, physical analytics, and a unique partner network. To capture the real business value of IoT, the industry must move beyond customized projects to general patterns and platforms. Check out this webcast and join industry experts as …

  • Today's agile organizations pose operations teams with a tremendous challenge: to deploy new releases to production immediately after development and testing is completed. To ensure that applications are deployed successfully, an automatic and transparent process is required. We refer to this process as Zero Touch Deployment™. This white paper reviews two approaches to Zero Touch Deployment--a script-based solution and a release automation platform. The article discusses how each can solve the key …

Most Popular Programming Stories

More for Developers

RSS Feeds