Skip to content

Latest commit

 

History

History
62 lines (37 loc) · 2.13 KB

README.md

File metadata and controls

62 lines (37 loc) · 2.13 KB

ipfs-senc - simple private file sharing on ipfs.

WARNING: NOT AUDITED! USE AT OWN RISK. DONT USE FOR ANYTHING SERIOUS.

Currently, IPFS does not have an inbuilt content encryption system. Many solutions exist on top. I wanted something easy. This builds on senc.

View examples on the web

See the viewer webapp docs here

On the commandline

This tool is command-line based.

Install

Using go get:

go get github.com/ipfs-shipyard/ipfs-senc/ipfs-senc

How to encrypt & share

# encrypt with a known key. (256bits please)
ipfs-senc share --key <secret-key> <path-to-file-or-directory>

# encrypt with a randomly generated key. will be printed out.
ipfs-senc share <path-to-file-or-directory>

Leave your IPFS node running, or pin this somewhere. consider ipfs-cluster.

How to download & decrypt

# will ask for key
ipfs-senc download <ipfs-link> <local-source-dir-or-file>

# decrypt with given key.
ipfs-senc download --key <secret-key> <ipfs-link> [<local-destination-dir>]

Will use your local ipfs node, or the ipfs-gateway if no local node is available.

Shell Script

If you have the senc tool, then you can also use the script provided in ipfs-senc/ipfs-senc.sh

On the browser

This can work entirely on the browser. The viewer code is included in this repo. It needs to learn how to add files too. (drag-it, drop-it, crypt-it, pin-it, share-it, click-it, load-it, de-crypt, view-it).

License

MIT, copyright Protocol Labs, Inc.