| Crates.io | secr |
| lib.rs | secr |
| version | 1.2.2 |
| created_at | 2025-11-09 04:04:18.789203+00 |
| updated_at | 2025-11-10 02:02:06.582866+00 |
| description | A simple secret manager |
| homepage | |
| repository | https://github.com/zacharysiegel/secr |
| max_upload_size | |
| id | 1923579 |
| size | 35,469 |
A simple secret manager.
Manage encrypted secrets stored in a file. Uses the ChaCha20Poly1305 algorithm.
secr to your system via Cargocargo install secr
secr key
Example:
$ secr key
Generated key (base64):
2Af8Ty6PG9ICZppnY5cB8GMPdNg4NubxU4HyPEx1h0E=
secr encrypt --key '<symmetric_key>' '<plaintext>'
Output is preformatted in YAML. Example:
$ secr encrypt --key '2Af8Ty6PG9ICZppnY5cB8GMPdNg4NubxU4HyPEx1h0E=' 'mysecret'
__untitled__:
nonce: 'qt+WBOWfII63uI9q'
ciphertext: 'qTEMbZ5SZVox7Mmsc61cXbEbzYuKVO1u'
Example:
cat >> secrets.yaml << 'EOF'
hello_world:
nonce: 'qt+WBOWfII63uI9q'
ciphertext: 'qTEMbZ5SZVox7Mmsc61cXbEbzYuKVO1u'
EOF
secr decrypt --file '<store_path>' --key '<symmetric_key>' '<secret_name>'
Example:
$ secr decrypt --file secrets.yaml --key '2Af8Ty6PG9ICZppnY5cB8GMPdNg4NubxU4HyPEx1h0E=' 'hello_world'
UTF-8 encoding:
mysecret
Base64 encoding:
bXlzZWNyZXQ=
This package follows the Semantic Versioning convention.
Licensed under the MIT license.