The main difference is that the app developer/provider doesn't have to see, secure, or pay for storing user data. Users themselves are in full control of their data, and they can permit any app to access segments of it. Check out this comparison on the RS website: https://remotestorage.io/#explainer-unhosted
So this would be in place of a service like Dropbox -- or S3 or Azure Blob -- where user passes a token to the app to allow reading/wring data to the user's storage account/location... but with a standard protocol and authorization scheme?
Yes they can. I don’t know the exact name of the process off-hand, but basically the web app requests a temporary upload token which it provides to the user. The user can then use this token to upload directly to an S3 bucket as configured by the web app.
They don’t need AWS accounts. The app has an AWS account and provides a token to the user to upload a file via HTTP to an S3 bucket associated with the app’s AWS account.
Still, you do raise a good point - that S3 bucket is owned by the app, not the user. But it doesn’t have to be this way forever, and AWS is an Amazon product. Amazon has the credit card information of nearly everyone in the world. I would not be surprised if in the future, we see a sort of federated model, where users of an app pay for their own storage at S3 by linking their Amazon account. The app would be like a reseller/affiliate of Amazon, and could pass storage costs directly onto their users without worrying about complexities like pricing tiers to account for variable customer requirements.