From aa89a121c45ade7354cb7c1714614664ef365504 Mon Sep 17 00:00:00 2001 From: Derek Jamison Date: Fri, 1 Sep 2023 17:53:27 -0500 Subject: [PATCH] Added "Test attack" diagram --- subghz/apps/rolling-flaws/README.md | 10 +++++++++- subghz/apps/rolling-flaws/docs/test-attack.png | Bin 0 -> 28843 bytes 2 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 subghz/apps/rolling-flaws/docs/test-attack.png diff --git a/subghz/apps/rolling-flaws/README.md b/subghz/apps/rolling-flaws/README.md index d6f4e05..3060d0f 100644 --- a/subghz/apps/rolling-flaws/README.md +++ b/subghz/apps/rolling-flaws/README.md @@ -4,7 +4,7 @@ Rolling Flaws by [@CodeAllNight](https://twitter.com/codeallnight). - Discord invite: [https://discord.com/invite/NsjCvqwPAd](https://discord.com/invite/NsjCvqwPAd) - YouTube: [https://youtube.com/@MrDerekJamison](https://youtube.com/@MrDerekJamison) - GitHub: [https://github.com/jamisonderek/flipper-zero-tutorials/blob/main/subghz/apps/rolling-flaws](https://github.com/jamisonderek/flipper-zero-tutorials/blob/main/subghz/apps/rolling-flaws) - +- Support my work: [ko-fi.com/codeallnight](ko-fi.com/codeallnight) This application is intended to help you learn about rolling code flaws. @@ -897,6 +897,8 @@ Flipper #1: **Opened!** Congratulations! You have successfully opened a gate by using a different serial number. This attack worked because the receiver didn't check the serial number ending of the remote when the decoded serial number was "00". ### Scenario 12: test transmitter + + "The HCS512 decoder will automatically add a test transmitter each time an Erase All Function is done. A test transmitter is defined as a transmitter with a serial number of zero. After an Erase All, the test transmitter will always work without learning and will not check the synchronization counter of the transmitter. Learning of any new transmitters will erase the test transmitter." -- [HCS512 datasheet](https://www.microchip.com/content/dam/mchp/documents/MCU08/ProductDocuments/DataSheets/40151E.pdf) @@ -926,3 +928,9 @@ Flipper #1: **Opened!** - Flipper #1 has new "Count". - Flipper #1 (bottom right) has reason as "TEST". +## Contact info +Rolling Flaws by [@CodeAllNight](https://twitter.com/codeallnight). +- Discord invite: [https://discord.com/invite/NsjCvqwPAd](https://discord.com/invite/NsjCvqwPAd) +- YouTube: [https://youtube.com/@MrDerekJamison](https://youtube.com/@MrDerekJamison) +- GitHub: [https://github.com/jamisonderek/flipper-zero-tutorials/blob/main/subghz/apps/rolling-flaws](https://github.com/jamisonderek/flipper-zero-tutorials/blob/main/subghz/apps/rolling-flaws) +- Support my work: [ko-fi.com/codeallnight](ko-fi.com/codeallnight) \ No newline at end of file diff --git a/subghz/apps/rolling-flaws/docs/test-attack.png b/subghz/apps/rolling-flaws/docs/test-attack.png new file mode 100644 index 0000000000000000000000000000000000000000..c0b1af695d2f39403d2c9d36ab80e33cba0d19ed GIT binary patch literal 28843 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 literal 0 HcmV?d00001