Say I have a device that produces sensitive data and sends it off to a server for storage.
The device itself should not be able to decrypt the data (protecting against an attack of the device), but a user should be able to log in to the server and view the decrypted data, however, the decrypted data should never exist anywhere but in the users browser (don't care about caching issues etc.).
Since I don't want to store any decryption keys, it must be a passphrase provided by the user to the browser.
What would be the least bad way to achieve this, preferrably using the WebCrypto API?