{"id":29193164,"url":"https://github.com/ironcorelabs/search-edeks","last_synced_at":"2025-07-02T02:07:48.371Z","repository":{"id":175106582,"uuid":"653354419","full_name":"IronCoreLabs/search-edeks","owner":"IronCoreLabs","description":"Tool to search EDEK's protobuf.","archived":false,"fork":false,"pushed_at":"2024-12-02T19:01:58.000Z","size":32,"stargazers_count":1,"open_issues_count":2,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-12-02T19:45:08.172Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/IronCoreLabs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-06-13T22:42:01.000Z","updated_at":"2024-04-09T16:22:47.000Z","dependencies_parsed_at":"2023-08-17T23:31:26.967Z","dependency_job_id":null,"html_url":"https://github.com/IronCoreLabs/search-edeks","commit_stats":null,"previous_names":["ironcorelabs/search-edeks"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/IronCoreLabs/search-edeks","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IronCoreLabs%2Fsearch-edeks","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IronCoreLabs%2Fsearch-edeks/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IronCoreLabs%2Fsearch-edeks/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IronCoreLabs%2Fsearch-edeks/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/IronCoreLabs","download_url":"https://codeload.github.com/IronCoreLabs/search-edeks/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IronCoreLabs%2Fsearch-edeks/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263061405,"owners_count":23407606,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-07-02T02:07:45.767Z","updated_at":"2025-07-02T02:07:48.354Z","avatar_url":"https://github.com/IronCoreLabs.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Search EDEKs\n\nThis is a small binary command line tool that can be used to search a file for IronCore EDEKs that match the provided KMS config ID.\n\n## Installation\n\n### Precompiled Binary\n\nDownload the appropriate binary for your system from the releases page.\n\n### Compile Source\n\nCheck out this repo and run `cargo b --release`. The binary will be at `target/release/search-edeks`.\n\n## Usage\n\n```console\nsearch-edeks --help\nTool to search IronCoreLabs Tenant Security Proxy EDEK's protobuf.\n\nUsage: search-edeks [OPTIONS] --file \u003cFILE\u003e \u003c--id \u003cVALUE\u003e|--mismatched\u003e \u003c--hex|--base64\u003e\n\nOptions:\n  -i, --id \u003cVALUE\u003e   Sets the KMS config ID we're searching for\n  -m, --mismatched   Searches for mismatches between the KMS config ID in the EDEK header and the leased key used to encrypt the EDEK. Resulting EDEKs must be rekeyed with TSP 4.11.1+ to repair.\n  -f, --file \u003cFILE\u003e  File with one `(\"identifier\", \"EDEK\")` per line\n  -h, --hex          Consume and output hex formatted EDEKs\n  -b, --base64       Consume and output base64 formatted EDEKs\n  -d, --debug        Print extra debug information\n  -v, --verbose      Output identifier and original EDEK (and error message if applicable). If not enabled, only identifiers will be output\n  -h, --help         Print help\n  -V, --version      Print version\n```\n\nFor example `search-edeks --file edeks.txt --id 1201 --hex` would search `edeks.txt` for any EDEKs that were created using KMS config ID `1201`. It would output `matching-edeks.txt` with the one identifier per line for each EDEK that matched. It would output `broken-edeks.txt` with one identifier per line for each EDEK that wasn't parsable as an EDEK. If `--verbose` was enabled, the output would be tuples of the required input form (with the broken EDEKs additonally containing an error message).\n\nIf multiple search filters are included, all must be present for an EDEK to match.\n\n## Releasing\n\n* update the version in Cargo.toml according to semver before tagging for release\n* push a tag matching the version in Cargo.toml.\n  * a release build will be run against it which will upload artifacts to a github release\n  * the version in Cargo.toml will be uploaded to crates.io\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fironcorelabs%2Fsearch-edeks","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fironcorelabs%2Fsearch-edeks","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fironcorelabs%2Fsearch-edeks/lists"}