import { render, html } from '/uhtml.js'; function rand() { let str = ''; const lookups = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'.split(''); while (str.length < 16) { const n = Math.random() * lookups.length; str += lookups[Math.floor(n)]; } return str; } async function auth() { const sig = await openpgp.sign({ message: new openpgp.CleartextMessage('vybe_auth ' + window.session, ''), signingKeys: window.keys.priv }); window.socket.emit( 'authenticate', { name: window.name, message: sig }, msg => { let register = document.getElementById('register'); if (!msg.success) { console.log('authenticate failed', msg); register.classList.remove('hidden'); return; } if (register) { register.remove(); import('/app.js'); } } ); } render(document.body, html`
to get started, you'll need an account. we use public key cryptography for security, rather than passwords. your keys are stored in your browser storage only, so do this on a browser you can access again.