this page is password protected.

password

sorry, please try again. sorry, something went wrong. success!  

sorry, but password protection only works over a secure connection. please load this page via HTTPS.

your web browser appears to be outdated. please visit this page using a modern browser.

protected by pagecrypt
(function() { var pl = "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"; var submitPass = document.getElementById('submitPass'); var passEl = document.getElementById('pass'); var invalidPassEl = document.getElementById('invalidPass'); var trycatcherror = document.getElementById('trycatcherror'); var successEl = document.getElementById('success'); var contentFrame = document.getElementById('contentFrame'); // Sanity checks if (pl === "") { submitPass.disabled = true; passEl.disabled = true; alert("This page is meant to be used with the encryption tool. It doesn't work standalone."); return; } if (!isSecureContext) { document.querySelector("#passArea").style.display = "none"; document.querySelector("#securecontext").style.display = "block"; return; } if (!crypto.subtle) { document.querySelector("#passArea").style.display = "none"; document.querySelector("#nocrypto").style.display = "block"; return; } function str2ab(str) { var ustr = atob(str); var buf = new ArrayBuffer(ustr.length); var bufView = new Uint8Array(buf); for (var i=0, strLen=ustr.length; i < strLen; i++) { bufView[i] = ustr.charCodeAt(i); } return bufView; } async function deriveKey(salt, password) { const encoder = new TextEncoder() const baseKey = await crypto.subtle.importKey( 'raw', encoder.encode(password), 'PBKDF2', false, ['deriveKey'], ) return await crypto.subtle.deriveKey( { name: 'PBKDF2', salt, iterations: 100000, hash: 'SHA-256' }, baseKey, { name: 'AES-GCM', length: 256 }, true, ['decrypt'], ) } async function doSubmit(evt) { submitPass.disabled = true; passEl.disabled = true; let iv, ciphertext, key; try { var unencodedPl = str2ab(pl); const salt = unencodedPl.slice(0, 32) iv = unencodedPl.slice(32, 32 + 16) ciphertext = unencodedPl.slice(32 + 16) key = await deriveKey(salt, passEl.value); } catch (e) { trycatcherror.style.display = "inline"; console.error(e); return; } try { const decryptedArray = new Uint8Array( await crypto.subtle.decrypt({ name: 'AES-GCM', iv }, key, ciphertext) ); let decrypted = new TextDecoder().decode(decryptedArray); if (decrypted === "") throw "No data returned"; const basestr = ''; const anchorfixstr = `