L’Uniform Resource Identifier (URI) est une chaîne de caractères permettant l’identification d’un objet de façon univoque et permanente.
(Wikipedia – Licence CC BY-SA v3.0)
L’empreinte d’un objet réalisée au moyen d’une fonction de hash cryptographique est un URI.
Univoque
L’empreinte est considérée univoque si elle est générée par une fonction de hash cryptographique, c’est à dire résistante aux collisions et à sens unique. Ces propriétés sont les seules qui puissent garantir l’unicité de l’URI par rapport à un objet unique.
Dans la pratique, appliqué à des objets de taille supérieur à la taille de l’empreinte demandée, une fonction de hash est une surjection et non idéalement une injection. Mais, l’espace des valeurs des empreintes étant très grand, la propriété de résistance aux collisions permet de considérer que l’empreinte est statistiquement univoque (assimilé à une injection).
Permanente
La permanence est directement dépendant de la fonction de hash utilisée et éventuellement du sel. Si cette fonction ne change pas, les empreintes seront toujours strictement identiques pour les mêmes objets (identiques aussi).
URN
L’Uniform Resource Name (URN) est une normalisation de IETF du nommage d’objets. L’URN est un sous-ensemble de l’URI.
L’URN est de la forme :
"urn:" <NID> ":" <NSS>
Le NID (Namespace IDentifier) définit l’espace de nom. Le NSS (Namespace Spécific String) est la partie qui identifie de façon unique une ressource dans l’espace de nom. L’interprétation du NSS est dépendante du NID (le début d’une non-standarisation).
Comment fait-on pour retrouver un objet depuis son URN? Il faut un résolveur qui sache interroger le référent du NID pour retrouver le NSS. En clair, le NID est l’équivalent de la localisation…
Cependant, la partie localisation étant géré de façon centralisé par les différents référents des NID, l’objet reste toujours accessible même si il change d’emplacement. Derrière l’URN sera utilisé une URL pour accéder à l’objet, cette URL étant fourni par le référent du NID.
URL
L’Uniform Resource Locator (URL) est une normalisation de l’IETF du lien vers les objets, typiquement pour tout ce qui est liens web. L’URL est un sous-ensemble de l’URI.
L’URL d’un objet permet de donner son emplacement et éventuellement la façon de l’utiliser. Mais, en désignant un emplacement d’objet sans centralisation, l’URL est silencieusement mais immédiatement rendu caduc si l’objet change d’emplacement.
Liens externes :
– Uniform Resource Identifier – Wikipedia [FR]
– Uniform Resource Locator – Wikipedia [FR]
– Uniform Resource Name – Wikipedia [FR]
– Injection mathématique – Wikipedia [FR]
– Surjection mathématique – Wikipedia [FR]
– Hash et sel – Wikipedia [FR]