1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
export let generateKeys = async () => {
const keys = await crypto.subtle.generateKey(
{
name: "ECDSA",
namedCurve: "P-384",
},
true,
["sign", "verify"],
);
const exportedPublicKey = crypto.subtle.exportKey("jwk", keys.publicKey);
const exportedPrivateKey = crypto.subtle.exportKey("jwk", keys.privateKey);
return {
publicKey: exportedPublicKey,
privateKey: exportedPrivateKey,
};
};
👆 This is a val. Vals are TypeScript snippets of code, written in the browser and run on our servers. Create scheduled functions, email yourself, and persist small pieces of data — all from the browser.