Upd MFC keys: added 41 from RRG pm3

This commit is contained in:
Willy-JL
2024-02-08 23:46:10 +00:00
parent 6a35b87376
commit 134e74dda3
2 changed files with 53 additions and 6 deletions

View File

@@ -13,7 +13,7 @@
FFFFFFFFFFFF
# Blank key
000000000000
# NFC Forum MADkey❤️
# NFC Forum MADkey
A0A1A2A3A4A5
# MAD access key A (reversed)
A5A4A3A2A1A0
@@ -69,6 +69,9 @@ D2ECE8B9395E
B5FF67CBA951
EFF603E1EFE9
F14EE7CAE863
# ICT S14 A/B
9C28A60F7249
C9826AF02794
# RKF
# Vasttrafiken KeyA, RKF OstgotaTrafiken KeyA
FC00018778F7
@@ -561,6 +564,12 @@ A56C2DF9A26D
68D3F7307C89
# Smart Rider. Western Australian Public Transport Cards
568C9083F71C
117E5C165B10
24BB421C7973
3E3A546650EA
41F262D3AB66
514956AB3142
863933AE8388
# Bangkok metro key
97F5DA640B18
# Metro Valencia key
@@ -838,6 +847,7 @@ AE8587108640
# SafLock standalone door locks
135B88A94B8B
# Russian Troika card
EC29806D9738
08B386463229
0E8F64340BA4
0F1C63013DBA
@@ -2067,6 +2077,40 @@ EA0CA627FD06
661ABF99AFAD
# Key from evo Montreal (probably diversified)
1064BA5D6DF8
# Hotel key
CE0F4F15E909
D60DE9436219
# ATM Area de Girona, spanish transport card
A01000000000
A02000000000
A03000000000
A04000000000
A05000000000
A06000000000
A07000000000
A08000000000
A09000000000
A10000000000
A11000000000
A12000000000
A13000000000
A14000000000
A15000000000
B01000000000
B02000000000
B03000000000
B04000000000
B05000000000
B06000000000
B07000000000
B08000000000
B09000000000
B10000000000
B11000000000
B12000000000
B13000000000
B14000000000
B15000000000
# +--------------------------------------------------------------------------------------------------------+
# | https://github.com/RfidResearchGroup/proxmark3/blob/master/client/dictionaries/mfc_keys_bmp_sorted.dic |
# +--------------------------------------------------------------------------------------------------------+

View File

@@ -2,8 +2,8 @@ import pathlib
import string
file = (
pathlib.Path(__file__)
/ "../../applications/main/nfc/resources/nfc/assets/mf_classic_dict.nfc"
pathlib.Path(__file__).parent
/ "../applications/main/nfc/resources/nfc/assets/mf_classic_dict.nfc"
)
try:
lines = file.read_text(encoding="ascii").splitlines()
@@ -14,13 +14,16 @@ except UnicodeDecodeError:
exit()
for i, line in enumerate(lines):
lines[i] = line = line.strip()
if line.startswith("#"):
continue
lines[i] = line = line.upper()
if not line:
continue
if len(line) != 12 or any(char not in string.hexdigits for char in line):
print(f"line {i} is not correct: {line}")
print(f"line {i + 1} is not correct: {line}")
for j in reversed(range(i + 1, len(lines))):
if lines[j].upper() == line:
if lines[j].upper().strip() == line:
del lines[j]
file.write_text("\n".join(lines))
file.write_text("\n".join(line for line in lines if line.removeprefix("#")))