Storing users media for my web app

Hello, I am new to Storj and I was researching if it is the right tool for my use case.
I want to host users content for my web app on Storj I was looking at the pricing and found it better than S3 and backblaze and the additional end-to-end encryption sold the idea to me.

The problem is from what I understood in the docs I cannot use end-to-end encryption with the sharing feature, only server-side encryption is available.

This means that if I want to use e2e encryption I will have to use uplink to download the file on my server then stream the file from my server to the user. which sounds very slow.

So is there a way around this? or the only benefit will be the price difference? and what is the policy on price changes down the road, is there a grace period where we get alerted before that happens?

Hello @farahats9 ,
Welcome to the forum!

You can use these libraries: Storj Client Libraries | Storj Docs and Storj - Third Party · GitHub to build your own app to use a native integration.

If the content meant to be public anyway, you actually can use a share feature and follow this guide to share your static content on your site: Host a Static Website | Storj Docs

1 Like

Thank you for your reply, though this is not what I am asking. Do these libraries download the file then decrypt it then my server would send it to the user? if so then I think it would be very inefficient for me to use this way over server side encryption.

Some of the content is not meant to be public, like user sent images in chat for example.

These allow you to create a client-side application so this occurs right at the client. Very fast and very secure but you need to integrate the libraries into your client application.

-Dominick

3 Likes

I don’t think so, there is no javascript client side library since they just call the Go binaries from nodejs. i.e. they are used on a system where the Go binaries are installed (the server) not on the client’s browser. Unless there is something I do not understand?

You may want to read this thread, as there was a similar discussion talking about end-to-end encryption from the browser.