Skip to content

A Qutebrowser userscript enabling secure sharing of an URL between qutebrowser instances without need of any centralized service.

Notifications You must be signed in to change notification settings

sim590/qurlshare

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 

Repository files navigation

qurlshare

A Qutebrowser userscript enabling secure sharing of an URL between qutebrowser instances without need of any centralized service.

More precisely, it is a URL sharing script running over a distributed hash table. Everytime you paste a new URL, the last pasted URL is recovered.

How to use

Place the script somewhere on your system. Let's say it's installed at ~/bin/qurlshare.py. Then, you can do as follows in qutebrowser in order to share an URL:

:spawn --userscript /usr/bin/python3 ~/bin/qurlshare.py {url}

In order to recover the URL, simply do:

:spawn --userscript /usr/bin/python3 ~/bin/qurlshare.py -g

This will open a tab in the Qutebrowser window with the recovered URL.

Security

User configuration protects his data. The script can be configured directly by editing variables at the top of the script:

########################
#  USER CONFIGURATION  #
########################

USER = "49d248e8b300550"
PWD  = "99a2b38a6216c1c"

Username and password can be of any length. The username and password are used to derive a storage location on the DHT so make sure to pick something that is unique if you don't want to end up with someone else (encrypted) data.

The key used to encrypt is the result of passing PWD into some Key Derivation Function which has the effect of increasing the computationnal effort of bruteforcing your password. The KDF used is PBKDF2 from PyCryptodome python module.

Dependencies

Roadmap

  1. Configure username and password outside of the script.
  2. Make this script use a daemonized OpenDHT node in order to avoid recreating a node every time one uses this script. This would significantly speed up the process of publishing and recoverining of URLs.

Author

Simon Désaulniers (sim.desaulniers@gmail.com)

About

A Qutebrowser userscript enabling secure sharing of an URL between qutebrowser instances without need of any centralized service.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages