Support Mifare Simulate and Sniff function

pull/3/head
wh201906 5 years ago
parent 5816d1b1b6
commit 2790afc193

@ -37,6 +37,84 @@
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
</context> </context>
<context>
<name>MF_Sim_simDialog</name>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="14"/>
<source>Simulate</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="37"/>
<source>u</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="66"/>
<source>UID 4 or 7 bytes. If not specified, the UID 4B from emulator memory will be used</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="87"/>
<source>n</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="116"/>
<source>Automatically exit simulation after &lt;numreads&gt; blocks have been read by reader. 0 = infinite</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="137"/>
<source>i</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="150"/>
<source>Interactive, means that console will not be returned until simulation finishes or is aborted</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="171"/>
<source>x</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="184"/>
<source>Crack, performs the &apos;reader attack&apos;, nr/ar attack against a legitimate reader, fishes out the key(s)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="205"/>
<source>e</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="218"/>
<source>set keys found from &apos;reader attack&apos; to emulator memory (implies x and i)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="239"/>
<source>f</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="268"/>
<source>get UIDs to use for &apos;reader attack&apos; from file &apos;f &lt;filename.txt&gt;&apos; (implies x and i)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="289"/>
<source>r</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="302"/>
<source>Generate random nonces instead of sequential nonces. Standard reader attack won&apos;t work with this option, only moebius attack works</source>
<translation type="unfinished"></translation>
</message>
</context>
<context> <context>
<name>MF_UID_parameterDialog</name> <name>MF_UID_parameterDialog</name>
<message> <message>
@ -88,250 +166,255 @@
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="113"/> <location filename="../ui/mainwindow.ui" line="110"/>
<source>Mifare</source> <source>Mifare</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="206"/> <location filename="../ui/mainwindow.ui" line="203"/>
<source>&gt;&gt;</source> <source>&gt;&gt;</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="231"/> <location filename="../ui/mainwindow.ui" line="228"/>
<source>&lt;&lt;</source> <source>&lt;&lt;</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="263"/> <location filename="../ui/mainwindow.ui" line="260"/>
<source>F</source> <source>F</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="320"/> <location filename="../ui/mainwindow.ui" line="317"/>
<source>Card Type</source> <source>Card Type</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="335"/> <location filename="../ui/mainwindow.ui" line="332"/>
<source>MINI</source> <source>MINI</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="342"/> <location filename="../ui/mainwindow.ui" line="339"/>
<source>1K</source> <source>1K</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="352"/> <location filename="../ui/mainwindow.ui" line="349"/>
<source>2K</source> <source>2K</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="359"/> <location filename="../ui/mainwindow.ui" line="356"/>
<source>4K</source> <source>4K</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="369"/> <location filename="../ui/mainwindow.ui" line="366"/>
<source>File</source> <source>File</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="387"/> <location filename="../ui/mainwindow.ui" line="384"/>
<location filename="../ui/mainwindow.ui" line="944"/> <location filename="../ui/mainwindow.ui" line="948"/>
<source>Load</source> <source>Load</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="400"/> <location filename="../ui/mainwindow.ui" line="397"/>
<location filename="../ui/mainwindow.ui" line="957"/> <location filename="../ui/mainwindow.ui" line="961"/>
<source>Save</source> <source>Save</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="420"/> <location filename="../ui/mainwindow.ui" line="417"/>
<location filename="../ui/mainwindow.cpp" line="534"/> <location filename="../ui/mainwindow.cpp" line="602"/>
<source>Data</source> <source>Data</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="430"/> <location filename="../ui/mainwindow.ui" line="427"/>
<source>Key</source> <source>Key</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="440"/> <location filename="../ui/mainwindow.ui" line="437"/>
<source>Attack</source> <source>Attack</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="465"/> <location filename="../ui/mainwindow.ui" line="462"/>
<source>Card Info</source> <source>Card Info</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="478"/> <location filename="../ui/mainwindow.ui" line="475"/>
<source>Check Default</source> <source>Check Default</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="491"/> <location filename="../ui/mainwindow.ui" line="488"/>
<source>Nested</source> <source>Nested</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="498"/> <location filename="../ui/mainwindow.ui" line="495"/>
<source>Hardnested</source> <source>Hardnested</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="523"/> <location filename="../ui/mainwindow.ui" line="520"/>
<source>Read/Write</source> <source>Read/Write</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="533"/> <location filename="../ui/mainwindow.ui" line="530"/>
<source>Block:</source> <source>Block:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="565"/> <location filename="../ui/mainwindow.ui" line="562"/>
<source>Key:</source> <source>Key:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="584"/> <location filename="../ui/mainwindow.ui" line="581"/>
<source>Key Type:</source> <source>Key Type:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="604"/> <location filename="../ui/mainwindow.ui" line="601"/>
<source>A</source> <source>A</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="609"/> <location filename="../ui/mainwindow.ui" line="606"/>
<source>B</source> <source>B</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="632"/> <location filename="../ui/mainwindow.ui" line="614"/>
<source>Data:</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ui/mainwindow.ui" line="636"/>
<source>Normal(Require Password)</source> <source>Normal(Require Password)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="647"/> <location filename="../ui/mainwindow.ui" line="651"/>
<location filename="../ui/mainwindow.ui" line="736"/> <location filename="../ui/mainwindow.ui" line="740"/>
<source>Read Block</source> <source>Read Block</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="654"/> <location filename="../ui/mainwindow.ui" line="658"/>
<location filename="../ui/mainwindow.ui" line="743"/> <location filename="../ui/mainwindow.ui" line="747"/>
<source>Write Block</source> <source>Write Block</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="661"/> <location filename="../ui/mainwindow.ui" line="665"/>
<location filename="../ui/mainwindow.ui" line="750"/> <location filename="../ui/mainwindow.ui" line="754"/>
<location filename="../ui/mainwindow.ui" line="850"/> <location filename="../ui/mainwindow.ui" line="854"/>
<source>Read All</source> <source>Read All</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="668"/> <location filename="../ui/mainwindow.ui" line="672"/>
<location filename="../ui/mainwindow.ui" line="757"/> <location filename="../ui/mainwindow.ui" line="761"/>
<source>Write All</source> <source>Write All</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="687"/> <location filename="../ui/mainwindow.ui" line="691"/>
<source>Dump</source> <source>Dump</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="700"/> <location filename="../ui/mainwindow.ui" line="704"/>
<source>Restore</source> <source>Restore</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="710"/> <location filename="../ui/mainwindow.ui" line="714"/>
<source>Chinese Magic Card(Without Password)</source> <source>Chinese Magic Card(Without Password)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="722"/> <location filename="../ui/mainwindow.ui" line="726"/>
<source>Lock UFUID Card</source> <source>Lock UFUID Card</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="729"/> <location filename="../ui/mainwindow.ui" line="733"/>
<location filename="../ui/mainwindow.cpp" line="461"/> <location filename="../ui/mainwindow.cpp" line="461"/>
<source>About UID Card</source> <source>About UID Card</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="770"/> <location filename="../ui/mainwindow.ui" line="774"/>
<source>Set Parameter</source> <source>Set Parameter</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="789"/> <location filename="../ui/mainwindow.ui" line="793"/>
<source>Wipe</source> <source>Wipe</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="815"/> <location filename="../ui/mainwindow.ui" line="819"/>
<location filename="../ui/mainwindow.ui" line="870"/> <location filename="../ui/mainwindow.ui" line="874"/>
<source>Simulate</source> <source>Simulate</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="843"/> <location filename="../ui/mainwindow.ui" line="847"/>
<source>Load from data above</source> <source>Load from data above</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="413"/> <location filename="../ui/mainwindow.ui" line="410"/>
<location filename="../ui/mainwindow.ui" line="863"/> <location filename="../ui/mainwindow.ui" line="867"/>
<source>Clear</source> <source>Clear</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="893"/> <location filename="../ui/mainwindow.ui" line="897"/>
<location filename="../ui/mainwindow.ui" line="924"/> <location filename="../ui/mainwindow.ui" line="928"/>
<source>Sniff</source> <source>Sniff</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="931"/> <location filename="../ui/mainwindow.ui" line="935"/>
<source>List Sniff Data</source> <source>List Sniff Data</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="983"/> <location filename="../ui/mainwindow.ui" line="987"/>
<source>RawCommand</source> <source>RawCommand</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="1030"/> <location filename="../ui/mainwindow.ui" line="1034"/>
<location filename="../ui/mainwindow.cpp" line="143"/> <location filename="../ui/mainwindow.cpp" line="143"/>
<source>History:</source> <source>History:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="1062"/> <location filename="../ui/mainwindow.ui" line="1066"/>
<source>ClearHistory</source> <source>ClearHistory</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="1081"/> <location filename="../ui/mainwindow.ui" line="1085"/>
<source>Send</source> <source>Send</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="1088"/> <location filename="../ui/mainwindow.ui" line="1092"/>
<source>ClearOutput</source> <source>ClearOutput</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -345,6 +428,8 @@
<location filename="../ui/mainwindow.cpp" line="291"/> <location filename="../ui/mainwindow.cpp" line="291"/>
<location filename="../ui/mainwindow.cpp" line="314"/> <location filename="../ui/mainwindow.cpp" line="314"/>
<location filename="../ui/mainwindow.cpp" line="327"/> <location filename="../ui/mainwindow.cpp" line="327"/>
<location filename="../ui/mainwindow.cpp" line="518"/>
<location filename="../ui/mainwindow.cpp" line="537"/>
<source>Info</source> <source>Info</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -361,7 +446,7 @@
<message> <message>
<location filename="../ui/mainwindow.cpp" line="95"/> <location filename="../ui/mainwindow.cpp" line="95"/>
<location filename="../ui/mainwindow.cpp" line="105"/> <location filename="../ui/mainwindow.cpp" line="105"/>
<location filename="../ui/mainwindow.cpp" line="524"/> <location filename="../ui/mainwindow.cpp" line="592"/>
<source>Not Connected</source> <source>Not Connected</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -373,6 +458,7 @@
<message> <message>
<location filename="../ui/mainwindow.cpp" line="278"/> <location filename="../ui/mainwindow.cpp" line="278"/>
<location filename="../ui/mainwindow.cpp" line="291"/> <location filename="../ui/mainwindow.cpp" line="291"/>
<location filename="../ui/mainwindow.cpp" line="518"/>
<source>Failed to open</source> <source>Failed to open</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -430,6 +516,7 @@
<message> <message>
<location filename="../ui/mainwindow.cpp" line="314"/> <location filename="../ui/mainwindow.cpp" line="314"/>
<location filename="../ui/mainwindow.cpp" line="327"/> <location filename="../ui/mainwindow.cpp" line="327"/>
<location filename="../ui/mainwindow.cpp" line="537"/>
<source>Failed to save to</source> <source>Failed to save to</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -529,49 +616,69 @@
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.cpp" line="525"/> <location filename="../ui/mainwindow.cpp" line="505"/>
<location filename="../ui/mainwindow.cpp" line="642"/> <source>Plz select the trace file:</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ui/mainwindow.cpp" line="506"/>
<source>Trace Files(*.trc);;All Files(*.*)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ui/mainwindow.cpp" line="528"/>
<source>Plz select the location to save trace file:</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ui/mainwindow.cpp" line="529"/>
<source>Trace Files(*.trc)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../ui/mainwindow.cpp" line="593"/>
<location filename="../ui/mainwindow.cpp" line="710"/>
<source>Idle</source> <source>Idle</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.cpp" line="532"/> <location filename="../ui/mainwindow.cpp" line="600"/>
<location filename="../ui/mainwindow.cpp" line="541"/> <location filename="../ui/mainwindow.cpp" line="609"/>
<source>Sec</source> <source>Sec</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.cpp" line="533"/> <location filename="../ui/mainwindow.cpp" line="601"/>
<source>Blk</source> <source>Blk</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.cpp" line="542"/> <location filename="../ui/mainwindow.cpp" line="610"/>
<source>KeyA</source> <source>KeyA</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.cpp" line="543"/> <location filename="../ui/mainwindow.cpp" line="611"/>
<source>KeyB</source> <source>KeyB</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.cpp" line="579"/> <location filename="../ui/mainwindow.cpp" line="647"/>
<source>HW Version:</source> <source>HW Version:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.cpp" line="581"/> <location filename="../ui/mainwindow.cpp" line="649"/>
<source>PM3:</source> <source>PM3:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.cpp" line="583"/> <location filename="../ui/mainwindow.cpp" line="651"/>
<source>State:</source> <source>State:</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.cpp" line="638"/> <location filename="../ui/mainwindow.cpp" line="706"/>
<source>Running</source> <source>Running</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@ -579,28 +686,28 @@
<context> <context>
<name>Mifare</name> <name>Mifare</name>
<message> <message>
<location filename="../module/mifare.cpp" line="289"/> <location filename="../module/mifare.cpp" line="310"/>
<location filename="../module/mifare.cpp" line="386"/> <location filename="../module/mifare.cpp" line="419"/>
<source>Success!</source> <source>Success!</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../module/mifare.cpp" line="289"/> <location filename="../module/mifare.cpp" line="310"/>
<location filename="../module/mifare.cpp" line="293"/> <location filename="../module/mifare.cpp" line="314"/>
<location filename="../module/mifare.cpp" line="386"/> <location filename="../module/mifare.cpp" line="419"/>
<location filename="../module/mifare.cpp" line="390"/> <location filename="../module/mifare.cpp" line="423"/>
<location filename="../module/mifare.cpp" line="425"/> <location filename="../module/mifare.cpp" line="473"/>
<source>Info</source> <source>Info</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../module/mifare.cpp" line="293"/> <location filename="../module/mifare.cpp" line="314"/>
<location filename="../module/mifare.cpp" line="390"/> <location filename="../module/mifare.cpp" line="423"/>
<source>Failed!</source> <source>Failed!</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../module/mifare.cpp" line="425"/> <location filename="../module/mifare.cpp" line="473"/>
<source>Failed to read card.</source> <source>Failed to read card.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>

@ -45,6 +45,92 @@
<translation type="vanished"></translation> <translation type="vanished"></translation>
</message> </message>
</context> </context>
<context>
<name>MF_Sim_simDialog</name>
<message>
<source>Dialog</source>
<translation type="obsolete"></translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="14"/>
<source>Simulate</source>
<translation></translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="37"/>
<source>u</source>
<translation></translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="66"/>
<source>UID 4 or 7 bytes. If not specified, the UID 4B from emulator memory will be used</source>
<translation>47UID使4UID</translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="87"/>
<source>n</source>
<translation></translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="116"/>
<source>Automatically exit simulation after &lt;numreads&gt; blocks have been read by reader. 0 = infinite</source>
<translation>&lt;n&gt;退n0退</translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="137"/>
<source>i</source>
<translation></translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="150"/>
<source>Interactive, means that console will not be returned until simulation finishes or is aborted</source>
<translation>PM3使</translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="171"/>
<source>x</source>
<translation></translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="184"/>
<source>Crack, performs the &apos;reader attack&apos;, nr/ar attack against a legitimate reader, fishes out the key(s)</source>
<translation>nr/ar()</translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="205"/>
<source>e</source>
<translation></translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="218"/>
<source>set keys found from &apos;reader attack&apos; to emulator memory (implies x and i)</source>
<translation>xi</translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="239"/>
<source>f</source>
<translation></translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="268"/>
<source>get UIDs to use for &apos;reader attack&apos; from file &apos;f &lt;filename.txt&gt;&apos; (implies x and i)</source>
<translation>&lt;filename.txt&gt;UIDxi</translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="289"/>
<source>r</source>
<translation></translation>
</message>
<message>
<location filename="../ui/mf_sim_simdialog.ui" line="302"/>
<source>Generate random nonces instead of sequential nonces. Standard reader attack won&apos;t work with this option, only moebius attack works</source>
<translation>noncenoncePM3moebius</translation>
</message>
<message>
<source> Generate random nonces instead of sequential nonces. Standard reader attack won&apos;t work with this option, only moebius attack works.</source>
<translation type="vanished">noncenoncePM3moebius</translation>
</message>
</context>
<context> <context>
<name>MF_UID_parameterDialog</name> <name>MF_UID_parameterDialog</name>
<message> <message>
@ -104,250 +190,255 @@
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="113"/> <location filename="../ui/mainwindow.ui" line="110"/>
<source>Mifare</source> <source>Mifare</source>
<translation>Mifare(IC)</translation> <translation>Mifare(IC)</translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="206"/> <location filename="../ui/mainwindow.ui" line="203"/>
<source>&gt;&gt;</source> <source>&gt;&gt;</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="231"/> <location filename="../ui/mainwindow.ui" line="228"/>
<source>&lt;&lt;</source> <source>&lt;&lt;</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="263"/> <location filename="../ui/mainwindow.ui" line="260"/>
<source>F</source> <source>F</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="320"/> <location filename="../ui/mainwindow.ui" line="317"/>
<source>Card Type</source> <source>Card Type</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="335"/> <location filename="../ui/mainwindow.ui" line="332"/>
<source>MINI</source> <source>MINI</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="342"/> <location filename="../ui/mainwindow.ui" line="339"/>
<source>1K</source> <source>1K</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="352"/> <location filename="../ui/mainwindow.ui" line="349"/>
<source>2K</source> <source>2K</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="359"/> <location filename="../ui/mainwindow.ui" line="356"/>
<source>4K</source> <source>4K</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="369"/> <location filename="../ui/mainwindow.ui" line="366"/>
<source>File</source> <source>File</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="387"/> <location filename="../ui/mainwindow.ui" line="384"/>
<location filename="../ui/mainwindow.ui" line="944"/> <location filename="../ui/mainwindow.ui" line="948"/>
<source>Load</source> <source>Load</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="400"/> <location filename="../ui/mainwindow.ui" line="397"/>
<location filename="../ui/mainwindow.ui" line="957"/> <location filename="../ui/mainwindow.ui" line="961"/>
<source>Save</source> <source>Save</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="420"/> <location filename="../ui/mainwindow.ui" line="417"/>
<location filename="../ui/mainwindow.cpp" line="534"/> <location filename="../ui/mainwindow.cpp" line="602"/>
<source>Data</source> <source>Data</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="430"/> <location filename="../ui/mainwindow.ui" line="427"/>
<source>Key</source> <source>Key</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="440"/> <location filename="../ui/mainwindow.ui" line="437"/>
<source>Attack</source> <source>Attack</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="465"/> <location filename="../ui/mainwindow.ui" line="462"/>
<source>Card Info</source> <source>Card Info</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="478"/> <location filename="../ui/mainwindow.ui" line="475"/>
<source>Check Default</source> <source>Check Default</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="491"/> <location filename="../ui/mainwindow.ui" line="488"/>
<source>Nested</source> <source>Nested</source>
<translation>Nested</translation> <translation>Nested</translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="498"/> <location filename="../ui/mainwindow.ui" line="495"/>
<source>Hardnested</source> <source>Hardnested</source>
<translation>Hardested</translation> <translation>Hardested</translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="523"/> <location filename="../ui/mainwindow.ui" line="520"/>
<source>Read/Write</source> <source>Read/Write</source>
<translation>/</translation> <translation>/</translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="533"/> <location filename="../ui/mainwindow.ui" line="530"/>
<source>Block:</source> <source>Block:</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="565"/> <location filename="../ui/mainwindow.ui" line="562"/>
<source>Key:</source> <source>Key:</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="584"/> <location filename="../ui/mainwindow.ui" line="581"/>
<source>Key Type:</source> <source>Key Type:</source>
<translation>Key</translation> <translation>Key</translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="604"/> <location filename="../ui/mainwindow.ui" line="601"/>
<source>A</source> <source>A</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="609"/> <location filename="../ui/mainwindow.ui" line="606"/>
<source>B</source> <source>B</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="632"/> <location filename="../ui/mainwindow.ui" line="614"/>
<source>Data:</source>
<translation></translation>
</message>
<message>
<location filename="../ui/mainwindow.ui" line="636"/>
<source>Normal(Require Password)</source> <source>Normal(Require Password)</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="647"/> <location filename="../ui/mainwindow.ui" line="651"/>
<location filename="../ui/mainwindow.ui" line="736"/> <location filename="../ui/mainwindow.ui" line="740"/>
<source>Read Block</source> <source>Read Block</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="654"/> <location filename="../ui/mainwindow.ui" line="658"/>
<location filename="../ui/mainwindow.ui" line="743"/> <location filename="../ui/mainwindow.ui" line="747"/>
<source>Write Block</source> <source>Write Block</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="661"/> <location filename="../ui/mainwindow.ui" line="665"/>
<location filename="../ui/mainwindow.ui" line="750"/> <location filename="../ui/mainwindow.ui" line="754"/>
<location filename="../ui/mainwindow.ui" line="850"/> <location filename="../ui/mainwindow.ui" line="854"/>
<source>Read All</source> <source>Read All</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="668"/> <location filename="../ui/mainwindow.ui" line="672"/>
<location filename="../ui/mainwindow.ui" line="757"/> <location filename="../ui/mainwindow.ui" line="761"/>
<source>Write All</source> <source>Write All</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="687"/> <location filename="../ui/mainwindow.ui" line="691"/>
<source>Dump</source> <source>Dump</source>
<translation>Dump</translation> <translation>Dump</translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="700"/> <location filename="../ui/mainwindow.ui" line="704"/>
<source>Restore</source> <source>Restore</source>
<translation>Restore</translation> <translation>Restore</translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="710"/> <location filename="../ui/mainwindow.ui" line="714"/>
<source>Chinese Magic Card(Without Password)</source> <source>Chinese Magic Card(Without Password)</source>
<translation>UID</translation> <translation>UID</translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="722"/> <location filename="../ui/mainwindow.ui" line="726"/>
<source>Lock UFUID Card</source> <source>Lock UFUID Card</source>
<translation>UFUID</translation> <translation>UFUID</translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="729"/> <location filename="../ui/mainwindow.ui" line="733"/>
<location filename="../ui/mainwindow.cpp" line="461"/> <location filename="../ui/mainwindow.cpp" line="461"/>
<source>About UID Card</source> <source>About UID Card</source>
<translation>UID</translation> <translation>UID</translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="770"/> <location filename="../ui/mainwindow.ui" line="774"/>
<source>Set Parameter</source> <source>Set Parameter</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="789"/> <location filename="../ui/mainwindow.ui" line="793"/>
<source>Wipe</source> <source>Wipe</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="815"/> <location filename="../ui/mainwindow.ui" line="819"/>
<location filename="../ui/mainwindow.ui" line="870"/> <location filename="../ui/mainwindow.ui" line="874"/>
<source>Simulate</source> <source>Simulate</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="843"/> <location filename="../ui/mainwindow.ui" line="847"/>
<source>Load from data above</source> <source>Load from data above</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="413"/> <location filename="../ui/mainwindow.ui" line="410"/>
<location filename="../ui/mainwindow.ui" line="863"/> <location filename="../ui/mainwindow.ui" line="867"/>
<source>Clear</source> <source>Clear</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="893"/> <location filename="../ui/mainwindow.ui" line="897"/>
<location filename="../ui/mainwindow.ui" line="924"/> <location filename="../ui/mainwindow.ui" line="928"/>
<source>Sniff</source> <source>Sniff</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="931"/> <location filename="../ui/mainwindow.ui" line="935"/>
<source>List Sniff Data</source> <source>List Sniff Data</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="983"/> <location filename="../ui/mainwindow.ui" line="987"/>
<source>RawCommand</source> <source>RawCommand</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="1030"/> <location filename="../ui/mainwindow.ui" line="1034"/>
<location filename="../ui/mainwindow.cpp" line="143"/> <location filename="../ui/mainwindow.cpp" line="143"/>
<source>History:</source> <source>History:</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="1062"/> <location filename="../ui/mainwindow.ui" line="1066"/>
<source>ClearHistory</source> <source>ClearHistory</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="1081"/> <location filename="../ui/mainwindow.ui" line="1085"/>
<source>Send</source> <source>Send</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.ui" line="1088"/> <location filename="../ui/mainwindow.ui" line="1092"/>
<source>ClearOutput</source> <source>ClearOutput</source>
<translation></translation> <translation></translation>
</message> </message>
@ -361,6 +452,8 @@
<location filename="../ui/mainwindow.cpp" line="291"/> <location filename="../ui/mainwindow.cpp" line="291"/>
<location filename="../ui/mainwindow.cpp" line="314"/> <location filename="../ui/mainwindow.cpp" line="314"/>
<location filename="../ui/mainwindow.cpp" line="327"/> <location filename="../ui/mainwindow.cpp" line="327"/>
<location filename="../ui/mainwindow.cpp" line="518"/>
<location filename="../ui/mainwindow.cpp" line="537"/>
<source>Info</source> <source>Info</source>
<translation></translation> <translation></translation>
</message> </message>
@ -377,7 +470,7 @@
<message> <message>
<location filename="../ui/mainwindow.cpp" line="95"/> <location filename="../ui/mainwindow.cpp" line="95"/>
<location filename="../ui/mainwindow.cpp" line="105"/> <location filename="../ui/mainwindow.cpp" line="105"/>
<location filename="../ui/mainwindow.cpp" line="524"/> <location filename="../ui/mainwindow.cpp" line="592"/>
<source>Not Connected</source> <source>Not Connected</source>
<translation></translation> <translation></translation>
</message> </message>
@ -398,6 +491,7 @@ Continue?</source>
<message> <message>
<location filename="../ui/mainwindow.cpp" line="278"/> <location filename="../ui/mainwindow.cpp" line="278"/>
<location filename="../ui/mainwindow.cpp" line="291"/> <location filename="../ui/mainwindow.cpp" line="291"/>
<location filename="../ui/mainwindow.cpp" line="518"/>
<source>Failed to open</source> <source>Failed to open</source>
<translation></translation> <translation></translation>
</message> </message>
@ -467,6 +561,7 @@ Continue?</source>
<message> <message>
<location filename="../ui/mainwindow.cpp" line="314"/> <location filename="../ui/mainwindow.cpp" line="314"/>
<location filename="../ui/mainwindow.cpp" line="327"/> <location filename="../ui/mainwindow.cpp" line="327"/>
<location filename="../ui/mainwindow.cpp" line="537"/>
<source>Failed to save to</source> <source>Failed to save to</source>
<translation></translation> <translation></translation>
</message> </message>
@ -566,49 +661,69 @@ Continue?</source>
<translation> UIDNested</translation> <translation> UIDNested</translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.cpp" line="525"/> <location filename="../ui/mainwindow.cpp" line="505"/>
<location filename="../ui/mainwindow.cpp" line="642"/> <source>Plz select the trace file:</source>
<translation>trace</translation>
</message>
<message>
<location filename="../ui/mainwindow.cpp" line="506"/>
<source>Trace Files(*.trc);;All Files(*.*)</source>
<translation>Trace(*.trc);;(*.*)</translation>
</message>
<message>
<location filename="../ui/mainwindow.cpp" line="528"/>
<source>Plz select the location to save trace file:</source>
<translation>trace</translation>
</message>
<message>
<location filename="../ui/mainwindow.cpp" line="529"/>
<source>Trace Files(*.trc)</source>
<translation>Trace(*.trc)</translation>
</message>
<message>
<location filename="../ui/mainwindow.cpp" line="593"/>
<location filename="../ui/mainwindow.cpp" line="710"/>
<source>Idle</source> <source>Idle</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.cpp" line="532"/> <location filename="../ui/mainwindow.cpp" line="600"/>
<location filename="../ui/mainwindow.cpp" line="541"/> <location filename="../ui/mainwindow.cpp" line="609"/>
<source>Sec</source> <source>Sec</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.cpp" line="533"/> <location filename="../ui/mainwindow.cpp" line="601"/>
<source>Blk</source> <source>Blk</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.cpp" line="542"/> <location filename="../ui/mainwindow.cpp" line="610"/>
<source>KeyA</source> <source>KeyA</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.cpp" line="543"/> <location filename="../ui/mainwindow.cpp" line="611"/>
<source>KeyB</source> <source>KeyB</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.cpp" line="579"/> <location filename="../ui/mainwindow.cpp" line="647"/>
<source>HW Version:</source> <source>HW Version:</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.cpp" line="581"/> <location filename="../ui/mainwindow.cpp" line="649"/>
<source>PM3:</source> <source>PM3:</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.cpp" line="583"/> <location filename="../ui/mainwindow.cpp" line="651"/>
<source>State:</source> <source>State:</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../ui/mainwindow.cpp" line="638"/> <location filename="../ui/mainwindow.cpp" line="706"/>
<source>Running</source> <source>Running</source>
<translation></translation> <translation></translation>
</message> </message>
@ -620,28 +735,28 @@ Continue?</source>
<translation type="vanished"></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../module/mifare.cpp" line="289"/> <location filename="../module/mifare.cpp" line="310"/>
<location filename="../module/mifare.cpp" line="386"/> <location filename="../module/mifare.cpp" line="419"/>
<source>Success!</source> <source>Success!</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../module/mifare.cpp" line="289"/> <location filename="../module/mifare.cpp" line="310"/>
<location filename="../module/mifare.cpp" line="293"/> <location filename="../module/mifare.cpp" line="314"/>
<location filename="../module/mifare.cpp" line="386"/> <location filename="../module/mifare.cpp" line="419"/>
<location filename="../module/mifare.cpp" line="390"/> <location filename="../module/mifare.cpp" line="423"/>
<location filename="../module/mifare.cpp" line="425"/> <location filename="../module/mifare.cpp" line="473"/>
<source>Info</source> <source>Info</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../module/mifare.cpp" line="293"/> <location filename="../module/mifare.cpp" line="314"/>
<location filename="../module/mifare.cpp" line="390"/> <location filename="../module/mifare.cpp" line="423"/>
<source>Failed!</source> <source>Failed!</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../module/mifare.cpp" line="425"/> <location filename="../module/mifare.cpp" line="473"/>
<source>Failed to read card.</source> <source>Failed to read card.</source>
<translation></translation> <translation></translation>
</message> </message>

@ -50,7 +50,6 @@ void MainWindow::initUI() // will be called by main.app
void MainWindow::on_PM3_refreshPortButton_clicked() void MainWindow::on_PM3_refreshPortButton_clicked()
{ {
ui->PM3_portBox->clear(); ui->PM3_portBox->clear();
ui->PM3_portBox->addItem("");
QSerialPort serial; QSerialPort serial;
QStringList serialList; QStringList serialList;
foreach(const QSerialPortInfo &info, QSerialPortInfo::availablePorts()) foreach(const QSerialPortInfo &info, QSerialPortInfo::availablePorts())
@ -493,6 +492,55 @@ void MainWindow::on_MF_Sim_clearButton_clicked()
mifare->wipeE(); mifare->wipeE();
} }
void MainWindow::on_MF_Sim_simButton_clicked()
{
mifare->simulate();
}
void MainWindow::on_MF_Sniff_loadButton_clicked() // use a tmp file to support complicated path
{
QString title = "";
QString filename = "";
title = tr("Plz select the trace file:");
filename = QFileDialog::getOpenFileName(this, title, "./", tr("Trace Files(*.trc);;All Files(*.*)"));
qDebug() << filename;
if(filename != "")
{
QString tmpFile = "tmp" + QString::number(QDateTime::currentDateTime().toTime_t()) + ".trc";
if(QFile::copy(filename, "./" + tmpFile))
{
mifare->loadSniff(tmpFile);
QFile::remove("./" + tmpFile);
}
else
{
QMessageBox::information(this, tr("Info"), tr("Failed to open") + "\n" + filename);
}
}
}
void MainWindow::on_MF_Sniff_saveButton_clicked()
{
QString title = "";
QString filename = "";
title = tr("Plz select the location to save trace file:");
filename = QFileDialog::getSaveFileName(this, title, "./", tr("Trace Files(*.trc)"));
qDebug() << filename;
if(filename != "")
{
QString tmpFile = "tmp" + QString::number(QDateTime::currentDateTime().toTime_t()) + ".trc";
mifare->saveSniff(tmpFile);
if(!QFile::copy("./" + tmpFile, filename))
{
QMessageBox::information(this, tr("Info"), tr("Failed to save to") + "\n" + filename);
}
QFile::remove("./" + tmpFile);
}
}
void MainWindow::on_MF_Sniff_sniffButton_clicked() void MainWindow::on_MF_Sniff_sniffButton_clicked()
{ {
setState(false); setState(false);
@ -674,50 +722,4 @@ void MainWindow::setState(bool st)
void MainWindow::on_MF_Sim_simButton_clicked()
{
mifare->simulate();
}
void MainWindow::on_MF_Sniff_loadButton_clicked() // use a tmp file to support complicated path
{
QString title = "";
QString filename = "";
title = tr("Plz select the trace file:");
filename = QFileDialog::getOpenFileName(this, title, "./", tr("Trace Files(*.trc);;All Files(*.*)"));
qDebug() << filename;
if(filename != "")
{
QString tmpFile = "tmp" + QString::number(QDateTime::currentDateTime().toTime_t()) + ".trc";
if(QFile::copy(filename, "./" + tmpFile))
{
mifare->loadSniff(tmpFile);
QFile::remove("./" + tmpFile);
}
else
{
QMessageBox::information(this, tr("Info"), tr("Failed to open") + "\n" + filename);
}
}
}
void MainWindow::on_MF_Sniff_saveButton_clicked()
{
QString title = "";
QString filename = "";
title = tr("Plz select the location to save trace file:");
filename = QFileDialog::getSaveFileName(this, title, "./", tr("Trace Files(*.trc)"));
qDebug() << filename;
if(filename != "")
{
QString tmpFile = "tmp" + QString::number(QDateTime::currentDateTime().toTime_t()) + ".trc";
mifare->saveSniff(tmpFile);
if(!QFile::copy("./" + tmpFile, filename))
{
QMessageBox::information(this, tr("Info"), tr("Failed to save to") + "\n" + filename);
}
}
}

@ -608,6 +608,13 @@
</item> </item>
</widget> </widget>
</item> </item>
<item>
<widget class="QLabel" name="label_2">
<property name="text">
<string>Data:</string>
</property>
</widget>
</item>
</layout> </layout>
</item> </item>
<item> <item>

@ -11,7 +11,7 @@
</rect> </rect>
</property> </property>
<property name="windowTitle"> <property name="windowTitle">
<string>Dialog</string> <string>Simulate</string>
</property> </property>
<layout class="QVBoxLayout" name="verticalLayout"> <layout class="QVBoxLayout" name="verticalLayout">
<property name="spacing"> <property name="spacing">
@ -299,7 +299,7 @@
</sizepolicy> </sizepolicy>
</property> </property>
<property name="text"> <property name="text">
<string> Generate random nonces instead of sequential nonces. Standard reader attack won't work with this option, only moebius attack works.</string> <string>Generate random nonces instead of sequential nonces. Standard reader attack won't work with this option, only moebius attack works</string>
</property> </property>
<property name="wordWrap"> <property name="wordWrap">
<bool>true</bool> <bool>true</bool>

Loading…
Cancel
Save