Matthew Jackson 58a4b9720f aacs: new freemkv-unlock-aacs plugin crate
The AACS host-certificate bus-auth unlocker as a first-class external plugin,
peer to freemkv-unlock-ld and freemkv-unlock-css. AacsUnlocker impls
libfreemkv::Unlocker — matches DiscKind::Aacs, self-guards against the hardware
(refuses NotApplicable without issuing a handshake CDB if the drive reports a
non-Blu-ray profile), gathers host certs from the scan options, and runs the
libfreemkv cert-handshake primitive to learn the Volume ID + bus key. libfreemkv
keeps the handshake + AACS content decryption; this crate owns the unlocker.
Additive: a consuming binary opts in with one register_unlocker(...) line.
2026-06-29 17:33:27 -07:00

freemkv-unlock

Unlocker plugins for libfreemkv.

libfreemkv ships only the pluggable Unlocker trait + registry and stays firmware-clean — it contains no concrete unlock code. Each crate in this workspace implements one unlocker and is registered into libfreemkv by a single line in the consuming binary:

libfreemkv::register_unlocker(Box::new(my_unlocker::MyUnlocker::new()));

Removing an unlocker is deleting that one line and the dependency (delete-to-comply).

Members

Each member is a self-contained unlocker plugin — see its own README for details.

License: AGPL-3.0-only.

S
Description
firmware unlock crate — build dep for kdb (libfreemkv git-deps it)
Readme MIT
463 KiB
Languages
Rust 100%