Securely serve files over HTTP.
Last updated 6 years ago by themadcreator .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install salty-serve 
SYNC missed versions from official npm registry.

Salty Server

Securely serve up files over HTTP. Files can be downloaded by anyone that can access the server, but only the client with the keys can decrypt them.

How to

Install salty-serve

On both client and server, run:

npm install -g salty-serve

If you do not have permissions to install globally, you can still run everything through node_modules:

npm install salty-serve

Generate keys

On the client, generate both the client and server keys. Keep the client keys safe.


Start salty-serve

Copy server-keys.json to the server. Then, to serve the current directory, run:

salty-serve -p 1111 -k server-keys.json .

List all files

Navigate your browser to the server, or use a commandline utility like curl:

curl -s http://localhost:1111

Download and decrypt all files

This command will get the list of all files from the salty-serve, then one-by-one will download, unzip, and decrypt them

curl -s http://localhost:1111 | xargs -I filename sh -c "curl -s http://localhost:1111/filename | gunzip | salty-decrypt -k client-keys.json > filename"

Or, for convenience, you can do the same as above with a single command:

salty-pull http://localhost:1111


Uses NaCl's crypto_box encoded as hexstrings in JSON and then gzipp'ed for HTTP transport.

Current Tags

  • 0.1.0                                ...           latest (6 years ago)

1 Versions

  • 0.1.0                                ...           6 years ago
Maintainers (1)
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 0
Dependencies (3)
Dev Dependencies (1)
Dependents (0)

Copyright 2014 - 2016 © |