Interesting People mailing list archives
IP: Free secure Internet voice communication
From: David Farber <farber () central cis upenn edu>
Date: Fri, 22 Sep 1995 21:30:23 -0400
From: John Walker <kelvin () fourmilab ch> Subject: Free secure Internet voice communication I've just released to the public domain Release 5 of Speak Freely for Windows and its Unix counterpart, Netfone for Sun and Silicon Graphics workstations. Assuming you have a fast enough connection to the Internet (with reasonably consistent packet delivery time) and/or a fast enough CPU to perform audio compression in real time, you can talk to anybody on Earth connected to the Internet who's also running the program. The Windows and Unix versions have entirely different user interfaces, but can intercommunicate. Complete source code is available. For communications security, IDEA, DES (less initial and final permutations), and one-time pad (re-used for each sound packet) encryption are available. The intensely paranoid can enable any combination of these. The documentation explains how to use PGP to securely exchange session keys before a conversation; an automatic session key generator is provided. DES is included for commercial users who don't have a license to use the IDEA patent. One-time pad encryption is for those with machines too slow to run IDEA or DES in real time. I didn't include a public key mechanism because I wanted to avoid all the confusion. If somebody wants to navigate the narrow strait between the RSA patent Scylla and Charybdis of export controls, the programming work to implement public keys is straightforward and the source code is yours to hack. For further information, see: http://www.fourmilab.ch/netfone/windows/speak_freely.html which describes the Windows version in detail and contains pointers to the Sun and SGI editions, as well as links to download source code and a ready-to-run executable for Windows. You can also obtain the program by anonymous binary FTP: Unix source code: ftp://ftp.fourmilab.ch/pub/kelvin/netfone/netfone5.tar.gz Windows executable: ftp://ftp.fourmilab.ch/pub/kelvin/netfone/windows/speakfb.zip Windows source code (for Visual C 1.5): ftp://ftp.fourmilab.ch/pub/kelvin/netfone/windows/speakfs.zip The Sun and SGI versions of this program are quite stable, and should work for just about anybody with an adequate network connection. Porting the code to other Unix workstations with audio hardware should be relatively straightforward. The Windows version has just been finished and until it's shaken down on a variety of machines, networks, sound cards, etc. may not work for everybody. The Windows version requires a sound card with Windows Multimedia drivers (I've tested it on a variety of Sound Blasters of various generations) and a TCP/IP stack that supports WINSOCK (I'm using NetManage Chameleon NFS). Since multimedia and network hardware and drivers vary tremendously from machine to machine, I wouldn't be surprised if some tweaking were needed for various configurations. The CPU speed required interacts with the speed of your network connection; if you have a high-bandwidth connection to the Internet, or you're talking to another person on a high-speed LAN, there's no need to compress sound and the CPU load is minimal; just about any machine will do. If you need to compress in order to squeeze 8000 samples per second into a dial-up connection, then you need a CPU fast enough to run GSM compression in real time: basically we're talking a very fast 486 or Pentium. If you turn on IDEA and/or DES encryption, that also consumes CPU time. Based on my experience with other Windows programs, it will probably take months to track down misbehaviour due to strange hardware and software configurations. Complete, detailed bug reports are welcome. I may not be able to respond individually, but the Web page will track updates as they're released. I have tested the program only on vanilla 16 bit Windows 3.1. The Windows version contains preliminary code to support direct dial-up modem connections, acting as a phone scrambler. Serial port support in most Windows machines is so poor (unless you have a 16550A UART and appropriate drivers, which most people don't) that this feature isn't usable at present. I've left the code in just in case somebody with suitable hardware wants to bash it into working form. If you add features, port the program to 32 bits, fix bugs, etc., let me know so I can make your contributions generally available. -------------------- <http://www.fourmilab.ch/> ------------------- John Walker | A sufficiently advanced Internet: kelvin () fourmilab ch | technology is indistinguishable | from a rigged demo.
Current thread:
- IP: Free secure Internet voice communication David Farber (Sep 22)