Commit graph

161 commits

Author SHA1 Message Date
marshmellow42 fb0c84c3df lf simask, lf simfsk and bug fixes 2015-02-19 21:21:11 -05:00
iceman1001 4ecde0e1ff Merge branch 'master' of https://github.com/Proxmark/proxmark3
Conflicts:
	armsrc/appmain.c
	armsrc/iclass.c
2015-02-10 21:53:16 +01:00
Martin Holst Swende 61972abbdd Merge branch 'master' into GenericTracing
Conflicts:
	armsrc/iso14443a.c
2015-02-10 21:25:14 +01:00
iceman1001 1e3a799d47 Merge branch 'master' of https://github.com/Proxmark/proxmark3 2015-02-10 09:01:31 +01:00
iceman1001 2b61c24212 Merge branch 'master' of https://github.com/Proxmark/proxmark3
Conflicts:
	armsrc/appmain.c
	armsrc/apps.h
	armsrc/lfops.c
2015-02-10 08:58:14 +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
pwpiwi 3b692427ac Bugfix hw tune, hf tune: voltage measures were VERY wrong
Modified hw detectreader: display reader field strength in mV units and to be less phony
2015-02-07 10:14:49 +01:00
iceman1001 385f398740 prepare to update the LF T55XX commands 2015-02-04 11:48:36 +01:00
Martin Holst Swende 0644d5e3a3 Merged with master 2015-01-31 18:21:38 +01:00
Martin Holst Swende 31abe49fd3 Some more fixes to longer lf recordings. Now also supports longer snoops, and an additional command 'lf config' has been defined, instead of having to specify all params for every call 2015-01-30 23:03:44 +01:00
iceman1001 64d1b4efc9 Merge branch 'master' of https://github.com/Proxmark/proxmark3
Conflicts:
	armsrc/Makefile
	armsrc/appmain.c
	armsrc/apps.h
	armsrc/epa.c
	armsrc/iclass.c
	armsrc/iso14443a.c
	armsrc/iso14443a.h
	armsrc/iso15693.c
	armsrc/lfops.c
	armsrc/mifarecmd.c
	armsrc/mifareutil.c
	armsrc/mifareutil.h
	armsrc/string.h
	armsrc/util.h
	bootrom/bootrom.c
	client/Makefile
	client/cmddata.c
	client/cmddata.h
	client/cmdhf.c
	client/cmdhf14a.c
	client/cmdhf14b.c
	client/cmdhf15.c
	client/cmdhficlass.c
	client/cmdhfmf.c
	client/cmdhfmfu.c
	client/cmdlf.c
	client/cmdlfem4x.c
	client/cmdlfhid.c
	client/cmdlfhitag.c
	client/cmdlfio.c
	client/cmdmain.c
	client/data.h
	client/flash.c
	client/graph.c
	client/graph.h
	client/loclass/elite_crack.c
	client/loclass/fileutils.c
	client/lualibs/commands.lua
	client/lualibs/html_dumplib.lua
	client/lualibs/mf_default_keys.lua
	client/lualibs/utils.lua
	client/mifarehost.c
	client/nonce2key/crapto1.c
	client/proxmark3.c
	client/scripting.c
	client/scripts/tnp3dump.lua
	client/scripts/tnp3sim.lua
	client/scripts/tracetest.lua
	common/Makefile.common
	common/cmd.c
	common/cmd.h
	common/lfdemod.c
	common/lfdemod.h
	common/usb_cdc.c
	common/usb_cdc.h
	include/usb_cmd.h
2015-01-29 21:39:33 +01:00
Martin Holst Swende f6d9fb173f Added client-side support for recording longer samples, fixed last (?) issues on device-side 2015-01-29 00:57:22 +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
iceman1001 c8b6da2295 Merge branch 'master' of https://github.com/holiman/proxmark3
Conflicts:
	armsrc/appmain.c
	armsrc/apps.h

Step 1 for the Ultralight / Ultralight-c
2015-01-20 20:59:24 +01:00
iceman1001 5149e37e66 Merge branch 'master' of https://github.com/Proxmark/proxmark3
Conflicts:
	armsrc/appmain.c
	armsrc/apps.h
2015-01-20 09:32:53 +01:00
Martin Holst Swende 1eb874ee3f Merge branch 'master' of github.com:Proxmark/proxmark3 2015-01-15 15:45:15 +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
iceman1001 a631936e84 ADD: Midnitesnaks's & Pentura labs Ultralight-c modifications in ARMSRC.
ADD:  des.c  ,  aes.c  in ARMSRC
2015-01-13 23:18:04 +01:00
Martin Holst Swende 55eaed8f2a Documentation to apps.h, documentation/renaming to iclass 2015-01-12 22:08:57 +01:00
Martin Holst Swende 31d1caa526 Reverted some minor things, altered other things to get it to compile cleanly 2015-01-08 17:51:52 +01:00
iceman1001 225ccb910e ADD: new defines: iso14443_CMD_AUTH_KEYA, iso14443_CMD_AUTH_KEYB, iso14443_CMD_AUTH_RESPONSE, iso14443_CMD_AUTH_STEP1, iso14443_CMD_AUTH_STEP2, CHINESE_BACKDOOR_INIT, CHINESE_BACKDOOR_STEP2,
REM: removed old comments in bootrom.c
CHG: mifare ultralight & desfire commands inside arm has been cleaned up. Next step is to refactor it into armsrc/mifaredesfire.c
2015-01-07 17:42:57 +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
iceman1001 6ff6ade2f5 ADD: midnitesnakes desfire, ultralight changes from Unstable branch.
ADD: Marshmellows fixes for the LF (demods) commands,  (LF SEACH)
ADD: Holimans changes with hash1_brute

FIXES:  minor fixes with some calls to "free" and redundant debug statement and code cleanup. removal of commented code.
2014-12-31 11:35:43 +01:00
marshmellow42 6bfa18eab4 Merge pull request #1 from Proxmark/master
Test
2014-12-29 16:14:23 -05:00
marshmellow42 66707a3b3c LF Demod bug fixes and add lf em em410xdemod
fixed a few bugs in lf demod that the streamlining added.  added new lf
em em410xdemod command that loops until button pressed. (similar to lf
hid fskdemod
2014-12-29 15:32:53 -05:00
iceman1001 d52e4e8819 ADD: HF 14A READER is now able to see if a presented card responses to the chinese magic backdoor commands.
FIX: simple namechange of some defines where it hinted it was related to "eml" when it wasn't.
2014-12-26 21:32:58 +01:00
iceman1001 a501c82b19 Applied Holiman's fixes for iclass.c and CSNs
Applied PwPiwi's new parity fix.
Applied Marshmellw's fixes for FSKdemod (HID, IO)

FIX: a potential bigbuffer fault given pwpiwi's change inside lfops.c CmdIOdemodFSK & CmdHIDdemodFSK
FIX: change some "int" parameters to uint's.
FIX: changed the lfops.c -  DoAcquisition125k_internal  to respect pwpiwi's definitions of FREE_BUFFER_OFFSET

HEADS up:  The ultralight functions hasn't been verified since pwpiwi's changes.
2014-12-17 20:33:21 +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
iceman1001 95e635947b ADD: the option to simulate tnp3xxx inthe command "hf mf sim"
ADD: found some new default keys
ADD: changed alot of memorys buffers to use constant values.  like usbbuffer sizes, tracelogs, etc etc
ADD: all changes Peter filmoore has in his pull request.
2014-11-26 13:52:39 +01:00
iceman1001 3649b640e6 CHG: added possiblity to send <UID> into the "HF 15 SIM" 2014-10-30 14:11:37 +01:00
iceman1001 72e930ef32 FIXED: lf t55xx fsk now demods but only to binary.
ADD:  holimans lf io / hid fskdemod  changes.
2014-10-23 18:36:44 +02:00
iceman1001 f6c18637ca chg: LF t55xx trace
new:  LF t55xx info
2014-10-06 19:42:50 +02:00
iceman1001 75465377b9 Merge branch 'master' of https://github.com/Proxmark/proxmark3
Conflicts:
	armsrc/appmain.c
	armsrc/apps.h
	armsrc/iclass.c
	client/Makefile
	client/cmdhficlass.c
	client/loclass/cipher.c
	client/loclass/fileutils.c
	client/loclass/ikeys.h
	include/usb_cmd.h
2014-09-19 10:50:34 +02:00
iceman1001 313ee67ea2 Fixed: "hf mfdes info" 2014-09-18 12:38:31 +02:00
iceman1001 f38a152863 First check in. 2014-09-11 23:23:46 +02:00
Martin Holst Swende 3ad48540d4 Merge branch 'iclass-research' of https://github.com/PenturaLabs/proxmark3 into PenturaLabs-iclass-research
Conflicts:
	README.txt
	armsrc/apps.h
	client/Makefile
	client/cmdhficlass.c
	client/cmdhficlass.h
2014-06-28 20:52:37 +02:00
Martin Holst Swende 6db28145ea Merge remote-tracking branch 'origin/master' into iclass-fixes 2014-06-28 12:47:40 +02:00
iZsh 3b2fee43ea New LF edge detection algorithm + lowpass filter
This is a new LF edge detection algorithm for the FPGA.

- It uses a low-pass IIR filter to clean the signal
(see https://fail0verflow.com/blog/2014/proxmark3-fpga-iir-filter.html)
- The algorithm is able to detect consecutive peaks in the same
  direction
- It uses an envelope follower to dynamically adjust the peak thresholds
- The main threshold used in the envelope follower can be set from the ARM side

fpga/lf_edge_detect.v,
fpga/lp20khz_1MSa_iir_filter.v,
fpga/min_max_tracker.v: New file.

fpga/lo_edge_detect.v, fpga/fpga_lf.v: Modify accordingly.

armsrc/apps.h (FPGA_CMD_SET_USER_BYTE1,
FPGA_CMD_SET_EDGE_DETECT_THRESHOLD): New FPGA command.
fpga/fpga_lf.v: Modify accordingly/Add a 8bit user register.

fpga/fpga_lf.bit: Update accordingly.

fpga/tests: New directory for testbenches

fpga/tests/Makefile: New file. It compiles the testbenches
and runs all the tests by default (comparing with the golden output)

fpga/tests/tb_lp20khz_1MSa_iir_filter.v,
fpga/tests/tb_min_max_tracker.v,
fpga/tests/tb_lf_edge_detect.v: New testbenches

fpga/tests/plot_edgedetect.py: New script to plot the results from
the edge detection tests.

fpga/tests/tb_data: New directory for data and golden outputs
2014-06-27 14:27:03 +02:00
Martin Holst Swende 42f57e0294 Merged with master 2014-06-27 13:16:31 +02:00
iZsh b014c96d68 new command "lf snoop" to snoop raw ADC values
fpga/lo_read.v (lf_field): new argument.
fpga/fpga_lf.v: modify accordingly.

armsrc/apps.h (FPGA_MAJOR_MODE_LF_READER): Rename as FPGA_MAJOR_MODE_LF_ADC.
armsrc/apps.h (FPGA_LF_ADC_READER_FIELD): New LF option.
armsrc/lfops.c: Modify accordingly.

client/cmdlf.c (CmdLFSnoop): New command.
armsrc/appmain.c, armsrc/lfops.c, client/cmdlf.h, include/usb_cmd.h: Modify accordingly.
2014-06-21 21:33:54 +02:00
iZsh 7cc204bff8 THIS REQUIRES A BOOTROM UPDATE!! To save FPGA area, split the LF and HF bitstreams and load them on-demand. 2014-06-20 01:02:59 +02:00
penturalabs fecd8202a5 implemented 'hf iclass dump xxxx',
all you need is the magic key to dump contents of an iclass card
2014-06-17 10:55:37 +01:00
Martin Holst Swende 9f6e9d1575 More work on iclass simulation attack 2014-06-16 21:27:12 +02:00
Martin Holst Swende 94ad01bfba Merged with head 2014-06-07 22:04:27 +02:00
Martin Holst Swende 83fd67ba0b Added mode for 424k modulation (iso 15693) 2014-06-07 21:40:47 +02:00
Martin Holst Swende f83cc12613 More work on iclass 2014-04-24 15:48:00 +02:00
Martin Holst Swende 17cba2693d Implemented client side changes for iclass hack, attempted to fix issues with trace. The trace functionality from iso14443 has been rewritten, unfortunately iclass used that also, which made iclass 'list' stop functioning, both for simulation and snooping 2014-04-24 14:13:33 +02:00
Martin Holst Swende ff7bb4ef17 Experimenting with hacking iclass 2014-04-17 09:53:54 +02:00
penturalabs c3963755b7 Implement replay command. 2014-04-15 11:47:01 +01:00
penturalabs a1f3bb120f Added Kantech ioProx Support 2014-03-18 20:52:48 +00:00
micki.held@gmx.de 7bc95e2e43 - fixed iso1443a ManchesterDecoder in order to fix broken Snoop/Sniff
- enhanced tracing: hf 14a list now shows meaningful timing information. With new option f it also shows the frame delay times (fdt)
- small fix for hf 14b list - it used to run into the trace trailer
- hf 14a sim now obeys iso14443 timing (fdt of 1172 or 1234 resp.)
Note: you need to flash FPGA as well.
More details in http://www.proxmark.org/forum/viewtopic.php?pid=9721#p9721
2014-02-19 20:35:04 +00:00
roel@libnfc.org 981bd4292e integrated MIFARE ultralight features, contributed by 'midnitesnake' 2013-10-11 08:43:23 +00:00
henryk@ploetzli.ch bf7163bdb3 * Add an option to lf read command to use an arbitrary divisor, enabling reading at frequencies other than 125 and 134 kHz. 2013-09-27 13:48:20 +00:00
micki.held@gmx.de 9492e0b098 Major rework of hf mf nested:
- PM: used GetCountMifare in MifareNested() for improved timing accuracy and to deliver better quality nonces
- PM: MifareNested now delivers exactly two different nonces to avoid time consuming multiple lfsr_recovery32() on client side
- Client: replaced quicksort by bucketsort in crapto1.c which is faster 
- Client: use multithreading (two parallel calls to lfsr_recovery32())
- Client: fixed a small bug in mfnested() (always showed trgkey=0)
- Client: introduced a mutex for PrintAndLog() to avoid interlaced printing
Minor rework of hf mf chk:
- Avoid time consuming off/on cycles. Send a "halt" instead.
2013-09-15 09:33:17 +00:00
martin.holst@gmail.com 7cf3ef203c Patch by jonor for raw ISO 1444B commands. See http://www.proxmark.org/forum/viewtopic.php?id=1729 for more info 2013-09-01 18:41:05 +00:00
micki.held@gmx.de 1c611bbd26 2013-07-08 17:56:05 +00:00
martin.holst@gmail.com e772353f72 Major changes to hf mf mifare 2013-06-26 21:13:02 +00:00
roel@libnfc.org 28afbd2bee added initial test to emulate memory of mf ul tag 2013-03-28 14:02:00 +00:00
roel@libnfc.org 54a942b05d merged all patches into CDC repository 2013-02-28 17:04:23 +00:00
roel@libnfc.org 79a73ab2d1 fixed USB GPIO bug reported by gregy, and fixed 'hf 14a reader' command 2013-02-27 13:23:38 +00:00
roel@libnfc.org 6e82300dda removed all old usb calls 2012-12-05 16:14:10 +00:00
roel@libnfc.org 902cb3c00b major USB update 2012-12-04 23:39:18 +00:00
roel@libnfc.org d19929cbe8 MAJOR update, added hitag2 reader, emulation and eavesdropping, lots of new code, including FPGA tweaks, part 2 2012-09-18 13:53:17 +00:00
frederikmoellers@aol.de 5acd09bdfb Basic support for EAC documents (e.g. German Identification Card)
-new files armsrc/epa.[ch] for ePA (electronic "Personalausweis") related functions
    -Offers elementary functions (EPA_PACE_MSE_Set_AT etc.)
    -Also offers one new USB command: EPA_PACE_Collect_Nonce
-created new command subtree in client: client/hfepa.[ch] ("hf epa")
    -offers "hf epa cnonces" (collect encrypted PACE nonces)
-more to come
2012-08-28 21:39:50 +00:00
Merlokbr@gmail.com 55acbb2a39 improved command hf mf sniff. Now it cant decode nested authentication and cant write emulator files 2012-07-16 14:49:51 +00:00
Merlokbr@gmail.com 5cd9ec01e0 hf 14a snoop optimized and added parameters. hf 14a sniff - not work. 2012-07-07 15:29:51 +00:00
Merlokbr@gmail.com b62a5a8444 small improvements, added new command hf mf sniff (there will be cool sniffer). But now... here is optimized hf 14a snoop. As I see it works the same as th old version. 2012-07-06 16:19:05 +00:00
Merlokbr@gmail.com 545a1f385c another "magic card" backdoor - command "read block". Added several commands to manipulate card data. 2012-07-05 14:05:01 +00:00
Merlokbr@gmail.com 0675f200e6 Added work with "magic Chinese" card (card from: ouyangweidaxian@live.cn) with wipe support). Change UID and wipe only. 2012-07-05 07:31:56 +00:00
cex123@gmail.com 2414f97889 Added Indala cloning. Fixed HID cloning bug 2012-07-02 08:37:50 +00:00
roel@libnfc.org 81cd0474cb fixed a lot of simulation issues 2012-06-29 10:24:05 +00:00
dekoninggans@gmail.com 1e26214152 Extended iClass support with Card and Reader emulation! 2012-06-28 13:38:40 +00:00
marcin.mielczarczyk 2d4eae7617 Support for EM410x card mode in T5555/T55x7 tags. 2012-03-07 13:44:53 +00:00
cex123@gmail.com ec09b62d88 2011-10-15 15:15:49 +00:00
roel@libnfc.org 0f7f9edc14 fixed iso14443b snoop, plus compiling issue of redefined parameter, please take care about this next time before a commit 2011-09-06 10:28:22 +00:00
Merlokbr@gmail.com 8556b852ed 1. updated usb commands
2. added abilities to: clear, get, set, load from card, load from nested card emulator dump
3. tried to fix proxmark promt have seen everywhere (not so good)
4. reorganized arm code
2011-06-17 18:39:54 +00:00
Merlokbr@gmail.com 9ca155ba44 0. its alpha version!!!
1. commands changed from "hf 14a" to "hf mf" 
2. some code cleaning and small bugfixes
3. alpha version hf mf sim
4. added internal function GetTickCount() for time measuring
2011-06-10 13:35:10 +00:00
Merlokbr@gmail.com f397b5cc87 1. fixed hf 14a mifare. added functionality to ignore one Nt
2. completed hf 14a nested
3. added hf 14a chk to check keys
5. added check keys to hf 14a mifare and hf 14a nested
6. added debug level to mifare commands
7. small bugs and improvements
2011-06-07 12:35:52 +00:00
Merlokbr@gmail.com 20f9a2a1d5 1. Mifare read block command
2. Mifare read sector (via 1)
3. Mifare write block
4. fixed several bugs in iso 14443 select
added
Issue 23
Issue 26
2011-05-26 12:55:15 +00:00
dekoninggans@gmail.com cee5a30d53 Added iClass eavesdrop support for Proxmark3 2011-05-18 12:33:32 +00:00
adam@algroup.co.uk 9455b51c2a Issue 20 patch (refactored code of the iso15693 implementation as well as several enhancements) [Adrian Dabrowski "atrox"] 2010-10-19 14:25:17 +00:00
henryk@ploetzli.ch 6c1e2d95f4 Add a ramfunc section in the data segment, which will be copied to ram on startup.
Add a RAMFUNC function attribute to have functions copied to and run from ram.
Fix "blew circular buffer" error in hf 14a snoop by executing SnoopIso14443a from ram (eats about 3.5k of ram)
2010-10-08 10:23:04 +00:00
adam@algroup.co.uk 534983d735 iso14a reader patches [Hagen Fritsch] 2010-07-13 13:39:30 +00:00
marcansoft bd20f8f478 Add license headers to armsrc/bootrom/common stuff
I have kept whatever copyright notices exist. Please add your own
copyright notice if you have made any nontrivial changes or additions to
the code. There are several files without any attribution, currently.
2010-02-21 00:12:52 +00:00
marcansoft f7e3ed8287 Clean up data types, some header cleanup, etc. 2010-02-20 22:51:00 +00:00
marcansoft 15c4dc5ace Clean up line endings, switch everything to LF instead of CRLF
Doing this for bootrom and armsrc for now. If you're using Windows,
please configure your editor for LF line endings.
2010-02-20 21:24:25 +00:00
adam@algroup.co.uk 13a79da4e9 add 'losimman' command - simulate arbitrary Manchester encoded LF tags 2010-01-28 11:49:05 +00:00
d18c7db 815f3f2559 Decreased BigBuff mem, some elf flasher fixes (needs more work) but flashing correctly currently. 2010-01-10 03:57:41 +00:00
d18c7db 1e1b303093 Fixed some compile warnings in client, minor tidy up with some dbprintf statements 2010-01-04 03:08:45 +00:00
bushing a9bc033bdd create Dbprintf convenience function 2010-01-01 23:36:17 +00:00
bushing 0d974852ce ARM code cleanup (lfops) 2009-12-30 02:52:33 +00:00
roel@libnfc.org 32cfae439e mifare firmware update 2009-12-30 00:11:50 +00:00
henryk@ploetzli.ch 8d40aba58b Add capability to correlate against subcarriers of 212kHz (argument FPGA_HF_READER_RX_XCORR_QUARTER_FREQ | FPGA_HF_READER_RX_XCORR_848_KHZ) and 106kHz (argument FPGA_HF_READER_RX_XCORR_QUARTER_FREQ) 2009-12-09 02:31:01 +00:00
edouard@lafargue.name c86cc30801 Added the new SRIX4K reading routine, thanks to jonor. Regression tested against SRI512 tags,
but I do not have SRIX4K tags to test this with.
2009-11-23 09:34:57 +00:00
henryk@ploetzli.ch ecf53cb215 Add HF simulator modulation mode for 212kHz subcarrier 2009-10-12 07:46:03 +00:00
d18c7db 6949aca9fa Pushed standard AT91 defines into main code 2009-09-29 12:13:41 +00:00
henryk@ploetzli.ch 1b2c893632 Fix data segement. You may now use stuff like int foo = 1; in global context (as opposed to both int foo = 0; which is bss and const int foo = 1; which is rodata) without having the sky come
crashing down
2009-09-08 15:40:22 +00:00
henryk@ploetzli.ch 0fa9ca5b53 Add command and code for bidirectional LF emulation of Hitag2. Should be extended for other types of tags 2009-08-28 21:56:43 +00:00
henryk@ploetzli.ch 8a6aec16d8 Implement version information storage and retrieval for the bootrom and the osimage.
Use perl to create the version information (thereby re-creating the perl dependency and adding an svn dependency) but fall back in case of missing perl or svn
2009-08-28 06:40:44 +00:00
henryk@ploetzli.ch ba8a80b30c Add version command 2009-08-28 00:37:28 +00:00