8e2ab9c4d21ea072614658c14e068c3b7b1c3bfb
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

1) # derivepassphrase
2) 
3) [![PyPI - Version](https://img.shields.io/pypi/v/derivepassphrase.svg)](https://pypi.org/project/derivepassphrase)
4) [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/derivepassphrase.svg)](https://pypi.org/project/derivepassphrase)
5) 
Marco Ricci Fill out README and documen...

Marco Ricci authored 2 months ago

6) An almost faithful Python reimplementation of [James Coglan's `vault`][VAULT], a deterministic password manager/generator.
7) 
8) Using a master passphrase or a master SSH key, derive a passphrase for a given named service, subject to length, character and character repetition constraints.
9) The derivation is cryptographically strong, meaning that even if a single passphrase is compromised, guessing the master passphrase or a different service's passphrase is computationally infeasible.
10) The derivation is also deterministic, given the same inputs, thus the resulting passphrase need not be stored explicitly.
11) The service name and constraints themselves also need not be kept secret; the latter are usually stored in a world-readable file.
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

12) 
Marco Ricci Fill out README and documen...

Marco Ricci authored 2 months ago

13) [VAULT]: https://getvau.lt
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

14) 
Marco Ricci Fill out README and documen...

Marco Ricci authored 2 months ago

15) -----
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

16) 
17) ## Installation
18) 
Marco Ricci Fill out README and documen...

Marco Ricci authored 2 months ago

19) ### With `pip`
20) 
Marco Ricci Fix minor formatting detail...

Marco Ricci authored 2 months ago

21) ```` shell-session
Marco Ricci Fill out README and documen...

Marco Ricci authored 2 months ago

22) $ pip install derivepassphrase
Marco Ricci Fix minor formatting detail...

Marco Ricci authored 2 months ago

23) ````
Marco Ricci Fill out README and documen...

Marco Ricci authored 2 months ago

24) 
25) ### Manually
26) 
Marco Ricci Update package dependencies...

Marco Ricci authored 2 months ago

27) `derivepassphrase` is a pure Python package, and may be easily installed manually by placing the respective files and the package's dependencies into Python's import path.
28) `derivepassphrase` requires Python 3.10 or higher as well as the [typing-extensions package][TYPING_EXTENSIONS] for its core functionality and programmatic interface, and [`click`][CLICK] 8.1 or higher for its command-line interface.
Marco Ricci Fill out README and documen...

Marco Ricci authored 2 months ago

29) 
Marco Ricci Update package dependencies...

Marco Ricci authored 2 months ago

30) [TYPING_EXTENSIONS]: https://pypi.org/project/typing-extensions/
Marco Ricci Fill out README and documen...

Marco Ricci authored 2 months ago

31) [CLICK]: https://click.palletsprojects.com/
32) 
33) ## Quick Usage
34) 
Marco Ricci Fix minor formatting detail...

Marco Ricci authored 2 months ago

35) ```` shell-session
Marco Ricci Fill out README and documen...

Marco Ricci authored 2 months ago

36) $ derivepassphrase -p --length 30 --upper 3 --lower 1 --number 2 --space 0 --symbol 0 my-email-account
37) Passphrase: This passphrase is for demonstration purposes only.
38) JKeet7GeBpxysOgdCEJo6UzmP8A0Ih
Marco Ricci Fix minor formatting detail...

Marco Ricci authored 2 months ago

39) ````
Marco Ricci Fill out README and documen...

Marco Ricci authored 2 months ago

40) 
41) Some time later…
42) 
Marco Ricci Fix minor formatting detail...

Marco Ricci authored 2 months ago

43) ```` shell-session
Marco Ricci Fill out README and documen...

Marco Ricci authored 2 months ago

44) $ derivepassphrase -p --length 30 --upper 3 --lower 1 --number 2 --space 0 --symbol 0 my-email-account
45) Passphrase: This passphrase is for demonstration purposes only.
46) JKeet7GeBpxysOgdCEJo6UzmP8A0Ih
Marco Ricci Fix minor formatting detail...

Marco Ricci authored 2 months ago

47) ````
Marco Ricci Import initial project files

Marco Ricci authored 4 months ago

48) 
Marco Ricci Fill out README and documen...

Marco Ricci authored 2 months ago

49) (The user input `This passphrase is for demonstration purposes only.` for the passphrase prompt is not actually displayed on-screen.)
50)