#secrets-manager #password-manager #secret #terminal #api-key #chrome #hash-map

bin+lib rucksack

A terminal-based secrets manager, generator, and importer/exporter (Firefox, Chrome) backed with a concurrent hashmap

21 releases

0.8.6 Dec 12, 2023
0.8.4 Feb 27, 2023
0.7.1 Feb 8, 2023
0.2.0 Dec 31, 2022

#176 in Command-line interface

37 downloads per month

Apache-2.0

190KB
5K SLoC

rucksack

A terminal-based secrets manager, generator, and importer/exporter (Firefox, Chrome) backed with a concurrent hashmap

Features

  • Password generator (0.1.0)
  • Encrypted local storage (0.2.0)
  • Concurrent hashmap for use by daemons (0.2.0)
  • List secrets, both encrypted and decrypted (0.3.0)
  • Supports Firefox and Chrome CSV formats (importing, 0.3.0; exporting, 0.5.0)
  • Searching secrets via filtering (0.4.0)
  • Reports on password quality, duplicates, etc. (0.5.0)
  • Add new records to the DB (and support updates) via CLI subcommands (0.6.0)
  • Archived deletes (0.7.0)
  • Tags and categories (0.7.0)
  • Support public/private keys, certificates, API keys (0.7.0)
  • Split repo into rucksack-lib, rucksack-db, and rucksack crates (0.8.0)
  • Colourised and fully tabular output (0.8.0)
  • Password history (0.8.0)
  • Database restores
  • 1Password Support
  • Local network sync

Documentation

Primary project documentation is here:

A quick peek at the top-level help from the terminal:

rucksack: A terminal-based secrets manager, generator, and importer/exporter (Firefox, Chrome) backed with a concurrent hashmap

Usage: rucksack [OPTIONS] [COMMAND]

Commands:
  add     Add a new secret
  export  Export the rucksack db
  gen     Generate a secret
  import  Pull in creds from other sources
  list    List all secrets
  rm      Delete a single record [aliases: delete, remove]
  set     Perform various 'write' operations
  show    Display rucksack-specific information
  help    Print this message or the help of the given subcommand(s)

Options:
      --config-file <config-file>  The path to the config file to use or create [default: "<user config dir>/rucksack/config.toml"]
      --log-level <log-level>      Override the configured log-level setting [default: ] [possible values: error, warn, info, debug, trace, ]
      --completions <SHELL>        Emit shell tab completions [possible values: bash, elvish, fish, powershell, zsh]
  -v, --version                    Print version information
  -h, --help                       Print help

Other projects on crates.io tagged as #password-manager ...

Projects of particular interest:

  • kbs2 - A secret manager backed by age
  • RustCrypto - A Github org collecting a handful of pure-Rust encryption libraries
  • Firefox Sync

License

Copyright © 2022-2023, Oxur Group

Apache License, Version 2.0

Dependencies

~12–24MB
~309K SLoC