Press buttons in the correct order to reveal the code.
ALPHA-42
red → blue → green
.
Nothing obvious here… but assistive tech can “see” more than you think.
★Tip: Check the aria-label
attribute of elements.
document.getElementById('l2icon').getAttribute('aria-label')
The code is injected via CSS ::before
content and styled to be invisible.
It won’t appear in innerText, but you can still read it via computed style.
getComputedStyle(document.getElementById('l3carrier'),'::before').content
(remove quotes around the result)
Decode the base64 string, then apply ROT13 to letters to get the code.
Only letters rotate; numbers and dashes stay the same.
atob('RUJHMTNPTkZSNjQtODg=').replace(/[A-Za-z]/g,c=>String.fromCharCode((c<='Z'?65:97)+((c.charCodeAt(0)-(c<='Z'?65:97)+13)%26)))
A worker posts a challenge. Reply with the correct answer via postMessage
to get the code.
Worker
instance is exposed as window.L5_WORKER
.L5_WORKER.postMessage(5040)
(for 7!).
The code is inside an open shadow root of a custom element.
document.querySelector('secret-box').shadowRoot.querySelector('#code').textContent
The code is encoded as ASCII in the red channel of a hidden 1×N canvas.
Extract bytes and map to characters.
let d = l7canvas.getContext('2d').getImageData(0,0,L7LEN,1).data; let s=''; for(let i=0;i<L7LEN;i++){s+=String.fromCharCode(d[i*4]);} s
Compute SHA‑256(salt + ':' + phrase)
in hex. Enter the 64‑hex digest as the code.
Phrase is concatenation of the data-p
bits above.
crypto.subtle.digest('SHA-256', new TextEncoder().encode('midnight:raven')).then(b=>Array.from(new Uint8Array(b)).map(x=>x.toString(16).padStart(2,'0')).join(''))
This level has no UI. Dispatch the correct custom event to unlock the code.
Event: 'unlock'
on window
with detail
exactly {k1:'simon',k2:7,k3:[1,2,3]}
.
window.dispatchEvent(new CustomEvent('unlock',{detail:{k1:'simon',k2:7,k3:[1,2,3]}}))
Combine the first 9 codes (no separators), compute SHA‑256
, then enter MASTER-
+ first 12 hex characters.
Example: if digest begins abcdef123456…
then code is MASTER-abcdef123456
.
localStorage.getItem('ai-puzzles-progress')
and compute the digest.