PHP implementation of OpenID 1.1 and 2.0

v0.4.0+composer 2017-08-24 20:13 UTC


OpenID is a free and easy way to use a single digital identity across the Internet, see for details. This package is a PHP implementation of the OpenID 1.1 and 2.0 specifications for Relying Party functionality.

Only Relying Party support is provided at this time. Provider support is already underway, and will be added as a separate package (i.e. OpenID_Provider).

There is out of the box support for a few extensions, including Simple Registration (1.0 and 1.1), Attribute Exchange, OAuth-Hybrid, and some support for the new UI extension.

This package supports a storage interface (including Cache_Lite and MDB2 drivers) for easy addition of custom drivers. There is also support for observers for logging, etc.

There is an example web console for testing discovery, relying party (with some useful debugging functionality), and also a sample implementation of an OpenID JS Selector (i.e. the "NASCAR" solution).

You can try the examples here:

A couple of notes about this package:

  • There is 88% code coverage, and full CS compliance with PHP_CodeSniffer 1.1.0.
  • This package meets all tests with the exception of SSL validation, as that doesn’t work well in curl for some reason (I’m investigating it).



$ pear install OpenID-alpha


$ composer require pear/openid


Bug tracker[]=OpenID
Unit test status