mifare

Is there a software that can change NFC Tag's serial number?

痞子三分冷 提交于 2019-12-18 06:57:49
问题 I ordered a bunch of NFC tags from a Chinese supplier (I know, red flags) with the promise that they will serialize my tags as instructed so it will work w/ our software and avoid serial duplicates. (Our software uses the tags' serial numbers, not the content.) Now the thousands of NFC tags arrived and it seems they have disregarded the proper serialization, and worst, half of the darn thing are duplicates (completely unusuable for our purpose!) So now I'm in a hole :( So is there a software

Android HCE: are there rules for AID?

人走茶凉 提交于 2019-12-18 02:57:54
问题 I'm trying to use an ACR122 NFC reader to select an application emulated in one Nexus 5 using Android Host Card Emulation. However, small AIDs are not recognized. My goal is to use a three byte long AID, as I do in a DESfire card. My first goal is only to be able to do a SELECT command. My test app uses the following configuration for AIDs: <host-apdu-service xmlns:android="http://schemas.android.com/apk/res/android" android:description="@string/service_descr" android:requireDeviceUnlock=

Reading block from mifare classic using javax.smartcardio

╄→尐↘猪︶ㄣ 提交于 2019-12-17 20:38:23
问题 I would like to read a specific block on Mifare classic using Java's javax.smartcardio. Here's my code: public byte[] getCardUID() throws CardException { CardTerminals terminals = TerminalFactory.getDefault().terminals(); terminal = terminals.list().get(0); Card card = terminal.connect("*"); CardChannel channel = card.getBasicChannel(); CommandAPDU command = new CommandAPDU( new byte[] { (byte) 0xFF, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x04, (byte) 0xD4, (byte) 0x4A, (byte) 0x01,

Get UID of Mifare Ultralight with SCL010

早过忘川 提交于 2019-12-17 16:30:58
问题 I want get the UID of the Mifare Ultralight NFC tag. In Java I have this code: TerminalFactory factory = TerminalFactory.getDefault(); List<CardTerminal> terminals = factory.terminals().list(); System.out.println("Terminals: " + terminals); CardTerminal terminal = terminals.get(0); Card card = terminal.connect("*"); System.out.println("card: " + card); CardChannel channel = card.getBasicChannel(); ResponseAPDU answer = channel.transmit(new CommandAPDU(0xFF, 0xCA, 0x00, 0x00, 0x00)); byte[]

Locking mechanism of Mifare Classic 1K

天涯浪子 提交于 2019-12-17 09:55:29
问题 The procedure of Mifare Classic 1K is Polling for tags Authenticate those tags If authentication succeded then read/write. I already completed those procedures and also read and write data from specific sectors. Command for Polling for tags is new byte[] { (byte) 0xFF, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x04, (byte) 0xD4, (byte) 0x4A, (byte) 0x01, (byte) 0x00 } Authentication command is new byte[] { (byte) 0xFF, (byte) 0x86, (byte) 0x00, (byte) 0x00, (byte) 0x05, (byte) 0x01,(byte)

How to use ISO7816 select command with DESfire Ev1 card?

烈酒焚心 提交于 2019-12-14 03:52:50
问题 I have a DESfire Ev1 version 1.3 card and I'm trying to select a file using ISO7816 apdu style. I have one file, with aid A0 A1 A2 and I can select it using both native or wrapped mode: Native: -> 5A A0 A1 A2 <- 00 Wrapped: -> 90 5A 00 00 03 A0 A1 A2 00 <- 91 00 However, if I try to select it using ISO7816 style, I always get a file not found error: ISO7816: -> 00 A4 04 00 03 A0 A1 A2 00 -> 6A 82 When using ISO apdu, is the AID in a different format? How can I select this AID using it? 回答1:

Changing authentication key of a sector in MIFARE Classic

和自甴很熟 提交于 2019-12-14 02:29:13
问题 According to Evan's answer in this page, in order to change the authentication key of a sector we need to overwrite the key in the 4th block (final block) of that sector. The default key is always 'FF FF FF FF FF FF' which is a six bytes key. Now if I try to change it using the write method from the pi-rc522 library, it raises an Index Error because each block has to be 16 bytes, but the authentication key is only 6 bytes long. Where am I going wrong? The device is RC522 and I am using

Mifare Ultralight: lock specific pages

时光怂恿深爱的人放手 提交于 2019-12-13 11:48:39
问题 I got reference from this link (Mifare Ultralight C Lock) to make all pages on a Mifare Ultralight tag read-only. I can write a message on a Mifare Ultralight tag successfully on Android. Now I want to lock pages 4 to 7 (or any specific page). The above link only shows how to lock all pages. How I can lock specific pages? This code locks all pages: mifare.transceive(new byte[] { (byte)0xA2, /* CMD = WRITE */ (byte)0x02, /* PAGE = 2 */ (byte)0x00, (byte)0x00, (byte)0xFF, (byte)0xFF /* DATA =

Emulate Mifare smart card on NFC device (with NXP chip)

半城伤御伤魂 提交于 2019-12-13 05:19:34
问题 I'm struggling to find out how to emulate a Mifare smart card on an Android NFC device with NXP chip. Is it possible? At http://www.mifare.net/en/micommunity/qa/ question number 4, they say there are ways to do it. Does anyone know how, in more detail? I've been trying to ask them without any answer. And do you know whether devices using the NXP chip normally are equipped with an embedded secure element (eSE) with Mifare capabilities and where I can find info about it? 回答1: You can't emulate

How to read a mifare 1k card through ACR122U NFC Tag reader connected to local machine in a web application

落爺英雄遲暮 提交于 2019-12-13 02:45:42
问题 Read a mifare 1k card through my web application which is connected to local system which is browsing my web application. The reader I am using is ACR122U NFC Tag reader. I got sample code for window application to access the reader and read the UID of NFC tag. but I want to read the value in my Web site. Work flow is: My web site page is opened in a browser of a machine. That page has a button "Read UID". After clicking of this button I want to read the NFC Tag UID through ACR122U NFC Tag