search operators were not applied
Too few matches were found

Ok, as I just have fixed my SMF OpenID endpoint implementation (read details about some very related problems I had here) where I made a few assumptions on those relations. Of course that doesn't prove them right (so please correct me). Here they are:

  • Identifier URL = OpenID endpoint URL = IdP

  • The OpenID endpoint is not unique. It is the same for all end users of that endpoint.

  • Verified identifier URL = identity

  • Verified identifier URL is unique. It is associated to the endpoint user account.

  • https://www.google.com/accounts/o8/id is the Google OpenID endpoint URL.

  • https://www.google.com/accounts/o8/id?id=AltOawk... is the Google OpenID verified identifier URL.

  • The hash the Google OpenID identity URL contains is also related to the OpenID realm (the consumer domain namespace where this OpenID identifier stays valid). That is one of the reasons to not be just the username.

  • About how to provide the unique verified identifier URL, see here.

Still some things remain unclear to me:

  • What other reasons are there that Google uses for the hashed id; it could have also used id?u={username}&oidrealm={...}.

  • What is the reason to have such OpenID realm at all?

  • What exactly is the difference between identifier URL and claimed identifier URL?

Answer from Albert on Stack Overflow
Top answer
1 of 3
5

Ok, as I just have fixed my SMF OpenID endpoint implementation (read details about some very related problems I had here) where I made a few assumptions on those relations. Of course that doesn't prove them right (so please correct me). Here they are:

  • Identifier URL = OpenID endpoint URL = IdP

  • The OpenID endpoint is not unique. It is the same for all end users of that endpoint.

  • Verified identifier URL = identity

  • Verified identifier URL is unique. It is associated to the endpoint user account.

  • https://www.google.com/accounts/o8/id is the Google OpenID endpoint URL.

  • https://www.google.com/accounts/o8/id?id=AltOawk... is the Google OpenID verified identifier URL.

  • The hash the Google OpenID identity URL contains is also related to the OpenID realm (the consumer domain namespace where this OpenID identifier stays valid). That is one of the reasons to not be just the username.

  • About how to provide the unique verified identifier URL, see here.

Still some things remain unclear to me:

  • What other reasons are there that Google uses for the hashed id; it could have also used id?u={username}&oidrealm={...}.

  • What is the reason to have such OpenID realm at all?

  • What exactly is the difference between identifier URL and claimed identifier URL?

2 of 3
2

Here is my understanding. I am actually just answering the last two questions in your own answer. Hope someone finds these useful.

What is the reason to have such OpenID realm at all?

The realm is used for security. Basically the return_url is checked against the realm, and OpenID specs say they MUST match. Google has taken this one step further, and provides unique verified identifiers for each realm. They might have done as you suggested, and put the realm back in their identifier, but then you could tell by looking at two verified identifiers whether they were the same end-user or not. I think they are trying to keep their identifiers free of identifying information. (ironic, no?)

What exactly is the difference between identifier URL and claimed identifier URL?

The claimed identifier is the one the end-user has specified. This is not their unique identifier. Yahoo is a good example of this. They allow you to specify yahoo.com as your identifier, log into your yahoo account, and return a unique identifier to the openid consumer. This just simplifies the process for the end-user. (And increases the likelihood that they'll use yahoo.com as their openid!)

🌐
HubSpot
blog.hubspot.com › home › website › uri vs. url: what’s the difference?
URI vs. URL: What’s the Difference?
February 13, 2025 - There are two types of URIs: URNs and URLs. A uniform resource name (URN) is a persistent and location-independent identifier that follows the “urn” scheme.
🌐
Wikipedia
en.wikipedia.org › wiki › Uniform_Resource_Identifier
Uniform Resource Identifier - Wikipedia
4 days ago - URLs are those which both identify and provide means of locating a resource "by describing its primary access mechanism" (e.g. its network or file system location). URNs identify resources with names which can be location independent.
🌐
TechTarget
techtarget.com › whatis › definition › URI-Uniform-Resource-Identifier
What is a Uniform Resource Identifier (URI)? | Definition from TechTarget
Like a URL, a URN identifies a resource. But unlike a URL, a URN is location-independent and persistent, meaning it always identifies the same resource over time.
🌐
W3C
w3.org › Addressing › URL › uri-spec.html
Universal Resource identifiers in WWW
The fragment-id follows the URL of the whole object from which it is separated by a hash sign (#). If the fragment-id is void, the hash sign may be omitted: A void fragment-id with or without the hash sign means that the URL refers to the whole object. While this hook is allowed for identification of fragments, the question of addressing of parts of objects, or of the grouping of objects and relationship between continued and containing objects, is not addressed by this document.
🌐
GoDaddy
godaddy.com › resources › skills › domains › uri vs url vs urn: what’s the difference and why it matters
URI vs URL vs URN: What’s the difference and why it matters - GoDaddy Blog
A URN is a type of URI that identifies a resource by name, not by where it’s located or how to access it. URNs are built to be persistent and location-independent, which makes them ideal for long-term references..
Published: August 19, 2025
Find elsewhere
🌐
GoDaddy
godaddy.com › home › uri vs url vs urn: the main differences and why it matters
URI vs URL vs URN: the main differences and why it matters - GoDaddy Resources - UAE English
April 6, 2026 - URNs are used to provide a persistent and location-independent way to identify resources. For example, a URN might be used to identify a specific book in a library catalog, regardless of where the book is physically located.
🌐
Medium
medium.com › @abhirup.acharya009 › uri-vs-urn-vs-url-key-distinctions-explained-dec8e02ebd18
URI vs URN vs URL : Key Distinctions Explained | by Abhirup Acharya | Medium
August 6, 2023 - Unlike a URL, which specifies the address or location of a resource, a URN provides a persistent identifier that remains unchanged even if the resource is moved or its location changes.
🌐
RFC Editor
rfc-editor.org › rfc › rfc2396.txt
Network Working Group T. Berners-Lee
The URI scheme (Section 3.1) defines the namespace of the URI, and thus may further restrict the syntax and semantics of identifiers using that scheme. This specification defines those elements of the URI syntax that are either required of all URI schemes or are common to many URI schemes. It thus defines the syntax and semantics that are needed to implement a scheme-independent parsing mechanism for URI references, such that the scheme-dependent handling of a URI can be postponed until the scheme-dependent semantics are needed. We use the term URL below when describing syntax or semantics that only apply to locators.
🌐
TechTarget
techtarget.com › searchnetworking › definition › URL
What is a URL (Uniform Resource Locator)? Definition from SearchNetworking
A URL (Uniform Resource Locator, also called a web address) is a unique identifier used to locate a resource on the internet.
🌐
Google Cloud
cloud.google.com › blog › products › api-management › api-design-choosing-between-names-and-identifiers-in-urls
API design: Choosing between names and identifiers in URLs | Google Cloud Blog
November 18, 2018 - The best APIs implement both permalink URLs based on identifiers for stable identification and search URLs based on names (and perhaps other values) for ease-of-use. Here's why.
🌐
Medium
medium.com › @gaspm › nano-id-popular-secure-and-url-friendly-unique-identifiers-1fa86c9fdf7c
Nano ID: Popular, Secure, and URL-Friendly Unique Identifiers | by Michal Gasparik | Medium
December 12, 2024 - For generating unique identifiers for records in a database. For creating random tokens used in authentication, especially in multi-user systems. For creating short and unique URL addresses for various resources.
🌐
DOI
doi.org › 10.53731 › r294649-6f79289-8cvzr
Persistent Identifiers and URLs
August 17, 2022 - They use the Handle system to resolve the identifier to a location, and this system was built in the 1990s as infrastructure independent of URLs or DNS (Domain Name Service), at a time when it wasn’t clear yet that URLs and associated standards would become ubiquitous.
🌐
Network Solutions
networksolutions.com › home › blog › domains & hosting​ › uri vs url: key differences explained with examples
URI vs. URL: Key Differences Explained with Examples
September 25, 2025 - URIs identify resources, URLs specify their locations, and URNs provide persistent, location-independent names. Well-structured URLs and correct identifier types improve SEO, web performance, and API design.
🌐
Stack Overflow
stackoverflow.com › questions › 47997373 › do-webpages-have-unique-identifiers-other-than-url
Do webpages have unique identifiers (other than URL)?
The example I was given uses document.title to distinguish one page from another. The problem is that some pages have duplicate titles as they come from the product name (i.e. "Notecards"). The URLs are long, complex strings that are generated based on the user, and thus I cannot use them as it must apply to all users.
🌐
W3C
w3.org › Addressing › URL › url-spec.html
Uniform Resource Locators
Among URLs the "news" URLs are anomalous in that they are location-independent. They are unsuitable as URN candidates because the NNTP architecture relies on the expiry of articles and therefore a small number of articles being available at any time. When a news: URL is quoted, the assumption is that the reader will fetch the article or group from his or her local news host. News host names are NOT part of news URLs. An outstanding problem is that the message identifier is insufficient to allow the retrieval of an expired article, as no algorithm exists for deriving an archive site and file name.