Commit graph

73 commits

Author SHA1 Message Date
pwpiwi
f784539dfb
fix iclass reader functions
* remove unused CMD_ICLASS_READCHECK
* fix wrong command coding in CodeIClassCommand()
* switch field off at end of commands to avoid RDV4 overheating
2019-10-08 11:48:49 +02:00
pwpiwi
1477ba8a3c iclass.c: speeding up MAC calculation 2019-08-24 18:21:01 +02:00
pwpiwi
17505ce2a7 cleaning up iclass.c and optimized_cipher.c
* add iclass.h
* reformatting
* whitespace fixes
* (no functional changes)
2019-08-22 07:44:02 +02:00
pwpiwi
b8dd1ef649
upgrading 'hf mfu' (#830)
* chg: write new dump file format by @mceloff
* chg: rename 'hf mfu dump' option 'n' to 'f' to align with other commands and RRG repo
* chg: replace ISO14443A_CMD_READBLOCK by MIFARE_CMD_READBLOCK, same for WRITEBLOCK
* fix: mifare_ultra_readblock() returned 14 bytes instead of 16
* chg: param_gethex_ex() now checks maximum output buffer length
* chg: ul_comp_write() was incomplete and for magic testing only
* fix: 16bit ULC counter had been displayed as 32bit
* chg: add check for 7 Byte UID, drop check for ATQA in type identification GetHF14AMfU_Type()
* fix: send HALT instead of dropping field in order to maintain a defined state
* chg: DropField() when command ends
* chg: check for invalid page ranges in 'hf mfu dump'
* fix: print correct lock bits when page range is used
* fix: do not write (incomplete) dumpfile when page range is used
* add: use UID for filename when no filename is given (RRG repo)
* chg: don't clear trace on each ULC authentication, clear trace at beginning of each command
* fix: don't send (DESFire?) deselect command after authentication
2019-06-06 07:33:12 +02:00
Samson Gama
3d057cfb91 Added some LED utility functions (#802) 2019-03-15 07:41:07 +01:00
pwpiwi
fc52fbd42f
Add raw HF signal plotting (#786)
* Add raw HF signal plotting
* new fpga module hi_get_trace.v - store A/D converter output to circular buffer on FPGA
* new command 'hf plot' - pull data from FPGA and display it in Graph Window
2019-02-20 19:18:12 +01:00
pwpiwi
d9de20fa4b
Fix 15 snoop (#752)
* fixing hf 15: implement hf 15 snoop
* rename hf 15 record to hf 15 snoop
* speedup sampling / decoding:
*   new FPGA mode FPGA_HF_READER_RX_XCORR_AMPLITUDE implements amplitude(ci, cq) on FPGA
*   inlining the decoders in iso15693.c
*   inlining memcpy/memset in LogTrace()
*   giving up the moving correlator for SOF in Handle15693SamplesFromTag
* decode more of EOF in Handle15693SamplesFromTag()
* some refactoring
2019-01-12 13:28:26 +01:00
pwpiwi
6a5d4e17f4
rework iso14443b device functions including FPGA I/Q signal transfer (#669)
* rework iso14443b device functions
* hf_read_rx_xcorr.v: transfer i/q pair in one 16bit frame
* hi_read_tx.v: invert ssp_dout. When nothing is transferred (ssp_dout=0), this results in no modulation (carrier on)
* adjust arm sources accordingly
* iso14443b.c: switch off carrier after hf 14b sri512read and hf 14b srix4kread
* iso14443b.c: fix DMA circular buffer handling
2018-09-16 00:53:28 +02:00
pwpiwi
44964fd181
Code cleanup (#616)
* coverity fixes (including a real bug in cmdhftopaz.c)
* Typo fix
* replace TRUE/FALSE by stdbool true/false
2018-06-13 08:13:20 +02:00
pwpiwi
6e49717b5e fix hf mf sim (issue #412) (#419)
* move to separate files mifaresim.[ch]
* check CRC of commands
* don't execute commands without successfull authentication
* ensure correct timing of REQA, WUPA, ANTICOL and SELECT responses
* trace reader commands immediately, only fix start time after tag response. Decreases time to be ready for next reader command.
* remove iso14443-4 remnants
* trace raw reader commands instead of decrypted ones
* some refactoring

* fix hf mf sim
* timing: decrease time to get ready for new reader commands
2017-10-20 17:55:13 +02:00
marshmellow42
979c76556a fix some iclass reader bugs (#350)
endless loop in reader if no tag was found
button press on pm3 did not cancel.
led_b was left on in some cases
also moved 14b detection to last in hf search to help speed up the
command for the other tags.  14b is slow (does multiple tests)
Thanks to @Fl0-0 and @pwpiwi for their idenfication of some of the
issues.
2017-07-05 18:11:48 +02:00
marshmellow42
34e2af02a4 bug fix for hf iclass reader and iclass detection
memory locations in code are now accurate and the CC output is not
corrupted by the config's crc.

also the looping and flags for what to read are now correctly
implemented in the code.
2017-06-23 13:50:25 -04:00
marshmellow42
671ff89fcb fix iclass write
thanks to prof_abrasive && go_tus
2016-11-29 14:59:14 -05:00
marshmellow42
e7707cdb17 verify wait isn't null 2016-02-14 17:41:16 -05:00
marshmellow42
3ac22ee1cf use read instead of readcheck except to auth 2015-07-23 01:12:02 -04:00
marshmellow42
4d68ec02b2 iclass refactor/cleanup 2015-07-21 14:26:46 -04:00
marshmellow42
aa53efc340 iclass additions
multiple contributors - thanks!
2015-07-20 13:41:40 -04:00
pwpiwi
09ffd16ee2 - fix: ensure that FpgaDownloadAndGo() is always called before requesting
any memory from BigBuf[]. This is required because FpgaDownloadAndGo() might
  allocate, use, and free most of BigBuf[] when decompressing FPGA configs.
- cleanup: remove rests of deprecated "end of trace markers" (0x44)
2015-06-29 09:08:52 +02:00
marshmellow42
6ce0e5386a HF Search - refactoring cmds to work with it 2015-05-12 16:45:48 -04:00
Martin Holst Swende
83602affe5 Fixed buffer initialization errors, as reported in http://www.proxmark.org/forum/viewtopic.php?pid=15337#p15337 2015-04-08 13:31:04 +02:00
Martin Holst Swende
caaf9618ae Minor mod to 'hf iclass read', it now also reads and prints the configuration of the tag found 2015-03-29 21:49:58 +02:00
Martin Holst Swende
c8387e85e3 iClass full simulation of tags now officially works, with some cheating regarding reader update and write commands 2015-03-02 21:30:22 +01:00
Martin Holst Swende
e5cd4ee4b4 Tag MAC finally works! (Full sim not yet, though) 2015-03-02 20:14:35 +01:00
Martin Holst Swende
61fe90736b Implemented the correct way to calculate MAC from a tag, feeding it an extra 32 zeroes. Also divided it up into two parts, one of which can be precalculated by the device before the simulation begins 2015-03-02 00:38:36 +01:00
Martin Holst Swende
10a8875c72 Implemented new optimized version of MAC-calculation for iclass 2015-02-26 20:35:35 +01:00
Martin Holst Swende
b19caaefc2 Fixed minor bugs in iclass fullsim, does not work yet though 2015-02-21 20:47:40 +01:00
Martin Holst Swende
b67f7ec359 Further implementation of iclass 'fullsim'. Moved protocol definitions to shared file. Had to add some loclass-function to arm-side to support authentication in fullsim mode 2015-02-18 20:02:44 +01:00
Martin Holst Swende
428d622160 Fixed bug with iclass dump which prevented saving to file 2015-02-14 20:42:23 +01:00
Martin Holst Swende
3000dc4e7e Generic tracing; removed iso14a_XX-functions, removed traceLen as global varible 2015-02-07 20:49:40 +01:00
Martin Holst Swende
b3cc5f2987 Reverted erroneous commit from bigbuf-rework 2015-01-29 19:58:46 +01:00
pwpiwi
f71f4deb8f BigBuf and tracing rework: allow much longer traces in in hf commands
- provided a BigBuf_malloc() function to dynamically allocate parts of BigBuf
  e.g. for DMA-Buffers, Frame-Buffers, Emulator-Memory
- the whole rest of BigBuf is now available for traces (instead of a small fixed amount)
- send actual traceLen together with trace data
- changed client side to cope with varying traceLen
- changed small buffers to automatic variables instead of parts of BigBuf
2015-01-28 07:18:51 +01:00
pwpiwi
117d9ec25c Refactoring of BigBuf handling in order to prepare for more efficient memory allocation and longer traces. 2015-01-27 22:25:55 +01:00
Martin Holst Swende
6b038d192a Minor dox 2015-01-15 15:45:54 +01:00
Martin Holst Swende
7b941c8d7f Fixed memory corruption after reader-attack in armsrc, fixed annoying LED 2015-01-15 15:27:44 +01:00
Martin Holst Swende
645c960f61 Implemented new FPGA mode for iclass tag simulation. Reduces arm-side size of transfer/memory by a factor of 8. Makes for easier arm-side encoding of messages, for when we start needing to do that on the fly instead of using precalculated messages 2015-01-15 15:16:34 +01:00
Martin Holst Swende
55eaed8f2a Documentation to apps.h, documentation/renaming to iclass 2015-01-12 22:08:57 +01:00
iceman1001
4888b28195 Merge branch 'master' of https://github.com/Proxmark/proxmark3 2015-01-07 11:09:05 +01:00
Martin Holst Swende
cb29e00a12 Save iclass dumps to file, like mifare-dump functionality works 2015-01-07 09:57:18 +01:00
iceman1001
3fe4ff4f03 CHG: generic code clean up. Removal of commented code.
CHG: USB_CMD_DATA_SIZE is now used as maxsize for transfer of data between client and pm3device
CHG: suggested a fix for the underscore problem in ioclass\fileutils.c
ADD:  tnp3xx support
ADD:  nxp tag idents.
ADD:  identifiction of chinese backdoor commands to hf 14a reader.
2015-01-05 15:51:27 +01:00
Martin Holst Swende
39d3ce5dd6 Moved iclass crc to be based on a lookup table 2015-01-04 22:10:25 +01:00
Martin Holst Swende
c8dd9b092e Some work on iclass dump and iclass list, now the dumping is a lot more stable. I think the comms should be measured and tuned a bit more, right now it kind of works thanks to retry-functionality, but the retries are probably not needed if we are a bit more careful about timing, so we don't send commands too fast for the tag to handle 2015-01-04 14:53:26 +01:00
Martin Holst Swende
2e9d4b3ff4 Some work on iclass, started on some better support in 'hf iclass list' and also fixes to 'hf iclass reader' so it exits better when the button is pressed 2015-01-03 15:11:48 +01:00
pwpiwi
471c514167 Merge branch 'master' of https://github.com/Proxmark/proxmark3 2014-12-16 07:47:02 +01:00
pwpiwi
6a1f2d82bb bugfixes iso14443a (hf 14a commands)
- buffers were too small to handle 256 byte frames
- parity bits were only handled for up to 32 byte frames
- trace format was inefficient
- removed parity calculation from decoders in iclass.c (parity not used on air anyway)
2014-12-16 07:41:07 +01:00
Martin Holst Swende
6116c79618 Reverted to original malicious CSNs from paper, it appears legit readers does not accept if they dont end with F7,FF,12,E0 2014-12-14 21:37:56 +01:00
Martin Holst Swende
eabba3df7e Fix (iclass) 2014-12-14 18:07:12 +01:00
Martin Holst Swende
2ed270a854 Coverity-fixes in armsrc 2014-10-28 21:44:17 +01:00
Martin Holst Swende
9b82de75f4 more work towards iclass elite dumping.. not quite finished yet though :( 2014-06-30 00:20:40 +02:00
Martin Holst Swende
aa41c6058a Merged two iclass-reader functions into one to remove duplicated code, update loclass library with hash2 algo 2014-06-29 23:34:24 +02:00
Martin Holst Swende
dbf732ee41 Minor 2014-06-29 13:48:13 +02:00