Added ISO 14443-4 support (via PPS (Protocol and Parameter Selection)). Now card can be talked to in SL1.

This commit is contained in:
Dom 2018-02-28 12:44:30 +00:00
commit be3e148937

View file

@ -9,6 +9,9 @@ COMMITPERSO = "03AA"
AUTH_FIRST = "0370" AUTH_FIRST = "0370"
AUTH_CONT = "0372" AUTH_CONT = "0372"
AUTH_NONFIRST = "0376" AUTH_NONFIRST = "0376"
PREPAREPC = "03F0"
PROXIMITYCHECK = "03F2"
VERIFYPC = "03FD"
--- ---
-- This is only meant to be used when errors occur -- This is only meant to be used when errors occur
@ -140,21 +143,38 @@ function commitPerso()
end end
end end
function proximityCheck()
commandString = PREPAREPC
response = sendRaw(commandString, true, true) --0x90 is returned upon success
commandString = PROXIMITYCHECK
commandString = VERIFYPC
end
--- ---
-- The main entry point -- The main entry point
function main(args) function main(args)
-- Initialize the card using the read14a library -- Initialize the card using the read14a library
info,err = lib14a.read14443a(true, no_rats) info,err = lib14a.read14443a(true, false)
if err if err then
then oops(err) oops(err)
else print(("Connected to card with a UID of %s"):format(info.uid)) else
print(("Connected to card with a UID of %s"):format(info.uid))
end end
-- Now, the card is initialized and we can do more interesting things. -- Now, the card is initialized and we can do more interesting things.
--writePerso() --writePerso()
commitPerso() --commitPerso()
--getVersion()
--proximityCheck()
sendRaw("e050", true, true)
sendRaw("D01100", true, true)
sendRaw("0360", true, true)
-- Power off the Proxmark -- Power off the Proxmark