A friend of mine used the Dropbox API to let his webapp's users store their own data, encrypted and decrypted with npm crypto. If I recall correctly, the user just had to OAuth with Dropbox on signup and sign in -- the rest was handled seamlessly.
I just wrote him to ask if he's blogged about this. Send me a message (in profile) if you'd like more info about this approach.