transfer-sh

2.1.1 • Public • Published

transfer-sh NPM Version Build Status Dependency Status JavaScript Style Guide Patreon donate button

Node.js CLI tool for easy file sharing using Transfer.sh

Install

The easiest way to get transfer-sh is with npm:

$ npm install -g transfer-sh

CLI Usage

$ transfer hello.txt

Will return a link to the resource and automatically you'll have it copied to your clipboard.

PS. transfer is an alias for transfer-sh.

Encrypt a file using a password:

$ transfer hello.txt -p s3cr3t

Example

var Transfer = require('transfer-sh')
 
/* Encrypt and Upload */
new Transfer('./Hello.md', {password: 's3cr3t'})
  .upload()
  .then(function (link) { console.log(link) })
  .catch(function (err) { console.log(err) })
 
/* Decrypt */
new Transfer('./Hello.enc', {password: 's3cr3t'})
  .decrypt('Output.md') // or writable stream
  .then(function (wStream) { console.log('Decrypted!') }) // it returns a writableStream
  .catch(function (err) { console.log(err) })
 

NB.: The constructor accepts also a Readable stream as 1th param, in that case make sure to provide a name option.

Options

password: optional field, if provided will encrypt the file with aes-256-cbc no-salt and base64 encoded before the upload.

You can then easily decrypt your file using transfer-sh itself:

$ transfer -d hello.enc -p s3cr3t [-o output.txt]

or the openssl util:

$ openssl aes-256-cbc -d -a -nosalt -in <encrypted_file> -out <destination> -k <password>

openssl params explanation:

-d decrypt.

-a to decode base64 (with line break). NB. The file is base64 encoded to be easy human-readable and to allow easy copy-paste.

-nosalt The used node crypto lib by default doesn't apply any salt.

-in input encrypted file.

-out output decrypted file.

-k password.

Author

Rocco Musolino (@roccomuso)

LICENSE

MIT

/transfer-sh/

    Package Sidebar

    Install

    npm i transfer-sh

    Weekly Downloads

    123

    Version

    2.1.1

    License

    ISC

    Unpacked Size

    8.82 kB

    Total Files

    6

    Last publish

    Collaborators

    • roccomuso