Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dannixon/keyprs
A very barebones tool to backup secrets to paper
https://github.com/dannixon/keyprs
backup secret-management
Last synced: 7 days ago
JSON representation
A very barebones tool to backup secrets to paper
- Host: GitHub
- URL: https://github.com/dannixon/keyprs
- Owner: DanNixon
- License: mit
- Created: 2024-04-25T22:37:13.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-09-16T07:54:10.000Z (about 2 months ago)
- Last Synced: 2024-09-16T09:22:47.504Z (about 2 months ago)
- Topics: backup, secret-management
- Language: Rust
- Homepage:
- Size: 43.9 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# keyprs
[![CI](https://github.com/DanNixon/keyprs/actions/workflows/ci.yml/badge.svg)](https://github.com/DanNixon/keyprs/actions/workflows/ci.yml)
A very barebones tool to backup secrets to paper.
Takes secret text (e.g. passwords, keys, textual treasure maps) and prints them using a thermal/POS printer.
Adds a timestamp and an optional note/identifier for easy discovery at the appropriate time.For the following types of secret text, `keyprs` will reformat the text to make validation and copying by eye easier:
- [age](https://github.com/FiloSottile/age) secret keys
## Why?
Textual paper backups are an amazing means of cold key backup.
At a glance you can immediately tell if the key is intact, opposed to flash media which must be verified in another system, or QR codes which ideally should be scanned to be verified.Older thermal receipt printers (the ones typically seen on early PC based POS systems) are a good choice of printer for this.
Compared to a typical document printer, they are very dumb, i.e. have a very basic protocol, have no persistent storage, are not networked.## Example
```text
> echo "AGE-SECRET-KEY-1K4476QULRXHS5E3Q7WR8R9KAXWZF8QK0G7W39KF445T26Z7UXLXSHTD0MY" | keyprs --note "a thing" --serial-port /dev/ttyUSB0
🔑 The input looks like an age secret key.🖨 I will print the following:
~~~
Printed: 2024-04-27 17:21:21 +01:00
Note: a thingAGE-SECRET-KEY-
1K44
76QU
LRXH
S5E3
Q7WR
8R9K
AXWZ
F8QK
0G7W
39KF
445T
26Z7
UXLX
SHTD
0MY
~~~👀 Be sure to verify the printed output matches the above text!
```