Add new SubGHz protocol: Hormann BiSecur #118
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What's new
This is a garage door remote protocol. It uses 2FSK at 868.276 MHz center frequency with a bandwidth of about 25 KHz. There are 3 types of preamble data, then the actual bytes are encoded using G.E.Thomas Manchester encoding. The first byte is the protocol type, the next 4 are the remote's serial number, then there are 16 encrypted bytes, and finally a one byte CRC-8 checksum. The encrypted bytes are using AES-128 but with a bit of obfuscation before and after the encryption, and probably contain the rolling code counter. Both an encoder and a decoder are implemented, the signal can be decoded in real time during SubGHz Read operation. It can be decoded later from a Read RAW file. Saving and loading the decoded result is also possible.
A future improvement will be the ability to capture the unencrypted seed and counter. There is a cloning feature of the remote, which is supposed to transmit these unencrypted (using OOK), so the replacement remote can learn them and configure itself. It would be probably implemented as a separate app. Including the seed and the counter inside the .sub file will make it possible to generate the next code in the sequence automatically.
More information: https://tib.flowcenter.de/mfc/medialink/3/deb1359464e0b867ef1d0e0c18700c3516f1174e5066a73086af5e8c9374b7a741/6134c3-9029-uncovering_vulnerabilities_in_hoermann_bisecur.pdf
For the reviewer