93588379c6291d252caf2186a4afef52eb236fd8
The unlocker performs the DVD bus-auth that clears the drive's scrambled-read barrier, letting a protected DVD be read at all. That is a property of the DVD medium, not of the CSS scheme — the descramble key is recovered keylessly downstream — so naming it "CSS" conflated the read-enable with the encryption. Rename the struct to DvdUnlocker, its registry name to "DVD", and the tests to match. Bump 1.5.2.
freemkv-unlock
The unlock layer for the freemkv toolchain.
An unlocker removes a drive-level bus-encryption barrier so the drive serves readable (de-bus'd / de-scrambled) sectors. Content-key decryption is a separate concern — the consumer's job.
This crate defines the Unlocker contract and a generic SCSI transport
contract, and holds the self-contained unlocker modules. The consumer
(libfreemkv) depends on this crate and
dispatches through all_unlockers(); it never names an individual unlocker, and
clients of libfreemkv are oblivious to unlockers entirely (as they are to the
SCSI layer).
for u in freemkv_unlock::all_unlockers() {
if u.matches(&ctx) {
return u.unlock(&mut scsi, &ctx);
}
}
To remove an unlocker, delete its module directory and its one line in
all_unlockers() — nothing else changes.
License: MIT.
Languages
Rust
100%