social_moscow parser verification collisions fix

This commit is contained in:
Methodius 2023-12-07 21:59:27 +09:00
parent 1b45b8a17d
commit 5d28939c28
No known key found for this signature in database
GPG Key ID: 122FA99A00B41679

View File

@ -671,7 +671,7 @@ bool parse_transport_block(const MfClassicBlock* block, FuriString* result) {
FuriHalRtcDateTime card_start_trip_minutes_s = {0};
from_minutes_to_datetime(
(card_start_trip_date) * 24 * 60 + card_start_trip_time,
(card_start_trip_date)*24 * 60 + card_start_trip_time,
&card_start_trip_minutes_s,
1992);
furi_string_printf(
@ -1565,8 +1565,11 @@ static bool social_moscow_parse(const NfcDevice* device, FuriString* parsed_data
const MfClassicSectorTrailer* sec_tr =
mf_classic_get_sector_trailer_by_sector(data, cfg.data_sector);
const uint64_t key = nfc_util_bytes2num(sec_tr->key_a.data, COUNT_OF(sec_tr->key_a.data));
if(key != cfg.keys[cfg.data_sector].a) break;
const uint64_t key_a =
nfc_util_bytes2num(sec_tr->key_a.data, COUNT_OF(sec_tr->key_a.data));
const uint64_t key_b =
nfc_util_bytes2num(sec_tr->key_b.data, COUNT_OF(sec_tr->key_b.data));
if((key_a != cfg.keys[cfg.data_sector].a) || (key_b != cfg.keys[cfg.data_sector].b)) break;
uint32_t card_code = bit_lib_get_bits_32(data->block[60].data, 8, 24);
uint8_t card_region = bit_lib_get_bits(data->block[60].data, 32, 8);