The Web Crypto API is SO CLOSE to being useful, it pains me