Fact-checked by Grok 2 weeks ago

OpenID

OpenID is a family of open standards for decentralized and , allowing users to log in to multiple websites and applications using a single set of credentials managed by an identity provider, such as , Apple, or , without the need to share passwords or create new accounts at each . OpenID originated in 2005 with version 1.0, initiated by Brad Fitzpatrick, and OpenID Authentication 2.0 was finalized in December 2007 by the OpenID Foundation, a non-profit established in June 2007 to promote interoperable protocols; it aimed to enable users to prove control over a across the without relying on centralized authorities. The protocol evolved significantly with the introduction of OpenID Connect 1.0 in February 2014, which builds upon the OAuth 2.0 framework to provide a simple layer for verifying end-user identities and obtaining basic profile information in a RESTful manner, supporting , mobile, and clients. Key features of OpenID include user consent for , privacy-preserving configurations, and extensibility through specifications like and , ensuring secure and interoperable without storing user secrets at relying parties. OpenID Connect specifications have been published as ISO/IEC standards in 2024 and is widely adopted, powering sign-ins for billions of users across millions of applications globally, with programs promoting conformance and ecosystem growth.

Overview

Definition and Purpose

OpenID is an open standard for decentralized digital identity authentication that enables users to sign in to multiple independent websites using a single, user-controlled identifier, without the need to share passwords or other credentials with relying parties. This protocol allows end users to prove ownership or control of a unique identifier, such as a URL—through interactions with an OpenID provider, fostering a user-centric approach to identity management across the web. The primary purpose of OpenID is to facilitate decentralized (SSO), permitting users to authenticate once with their chosen and then access various services without repeated logins, thereby reducing and streamlining the overall . Key benefits include enhanced user control over personal identity data, the absence of a mandatory central to manage identities, and broad between diverse online services and providers, which promotes portability and flexibility in digital interactions. OpenID was developed in the early , with its initial release in , to address the escalating challenge of users managing an ever-increasing number of distinct usernames and passwords for different websites amid the rapid growth of the and web-based applications. This motivation stemmed from the recognition that traditional site-specific created significant barriers and risks due to credential reuse and weak password practices. Over time, OpenID has evolved, with OpenID Connect emerging as its successor and current standard to incorporate modern enhancements like integration with OAuth 2.0 for broader applicability in web, mobile, and API contexts; the original OpenID Authentication 2.0 is now considered legacy.

Core Components

OpenID's architecture revolves around three primary roles that facilitate decentralized authentication. The OpenID Provider (OP) serves as the identity issuer, operating as a server that authenticates users and issues assertions about their identity, typically accessible via an OP Endpoint URL using HTTP or protocols. The (RP) functions as the service or web application that relies on the OP for authentication, seeking verifiable proof that the end user controls a specific identifier without managing identities itself. At the center is the End User, the individual who owns and controls the identifier, choosing their preferred OP to manage their across services. Supporting these roles are key elements that enable interaction in a web-based . The User-Agent, commonly the end user's , acts as the intermediary, facilitating communication between the RP, , and end user through standard HTTP/1.1-compliant requests and responses. mechanisms provide a high-level means for RPs to locate an end user's OP without prior . The protocol is layered on established web standards to ensure and extensibility. It builds upon HTTP and conventions for all communications, using standardized formats for requests and responses, with support for extensions. Unlike centralized systems, OpenID adopts a decentralized model that empowers end users to select any compatible , eliminating the need for a single authority and allowing identifiers to remain portable across providers. This user-centric approach originated from early specifications aimed at enabling portable without . For details on modern implementations, see the OpenID Connect section.

Technical Specifications

Discovery and Identifiers

In OpenID Authentication 2.0, serve as the starting point for the authentication process, allowing end users to claim control over a unique resource without sharing credentials directly. These primarily consist of HTTP or URLs, such as http://example.com/, which represent user-controlled web resources, or XRIs (Extensible Resource Identifiers), which provide a structured syntax for persistent global identifiers like i-names or i-numbers. XRIs, defined by the XRI Technical Committee at , enable abstraction over various identity schemes but require resolution to a for use in OpenID. Additionally, are categorized as claimed identifiers, which are user-owned and verified through the protocol (e.g., a personal URL like http://myblog.com/), or OP-local identifiers, which are specific to an OpenID Provider () and may not be directly controlled by the user (e.g., https://user123.op.example.com/). The discovery process in OpenID 2.0 enables a relying party (RP) to locate the OP endpoint and related services associated with a provided identifier, using a series of HTTP fetches and document parsing. For URL identifiers, the process begins with normalization: the input is stripped of fragments (e.g., #section is removed), prefixed with http:// if no scheme is present, and treated as an absolute URI per RFC 3986 rules; relative references or those starting with www. are resolved accordingly to avoid duplicates. The RP then performs HTML-based discovery by fetching the normalized URL and scanning the HTML <head> for <link> elements, such as <link rel="openid2.provider" href="https://op.example.com/openid"> to identify the OP endpoint or <link rel="openid2.local_id" href="https://user.op.example.com/"> for an OP-local alias. If Yadis discovery (via HTTP headers like X-Yadis-Location) succeeds, an XRDS document is retrieved, containing <XRD> elements with <Service> tags that specify types like http://specs.openid.net/auth/2.0/server for the OP endpoint URI. For XRI identifiers, discovery routes through XRI resolution services to obtain an XRDS document, including a <CanonicalID> element for persistence. This entire process relies on HTTP redirection (e.g., 302 or 303 status codes) to follow chains and resolve the final endpoint, ensuring the RP obtains verifiable service details without prior knowledge of the OP. Claimed identifiers differ from delegated setups in that the former directly assert ownership, with the verifying control by completing the full flow against the claimed 's discovered . In delegation, users maintain a personal claimed identifier (e.g., their website ) while offloading to a trusted via an OP-local identifier, configured during discovery through XRDS <LocalID> elements or <link rel="openid2.local_id"> tags; this allows portability without altering the user's primary . For instance, a user might delegate http://[example.com](/page/Example.com)/ to an at https://myop.com/, where the treats the claimed as authoritative but authenticates via the delegated . XRI support in OpenID 2.0 facilitated such delegations with persistent canonical forms, though it was not incorporated into later standards like OpenID Connect 1.0, effectively deprecating its use in modern implementations.

Authentication Flow

The OpenID authentication flow enables a (RP) to verify that an controls a specific identifier without requiring the RP to store credentials or access the user's details directly. This process relies on a series of HTTP redirects and signed messages exchanged between the user's browser (), the RP, and the OpenID provider (OP). The flow begins when the user supplies an identifier—such as a URL or XRI—to the RP, typically through a login form. In the basic authentication flow, the first normalizes the user-supplied identifier (for example, by prepending "http://" if absent) and performs to locate the 's endpoint and the claimed identifier. The then optionally establishes an with the using Diffie-Hellman key exchange over a direct connection to create a for message signing, enhancing security without relying on long-term keys. Next, the redirects the user's browser to the 's authentication endpoint with an indirect request message containing parameters like the mode ("checkid_setup" or "checkid_immediate"), the claimed identifier, a return-to for the , and a to prevent replay attacks. At the , the user authenticates—using methods like passwords or , though the specifics are implementation-dependent—and grants permission for the to receive the identity assertion. The then redirects the browser back to the 's return-to with a response message. The response includes either a positive assertion, confirming the user's control of the claimed identifier, or a negative assertion indicating failure (e.g., due to cancellation). Positive assertions are digitally signed using HMAC-SHA1 or HMAC-SHA256 with the shared secret from the association, containing fields such as the signed parameters, the claimed identifier, the OP endpoint, and a timestamp. The RP verifies the assertion by checking the return-to URL matches the request, validating the signature against the association (or by directly querying the OP if no association exists), ensuring the nonce is unique, and confirming the discovered endpoint details. This verification completes the flow, allowing the RP to establish a session with the user. OpenID 2.0 does not mandate message encryption beyond HTTPS transport, though Diffie-Hellman secures the association secret exchange. OpenID supports different modes to accommodate various use cases. In "check_id_immediate" mode, the OP attempts to respond without user interaction, returning a positive assertion if prior exists or a negative one otherwise; this is useful for seamless check-ins. The "check_id_setup" mode requires full user interaction at the OP for and approval, making it the standard for initial logins. A direct mode allows RPs and OPs to communicate without user-agent involvement, primarily for establishing associations or verifying assertions post-redirect. The introduction of indirect identifiers in OpenID 1.1 allowed users to select their dynamically during the flow, using special values like "http://specs.openid.net/auth/2.0/identifier_select" in requests, which streamlined for delegated identities. Assertions in consist of these signed, tamper-evident messages that convey minimal claims, focusing on proof of rather than rich attributes.

Providers and Relying Parties

In OpenID Authentication 2.0, the serves as the entity responsible for managing user identities and handling requests from relying parties. The facilitates user registration, though the specific methods for identifying authorized users fall outside the protocol's scope, allowing providers to implement their own mechanisms for account creation and management. Upon receiving an request, the authenticates the end-user's identity and obtains their approval for sharing identity information, subsequently redirecting the user's with either a positive or negative assertion to confirm the outcome. To ensure the integrity of these assertions, the signs them using established associations, such as those based on HMAC-SHA1 or HMAC-SHA256 algorithms, or through private associations in stateless modes. Additionally, the hosts an endpoint URL—typically over HTTP or —for processing protocol messages, which is discovered by relying parties through mechanisms like XRDS documents or rel tags. The (RP), in contrast, acts as the service or application seeking to authenticate users via OpenID, initiating the process by normalizing the user-supplied identifier, such as a URL or XRI. The RP then performs discovery on this identifier using Yadis protocols or HTML-based methods to locate the appropriate OP endpoint URL. To secure the exchange, the RP may establish shared associations with the OP, often using Diffie-Hellman , and sends signed requests to the OP. Upon receiving the OP's response, the RP verifies critical elements including the return URL, previously discovered information, nonces to prevent replay attacks, and the signatures on assertions, either directly with the OP or via pre-established associations. This verification enables seamless integration of OpenID into web applications, allowing RPs to delegate without storing user credentials. Interoperability between OPs and RPs is facilitated by standardized protocol endpoints and open-source libraries that simplify implementation. For instance, OP endpoints commonly use paths like "/openid/server" to handle authentication requests, as outlined in the specification. Libraries such as JanRain's PHP-based toolkit and DotNetOpenAuth for .NET provide comprehensive support for both OP and RP roles, enabling developers to build compatible systems with features like association management and extension handling. These tools ensure adherence to OpenID 2.0 while supporting backward compatibility with earlier versions like 1.1. An early example of an OP was MyOpenID, a free service launched by JanRain that allowed users to create OpenID identities but ceased operations in 2014. Modern implementations continue to rely on such libraries for OpenID 2.0 support, though the protocol has largely been superseded by OpenID Connect.

History and Evolution

Early Development

OpenID originated in 2005 when , founder of the blogging platform and an employee of Six Apart, developed it as a solution to the challenges of distributed across websites. At the time, faced issues with comment spam and the need for users to maintain multiple logins for different services, prompting Fitzpatrick to create a lightweight, decentralized system where users could authenticate using a single URL-based identity without sharing passwords or requiring central coordination. This approach aimed to enable interoperability among blogging platforms like , TypePad, and , leveraging simple discovery mechanisms to verify identity ownership. The first specification, OpenID 1.0, was published in May 2005 and emphasized basic URL-based through one-time signed assertions, eliminating the need for SSL, public keys, or browser plugins. It allowed static sites to act as providers with minimal infrastructure, using TypeKey—Six Apart's service—as the inaugural OpenID provider to demonstrate practical implementation. Development was community-driven via a on openid.net, fostering contributions from developers interested in open standards, while Six Apart provided core support through its platforms. In December 2006, OpenID 1.1 was released, building on the initial version by introducing extensions for delegation (allowing users to point to third-party providers via HTML links) and improving compatibility with AJAX-based interfaces for smoother user experiences. This update addressed early limitations in stateless operation and caching, enabling broader adoption among early relying parties. Microsoft offered partial support during this phase, signaling growing industry interest, though full integration came later; meanwhile, integrations with platforms like Blogger and Flickr began emerging, showcasing OpenID's potential for comment authentication and user verification on photo-sharing and blogging sites.

Specification Milestones

The OpenID specifications evolved through a series of formal releases under the OpenID Foundation, which was established in June 2007 to oversee standardization and intellectual property policies for the protocol. The foundational milestone came with OpenID Authentication 2.0, finalized on December 5, 2007, which built upon earlier informal developments like the Yadis project for and introduced enhancements such as support for Extensible Resource Identifiers (XRIs) alongside URLs as user identifiers. This version emphasized decentralized authentication without requiring relying parties to store user credentials, while incorporating mechanisms for improved and . Accompanying the core authentication spec, the OpenID Attribute Exchange (AX) 1.0 extension was also released on December 5, 2007, enabling the secure exchange of user attributes—such as names or email addresses—between OpenID providers and relying parties during . To address phishing risks, the Provider Authentication Policy Extension (PAPE) 1.0 was finalized on December 30, 2008, allowing relying parties to request specific authentication policies, like multi-factor methods, from providers and receive confirmation of their application. The (UI) Extension 1.0, released in 2008, further refined by specifying modes for authentication interfaces, such as popup windows or embedded iframes, to streamline interactions across devices. As OpenID matured, certain elements faced to align with evolving web standards and security practices. XRIs, initially integrated in OpenID 2.0 for abstract identifiers, were phased out in the 2010s following the disbandment of the XRI Technical Committee in 2015, due to limited adoption and maintenance challenges. This shift culminated in the transition toward OpenID Connect, an identity layer built on OAuth 2.0, with its core specification finalized on February 26, 2014, effectively superseding OpenID 2.0 for modern implementations while providing backward migration paths.

OpenID Foundation

Organizational Structure

The OpenID Foundation was established in 2007 as a non-profit organization dedicated to stewarding the development and maintenance of OpenID specifications, ensuring their open availability to promote interoperable digital identity solutions. The Foundation's governance is led by a Board of Directors, comprising up to 38 members categorized into sustaining directors appointed by sustaining members, community directors elected for two-year staggered terms, and corporate directors elected annually based on membership size. Operational activities are conducted through specialized working groups, such as the AB/Connect Working Group for OpenID Connect specifications, the FAPI Working Group for financial-grade API profiles, and the Shared Signals Working Group for security event sharing, all operating on a consensus-driven model open to contributors via a standard contribution agreement. Membership is structured into three primary classes—sustaining, individual, and corporate—with the Board able to define additional tiers; participation is accessible to private entities, governments, non-profits, and individuals, though not required for contributing to working groups. Key operations include a specification development process managed by working groups in three phases: drafts for initial proposals, implementer's drafts for testing and refinement, and final specifications upon consensus approval, with all outputs freely available under an open copyright license. The Foundation administers certification programs featuring self-certification and conformance test suites for standards like OpenID Connect and Financial-grade API, adopted by entities including the UK and Brazilian governments to verify ecosystem compliance. International chapters, governed by a national chapters policy, support localized adoption and profiling, with examples including the OpenID Foundation Japan. As of 2025, the active international chapter is OpenID Foundation Japan (OIDF-J). Headquartered in San Ramon, California, United States, the Foundation tracks specification progress through periodic updates, board elections, and public announcements.

Key Contributors and Chapters

Brad Fitzpatrick is recognized as the founder of OpenID, having developed the initial authentication protocol in May 2005 while working as the creator of the community website. His contributions extended to evangelism efforts, including a prominent presentation on OpenID at the Internet Identity Workshop (IIW) in October 2005, which helped build early community momentum. David Recordon served as an early advocate and key collaborator in OpenID's development, co-authoring the OpenID Authentication 1.1 specification in 2006 alongside Fitzpatrick. As a founding board member of the OpenID Foundation established in 2007, Recordon played a pivotal role in promoting the protocol through global outreach and specification finalization, including announcing the completion of OpenID 2.0 in 2007. His work also bridged OpenID with related standards like . Mike Jones has been a longstanding technical leader in the OpenID ecosystem, serving on the OpenID Foundation's since 2008 and architecting the globally adopted OpenID certification program. As a principal contributor to the OpenID Connect working group, Jones co-authored core specifications and continues to drive updates, including federation enhancements, through his role as board secretary and active participation in foundation workshops. The OpenID Foundation supports international chapters to localize efforts, host events, and adapt specifications for regional needs. The chapter, known as OpenID Foundation Japan (OIDF-J), was announced in February 2008 in collaboration with eleven technology companies and formally established in April 2008, focusing on education, interoperability testing, and events like the recurring OpenID Summit , which celebrated OpenID Connect's tenth anniversary in 2024. As of 2025, OIDF-J remains the active international chapter, contributing to the Connect working group by providing localized feedback and hosting interops that influenced profiles for mobile and . An earlier European effort, the independent OpenID Europe Foundation formed in 2007 in , handled initial trademark registrations but is no longer active as a chapter. The OpenID Foundation's policies govern the development and use of its specifications, ensuring while protecting contributors and implementers. Specifications, including Work Group Drafts, Implementers' Drafts, and Final Specifications, are licensed under the OpenID Copyright , which provides a perpetual, irrevocable, non-exclusive, , worldwide copyright to reproduce, distribute, publicly display, publicly perform, and create derivative works for the purpose of developing and implementing compliant products. This requires attribution to the OpenID Foundation and applies to all OIDF-approved specifications, promoting widespread adoption without restrictive terms. For , the Intellectual Property Rights (IPR) Policy mandates that contributors grant a , worldwide, non-exclusive patent covering Necessary Claims—defined as claims essential to implementing the specifications—to the Foundation, other contributors, and implementers. The contribution process is structured to maintain openness and mitigate legal risks through formal agreements. All individuals or entities submitting contributions must execute the OpenID Foundation's standard Contribution Agreement, which incorporates the IPR Policy and Process Document by reference, granting the Foundation necessary and rights while affirming the contributor's ownership of their submissions. This agreement ensures that contributions can be integrated into specifications without encumbrances, with contributors promising not to assert patent claims against compliant implementations, thereby facilitating collaborative development. Unlike some standards bodies, the current IPR Policy does not require disclosure of potential essential patents, placing the onus on participants to act in . On March 1, 2012, the OpenID Foundation Board unanimously approved a patent pledge statement for inclusion in all specifications, explicitly granting implementers a under any Foundation-owned patents essential to compliance, further reducing barriers to adoption. Regarding trademarks, the Foundation secured the OpenID trademark in the United States in March 2008, resolving early community discussions on ownership and usage, and later formalized the OpenID Trademark and Service Mark License Policy in 2013 to guide acceptable branding practices. Implementations of OpenID protocols must comply with applicable privacy regulations, such as the EU's (GDPR), particularly for handling user consent and personal data in flows, as outlined in the Foundation's . As of 2025, the OpenID Foundation has faced no major lawsuits related to its specifications or policies.

Adoption and Implementations

Major Providers and Users

OpenID's early adoption in the mid-2000s was driven by several prominent providers, including MyOpenID, which operated from 2005 until its shutdown on February 1, 2014, after being acquired by Janrain. and also served as key OpenID 2.0 providers during this period, enabling users to authenticate across sites with their existing accounts, though both discontinued support in the 2010s. Specifically, ended OpenID 2.0 support by mid-2015 as part of a broader to OpenID Connect. By 2025, OpenID 2.0 provider support has significantly diminished, with major players like terminating it on April 20, 2015, to prioritize OpenID Connect. maintains legacy compatibility through OpenID Connect implementations but no longer actively supports pure OpenID 2.0. Niche providers persist, such as IndieAuth.net, which offers OpenID compatibility via endpoints like openid.indieauth.com for decentralized authentication in personal websites and indie web tools. OpenID 2.0 usage has continued to decline due to and the rise of more secure alternatives. In contrast, OpenID Connect has seen widespread adoption by 2025, with major providers including , , and Apple enabling single sign-on for billions of users across web, mobile, and applications. As of August 2025, over 82,000 verified companies utilize OpenID Connect implementations, reflecting its role in powering secure authentications globally. Early relying parties included platforms like , which integrated OpenID 2.0 through plugins for user logins starting in the late 2000s, and , a strong early advocate that launched with OpenID support in 2008 to enable federated authentication. However, discontinued OpenID logins on July 25, 2018, shifting to other methods like . Current integrations remain in select forums and wikis, often via legacy plugins or hybrid setups, but adoption has waned as sites migrate to OpenID Connect for enhanced security and interoperability.

Use Cases and Integration Examples

OpenID facilitates (SSO) scenarios where users can authenticate to blogs, forums, and platforms using a single set of credentials from an OpenID provider, eliminating the need for site-specific accounts. This approach reduces and enhances user convenience across services. For instance, users could log into multiple websites by providing their OpenID identifier, such as a URL from a trusted provider, allowing seamless access without repeated registrations. A notable early example occurred in 2008 when enabled OpenID for commenting on Blogger posts, permitting users to sign in with their existing OpenID credentials to participate in discussions. Similarly, the trialed an OpenID system that integrated logins for comment authentication on its platforms, demonstrating practical application in media forums to simplify user interactions. In contexts, OpenID supported SSO integrations that allowed customers to access shopping carts and accounts across affiliated sites using one identity, streamlining transactions while maintaining decentralized control. In enterprise environments prior to the widespread adoption of OpenID Connect around 2014, OpenID 2.0 enabled internal identity federation by allowing organizations to link authentication across internal applications and services without centralized credential storage. Large enterprises like and utilized OpenID for federated SSO, where employees could access intranets, collaboration tools, and legacy systems via a unified , improving efficiency in pre-cloud infrastructures. Integration examples include content management systems configured as relying parties. The Drupal OpenID SSO Relying Party module, released in 2011, enables Drupal sites to authenticate users against a central OpenID provider, redirecting login requests for SSO across networked installations. For WordPress, early plugins such as the OpenID plugin (version 2.1.3 and prior) allowed site administrators to set up relying party functionality by incorporating OpenID URL fields in user profiles, facilitating authentication via external providers. Hybrid setups with social logins were common, as providers like and offered OpenID services, enabling users to leverage social accounts as OpenID identifiers for broader SSO compatibility. In modern applications as of 2025, OpenID Connect supports diverse use cases, including "Sign in with " or "Sign in with Apple" for consumer apps, enabling secure profile data access and SSO across platforms. Enterprise integrations, such as those using certified OpenID Connect providers like AD, facilitate federated access to cloud services and APIs for millions of organizations. Niche open-source projects continue to support legacy OpenID 2.0 compatibility; for example, the Gluu Server incorporates OpenID support for SSO in community-driven deployments, allowing developers to federate access in custom forums and tools while maintaining with older specifications.

Security and Privacy

Common Vulnerabilities

One notable in early OpenID implementations involved of requests due to the lack of and guarantees, leading to (RP) confusion about the (IdP) involved in the flow. This issue, identified around 2008 in OpenID 2.0 evaluations, allowed adversaries to forge or alter requests, potentially enabling unauthorized access by tricking the RP into accepting invalid responses. In OpenID 1.0, nonce reuse flaws permitted replay attacks, as many RPs failed to properly validate nonce values in authentication responses, allowing intercepted messages to be reused against the same or other sites. Empirical of implementations revealed that inadequate nonce checking exposed users to repeated exploitation of captured authentication data, undermining the protocol's resistance to passive . Phishing attacks targeting OpenID often exploited OP impersonation through similar domains, where attackers registered lookalike URLs (e.g., using attacks or slight variations) to mimic legitimate s and capture user credentials during login redirects. In 2007, IdP selection attacks further compounded this risk, as demonstrated by CVE-2007-1652, where remote attackers could forcibly log users into OpenID-enabled sites via crafted web pages that exploited cached tokens, disclosing and adding unauthorized sites to trusted lists without user consent. Privacy concerns in OpenID arose from unintended attribute disclosure via the Attribute Exchange (AX) extension, where some implementations did not verify signed AX data, allowing attackers to modify or inject attributes during and expose sensitive to malicious RPs without detection. This flaw, highlighted in a advisory, enabled low-effort impersonation or data leakage, particularly when high-trust attributes from IdPs were not properly authenticated. The protocol's trust model assumptions introduced additional vulnerabilities, relying on RPs to inherently OPs for without robust of OP or user-selected IdPs, which could lead to exploitation if a malicious OP was chosen or compromised. This decentralized structure assumed low assurance levels suitable only for non-critical applications, leaving higher-stakes scenarios exposed to issues like association poisoning or identity recycling when assumptions about secure OP-RP communication failed. A prominent specific event was the 2014 Covert Redirect vulnerability, an open redirector attack affecting OpenID's redirect-based flows, where attackers altered the redirect_uri parameter to bypass validation and redirect users to malicious sites, potentially exposing codes or during . This issue, analogous to but embedded in the protocol's handling, impacted OpenID-enabled sites by allowing covert exfiltration of user sessions without altering core credentials. Authentication hijacking over HTTP represented another critical exposure, as OpenID's redirect mechanisms in unsecured connections enabled man-in-the-middle attacks, where adversaries intercepted and replayed authentication responses to hijack sessions or add malicious identities to user accounts. Early implementations, such as certain WordPress OpenID plugins, lacked protections like CSRF tokens, facilitating such hijacks by exploiting HTTP's lack of encryption to manipulate OpenID URLs and force unauthorized logins. In February 2025, the OpenID Foundation disclosed a vulnerability (CVE-2025-27370) due to ambiguities in JWT audience values in OpenID Connect's private_key_jwt client authentication, potentially allowing malicious authorization servers to inject attacker-controlled audiences into tokens, compromising security objectives like token integrity. No known exploits occurred, but it prompted spec updates. Additional 2025 vulnerabilities include CVE-2025-59363 in , where API keys could access OIDC client secrets, risking exposure in shared credential environments (patched in version 2025.3.0), and CVE-2025-12466 in Drupal's OAuth , enabling bypass via alternate paths in OpenID Connect flows. Persistent misconfigurations like nOAuth in continue to affect ~9% of apps integrating OpenID flows, enabling account takeovers as of June 2025.

Mitigation Strategies and Best Practices

To secure OpenID implementations, relying parties (RPs) and openID providers (OPs) must prioritize the use of for all endpoints, including , requests, and responses, to prevent and man-in-the-middle attacks; this involves employing SSL/TLS with certificates from trusted authorities and ensuring HTTP URLs redirect to equivalents. Strict validation of message signatures is essential, utilizing HMAC-SHA256 (preferred over HMAC-SHA1) and associations established via Diffie-Hellman key exchange to verify the authenticity of responses, with RPs either storing associations or performing direct verification against the OP. For enhanced authentication assurance, implement the Provider Authentication Policy Extension (PAPE) to request and enforce (MFA), where RPs specify policies such as "Multi-Factor" (e.g., knowledge factor like a PIN combined with possession factor like a soft ) or "Multi-Factor Physical" (e.g., ) in requests, and OPs respond with details of the applied method to confirm compliance. RPs should verify OP endpoints by discovering them through XRDS documents (ensuring digital signatures per XMLDSIG to detect tampering) and validating that response origins match the discovered URLs, thereby mitigating risks from rogue providers. User education plays a critical role, with OPs and RPs advising end-users to access sites only via top-level browser windows and recognize attempts by verifying domain authenticity before entering credentials. Attribute filtering is a key privacy strategy, where RPs request only necessary attributes via extensions like Attribute Exchange (AX) and OPs limit disclosure to the minimum required, reducing exposure of sensitive data such as or full names unless explicitly consented. Following OpenID Foundation (OIDF) guidelines established post-2014, RPs must rigorously validate redirect URIs (openID.return_to) by ensuring exact matches against pre-registered values, rejecting any deviations to counter open redirector risks in flows. Useful tools include the OIDF's conformance testing suites and certification checklists, which guide implementers through validation for , covering aspects like endpoint protection and enforcement; certified implementations demonstrate adherence to these standards. To monitor for replay attacks, RPs should track nonces in positive assertions and timestamps in responses, rejecting duplicates or those outside a defined validity window (e.g., via session storage), while OPs apply to curb denial-of-service attempts. In 2025, OIDF profiles emphasize mandatory adoption of TLS 1.3 for all connections to leverage its improved against downgrade and attacks, superseding older TLS versions in OpenID deployments.

OpenID Connect

Relation to OpenID 2.0

OpenID Connect (OIDC) serves as an identity layer on top of the OAuth 2.0 authorization framework, enabling clients to verify the identity of end-users and obtain basic profile information through standardized mechanisms. Finalized by the OpenID Foundation (OIDF) in February 2014 with the release of the OIDC Core 1.0 specification, it represents a modern evolution in decentralized identity protocols designed for enhanced interoperability and security in and applications. In contrast to OpenID 2.0, the preceding iteration of the OpenID protocol finalized in December 2007, OIDC introduces significant architectural shifts to address limitations in scalability, security, and ease of implementation. OpenID 2.0 relied on signed messages formatted in a key-value encoding scheme, where responses were authenticated using mechanisms like HMAC-SHA1 signatures over associations between relying parties and providers. OIDC, however, employs -based structures throughout, with identity assertions delivered via JSON Web Tokens (JWTs) as ID tokens that compactly encode claims such as the issuer, subject, and authentication timestamp in a self-contained, verifiable format. This JWT approach facilitates stateless verification and reduces reliance on shared secrets, marking a departure from OpenID 2.0's more cumbersome direct communication and verification flows. OIDC does not provide direct with OpenID 2.0, as it operates on a fundamentally different protocol stack built atop OAuth 2.0 rather than extending the older specification's direct model. Instead, OIDC supersedes OpenID 2.0 for new deployments, encouraging migration to leverage its improved privacy features, such as selective disclosure of claims, and broader ecosystem support. The OIDF has designated OpenID 2.0 as obsolete, with libraries and implementations for the legacy protocol maintained separately from active OIDC development. The OIDC Core 1.0 specification has undergone maintenance updates to incorporate errata and clarifications, including errata set 2 released in December 2023, ensuring ongoing robustness without altering core semantics. By 2025, OIDC Core 1.0 achieved further international standardization as Recommendation X.1285 in May 2025, underscoring its global adoption and stability as the preferred successor to OpenID 2.0.

Key Features and Flows

OpenID Connect (OIDC) introduces several core features that build upon OAuth 2.0 to provide robust identity layer functionality. The ID Token is a (JWT) that conveys claims about the authentication of an End-User by the OpenID Provider (OP), including standard claims such as (iss), (sub), audience (aud), and expiration time (exp). This token is digitally signed to ensure integrity and authenticity, with the recommended signing algorithm being RS256 unless otherwise specified. The UserInfo Endpoint allows a (RP) to retrieve additional claims about the authenticated End-User by presenting a valid , supporting both signed and unsigned responses for flexibility in deployment. For dynamic , OIDC relies on the discovery document published by the OP at the path /.well-known/openid-configuration, which provides metadata such as endpoint URIs, supported scopes, and claim types to facilitate interoperability without hardcoding configurations. OIDC defines several authentication flows tailored to different client types and security requirements, all initiated via the Authorization Endpoint. The Authorization Code Flow, the most secure and recommended for confidential clients, involves the RP redirecting the End-User to the OP for authentication, after which the OP issues an authorization code that the RP exchanges at the Token Endpoint for an Access Token and ID Token; this flow is enhanced by Proof Key for Code Exchange (PKCE) to mitigate authorization code interception attacks for public clients. The Implicit Flow, which directly returns the ID Token and optionally the Access Token in the redirect URI fragment, has been deprecated in favor of more secure alternatives due to vulnerabilities like token leakage in browser histories. The Hybrid Flow combines elements of the previous two by returning an authorization code alongside tokens in the initial redirect, allowing immediate partial access while deferring full token issuance to the Token Endpoint for added security. For machine-to-machine scenarios without user involvement, the Client Credentials Flow enables clients to obtain an Access Token directly from the Token Endpoint using client authentication, though it does not issue ID Tokens as it lacks End-User context. To ensure conformance and interoperability, OIDC 1.0 specifies mandatory profiles for OPs and RPs, including support for RS256 ID Token signing, the prompt and display parameters, and the max_age claim for authentication freshness; dynamic OPs must additionally implement discovery, dynamic client registration, and the UserInfo Endpoint. Extensions to OIDC address specialized use cases, particularly in high-security environments. The Financial-grade API (FAPI) profiles, such as FAPI 2.0, impose stringent security requirements on top of OIDC and OAuth 2.0, including mutual TLS for client authentication, sender-constrained tokens via DPoP, and precise error handling to protect financial APIs against advanced threats. The Shared Signals Framework (SSF) 1.0, finalized in 2025, enables OPs and RPs to share privacy-preserving security events—such as authentication attempts or risk incidents—via secure webhooks or push notifications, using Security Event Tokens (SETs) to enhance real-time threat detection across ecosystems. Furthermore, the OpenID for Verifiable Presentations 1.0 specification, approved in 2025, integrates OIDC with decentralized identifiers by allowing RPs to request and receive Verifiable Credentials as presentations through OAuth-protected endpoints, supporting selective disclosure and tamper-evident proofs for privacy-focused identity verification.

Comparisons with Other Protocols

Versus OAuth-Based Authentication

OpenID is fundamentally an designed to verify a user's , enabling relying parties to confirm "who you are" through decentralized identifiers and signed assertions from an OpenID provider. In contrast, —both versions 1.0 and 2.0—is an authorization framework focused on delegating access to protected resources, determining "what you can do" by issuing access tokens that grant scoped permissions without disclosing user credentials. This distinction means OAuth was not engineered for verification; its tokens represent resource access rights rather than authenticated claims, unlike OpenID 2.0's cryptographically signed assertions that explicitly attest to the user's identifier. A common misuse of OAuth involves "pseudo-authentication," where developers repurpose its authorization flows to simulate by requesting identity-related scopes (e.g., or ) and assuming the holder's based on returned claims, without robust verification. This approach lacks the direct attestation of OpenID, exposing systems to risks such as insufficient proof of user control over the associated account. In a notable analysis, pseudo-authentication was critiqued for enabling potential account takeover on untrusted sites, as access tokens could grant excessive privileges—like reading private messages—without confirming the user's real at the provider, exemplified by Twitter's OAuth implementation allowing direct message access until restricted in May . To address these limitations, best practices recommend avoiding raw for purposes and instead adopting OpenID Connect (OIDC), which extends OAuth 2.0 with standardized identity tokens and verification mechanisms to ensure secure, verifiable user . This layered approach mitigates the verification gaps in pseudo- while leveraging OAuth's authorization strengths.

Integration with Emerging Standards

OpenID Connect facilitates integration with FIDO2 and standards to enable , allowing relying parties to leverage biometric or hardware-based authenticators for secure user verification without traditional passwords. This synergy combines OpenID Connect's identity layer with FIDO2's cryptographic credentials, supporting scenarios like in federated environments where end-users authenticate via platform authenticators such as fingerprints or security keys. The Self-Issued OpenID Provider (SIOP) v2 specification extends OpenID Connect to support decentralized identities, enabling end-users to control their own OpenID Providers without relying on centralized issuers. In SIOP, users generate self-signed ID Tokens to authenticate directly with relying parties, promoting user-centric identity management and compatibility with wallet-based systems for presenting claims across devices. OpenID for Verifiable Presentations 1.0, approved as a final specification in July 2025, integrates OpenID Connect with verifiable credentials protocols, allowing holders to present cryptographically signed credentials as verifiable presentations during authentication flows. This enables selective disclosure of attributes, such as proofs of age or qualifications, while maintaining privacy through zero-knowledge proofs, and supports interoperability with W3C standards for digital wallets and decentralized identifiers. The OpenID Federation 1.0 specification, at draft 44 as of October 2025, establishes dynamic frameworks for large-scale ecosystems by enabling entities to and validate through hierarchical authorities, facilitating scalable without pre-configured anchors. This allows OpenID Providers and relying parties to establish on-demand, supporting use cases like cross-border identity verification in and settings. The Shared Signals Framework 1.0, finalized in August 2025, enhances OpenID Connect by standardizing real-time sharing of security events and risk signals between peers, such as attempts or compromises, to enable coordinated responses. It uses event tokens to transmit signals like Continuous Access Evaluation Profile (CAEP) notifications, improving session security in distributed systems. OpenID Connect maintains compatibility with SAML through profiles like FastFed, which define subsets of SAML specifications for federated provisioning and interoperability, allowing hybrid deployments where SAML assertions can be bridged to OpenID flows. This ensures seamless transitions in enterprise environments supporting both protocols for .

Recent Developments

New Specifications and Frameworks

In recent years, the OpenID Foundation (OIDF) has advanced the OpenID ecosystem through specifications that enhance trust negotiation and in federated environments. The OpenID Federation 1.0 specification, reaching draft 44 in October 2025, introduces improved mechanisms for entities to establish trust via third-party intermediaries, incorporating features motivated by large-scale government use cases such as those in . This draft refines handling, policies, and discovery to support scalable, dynamic trust relationships without relying on static bilateral agreements. A significant 2025 milestone is the finalization of the Shared Signals Framework () 1.0 in September, which standardizes the secure, real-time delivery of events across connected systems. Complementing SSF, the OpenID Continuous Access Evaluation Profile (CAEP) 1.0 enables near-instantaneous revocation and evaluation of access based on events like token compromise or risk signals, addressing previous gaps in real-time sharing within OpenID Connect (OIDC) deployments. These specifications, approved as Final by the OIDF in September 2025, facilitate proactive responses in distributed architectures. Advancements in verifiable technologies have also progressed, with OpenID for Verifiable Presentations (OID4VP) 1.0 entering public review from April 24 to June 23, 2025, and achieving Final Specification status on July 10, 2025. This protocol builds on OIDC to request and present securely, enabling privacy-preserving identity proofs without disclosing unnecessary data. Similarly, OpenID for Verifiable Credential Issuance 1.0 (OID4VCI) underwent public review from June 29 to August 28, 2025, and achieved Final Specification status on September 16, 2025, to standardize credential issuance flows. To bolster privacy in authorization processes, updates to OIDC have integrated the OAuth 2.0 Rich Authorization Requests (RAR) extension, as outlined in RFC 9396, allowing clients to specify fine-grained authorization details while emphasizing privacy-preserving designs that minimize exposure of sensitive user information. OIDF's 2025 specifications reached Final status for shared signals and verifiable credentials, while OpenID Federation 1.0 continues to progress toward finalization, collectively mitigating limitations in real-time data sharing and trust establishment across OpenID implementations. In November 2025, the OIDF published two papers proposing a standardized framework for integrating U.S. mobile driver's licenses (mDLs) as , facilitating their acceptance by and advancing mobile ID within the OpenID .

Community Events and Ecosystem Growth

The OpenID Foundation (OIDF) organized a workshop on October 20, 2025, at Cisco's offices in , immediately preceding the Fall 2025 Internet Identity Workshop (IIW), to facilitate discussions on ongoing specifications and among developers and stakeholders. This event, accessible both in-person and online, highlighted progress in OpenID standards and drew participation from global contributors to advance collaborative testing and adoption strategies. At Authenticate 2025 in October, the OIDF hosted an interoperability event for the (SSF), where eight leading vendors successfully demonstrated real-time security event sharing using the finalized SSF 1.0, Client Authentication Event Protocol (CAEP) 1.0, and Related and Independent Security Considerations (RISC) 1.0 specifications. This milestone testing underscored the framework's ability to enable secure coordination across systems, marking a key step in practical deployment. During Identiverse 2025 in June, the OIDF Board presented a "Take on the Landscape" session, providing insights into evolving identity standards and fostering dialogue on integration challenges among over 250 speakers and attendees focused on and privacy. At the European Identity and Cloud Conference (EIC) 2025 in May, the OIDF delivered updates on its progress, emphasizing multiple specifications advancing to final status and enhanced interoperability testing initiatives to support global deployment. These efforts reflect a focus on rigorous , with events like the April 2025 interop in validating implementations against certification profiles. The OpenID ecosystem has seen growing adoption in Customer Identity and Access Management (CIAM) platforms, where OpenID Connect serves as a foundational protocol for secure authentication in customer-facing applications. OIDF news in 2025 highlighted the finalization of key specifications, including SSF 1.0, CAEP 1.0, and RISC 1.0 in September, which enable real-time threat sharing and bolster Zero Trust architectures across sectors. Working group participation has increased, with expanded involvement in groups like Digital Credentials Protocols, evidenced by formal security analyses and interop demonstrations involving multiple issuers and wallets. Reports from 2025 events indicate rising global uptake of OpenID standards, particularly in open banking and enterprise ecosystems, driven by conformance certifications and collaborative testing.