I am working on an idea of uploading a file on IPFS. But the requirement is, the uploaded file should be available for view only to the intended group of people. The code to upload the file is in JS. Now my question is, is it possible to upload a file in IPFS with limited permissions. The other question is , is it required to have IPFS installed at the end user to view the file in IPFS. If you can assist me by directing to proper documentation then that would also be great.


Once you upload a file to ipfs, it is theoretically available to anyone who knows its hash. So, it's not possible to restrict the access to the file.

What is possible, is to encrypt the file in some way and only give the decryption key/password to the group of people you want to be able to access it.

Have a look at this awesome ipfs resources.

The projects that seem to best suit your requirements are:

  • ipfs-add-from-encrypted: This script takes a file or directroy as input, uses tar if a directory and GPG AES256 symmetric encryption with the password you provide and adds it to IPFS and returns the IPFS hash.

  • ipfsecret: Encrypt and decrypt IPFS files with a secret passphrase.

For your second question: it would be best to have a locally running ipfs node, but fortunately that's not required. Recently, cloudflare launched a set of hosted ipfs gateways which anybody can use.

  • you're welcome. please let others know this was a helpful answer by accepting it. – Tudor Constantin Dec 14 '18 at 7:42

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.