async function sha256(message) { const hashBuffer = await crypto.subtle.digest('SHA-256', new TextEncoder('utf-8').encode(message)); return Array.from(new Uint8Array(hashBuffer)).map(b => ('00' + b.toString(16)).slice(-2)).join(''); }