BitWise IM
From Wikipedia, the free encyclopedia
BitWise IM | |
Developer: | BitWise Communications, LLC |
---|---|
Latest release: | 1.7.2 / June 19, 2006 |
OS: | Cross-platform |
Use: | Instant messaging client |
License: | Proprietary EULA |
Website: | www.bitwiseim.com |
BitWise IM is a secure, cross-platform instant messaging client written using wxWidgets and is available for Windows, Mac OS X and Linux. It comes in two flavors, Personal and Professional. The Personal version is free but limited to personal / home use; the Professional version provides private IM networks for corporate, non-profit and academic organizations. [1]
Contents |
[edit] Features
Common with other instant messaging programs, BitWise IM users are identified using a screenname. Names must be 15 characters or fewer. Many common names seem to still be available due to BitWise IM's lower popularity compared with other systems, though that likely will change in the future. BitWise IM's four core functionalities are:
Text Messaging is the original type of instant message; a message comprised solely of text that is typed in one location and pops up instantly on the recipients computer if the user is online (connected to the Internet). BitWise IM will also save messages sent to offline users, who will receive the message(s) the next time they log in.
File Sharing allows users to send and receive files from other users. As explained in the Technology section, unlike many file sharing programs, BitWise IM does not use P2P technology.
Whiteboards provide visual communication by allowing users to draw various shapes and images for purposes of collaboration. Shapes can be manipulated and moved, and even saved and loaded later for further consideration.
Voice Chat lets you use the computer like a telephone, using a microphone and speakers. Currently BitWise IM only supports one-on-one voice chat; voice conferencing is not available.
BitWise IM offers good privacy options, including a strict privacy policy. Messaging spam (SPIM) is almost non-existent on BitWise IM. Without a public directory or a connection to any email system, screenname are not easy to find, useful for maintaining privacy, but not as useful for chatting.
[edit] Technology
Each BitWise IM user must have BitWise IM installed on his computer. This software is available for free and can be downloaded from the company website. Because BitWise utilizes wxWidgets, the software is cross-platform and cross-compatible on Windows, Mac OS X and Linux. The user does not need wxWidgets installed on his computer.
BitWise IM utilizes a number of open source technologies. Already mentioned was wxWidgets, a cross-platform GUI library. For encryption, the Crypto++ library is used. To create the VoIP capability, the PortAudio library is used for audio capture and playback and Speex is used for compression and packetization.
BitWise IM routes data directly between users; it is not a P2P program. While this means that connections cannot automatically traverse Symmetric NATs and firewalls like Skype or other P2P software, it does provide a higher level of security and does not require using other users' computers to direct data. The BitWise IM web site provides instructions how to modify routers and firewalls to allow the necessary traffic for the direct connections. The direct connections do tend to minimize lag and maximize performance, unlike a P2P network which may route data inefficiently (but without requiring any configuration).
The BitWise IM code is closed and the protocol is proprietary.
[edit] Security
Both RSA and Blowfish encryption are used to encrypt all data exchanged between users. BitWise IM uses 512-bit RSA (up to 2048-bit RSA for Professional users) to negotiate pairwise symmetric Blowfish keys over an authenticated channel. 128-bit Blowfish is used by default; Professional enables Blowfish keys up to 448-bit.
Since the BitWise IM code is not public source, the security of the software cannot be readily established. However, there is a white paper on the company's site describing the encryption process used.