Perfect Paper Passwords - Open Source In English > Perfect Paper Passwords - Open Source

Original by Steve Gibson:

Java and C implementation by John Graham-Cumming:

Changes for compiling C version on Windows and Ubuntu Gutsy Gibbon by Lauri Ojansivu:

Discussion about PPP implementations

GRC:s Newsgroups:

Direct link to web interface:



- Added source and binaries to



- PPPv3 from John merged

- made StartMinGW.bat file for adding paths to get compiling on Vista working because Vista has security changes so MinGW Studio can't find cc1.exe and as.exe,

found this path info from

- changed Makefile to remove CFLAGS -O2 and add LDFLAGS -lm (Makefile is used on Linux, on Windows MinGW uses project file settings)

Misc notes:

- John's PPPv3 c-version compiles on Ubuntu without my changes too, though then installing binary needs to be made with cp, not "sudo make install"

- on Ubuntu compiled John's version is 54164 bytes and my version 53647 bytes (517 bytes smaller), maybe because of:

- John's version compiles with cc and mine with gcc

- or compiler flags

- or my code changes in ppp.c

- or something else...

- Windows Open Source PPPv3 version and Steve's current PPPv2 version works on Linux x86 with Wine too: "wine ppp.exe ..."

(older changes in the file ChangeLog)



Download (316k) - source code for Windows and Linux (16k) - binary for Windows (22k) - binary for Linux x86

Compiling from source


1. Install MinGW Developer Studio for Windows from

2. If you are on Vista, either:

a) copy StartMinGW.bat to desktop and doubleclick it (easier way)

b) add paths of the StartMinGW.bat to your environment variable, as quoted from

"In Vista, you can edit the PATH variable by going to the Control Panel --> System and Maintenance --> System window and clicking on the "Advanced system settings" link

in the left column. After you approve the UAC popup, the "System Properties" pane will open and you will see a button labeled "Environment Variables."

Clicking this button will open the "Environment Variables" pane, and the PATH variable can be found in the "System variables" section."

3. After unzipping and starting MinGW Developer Studio:

Project / Open Project - ppp_source/ppp.msp

Build / Compile - there'll come exe in ppp_source/Release/ppp.exe

Linux etc



sudo make install

so that installs binary to /usr/local/bin/ppp

To remove it just do: sudo rm /usr/local/bin/ppp

and to clean ppp dir just: make clean