Canonisation

Définition - Que signifie la canonisation?

La canonisation est le processus de conversion de données impliquant plus d'une représentation dans un format standard approuvé. Une telle conversion garantit que les données sont conformes aux règles canoniques. Cela compare différentes représentations pour assurer l'équivalence, pour compter le nombre de structures de données distinctes, pour imposer un ordre de tri significatif et pour améliorer l'efficacité de l'algorithme, éliminant ainsi les calculs répétés.

La canonisation est utilisée dans de nombreuses applications Internet et informatiques pour générer des données canoniques à partir d'informations non canoniques. La représentation canonique des données est largement utilisée dans
optimisation des moteurs de recherche (SEO), serveurs Web, Unicode et XML.

Ce terme est également connu sous le nom de C14N, standardisation ou normalisation.

Definir Tech explique la canonisation

En SEO, la canonisation d'URL traite du contenu Web avec plus d'une URL possible. Cela peut créer des divergences dans les recherches, car le moteur de recherche peut ne pas savoir quelle URL doit être affichée. La canonisation sélectionne la meilleure URL parmi plusieurs choix, faisant généralement référence aux pages d'accueil. Bien que certaines URL semblent identiques, les serveurs Web renvoient des résultats différents pour les URL. Les moteurs de recherche ne considèrent qu'une seule URL sous forme canonique.

La sécurité informatique est basée sur la canonisation des noms de fichiers. Certains serveurs Web peuvent avoir une règle de sécurité pour exécuter des fichiers uniquement dans un répertoire particulier. Le fichier est alors exécuté uniquement si le chemin a le répertoire spécifié dans son nom. Un soin particulier doit être pris pour vérifier si le nom de fichier est une représentation unique. Une telle vulnérabilité est appelée traversée de répertoires.

La plupart des caractères de la norme Unicode ont des encodages de longueur variable. Cela nécessite une prise en compte de chaque caractère de chaîne et rend la validation de chaîne plus complexe. Si tous les encodages de caractères ne sont pas pris en compte dans l'implémentation du logiciel, il y a une possibilité de bogues. Ce problème peut être éliminé en utilisant un codage unique pour chaque caractère. La meilleure alternative, que n'importe quel logiciel peut prendre, est de vérifier si la chaîne est canonisée. Les chaînes qui ne sont pas canonisées peuvent être rejetées.

Un document XML canonique est un document XML sous forme canonique XML. Il est défini par la spécification XML canonique. La canonisation en XML élimine les espaces blancs dans les balises, trie les références d'espace de noms et élimine les redondantes et utilise des encodages de caractères particuliers. Il supprime également les déclarations XML et DOCTYPE, en plus de transformer les URL relatives en URL absolues.