CLI client for lufi service
Project description
What
pylufic is a command line tool which allow to interact with Let's Upload File (Lufi) instances, that is to download and upload client-side encrypted files.
Why
Lufi is a web-application allowing client-side encrypted file transfers between users. Hence you don't have to trust the service provider to protect your data.
However Lufi works in a web browser, like Firefox or Chormium. When you don't want to run a full-featured graphical web browser on your machine to use it, you need a command line.
pylufic is a python implementation of a Lufi CLI, useful for those who already have Python in their environments.
How
pylufic use the same software libraries as the Javascript version - websocket client and Standford Javascript Cryptography Library (SJCL) - but in their python implementations.
Use
Install
Be sure to have Python 3.6+ installed.
Git clone this repo (or download as zip) :
git clone https://framagit.org/setop/pylufic.git && cd pylufic
Optionally, create python virtual environment :
python3 -m venv .venv && . .venv/bin/activate
Pip install requirements (use sudo if not in a venv) :
pip install -r requirements.txt
If you want to test libraries, run :
./sjcl-test.py && ./ws-test.py
Run
pylufic uses baker library which provide inline help
Help
./pylufic.py
Upload
./pylufic.py file service_url
You may use "https://framadrop.org/" (consider donation).
download
./pylufic.py url
Be aware a file is opened in the current directory in append mode with the name provided in the metadata of the transfer.
delete
To delete a file use link provided by upload function.
An example using curl :
curl -s -S 'https://framadrop.org/d/<shortid>/<token>' | html2text
Limitation
pylufic handles only one file at a time ; no multi-files upload or download.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Hashes for pylufic-1.0.0rc1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c9fde0e159d4034fb4053247a6a43d1e56abca4f7b660c053261a773c26f8929 |
|
MD5 | 95daafe9824d3f32b53625248d8a4ecf |
|
BLAKE2b-256 | 184a6b02ad46811268a73579fae1d8f4d894811b6faa68606d0b15a71f76e953 |