@noisytransfer/cli
Command‑line interface for NoisyTransfer workflows.
@noisytransfer/cli
Note: Currently everything is under heavy development and in a very early alpha stage. APIs are thus unstable and can change without notice.
A command‑line tool that wires together crypto->noisyauth->noisystream so you can exchange files/byte streams from the terminal with end‑to‑end encryption and signature verification.
Quick links
- NPM (CLI): https://www.npmjs.com/package/@noisytransfer/cli
- GitHub repository: https://github.com/collapsinghierarchy/noisytransfercli
- noisyauth (NPM): https://www.npmjs.com/package/@noisytransfer/noisyauth
- noisystream (NPM): https://www.npmjs.com/package/@noisytransfer/noisystream
What this does:
@noisytransfer/cli
uses @noisytransfer/noisyauth for SAS-based authentication and key material and @noisytransfer/noisystream for the encrypted, ordered transport (e.g., WebRTC DataChannels). You get integrity, confidentiality, and signature verification for the data you send/receive.
Install
npm i -g @noisytransfer/cli
You can also run it without a global install:
npx @noisytransfer/cli@latest
To remove a global install:
npm uninstall -g @noisytransfer/cli
.
SAS confirmation: Both peers compare a short, human‑readable code to confirm they derived the same session keys. If the codes match, you’ve mitigated MITM for that session.
How it fits together
- @noisytransfer/crypto provides an HPKE-JS wrapper for PQ-Cryptography.
- @noisytransfer/transport provides the DTLS communication channel and signaling.
- @noisytransfer/noisyauth provides the cryptographic identity, session establishment, and SAS flow.
- @noisytransfer/noisystream carries your bytes over an ordered, encrypted channel (commonly a WebRTC DataChannel).
- wrtc-back-end is the minimal back-end. Implemented in Go. uses websocket rooms for signaling. The rendezvous code is a numerical 4-digit string.
Note: Exact commands, flags, and flows can evolve—check the GitHub repo for examples, usage notes, and release changes.
Requirements
- Node 22 Platform packages of WebRTC may require additional system libraries depending on your OS.
Troubleshooting
- If peers fail to connect, check local firewall/NAT rules and ensure the signaling step (if used) is reachable.
- If the process hangs on shutdown, make sure you’re on the latest version; see the repo issues for platform‑specific notes.