A free, open-source tool for reverse-engineering and generating ECU seed-key pairs to unlock automotive electronic control units.
UnlockECU is an open-source software tool that generates seed-key pairs to unlock automotive Electronic Control Units (ECUs). It solves the problem of accessing secured ECUs for diagnostics, tuning, and firmware flashing by replacing proprietary security DLLs with reverse-engineered, legally clean implementations. The tool supports a wide range of ECU models and security algorithms from various manufacturers.
Automotive enthusiasts, tuners, and technicians who need to unlock ECUs for diagnostics, coding, or performance tuning without relying on proprietary tools. It's also valuable for researchers and developers working on embedded automotive security.
Developers choose UnlockECU because it's completely free, open-source, and legally safe—it contains no proprietary code or binaries. Its reverse-engineered security providers offer transparency and the ability to study algorithms, unlike black-box commercial alternatives.
Free, open-source ECU seed-key unlocking tool.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
All security algorithms are reverse-engineered and reimplemented in C#, eliminating reliance on proprietary DLLs and allowing free distribution without legal concerns, as stated in the README.
The core is a portable .NET 5 class library, making it easy to integrate into custom automotive diagnostic tools or other platforms, per the project's design philosophy.
Supports adding custom ECU definitions via JSON files, enabling users to extend support for new targets without modifying the core code, as detailed in the 'Adding definitions' section.
Includes over 25 pre-implemented security providers for major brands like Bosch and Volkswagen, covering many common ECU models, based on the listed providers.
Available as both a web-based tool for instant access and a downloadable desktop application for offline use, providing flexibility in different scenarios, as mentioned in 'Getting started'.
Definitions are limited to those reverse-engineered from existing files, so high-level or newer ECUs may not be supported, as admitted in the README notes about missing instrument cluster definitions.
The offline version requires .NET Desktop Runtime 5.0.0, adding an extra installation step and limiting use on systems without it, which can be a barrier for non-technical users.
Adding new definitions requires editing JSON files with specific parameters, which can be error-prone and intimidating for users without programming or reverse-engineering experience.
As an open-source project, there is no official support, warranty, or guaranteed updates, posing a risk for critical or time-sensitive automotive applications.