From: iceman1001 <iceman@iuse.se>
Date: Wed, 7 Jan 2015 19:45:43 +0000 (+0100)
Subject: CHG: Added support for tnp3xx in lua scripts.
X-Git-Tag: v2.0.0-rc1~44^2~27
X-Git-Url: https://git.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/commitdiff_plain/3af373f352688d23b80eb9963703cf484ddbe075?ds=sidebyside

CHG: Added support for tnp3xx in lua scripts.
ADD: a save file function in lua.
---

diff --git a/client/lualibs/commands.lua b/client/lualibs/commands.lua
index aeba31a7..e93d0a97 100644
--- a/client/lualibs/commands.lua
+++ b/client/lualibs/commands.lua
@@ -64,6 +64,7 @@ local _commands = {
 	CMD_ISO_15693_COMMAND_DONE =                                         0x0314,
 	CMD_ISO_15693_FIND_AFI =                                             0x0315,
 	CMD_ISO_15693_DEBUG =                                                0x0316,
+	CMD_LF_SNOOP_RAW_ADC_SAMPLES =                                       0x0317,
 
 	--// For Hitag2 transponders
 	CMD_SNOOP_HITAG =                                                    0x0370,
@@ -80,10 +81,13 @@ local _commands = {
 	CMD_READER_LEGIC_RF =                                                0x0388,
 	CMD_WRITER_LEGIC_RF =                                                0x0389,
 	CMD_EPA_PACE_COLLECT_NONCE =                                         0x038A,
+	--//CMD_EPA_ =                                                         0x038B,
 
 	CMD_SNOOP_ICLASS =                                                   0x0392,
 	CMD_SIMULATE_TAG_ICLASS =                                            0x0393,
 	CMD_READER_ICLASS =                                                  0x0394,
+	CMD_READER_ICLASS_REPLAY =											 0x0395,
+	CMD_ICLASS_ISO14443A_WRITE =										 0x0397,
 
 	--// For measurements of the antenna tuning
 	CMD_MEASURE_ANTENNA_TUNING =                                         0x0400,
@@ -109,12 +113,33 @@ local _commands = {
 	CMD_MIFARE_NESTED =                                                  0x0612,
 
 	CMD_MIFARE_READBL =                                                  0x0620,
+	CMD_MIFAREU_READBL =                                                 0x0720,
+	
 	CMD_MIFARE_READSC =                                                  0x0621,
+	CMD_MIFAREU_READCARD =                                               0x0721,
+	
 	CMD_MIFARE_WRITEBL =                                                 0x0622,
+	CMD_MIFAREU_WRITEBL =                                                0x0722,
+	CMD_MIFAREU_WRITEBL_COMPAT =                                         0x0723,
+	
 	CMD_MIFARE_CHKKEYS =                                                 0x0623,
 
 	CMD_MIFARE_SNIFFER =                                                 0x0630,
 
+	--//ultralightC
+	CMD_MIFAREUC_AUTH1 =						                         0x0724,
+	CMD_MIFAREUC_AUTH2 =						                         0x0725,
+	CMD_MIFAREUC_READCARD =		   					                     0x0726,
+
+	--// mifare desfire
+	CMD_MIFARE_DESFIRE_READBL =                                          0x0728,
+	CMD_MIFARE_DESFIRE_WRITEBL =                                         0x0729,
+	CMD_MIFARE_DESFIRE_AUTH1 =                                           0x072a,
+	CMD_MIFARE_DESFIRE_AUTH2 =                                           0x072b,
+	CMD_MIFARE_DES_READER =                                              0x072c,
+	CMD_MIFARE_DESFIRE_INFO =                                            0x072d,
+	CMD_MIFARE_DESFIRE =                                                 0x072e,
+	
 	CMD_UNKNOWN =                                                        0xFFFF,
 }
 
@@ -184,7 +209,6 @@ function Command:getBytes()
 	local data  = self.data
 	local cmd = self.cmd 
 	local arg1, arg2, arg3 = self.arg1, self.arg2, self.arg3
-
 	
 	return bin.pack("LLLLH",cmd, arg1, arg2, arg3,data);
 end
diff --git a/client/lualibs/html_dumplib.lua b/client/lualibs/html_dumplib.lua
index b8c7ccaa..44b6b352 100644
--- a/client/lualibs/html_dumplib.lua
+++ b/client/lualibs/html_dumplib.lua
@@ -47,6 +47,18 @@ local function save_HTML(javascript, filename)
 
 end
 
+local function save_TEXT(data,filename)
+	-- Open the output file
+	local outfile = io.open(filename, "wb")
+	if outfile == nil then 
+		return oops(string.format("Could not write to file %s",tostring(filename)))
+	end
+	
+	outfile:write(data)
+	io.close(outfile)
+	return filename   
+end
+
 local function save_BIN(data, filename)
 	-- Open the output file
 	
@@ -181,4 +193,6 @@ return {
 	convert_bin_to_html = convert_bin_to_html,
 	convert_eml_to_html = convert_eml_to_html,
     convert_eml_to_bin = convert_eml_to_bin,	
+    SaveAsBinary = save_BIN,
+	SaveAsText = save_TEXT,
 }
diff --git a/client/lualibs/htmlskel.lua b/client/lualibs/htmlskel.lua
index a52abdef..b468eb2d 100644
--- a/client/lualibs/htmlskel.lua
+++ b/client/lualibs/htmlskel.lua
@@ -55,6 +55,7 @@ local skel_1 = [[
 			return "UNKNOWN"
 		}
 
+		add("04,,,Mifare TNP3xxx Activision 1K,0f01,01");
 		add("04,,,Mifare Mini,0004,09");
 		add("04,,,Mifare Classic 1k/Mifare Plus(4 byte UID) 2K SL1,0004,08");
 		add("04,,,Mifare Plus (4 byte UID) 2K SL2,0004,10");
diff --git a/client/lualibs/mf_default_keys.lua b/client/lualibs/mf_default_keys.lua
index 4859ff0c..757112c6 100644
--- a/client/lualibs/mf_default_keys.lua
+++ b/client/lualibs/mf_default_keys.lua
@@ -141,6 +141,24 @@ local _keys = {
 	'200000000000',
 	'a00000000000',
 	'b00000000000',	
+	
+	--[[
+    Should be for Mifare TNP3xxx tags A KEY.
+    --]]
+	'4b0b20107ccb',
+
+	--[[
+    Kiev metro cards
+    --]]	
+	'8fe644038790',
+	'f14ee7cae863',
+	'632193be1c3c',
+	'569369c5a0e5',
+	'9de89e070277',
+	'eff603e1efe9',
+	'644672bd4afe',
+
+	'b5ff67cba951',
   }
 
 ---
diff --git a/client/lualibs/read14a.lua b/client/lualibs/read14a.lua
index 24021a1d..10e7c2d4 100644
--- a/client/lualibs/read14a.lua
+++ b/client/lualibs/read14a.lua
@@ -25,6 +25,7 @@ local ISO14A_COMMAND = {
 
 local ISO14443a_TYPES = {}		
 ISO14443a_TYPES[0x00] = "NXP MIFARE Ultralight | Ultralight C"
+ISO14443a_TYPES[0x01] = "NXP MIFARE TNP3xxx Activision Game Appliance"
 ISO14443a_TYPES[0x04] = "NXP MIFARE (various !DESFire !DESFire EV1)"
 ISO14443a_TYPES[0x08] = "NXP MIFARE CLASSIC 1k | Plus 2k"
 ISO14443a_TYPES[0x09] = "NXP MIFARE Mini 0.3k"