Brute Forcing a Joey Gen 3 Update Key
Channel: makho
Date: 2020-01-02

UPDATE 2020-01-03: Someone was able to reverse engineer the algorithm and create a c program that will calculate the key for you. Compile this program and run it from a command line / terminal with your three device IDs. See this github repo for more info: https://github.com/HDR/JoeyKeygen
I was able to use this program to calculate the key for my other joey. And yes, this program renders the entire process that I went through redundant. 

You can brute force a key on anything that supports python and has a USB port. On Windows devices, you'll still need to install the unsigned driver but even with the correct driver, I was getting libusb errors so I went with a fresh install of Ubuntu 19.10. A Raspberry Pi also works. 

Here is the script you need: https://github.com/HDR/JoeyBruteforcer

On ubuntu, I also had to install crunch, python3setup-tools, python3tk, and pyusb. All of these can be install through apt except pyusb which needs to be installed through pip or installed manually. Manually seemed easier at the time. Other platforms may have different requirements but ubuntu seemed like the easiest for me. 

After generating the key, updating should be done like typical and on whatever PC you usually use the joey software on. 

If you want HDR's slightly tweaked software, the repo is right here: https://github.com/HDR/JoeyJoebags

This DOES work but it can take some time. If my experience is typical, brute forcing the key yourself is still quicker than waiting for BennVenn to reply back with one.