Source - gegel/torfone GitHub Wiki

Welcome to our source page!

TORFone Source code based on the source code of PGPfone 2.1 for Windows published by Philip Zimmermann in 1999.

Major changes:

  • Used TCP-transport instead of UDP. Added 2-byte length header to the top of each data packet;
  • Added ability to select the address and port of listener interface settings;
  • Added SOCKS5 proxy support to work through Tor;
  • Used the extra 32-packets buffer to compensate jitter of the Tor tunnel. Initial buffer filling (defining additional voice latency) automatically adjusted depending on the tunnel's quality and can also be set manually;
  • Added safe text message feature (crypto chat). Enabled the safe file transfer feature (was disabled in the original PGPFone);
  • Localized initialization file (now the settings are saved in the current folder).
  • Added address book file support
  • Added AES256 in CTR and OCB (128 bit MAC) modes, anti-MitM autentification using PKDF2 and HMAC, сorrected generation of keys from common secret (now PKDF2 used), CSPRNG and words list generation (now HMAC instead of SHA1 used)
  • Added new codecs: MELPE, MELP, CODEC2, OPUS and GSP 06.10 from SpeakFrealy in various modes, noise preprocessor NPP7 and professional security vocoder based on LPC algo
  • Hides variable bitrate of OPUS codec and fixes message lenth
  • Added new intelligent PTT and VOX modes for prevention the loss of end of the phrase
  • Added Tor/direct UDP switch during call
  • Added STUN protocol support for NAT traversal using Tor
  • Added back-connection to Hidden Service of caller and automatically rebuilding slowest Tor circuits for decreasing latency

Version 1.1b is not compatible with earlier versions of 0.Xa, since the changes were made in cryptography to improve privacy

To compile the source code using Visual Studio 6.0 under Windows XP without any additional external or pre - builded libraries.

The compiled project should work on the entire line of Windows above Windows 98. I tested it under Windows XP, Windows 7 and Windows 8. It also works under virtual Windows XP from live CD with network and audio support and also under Linux using Wine.