Re: [android-developers] NFC Card Emulation on android
Il giorno giovedì 24 gennaio 2013 18:48:20 UTC+1, Michael Roland ha scritto: Hi Eliseo, What I want to do is to use the UID received from the phone to read/write the tag emulated on the phone. Another application possible is to use the phone in access control applications, but a fixed UID is necessary. The UID is random for security reasons? How Card Emulation can be used if the UID is random? Typically, if you receive a random UID from the NFC phone you detected the phone's peer-to-peer mode (i.e. the phone listening in passive mode at 106kbps) or -- if the phone supports it -- software card emulation mode. If it's peer-to-peer mode, the random UID (btw. the first byte of a random UID is 0x08, except for some weird cards from NXP ;-) ) is actually an NFCID1. Most secure elements on the other hand provide a static UID. (At least the one that is embedded into the Nexus S/Galaxy Nexus/Galaxy SIII). You can determine if the detected target supports peer-to-peer mode or if it is in card emulation mode by the value of the SAK byte (in ISO 14443 language or SEL_RES in ISO 18092 language). If the bits of SAK are numbered from 7 downto 0 and bit 2 = 0: - Bit 6 = 1 denotes that the target supports NFC-DEP (i.e. peer-to-peer mode as defined in ISO 18092). - Bit 5 = 1 denotes that the target supports ISO-DEP (i.e. the smartcard transport protocol from ISO 14443-4). If none of those two bits is set then the target supports only some proprietary protocol. So if you detected that it's peer-to-peer mode, then there is NO tag to read/write from. However, you could use some library like ismb-snep-java to exchange data through Android Beam. Regarding fixed UIDs with Android NFC phones: At least phones based on the NXP chipset (i.e. PN544) can only have a fixed UID in combination with a secure element that has a fixed UID. For software card emulation mode, the NFC controller will always use a random UID. br, Michael Thank you Michael ! so Nexus S, Galaxy Nexus and Galaxy S III have a fixed UID? it is due to the NFC NXP controller or to the secure element? Which secure element they have? In a previous post, Nikolay say that You can't fix the UID, at least not with any of the standard NXP controllers.. Is it correct? the fixed UID depends of the SE present on the phone? In case of random UID, what kind of SE is present? Which android phones can do software card emulation? is it made by the OS or by one custom application? br, Eliseo -- -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en --- You received this message because you are subscribed to the Google Groups Android Developers group. To unsubscribe from this group and stop receiving emails from it, send an email to android-developers+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
Re: [android-developers] NFC Card Emulation on android
Il giorno martedì 22 gennaio 2013 09:03:27 UTC+1, Nikolay Elenkov ha scritto: On Tue, Jan 22, 2013 at 4:50 PM, Eliseo Baruzzi baruzzi@gmail.com javascript: wrote: Il giorno lunedì 21 gennaio 2013 18:12:30 UTC+1, Nikolay Elenkov ha scritto: What are you trying to do? What I want to do is to use the UID received from the phone to read/write the tag emulated on the phone. Another application possible is to use the phone in access control applications, but a fixed UID is necessary. The UID is random for security reasons? How Card Emulation can be used if the UID is random? If you could change the UID at will that will enable you to clone key cards, etc. that rely on registered UID with any NFC-enabled Android device. Making it that easy is obviously not a good idea, hence the random UID. As for how to use CE without a fixed UID, well, just like you use a card: read and write data to files/sectors, etc., possibly requiring authentication with a key/password. Thank you Nikolay. What's the relation between NFCID used for peer to peer communication, and the random UID I get from the phone? Are they the same thing? -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] NFC Card Emulation on android
Hello, is it possible to use Card Emulation on Android? Using a Samsung Galaxy S II smartphone, If I put it close to an RFID reader I can read a random UID from the smartphone. What kind of UID is that? Is it related to NFC controller? It seems that it can emulate a Mifare 4K tag or a Smart MX card. Is it possible to get a fixed UID from this NFC phone, and in general from any NFC phone that allows card emulation? Thank you very much. Eliseo -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
Re: [android-developers] NFC Card Emulation on android
Il giorno lunedì 21 gennaio 2013 18:12:30 UTC+1, Nikolay Elenkov ha scritto: On Tue, Jan 22, 2013 at 1:56 AM, Eliseo Baruzzi baruzzi@gmail.com javascript: wrote: Hello, is it possible to use Card Emulation on Android? Generally, yes. Depends on the NFC controller and software support. That's how Google Wallet works. Using a Samsung Galaxy S II smartphone, If I put it close to an RFID reader I can read a random UID from the smartphone. What kind of UID is that? Is it related to NFC controller? It seems that it can emulate a Mifare 4K tag or a Smart MX card. Is it possible to get a fixed UID from this NFC phone, and in general from any NFC phone that allows card emulation? As you have seen, it's a random UID. I don't remember the details off hand, but a certain range is allocated for random UIDs, so each time you will get some UID in this range. You can't fix the UID, at least not with any of the standard NXP controllers. What are you trying to do? What I want to do is to use the UID received from the phone to read/write the tag emulated on the phone. Another application possible is to use the phone in access control applications, but a fixed UID is necessary. The UID is random for security reasons? How Card Emulation can be used if the UID is random? -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] NFC on Android Phones
Hello, I know that one of the operating modes of NFC is the Card Emulation Mode. It allows the NFC phone to be seen as a Smart Card. I've tried Samsung Galaxy S II and it can be seen as a ISO14443 tag, but his UID is random. Why? Is it also possible to access the secure element fo the NFC phone by an external NFC device? Now there are some NFC phones called SIM - Based. Why? I've read that it is because the SIM card (UICC) of the phone is NFC-enabled. What it means? it emulates a smart card? it is accessible by an external NFC device. Thank you very much in advance. Best Regards. Eliseo -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Android SDK NFC Card Emulation
Hello, I have a question about the Android SDK, using it with an NFC Device (Samsung Galaxy II). I need to use this NFC enabled phone in NFC card emulation, so that the phone should emulate an NFC Tag for another NFC device. Currently there's no application on the phone that do card emulation. Is it possible to do that using Android SDK, maybe with NFC package or NFC.tech package? Are there any examples of how to do that? Thank you very much in advance. Best Regard. Eliseo. -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en