0

Let's say I want to build a dropbox clone. When users upload files they need to be encrypted. Later on, when the user needs to access their files, the application should be able to decrypt them using the password supplied by the user. The application also needs to allow users to change their passwords.

How do I go about implementing the encryption/decryption here? I know this is a solved problem in the industry but is there a clear step-by-step instruction on how to implement this (e.g. in NodeJS). I don't want to design my own method, which is most likely going to be flawed.

2
  • 1
    See crypto.stackexchange.com/questions/3298/… for a walkthrough of how openssl does AES file encryption / decryption, and also an equivalent implementation in python.
    – mti2935
    Nov 5, 2021 at 1:31
  • 1
    StackExchange is not an appropriate place to ask somebody to design an entire system for you from scratch. What research have you done? Do you have an existing design you're considering? Have you looked at the construction used by any of the various products (password managers, encrypted file sharing sites, etc.) that, as you note, already exist? Is there a specific point of confusion, or something you want to do that differs from all the existing approaches? Also, while implementing a design is safer than coming up with one yourself, you still risk implementation flaws. Crypto is hard.
    – CBHacking
    Nov 5, 2021 at 6:48

0

You must log in to answer this question.