Merge remote-tracking branch 'pr3822/nestednonces' into dev

This commit is contained in:
noproto
2024-10-23 04:01:42 -04:00
4 changed files with 11 additions and 4 deletions

View File

@@ -40,7 +40,10 @@ static bool trt_parse(const NfcDevice* device, FuriString* parsed_data) {
const uint8_t* full_record_pointer = &data->page[FULL_SALE_TIME_STAMP_PAGE].data[0]; const uint8_t* full_record_pointer = &data->page[FULL_SALE_TIME_STAMP_PAGE].data[0];
uint32_t latest_sale_record = bit_lib_get_bits_32(partial_record_pointer, 3, 20); uint32_t latest_sale_record = bit_lib_get_bits_32(partial_record_pointer, 3, 20);
uint32_t latest_sale_full_record = bit_lib_get_bits_32(full_record_pointer, 0, 27); uint32_t latest_sale_full_record = bit_lib_get_bits_32(full_record_pointer, 0, 27);
if(latest_sale_record != (latest_sale_full_record & 0xFFFFF)) break; if(latest_sale_record != (latest_sale_full_record & 0xFFFFF))
break; // check if the copy matches
if((latest_sale_record == 0) || (latest_sale_full_record == 0))
break; // prevent false positive
// Parse date // Parse date
// yyy yyyymmmm dddddhhh hhnnnnnn // yyy yyyymmmm dddddhhh hhnnnnnn

View File

@@ -1,7 +1,8 @@
/** /**
@mainpage Overview @mainpage notitle
## Welcome to Flipper Developer Documentation!
Welcome to the Flipper Developer Documentation! ---
This documentation is intended for developers interested in modifying the Flipper Zero firmware, creating Apps and JavaScript programs, or working on external hardware modules for the device. This documentation is intended for developers interested in modifying the Flipper Zero firmware, creating Apps and JavaScript programs, or working on external hardware modules for the device.

View File

@@ -15,6 +15,9 @@
* Example: * Example:
* ./fbt --extra-define=DIGITAL_SIGNAL_DEBUG_OUTPUT_PIN=gpio_ext_pb3 * ./fbt --extra-define=DIGITAL_SIGNAL_DEBUG_OUTPUT_PIN=gpio_ext_pb3
*/ */
#ifdef DIGITAL_SIGNAL_DEBUG_OUTPUT_PIN
#include <furi_hal.h>
#endif
#define TAG "DigitalSequence" #define TAG "DigitalSequence"

View File

@@ -1780,7 +1780,7 @@ NfcCommand mf_classic_poller_handler_nested_log(MfClassicPoller* instance) {
bool mf_classic_nested_is_target_key_found(MfClassicPoller* instance, bool is_dict_attack) { bool mf_classic_nested_is_target_key_found(MfClassicPoller* instance, bool is_dict_attack) {
MfClassicPollerDictAttackContext* dict_attack_ctx = &instance->mode_ctx.dict_attack_ctx; MfClassicPollerDictAttackContext* dict_attack_ctx = &instance->mode_ctx.dict_attack_ctx;
bool is_weak = dict_attack_ctx->prng_type == MfClassicPrngTypeWeak; bool is_weak = dict_attack_ctx->prng_type == MfClassicPrngTypeWeak;
uint8_t nested_target_key = dict_attack_ctx->nested_target_key; uint16_t nested_target_key = dict_attack_ctx->nested_target_key;
MfClassicKeyType target_key_type; MfClassicKeyType target_key_type;
uint8_t target_sector; uint8_t target_sector;