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

  • 10 Rules that Make or Break Enterprise App Development Projects In today's app-driven world, application development is a top priority. Even so, 68% of enterprise application delivery projects fail. Designing and building applications that pay for themselves and adapt to future needs is incredibly difficult. Executing one successful project is lucky, but making it a repeatable process and strategic advantage? That's where the money is. With help from our most experienced project leads and software engineers, …

  • IT decision support impacts all aspects of technology management, from governance and strategy to budgets and resource planning. IT decision support effectiveness often falls prey to data-driven challenges that make it difficult to understand the data in context. These challenges: overwhelming data volumes, heterogeneous data types, and growing data complexity. This Forrester Consulting Paper reports the three key findings from their study conducted, on behalf of BDNA, to test the hypothesis that data …

Most Popular Programming Stories

More for Developers

Latest Developer Headlines

RSS Feeds