-
Notifications
You must be signed in to change notification settings - Fork 1.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement Nice Flor-s decryption (see PR #2238) #2344
Comments
Possible dup of #2238 It's very unlikely that we add AES support or unrolled tables to support complex decryption. |
The AES is just used to obfuscate the master key within the Flipper Zero. AES is not used for the actual Flor-S algorithm. Once the master key is deobfuscated it can be stored in plain text in rtl_433 and no encryption is required besides basic stuff like xor. |
If you look at the encrypted master key, it is very short: https://github.com/DarkFlippers/unleashed-firmware/blob/dev/assets/resources/subghz/assets/nice_flor_s The IV is obfuscated through some short assembly code visible in the firmware of Flipper Zero I think the course of action is to find anyone with a Flipper Zero and just printf() the decrypted key. If I had a Flipper Zero I'd have done it already, but I don't unfortunately Then it is just a matter of porting the decryption function |
There is a working decryption in that PR I take it? Not sure why the 16-bit lookup is needed if the decryption is an xor stream though. |
I have 2 Flipper Zeros. Post some instructions and I'll eventually get to it. |
@merbanan Then you will need to compile modified firmware and flash it to flipper, after that you will be able to see decrypted keys in serial console when you connect device via usb and connect to it using putty or something. You can also see decrypted keeloq keys in similar way, I'm interested in DTM Neo key if anyone has it. |
Is this not the complete description and key? |
Maybe it is, that is interesting why they encrypted it if it is in comments in code. |
Where are we on this? Is there information here that isn't in #2238 (e.g as comments)? It would be nice to make progress to just have a PR, even if we are still going to argue about doctrine of including AES in rtl_433. |
Closing this in favor of the PR, after no response to asking if there is info in the issue but not the PR, in 7.5 months. |
Hi!
Feature request time!
The protocol to encrypt and decrypt Nice Flor-s encryption has been published here: https://github.com/DarkFlippers/unleashed-firmware/blob/dev/lib/subghz/protocols/nice_flor_s.c
It can be implemented in rtl_433. Currently rtl_433 does support Flor-s, but it does not decrypt the remote ID, which means that every time the remote is pressed, the ID seems random. This greatly reduces the usefulness of the decoder. Decoding the remote ID would allow using Nice Flor-s remotes completely.
The only issue is that for some reason, they have decided to obfuscate the encryption key. It is stored as an encrypted asset, decrypted through the secure enclave of the Flipper Zero. It should be possible to decrypt it by building an alternative firmware to Flipper Zero and simply doing a printf() of the decrypted bitstream, or by doing a bit more exploration of the Flipper Zero to discover the encryption key. No idea what they were thinking when doing this.
The text was updated successfully, but these errors were encountered: