A crypto library to decrypt various encrypted D-Link firmware images.
Confirmed to work on the following D-Link devices:
Encryption keys/methods are often re-used amongst devices and firmware, so other devices may also be supported.
You must have the Rust compiler installed:
cargo build --release Command Line Usage:
./target/release/delink encrypted.bin decrypted.bin Rust Library Usage:
// Read in the contents of an encrypted firmware image
match std::fs::read("DIR850LB1_FW220WWb03.bin") {
Err(e) => {
eprint!("Failed to read input file: {}", e);
}
Ok(encrypted_data) => {
// Attempt to decrypt the encrypted data
match delink::decrypt(&encrypted_data) {
Err(e) => {
eprint!("Decryption failed: {}", e);
}
Ok(decrypted_data) => {
// Decryption successful, save decrypted data to disk
if let Err(e) = std::fs::write("decrypted.bin", decrypted_data) {
eprint!("Failed to write decrypted data: {}", e);
}
}
}
}
} Image credit:pexels.com If you think back to the early days of personal computing, you probably…
In an era defined by technological innovation, the way people handle and understand money has…
The online world becomes more visually driven with every passing year. Images spread across websites,…
General Working of a Web Application Firewall (WAF) A Web Application Firewall (WAF) acts as…
How to Send POST Requests Using curl in Linux If you work with APIs, servers,…
If you are a Linux user, you have probably seen commands like chmod 777 while…