Pourquoi le fragment # d'une URL n'apparaît pas dans les journaux serveur
Quand le navigateur envoie une requête HTTP, le contenu après # reste local. Burn-Link accroche la clé de déchiffrement à s.html?id={id}#{key}, après # : le serveur ne reçoit que l'identifiant du texte chiffré, pas la clé. La page de lecture est publique pour le destinataire, sans inscription. Ci-dessous, cette frontière est détaillée, avec des étapes à vérifier sur place.
Quel rôle joue ce qui suit #
Un secret dans la barre d'adresse ne signifie pas qu'une copie figure dans les journaux serveur. Ce raisonnement tient à peu près pour les paramètres de requête. Il ne tient pas pour le fragment.
Quand l'exploitation colle un mot de passe temporaire dans un chat, ou que l'assistance transfère une URL d'admin avec un token, la peur n'est souvent pas « l'autre personne le voit », mais « chaque saut intermédiaire peut garder une copie complète du lien ». Beaucoup en déduisent : dès qu'un secret apparaît dans la barre d'adresse, les journaux serveur en ont forcément une copie.
Une adresse complète se découpe en trois. Le protocole et l'hôte décident à qui le navigateur parle ; le chemin et les paramètres de requête après le point d'interrogation décident quelle ressource, et ces deux blocs apparaissent dans la ligne de requête HTTP. Les caractères après le dièse s'appellent fragment. Ils servaient d'abord à faire défiler le navigateur jusqu'à une ancre ; plus tard, les scripts côté client lisent aussi ce texte sur l'appareil via location.hash. Le serveur ne le reçoit pas, et ne devrait pas s'en servir pour le routage ou l'authentification.
Placer la clé après # n'invente pas un nouvel algorithme de chiffrement. Cela utilise une frontière d'envoi que les navigateurs respectent depuis longtemps : un même lien peut porter « un identifiant pour le serveur » et « une clé réservée à l'onglet actuel ». UsePwd Burn-Link s'appuie sur cette frontière. Pages de création et de lecture : ouvrez et utilisez, sans inscription de part et d'autre. Le serveur ne conserve que le texte chiffré ; texte en clair et clé ne partent pas dans le corps de requête par défaut.
Quelle partie est réellement envoyée
Regardez s.html?id=abc123#the-key. Le GET du navigateur n'a en général que le chemin et id sur la ligne de requête. #the-key n'est pas dans la requête : les journaux n'ont rien à y noter.
C'est ainsi que fonctionne la norme URL depuis longtemps. Ce n'est pas une convention privée d'un site, ni « le serveur a promis de ne pas regarder ». Dans le tableau, « le serveur peut-il le voir » signifie : après terminaison TLS, l'origine ou un reverse proxy que vous contrôlez peut-il lire ce champ dans cette requête HTTP. Cela ne couvre ni un appareil compromis, ni une extension capable de lire la page, ni une capture d'écran enregistrée ailleurs.
?id=abc123&key=secret
La chaîne entière apparaît sur la ligne de requête. Les journaux d'accès habituels conservent en général l'URL complète.
#secret
Le navigateur ne le traite pas comme une partie de la requête. Les journaux d'accès habituels n'ont rien à y noter.
ciphertext
Ce qui est réellement envoyé à la création d'un Burn-Link. Chez UsePwd : uniquement le texte chiffré, le nombre d'heures de validité et le nombre de lectures.
Une erreur fréquente : « HTTPS est en place, les journaux ne voient rien. » Le chiffrement de transport empêche un intermédiaire sur la ligne de lire le texte en clair. Après terminaison TLS, l'origine et un reverse proxy que vous contrôlez voient encore la ligne de requête complète. HTTPS n'efface donc pas ?key= des journaux d'accès. Le fragment n'entre pas dans les journaux parce qu'il n'a jamais été envoyé, pas parce que la ligne est chiffrée.
Un autre canal facile à oublier est Referer. Par défaut, certains sauts transmettent l'URL de la page d'origine à la suivante. Les navigateurs modernes, entre sauts HTTPS, retirent généralement le fragment ; les paramètres de requête peuvent encore apparaître dans Referer. C'est une raison de plus de placer une clé à usage unique après #, et non dans ?key= : vous ne pouvez pas exiger de chaque site aval qu'il promette de ne pas enregistrer l'adresse d'origine.
Que le fragment n'entre pas dans HTTP ne signifie pas « le lien lui-même ne peut pas être copié ». La chaîne complète de la barre d'adresse, y compris la clé après #, apparaît encore dans l'historique local, les aperçus de partage et les messages que vous envoyez vous-même. Cet article n'explique que la couche des journaux serveur. Il ne présente pas le fragment comme un coffre-fort universel.
Ouvrez le panneau Network et vous le voyez
L'objectif n'est pas de prouver que « personne au monde ne le voit », mais que cette requête HTTP vers UsePwd ne contient pas la clé après #.
-
01
Ouvrir la page de création Burn-Link
Allez sur Burn-Link. La page : ouvrez et utilisez, sans connexion. Saisissez un texte d'exemple que vous reconnaîtrez, sans y mettre une vraie clé de production.
-
02
Ouvrir le panneau Network et vider l'historique
Appuyez sur F12 ou clic droit puis Inspecter, puis ouvrez Network. Videz au besoin les requêtes déjà présentes pour ne pas les mélanger au premier chargement de la page.
-
03
Créer un lien
Après envoi, le navigateur chiffre d'abord avec AES-256-GCM dans l'onglet actuel, puis envoie une requête vers
/api/secrets. Les champs sontciphertext,ttl_hours,max_reads. L'adresse de partage a la formes.html?id={id}#{key}. -
04
Inspecter la requête de création
Ouvrez ce POST. L'URL de requête ne doit pas contenir la clé après
#; le corps doit être du texte chiffré et deux nombres, pas le texte d'exemple que vous venez de saisir. -
05
Ouvrir la page de lecture et vérifier le GET
Ouvrez le même lien sur la page de lecture. Les GET ou requêtes d'état suivants n'ont que
iddans le chemin. Comparez la chaîne après#dans la barre d'adresse et l'URL de requête du panneau Network : la première reste locale ; la seconde n'a pas ce segment.
En production, des analyses d'accès peuvent aussi partir vers /tj/. La charge utile est un nom de page et de bouton, par exemple « Créer un lien » — pas le texte en clair, pas la clé, pas le contenu d'un fichier. Les aperçus locaux n'envoient pas d'analyses. Si vous voulez seulement savoir si la clé est entrée dans HTTP, filtrez d'abord /api/secrets ; ne prenez pas une requête d'analyse pour un canal de texte chiffré.
Ces étapes complètent « le texte en clair quitte-t-il le navigateur » dans Sécurité : cette page couvre le périmètre du calcul local ; cet article découpe l'URL et explique pourquoi les journaux n'ont pas le segment #. Aucune des deux ne remplace le formulaire de la page de création.
Comment Burn-Link utilise cette frontière
L'identifiant va dans les paramètres de requête, la clé dans le fragment. Le serveur sait qu'il y a un texte chiffré, combien de lectures restent et quand il expire. Il ne sait pas avec quoi le déverrouiller.
À la création, l'onglet actuel utilise Web Crypto pour générer une clé aléatoire, chiffre le texte avec AES-256-GCM, puis remet le texte chiffré au serveur. L'identifiant renvoyé va dans ?id= ; la clé n'est ajoutée qu'après #.
La page de lecture est publique pour le destinataire. Quand il ouvre s.html?id={id}#{key}, le navigateur récupère d'abord le texte chiffré ou l'état auprès du serveur avec id, puis déchiffre avec la clé du fragment conservée localement. Une fois le nombre de lectures fixé à la création atteint, le serveur supprime le texte chiffré et le lien ne se lit plus. Le destinataire n'a pas non plus à s'inscrire. La page de lecture est un contexte temporaire de texte chiffré, pas une entrée d'index du site ; pour comprendre le produit, revenez à la page de création ou aux étapes de vérification de cet article.
Placer la clé dans le fragment règle la couche « journaux serveur et ligne de requête ». Cela ne règle pas « à qui vous avez envoyé le lien complet ». Chats, e-mails et systèmes de tickets conservent l'adresse entière que vous collez. Quiconque a le lien complet a à la fois l'identifiant et la clé. Burn-Link limite la durée de vie du texte chiffré côté serveur et le nombre de lectures, pas le fait que le destinataire capture ou transfère.
En quoi cela diffère d'un schéma en paramètres de requête
Certains liens à usage unique mettent les données de déchiffrement dans ?k=. C'est simple, mais chaque ouverture écrit la clé sur la ligne de requête : CDN, WAF et journaux d'accès de l'origine peuvent en garder une copie. Le schéma fragment ajoute un dièse, et en échange, même un hébergeur qui enregistre l'URL complète n'a pas la moitié qui déverrouille le texte chiffré. Le coût : vous devez rappeler au destinataire de copier le lien entier, pas seulement la partie avant le point d'interrogation ; sans ce qui suit #, la page de lecture peut récupérer le texte chiffré et ne peut pas le déverrouiller sur l'appareil.
C'est aussi pourquoi cet article ne présente pas Burn-Link comme un « gestionnaire de mots de passe » ni comme un coffre-fort récupérable. UsePwd n'a ni compte ni coffre, et ne peut pas retrouver un secret par utilisateur. Lien perdu, fragment tronqué ou lectures épuisées : le serveur ne peut pas restaurer le texte en clair pour vous. L'identité est expliquée dans À propos.
Ne lisez pas une clé en fragment comme « seul un serveur de confiance peut déchiffrer ». C'est l'inverse : le serveur n'a pas cette clé et ne peut pas déchiffrer à votre place. Tout onglet qui ouvre le lien complet peut déchiffrer. La frontière de confiance est « qui a l'adresse entière », pas « quel serveur est plus fiable ».
Ce qu'un fragment n'arrête pas
Lire « n'entre pas dans les journaux serveur » comme « absolument sûr » omet plusieurs frontières tout aussi vérifiables. Listons-les d'abord, pour qu'un article de principe ne soit pas pris pour une garantie.
#, mais le message que vous envoyez à une personne contient encore la clé entière.
Burn-Link convient à une remise à usage unique dont vous faites confiance au canal, et qui s'arrête après lecture : mot de passe temporaire, API Key unique, code de courte durée. Ce n'est ni un coffre-fort durable, ni un substitut à la remise en personne d'une clé maîtresse de grande valeur.
La sauvegarde de fichier est un autre chemin. Le chiffrement local d'un fichier jusqu'à 5 Go passe par la boîte de chiffrement : AES-256-GCM dans l'onglet actuel, sortie .lock / .enc, fichier non envoyé par défaut. C'est « garder soi-même un fichier de texte chiffré », pas « glisser une clé dans une URL ». Ne mélangez pas les deux outils en une même garantie.
Comment choisir le canal
Vous devez transmettre un secret court à quelqu'un, sans que les journaux d'accès de l'hébergeur gardent de quoi le déverrouiller. Décidez dans l'ordre ci-dessous, plutôt que de demander quel slogan sonne le plus fort.
Si le secret n'a besoin que d'un nombre limité de lectures et que les deux parties peuvent ouvrir un navigateur, utilisez Burn-Link : le texte en clair est chiffré sur l'appareil, l'identifiant va dans ?id=, la clé après #, ouvrez et utilisez. Après création, comparez une fois dans le panneau Network : le corps POST est du texte chiffré, l'URL du GET n'a pas de fragment. Si vous avez besoin d'une conservation durable, d'une synchronisation multi-appareils ou d'une récupération, c'est hors de ce site : utilisez un gestionnaire de mots de passe dédié, et ne prenez pas UsePwd pour un système de comptes.
Si le secret ne doit entrer dans aucune page tierce, ne créez pas de lien : dites-le en personne, utilisez un support hors ligne, ou restez dans un canal de bout en bout que vous avez déjà. Le schéma fragment réduit « les clés dans les journaux serveur », pas « toutes les personnes qui voient un écran ». Distinguer ces deux couches évite de lire un article sur le fonctionnement des URL comme une garantie produit.
La force du mot de passe lui-même est une autre question. Générez un secret aléatoire de 6 à 128 caractères dans le générateur de mot de passe ; pour voir la force sur l'appareil et comparer à la liste publique de mots de passe faibles divulgués livrée avec la page, utilisez le contrôle de mot de passe. Ce n'est pas une recherche de fuites à l'échelle du web ; le secret testé n'est pas envoyé. Avant d'envoyer un lien ou le corps d'un ticket, utilisez le nettoyage de confidentialité pour retirer les paramètres de suivi ou faire du masquage. Ces pages, comme cet article : ouvrez et utilisez. À droite de la barre supérieure, seul le sélecteur de langue.
Après lecture, vérifiez sur place
L'article répond à « pourquoi les journaux n'ont pas le segment après # ». Pour créer un lien chiffré destructible, ouvrez Burn-Link, sans inscription.