From 55557722f9b516e9f788feae5c1aa9af2ca9f236 Mon Sep 17 00:00:00 2001 From: mikecarper Date: Fri, 16 Oct 2026 00:11:35 -0700 Subject: [PATCH] Include MQTT consent in independent beacon wire vectors --- test/test_beacon_frames.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/test/test_beacon_frames.py b/test/test_beacon_frames.py index 0e4221bab..4599ed1cb 100644 --- a/test/test_beacon_frames.py +++ b/test/test_beacon_frames.py @@ -340,10 +340,13 @@ class BeaconFramesTest(unittest.TestCase): expected = b"\x15\0" + hashlib.sha256(PUBLIC_KEY).digest()[:1] + mac + encrypted self.run_case("public", expected.hex()) - def test_longfast_and_mediumfast_match_independent_aes_ctr_wire_oracle(self): + def test_longfast_and_mediumfast_match_independent_wire_and_mqtt_consent_oracle(self): for preset, hops in (("LongFast", 3), ("MediumFast", 7)): with self.subTest(preset=preset): - frame = reference_frame(data_text("Node: caf\u00e9".encode()), preset, DEFAULT_KEY, + # The text encoder also grants MQTT upload consent in Data + # field 9, bit 0. This is not the radio via_mqtt origin flag. + data = data_text("Node: caf\u00e9".encode()) + b"\x48\x01" + frame = reference_frame(data, preset, DEFAULT_KEY, flags=hops | (hops << 5)) self.run_case(preset.lower(), frame.hex())