Released! But there's still stuff TODO.
Members who have contributed to this project. Newest on top.
All contributors have agreed to the terms of the Contributor License Agreement. This excludes any upstream contributors who tend to have different administrative frameworks.
Upstream contributors for the phpjs library used by pccipher/js.
Upstream contributors for the jQuery library used by pccipher/js.
Upstream contributors for the QUnit library used by pccipher/js.
Upstream contributors for the SimpleTest library used by pccipher/php.
Pccipher uses the phpjs library which is dual licensed under the MIT or GPL licenses.
Pccipher uses the jQuery library which is dual licensed under the MIT or GPL licenses.
Pccipher uses the QUnit library which is dual licensed under the MIT or GPL licenses.
Pccipher uses the SimpleTest library which is licensed under the LGPL.
You can download the latest version of pccipher from the following URL:
You can look in the download directory for specific releases.
The repository can be browsed online:
The code for pccipher is publicly available from svn:
Or privately available for read-write access:
Things to do, in rough order of priority:
- serialize/deserialize initial state in PHP (check it helps)
- Use the 'pccipher' namespace for phpjs
- Flesh out the unit tests
- Integrate with PHP mcrypt?
- Compatible implementations in other languages
Stuff that's done. Latest stuff on top.
- JE 2012-07-08: inlined functions in PHP to improve performance
- JE 2011-10-30: fixed pccipher_encrypt and pccipher_decrypt functions
- JE 2011-08-16: packaged in .tar.gz download files
- JE 2011-08-16: integrated SimpleTest testing framework for PHP
- JE 2011-08-16: fixed formatting to use \x02 .. \x03 wrapper
- JE 2011-08-16: removed key crc, and added algorithm code
- JE 2011-08-16: created the project in svn
- JE 2011-08-16: created project page
And the latest development snapshot (i.e. trunk) at:
Note: the PHP testing links have been removed, because they place the server under load, and at the moment ProgClub is being slashdotted by http://programming.reddit.com/ and we can't have everyone clicking on them!
Update: We're not being slashdotted anymore, but I think I'll leave the links out anyway. If you're clever you'll be able to find them for yourself. Better to run the tests on your own system.
OK, OK. Here are the tests:
Notes for implementers
If you are interested in incorporating the ProgClub pccipher into your project, here's what you need to know:
You probably want to setup an svn:externals to:
Then you can use the PHP library with something like this:
<?php error_reporting( E_ALL ); ini_set( 'display_errors', 'On' ); require_once( dirname( __FILE__ ) . '/path/to/pccipher/php/src/pccipher_auto.php' ); $key = "my key (which isn't half as randomly awesome as *your* key will be)"; $text = "my text"; $data = pccipher_encrypt( $text, $key ); $text = pccipher_decrypt( $data, $key ); echo "<p>" . $text . "</p>"; ?>