https://github.com/sseemayer/keepass-rs
Rust KeePass database file parser for KDB, KDBX3 and KDBX4, with experimental support for KDBX4 writing.
https://github.com/sseemayer/keepass-rs
kdbx-database keepass parser rust
Last synced: 6 months ago
JSON representation
Rust KeePass database file parser for KDB, KDBX3 and KDBX4, with experimental support for KDBX4 writing.
- Host: GitHub
- URL: https://github.com/sseemayer/keepass-rs
- Owner: sseemayer
- License: mit
- Created: 2016-02-05T13:21:57.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2025-05-03T16:06:14.000Z (about 1 year ago)
- Last Synced: 2025-05-03T16:48:10.262Z (about 1 year ago)
- Topics: kdbx-database, keepass, parser, rust
- Language: Rust
- Homepage: https://docs.rs/keepass
- Size: 2.75 MB
- Stars: 127
- Watchers: 9
- Forks: 39
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
- Security: SECURITY.md
Awesome Lists containing this project
- awesome-keepass - keepass-rs - `Rust` Rust library for reading KeePass database files (kdbx). (API libraries / Other clients)
README
# keepass-rs
[](https://crates.io/crates/keepass)
[](https://docs.rs/keepass/)
[](https://github.com/sseemayer/keepass-rs/actions/workflows/merge.yml)
[](https://codecov.io/gh/sseemayer/keepass-rs)
[](https://deps.rs/repo/github/sseemayer/keepass-rs)
[](https://github.com/sseemayer/keepass-rs/blob/master/LICENSE)
Rust KeePass database file parser for KDB, KDBX3 and KDBX4, with experimental support for KDBX4 writing.
## Usage
Examples are available in the [`examples`](./examples) directory of this repository.
### Use developer tools
This crate contains several command line tools that can be enabled with the `utilities` feature flag.
See the `[[bin]]` sections in [Cargo.toml](Cargo.toml) for a complete list.
An example command line for running the `kp-dump-xml` command would be:
```bash
cargo run --release --features "utilities" --bin kp-dump-xml -- path/to/database.kdbx
```
## Installation
Add the following to the `dependencies` section of your `Cargo.toml`:
```ignore
[dependencies]
keepass = "*" # TODO replace with current version
```
### Performance Notes
For the best performance, this crate requires specific cargo configuration to enable CPU-specific optimizations, especially for AES key derivation.
Please see the recommended settings in the [.cargo/config.toml](https://github.com/sseemayer/keepass-rs/blob/master/.cargo/config.toml) file in this repository.
## License
MIT