OAuth 1 RFCs
- RFC 5849: The OAuth 1.0 Protocol - the final version of the OAuth 1.0 specification.
- OAuth Core 1.0 was released December 4, 2007.
- OAuth Core 1.0 Revision A was released June 24, 2009.
OAuth 1 Libraries
Below is a collection of OAuth 1 libraries. If you would like to make any changes to this page, you can edit this page.
DotNetOpenAuth a consumer and service provider implementation for OAuth 1.0 and 1.0a for .NET, written in C#. It has built-in support for HMAC-SHA1, RSA-SHA1, and PLAINTEXT signature methods with extensibility to add others. It also includes the OpenID+OAuth extension. It works for ASP.NET as well as non-ASP.NET services, and works in partial trust shared hosting environments. Contributed by Andrew Arnott.
DotNetAuth is a consumer only implementation for both OAuth 1.0a and OAuth 2.0. This library is designed with extensibility in mind. So you developers can easily customize it to add support for any OAuth provider, even if the provider is not strictly following the OAuth rules and guidelines.
Alex Henderson offers DevDefined OAuth, an OAuth library developed in C#, providing both consumer and provider implementations for OAuth 1.0 and 1.0a which includes support for the Error Reporting Extensions and allows for RSA-SHA1, HMAC-SHA1 and Plaintext signing. DevDefined OAuth is designed to be both test friendly and extensible, allowing the core to be repurposed to your specific projects needs, and is available under an MIT License. Extensions to the framework to support ASP.Net MVC can also be found on this fork.
Leslie P. Polzer contributed cl-oauth, which is available on GitHub and Gitorious. It currently supports HMAC-SHA1 authentication and comes with some SP convenience functions. It’s not polished yet but comes with a basic test suite and all you need to set up both Consumers and Service Providers.
Go-Oauth is an OAuth 1 client package.
OAuth for Spring Security is also available, contributed by Ryan Heaton.
OAuth Signpost offers simple OAuth message signing for Java and Apache HttpComponents (Google Android ready!). Contributed by Matthias Kaeppler.
Jon Crosby has released an OAuthConsumer and OAuthTestSuite for Objective-C for Mac developers. The OAuthConsumer framework is available in the repository and Jon has also written up Using OAuthConsumer, a complete guide to using the OAuthConsumer framework for Mac apps.
Hongbo Yang released YToolkit with OAuth 1.0 and 2.0 support.
- There is an extension to PHP that supports OAuth. It was written by John Jawed. An example can be found here and a walkthrough is also available. This pecl package is considered the de facto standard by Rasmus Lerdorf.
- Manuel Lemos has written a pure PHP OAuth client that abstracts OAuth 1.0a and OAuth 2.0 in the same class. It provides built-in support to several popular OAuth servers, so you do not have to spend time configuring the respective end point URLs. It supports every other OAuth server through specific configuration variables, including some meant to workaround OAuth implementation glitches that some servers have. Documentation and practical examples come with the class package.
- Andy Smith has written a basic PHP library for OAuth.
- Cal Henderson has contributed a simple OAuth library that primarily handles signing.
- HTTP_OAuth is a PEAR package developed by Jeff Hodsdon and Bill Shupp (Digg). You can try it out using this tool.
- There is an OAuth component for CakePHP.
- Justin Richer has developed a plugin for the Elgg social networking platform, based on the basic PHP library. This library allows Elgg to act as both an OAuth client (to access other services) and server (allowing OAuth-protected access to the Elgg API). The library supports both version 1.0 and revision 1.0a simultaneously. Documentation can be found on the Elgg wiki.
- Zend_OAuth was contributed by Pádraic Brady. The source code can be found here.
- OAuthlib is a generic OAuth signing library; it is neither a client nor a server, but provides signing facilities for either.
- Leah Culver has written both a library in Python 2.3 and offered an example implementation.
- David Larlet has released an OAuth Provider and Consumer for Django.
- Simon Willison released the snippet that handles OAuth in Wikinear.
- Steve Marshall wrote a comprehensive binding for Fire Eagle that implements OAuth.
- Joe Stump (SimpleGeo) maintains the python-oauth2 library on GitHub.
- Flask-OAuthlib is an OAuth/OAuth2 Client/Provider for Flask built upon oauthlib
- Flask-Dance is another OAuth extension for Flask, built using blueprints, requests, and oauthlib.
- Batista Harahap is writing an OAuth 1.0 reverse proxy available at Github here.
- oauthlib (sources on GitHub) A generic, spec-compliant, thorough implementation of the OAuth request-signing logic written by Idan Gazit.
- Tornado has OAuth 1.0 and OAuth 2.0 Clients available as part of the core code in the Tornado Auth package
The Play framework provides a Scala implementation of OAuth 1
Tim Fletcher published a library
Dongri Jin released OAuthSwift an OAuth client module with OAuth 1.0 and 2.0 support.
There is an XQuery OAuth Library written by Stephan Merkli and documented here.