Clamshell is a lightweight, standalone Identity Provider for OpenID.

This program requires no external libraries, and has very minimal requirements. It should run on any PHP 4/5 server, and as long as PHP was built without intentionally disabling the bcmath functions, it should support 'Smart Mode.'

This program caches all data using built-in PHP session handling.

User authentication is done using HTTP Digest authentication, so your password is never transmitted over the wire in plain text.

For more information on OpenID, please see

Quick Start

To install Clamshell on your server:

  1. Download ZIP.
  2. Unzip into a directory on your favourite webserver with PHP support.

To configure Clamshell:

  1. Open http://{server}/{clamshell dir}?admin in your browser.
  2. Enter an admin password when prompted.
  3. Add new OpenID users and passwords as required.

The URL to use for OpenIDs is http://{server}/{clamshell dir}/ if you have mod_rewrite enabled, or http://{server}/{clamshell dir}/clamshell.php?u={user} if you don't.


  • HTTP server such as Apache (recommended)
  • PHP 4.3+
  • PHP must either be compiled with BcMath enabled (most are), or GMP must be installed (see below)


  • Clamshell runs best on a server which supports URL rewriting, such as Apache with mod_rewrite enabled. Most Linux distros come pre-configured with this setup. An off-the-shelf solution for Windows is the Uniform Server.
  • Performance and/or security notes:
    • You can install the GMP 'big math' library to get improved performance.
    • There are no cryptographically secure random sources available on Windows for PHP. On Linux distros, /dev/urandom will be used if available. If you want to test whether a secure library is being used, uncomment the 'opt_secure_only' option in clamshell.php.
Clamshell 0.7
Download ZIP

If you need help or more information, please email us, Twitter us or use the discussion thread below.

Sponsored by:


comments powered by Disqus