#pgp #openpgp

bin+lib wkd-exporter

Exports an OpenPGP keyring into an advanced WKD directory path

2 unstable releases

0.2.0 Oct 17, 2024
0.1.0 Oct 15, 2024

#751 in Command line utilities

Download history 286/week @ 2024-10-14 11/week @ 2024-10-21

297 downloads per month

MIT/Apache

650KB
133 lines

WKD exporter

CI Crates.io

Exports an OpenPGP keyring into the Web Key Directory directory path.

Use it like this (advanced variant with a domain filter):

$ cargo install wkd-exporter
$ DIR=$(mktemp -d)
$ gpg --export | wkd-exporter --domain archlinux.org $DIR
$ tree $DIR | head
/tmp/tmp.ZaHdlAQGRw
└── openpgpkey
    └── archlinux.org
        ├── hu
           ├── 46yqwra65to1p94e9ebafpucymkwsi7f
           ├── 9drt4xorn699rkbj5xyq7ykoc1z5nnof
           ├── 9hy3wi4ewwiicomnjmhewifn6d1gi87i
           ├── 9sh859e31bn46hmfxyftn3ymop5ewdkz
           ├── b9qi357oeysqibkxmmh3hanrppd6nj9p
           ├── btfkn1ht1kzda3e9495fe4sjznkygui4

For smaller deployments, direct variant may be more appropriate:

$ DIR=$(mktemp -d)
$ gpg --export | wkd-exporter --direct metacode.biz $DIR
$ tree $DIR | head
/tmp/tmp.cxEBeXnwdv
└── openpgpkey
    ├── hu
       └── gebusffkx9g581i6ch4t3ewgwd6dctmp
    └── policy

This project can also be used as a library:

wkd_exporter::export(
     std::fs::File::open("tests/test-cases-default/simple.pgp").expect("file to exist"),
    "/tmp/well-known",
    Default::default(),
).expect("exporting to succeed");

License

This project is licensed under either of:

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this crate by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies

~17–24MB
~329K SLoC