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.
This commit is contained in:
Matthew Jackson
2026-06-29 17:33:27 -07:00
parent 26a2859eb4
commit 58a4b9720f
3 changed files with 228 additions and 3 deletions
+12
View File
@@ -0,0 +1,12 @@
[package]
name = "freemkv-unlock-aacs"
version = "1.2.0"
edition = "2024"
rust-version = "1.86"
license = "AGPL-3.0-only"
description = "AACS host-certificate bus-auth unlocker plugin for libfreemkv (Blu-ray / UHD)"
repository = "https://github.com/freemkv/freemkv-unlock"
[dependencies]
libfreemkv = "1.2.0"
tracing = "0.1"