unit_keys_from now resolves the Media Key in order: stored per-disc MK -> keydb Processing Key pool (mk_from_pk vs this disc's own MKB) -> device-key pool (mk_from_dk), then MK+VID -> VUK -> UK. MK/VUK entries still honored directly; cross-disc MK-pool brute stays retired. Fixes the factually-wrong justifying comment + adds PK-pool KATs.
26 lines
922 B
TOML
26 lines
922 B
TOML
[package]
|
|
name = "freemkv-keysources"
|
|
version = "1.0.0-rc.5.3"
|
|
edition = "2024"
|
|
rust-version = "1.86"
|
|
license = "AGPL-3.0-only"
|
|
description = "Pluggable AACS key sources (keydb, online key service) for libfreemkv. Each source looks a disc up and hands libfreemkv its terminal Unit Keys via get_uk; the library does all derivation."
|
|
repository = "https://github.com/freemkv/freemkv-keysources"
|
|
keywords = ["aacs", "blu-ray", "uhd", "decryption", "keydb"]
|
|
categories = ["multimedia"]
|
|
|
|
[dependencies]
|
|
# The crate provides the `KeySource` trait + `Key`/`DiscInputs` types these impls fill.
|
|
libfreemkv = "1.0.0-rc.5.3"
|
|
# OnlineSource: POST disc inputs + samples to a key service over HTTP.
|
|
ureq = { version = "2", features = ["json"] }
|
|
serde_json = "1"
|
|
base64 = "0.22"
|
|
# Structural begin/end logging around the keyserver round-trip (never logs
|
|
# key material).
|
|
tracing = "0.1"
|
|
|
|
[profile.release]
|
|
lto = "thin"
|
|
codegen-units = 1
|