Il est possible, si vous souhaitez que l'un de vos articles soit à l'abri des curieux, de protéger par mot de passe une page de votre site. Deux techniques, l'une pas très sécurisée mais suffisante pour une petite barrière d'entrée. L'autre plus compliquée à mettre en œuvre mais également plus efficace. Je vous détaille ici la version simple, rapide, mais peu sécurisée. Un prochain article détaillera peut être la version plus efficace.
Premièrement, il est nécessaire de récupérer le SHA-256 de votre mot de passe, et donc, de choisir votre mot de passe.
Le SHA 256 est un algorithme de hachage cryptographique qui va permettre de remplacer votre mot de passe par une longue chaîne de caractères/chiffres, assez peu lisible, de cette forme :
5ab7da6d3cbdac6c8cb105dcb87e0a63299e4c3cf29108a9b0121a0ee4499d5a
Une fois votre mot de passe choisit, ici même dans votre navigateur, ouvrez la console DevTools en appuyant sur F12 (la console est souvent en bas, et il se peut qu'elle vous demande si vous êtes certain de vouloir exécuter un script). Calculez le script suivant (en ayant remplacé "mot de passe" par le mot de passe que vous avez choisi).
(async () => {
const pw = 'mot_de_passe';
const buf = await crypto.subtle.digest('SHA-256', new TextEncoder().encode(pw));
console.log([...new Uint8Array(buf)].map(b=>b.toString(16).padStart(2,'0')).join(''));
})();
Deuxièmement, il faut insérer dans votre article, en mode HTML, le code suivant :
<!-- Collez ceci directement dans la page Blogger (mode HTML) -->
<div id="gate">
<label>Mot de passe : <input id="pw" type="password"></label>
<button id="go">Entrer</button>
<p id="msg" style="color:#c00;display:none">Mot de passe incorrect</p>
</div>
<div id="secret" style="display:none">
<!-- TON CONTENU PRIVÉ ICI -->
<h3>Titre caché</h3>
<ul><li><a href="https://www.stepheco.fr/">J'ai trouvé ce script là</a></li></ul>
</div>
<script>
const HASH='remplace_par_sha256'; // calcule-le avec le snippet plus haut
async function sha256Hex(s){const b=new TextEncoder().encode(s);const d=await crypto.subtle.digest('SHA-256',b);return [...new Uint8Array(d)].map(x=>x.toString(16).padStart(2,'0')).join('')}
document.getElementById('go').onclick=async()=>{
const ok = await sha256Hex(document.getElementById('pw').value)===HASH;
document.getElementById('msg').style.display = ok ? 'none' : 'block';
if(ok){document.getElementById('gate').remove();document.getElementById('secret').style.display='block'}
};
</script>
N'oubliez pas de remplacer "remplace_par_sha256. Publiez, votre page est prête. entrez votre mot de passe et le paragraphe caché s'ouvrira.
Mais attention. on peut trouver le mot de passe (du moins, sa version sha256, que l'on peut rétrocrypter) en inspectant la source. Ce n'est donc une méthode utile que pour éloigner quelques curieux fainéants.