Search results for

nfc

1,175 results found

Post

Replies

Boosts

Views

Activity

Reply to CoreNFC: Sending Custom Commands using NFCISO15693Tag protocol
I was wondering if your ticket has changed the answer yet?I am stuck because I can't send customCommand 0x35 to Authenticate a chip using the AES Crypto module inside of it.I hate to say it, but android's NFC framework has a command calledpublic byte[] transceive (byte[] data)Send raw NFC-A commands to the tag and receive the response.Developers can completely create their own blocks of data to send to the tag and receive the answer in the same little function.That looks so much better than getting Custom command code must be between 0xA0 to 0xDF inclusively when trying to send a customCommand 0x35 that is so basic to NFC Tag security.I hope they allow developers to implement this, and not leave us behind android like that.
Topic: App & System Services SubTopic: Core OS Tags:
Aug ’19
iOS 13 CoreNFC ISO15963 customCommand 0x35
I am working with ISO15963 tags. I am able to get the tag info, such as UID, etc etc, also can read and write EPROM. But this tags also provide an AES128 bit cryptography module that requires custom commands with a byte string payload to execute security authentication. Android NFC framework provides developers a “transceive()” command that only takes a string of bytes and automatically reads the buffer to catch the answer from the tag. So developers can create their own custom payloads according to manufacturers specifications. Apple’s new CoreNFC customCommand for ISO15963 protocol is limited to commands from A0 to DF (ISO15963-3 standard) Leaving out extremely important optional commands on the ISO15963-4 standard like. '34' Optional Yes Yes Yes Extended write multiple blocks '35' Optional No No Authenticate '36' Optional Yes Yes KeyUpdate '37' Optional No No AuthComm crypto format indicator '38' Optional No No SecureComm crypto format indicator '39' Optional No No Challenge '3A' Optional No Yes N
13
0
5.6k
Aug ’19
CoreNFC ISO7816 card manager select not allowed
Hello,I have fully working application with CoreNFC, communicating over ISO7816 with my JavaCard applet, everything works fine here. I select the AID of the applet, send APDUs, receive responses.The problem is I want to be able to update my applet later in time via iPhone itself. For this I need to select special pre-installed CardManager applet with AID a000000003000000 (hexcoded). If I add this AID to the com.apple.developer.nfc.readersession.iso7816.select-identifiers array it does not work - empty card is not picked up by the NFC session even though the CardManager applet is present (GlobalPlatformPro shows the applet with this AID as installed on the card).So I go another way - I preinstall small placeholder applet on the card, put its AID to the info.plist. This works, card is picked-up by the NFC session and I can start sending custom APDUs.If I send SELECT APDU with the card manager AID, 00a4040008a000000003000000, the system returns error Error: Error Domain=NFCError Code=2 Missing
5
0
3.7k
Sep ’19
NFC Session Handling
Hi together, i am working with the new CoreNFC library using ISO7816.I also are pretty new within the apple world and have two talking points regarding the NFCReader session handling.My use-case uses longlasting sessions with the card. However the NFCSession invalidates after about 20 seconds.Is there a way to extend the duration by setting a arbitrary timeout ? I cannot find any calls in the api regarding this.Secondly I may need user interaction while the session with the card is active. If i start the session ios shows the nfc overlay and blocks my UI thread until finished. Is there a way to manage the UI in an arbitrary way during NFC sessions?Sincerely
1
0
971
Sep ’19
CoreNFC/FeliCa bug: cannot read data from system codes other than the first
I am able to use the request system code command (per FeliCa Card Users Manual, section 4.4.8) to get a list of system codes from the card. This works fine on both single-system cards (eg: ICOCA, nimoca) and multi-system cards (eg: Hayakaken, PASMO, Suica).I have declared all system codes that are on the cards in my Info.plist:<key>com.apple.developer.nfc.readersession.felica.systemcodes</key> <array> <string>8005</string> <string>8008</string> <string>0003</string> <string>fe00</string> <string>90b7</string> <string>927a</string> <string>86a7</string> </array>However, the multi-system cards can only read the first system code. When trying to switch system codes by incrementing the upper 4 bits of the IDm (per FeliCa Card Users Manual, section 2.3.4), iOS returns an error:FelicaReader: DEBUG: System code #1: 0xfe00 FelicaReader: DEBUG: - Requesting service codes for 0xfe00... FelicaTransceiver: DEBUG: &
1
0
1.6k
Sep ’19
Reply to Mifare Plus and iOS 13
MIFARE Ultralight can be formatted as NFC Forum Type 2 Tag.But MIFARE Plus can't be formatted as NFC Forum Type Tags.So it is not possible to use NFCNDEFReader API for MIFARE Plus.You can use only NFCTagReader API for MIFARE Plus.
Topic: App & System Services SubTopic: Drivers Tags:
Sep ’19
Writing ndef messages to a MiFare Ultralight tag with known password
We are using the CoreNFC framework in iOS 13 to read and write to a MiFare Ultralight NFC tag. We have no problems reading the tag and getting the data out from it, but we have a problem when trying to write to it when password protection is enabled in the tag.If we use a standard MiFare Ultralight tag we can write to it without problems. But as soon as we use a password protected tag, we cannot write to the tag anymode. (The password is known) And we need to find out how to unlock the tag with the password.When we try to write to the tag, we do the following steps:We use the NFCTagReaderSession to read the tag.Then we use a switch statement on the tag to get the type of it, where we get .miFare.Then we connect the session to the tag.Then we try to unlock it using the tag.sendMiFareCommand with the a UInt8 array starting with the “0x1B” auth command byte followed by the 4 bytes password.Then we check the response data and compare it to the PACK which is programmed into the tag, which matches.Then we
1
0
2.0k
Sep ’19
NFCTagReaderSession and Mifare Classic chips
Hi,Has anyone encountered this problem?- NFC Chip we use : NXP Mifare Classic 1k with a NDEF record.- With the NFCNDEFReaderSession class, no problem to detect the NFC chip.- With the NFCTagReaderSession class, no reaction, the popup show up but nothing happen.- The NFCTagReaderSession works well with Mifare Ultralight, NTAG21x, and more, the problem is specific to Mifare Classic chips.I don't understand why as my polling options are correct.readerSession = NFCTagReaderSession(pollingOption: [.iso14443, .iso15693, .iso18092], delegate: self, queue: nil);Seems like the Mifare Classic chips are not compatible with the NFCTagReaderSession class.If someone can help us, it's would be great 🙂Have a great day.Best.Julien.
3
0
2.7k
Sep ’19
NFCNDEFTag writeNDEF writes in utf16
I am using the new nfc write capabilities and are writing successful to tags. But my payload data becomes written in utf-16. I want it to be utf8. How do I accomplish that?This is how I create and write the NDEF:let textPayload = NFCNDEFPayload.wellKnownTypeTextPayload(string: tmp, locale: Locale(identifier: En)) self.ndefMessage = NFCNDEFMessage(records: [(textPayload!)]) tag.writeNDEF(self.ndefMessage!) { (error: Error?) in print(error ?? error) if error != nil { session.invalidate(errorMessage: Update tag failed. Please try again.) } else { session.alertMessage = Update success! session.invalidate() } }
0
0
463
Sep ’19
Reply to NFCTagReaderSession and Mifare Classic chips
How do you get a NFCTagReaderSession? (i.e.: Phone type / tag content / anything additional to the basic NFC entitlements)I'm trying to establish a session with my iPhone 7 and don't get an callback for any of the .iso14443 tags (Mifare Classic / UL / NTAG) or iCode @ .iso15693 on my desk - regardless if they are empty, loaded with sample data, ...At least to some I can connect with a NDEFReaderSession.Regarding your pollingOptions: I get the scanning sheet only if the the options just contain one of the comm standards - I guess the NFC chip on that phone can only listen with one of the carrier frequencies at a time.
Topic: App & System Services SubTopic: General Tags:
Sep ’19
coreNFC write NDEF with utf8
Hi,I am trying to write NDEF-data to a nfc-tag. It works partially. I can write data to the tag. But the data is written with UTF-16 which makes it unreadable for my android app. How do I create a NFCNDEFPayload.wellKnownTypeTextPayload with utf-8 encoding.This is how I create and write the NDEF.//ndef creation let textPayload = NFCNDEFPayload.wellKnownTypeTextPayload(string: tmpMessage, locale: Locale(identifier: En)) self.ndefMessage = NFCNDEFMessage(records: [(textPayload!)]) //write tag.writeNDEF(self.ndefMessage!) { (error: Error?) in print(error ?? error) if error != nil { session.invalidate(errorMessage: Update tag failed. Please try again.) } else { session.alertMessage = Update success! session.invalidate() } }
1
0
1.2k
Sep ’19
Testflight Validate ERROR ITMS-90778 NDEF is disallowed
I am trying to upload my app to TestFlight, which using CoreNFCUnfortunately, I got the error message on Testflight Validate part in (SDK version 13 and 13.1).I already tried [this]: Xcode 11 beta can't upload app to TestFlightbut it will Lose NDEF function [this]: https://stackoverflow.com/a/58128365/5588637Error messages: Invalid entitlement for core nfc framework The sdk version 13.0 and min OS version 13.0 are not compatible for the entitlement 'com. Apple developer nfc. Readersession formats because NDEF is disallowedI already choose target iOS 13.1 in XCode, but also have this error.image 1: https://user-images.githubusercontent.com/19588517/65782718-dceb9180-e180-11e9-88d9-d21c2dcb5701.pngimage 2: https://user-images.githubusercontent.com/19588517/65782843-263be100-e181-11e9-8639-48fb64c5e08d.png
16
0
14k
Sep ’19
NFC iOS: Open app directly with out tapping on NFC Notification
I want to have NFC Tag information on my UIViewController with out user interaction - tapping on iOS System NFC Notification or default NFC Read Panel. Please read below.A notification appears when I read NFC tag whether the intended app is in foreground or background.I wrote URL schemed URI onto my NFC tags myappurl://... .So, when I tap on the notification after scanning NFC tag, my app opens and take necessary actions as per payload on the deeplink URI.But, when my app is in the foreground, still notification appears after reading NFC tag. And, I have to tap on the notification so that an action can be taken on the app.Can I just directly read the NFC tag while I have app in foreground (or my particular UIViewController is current) with out default NFC Read panel and notification?Below, the red one is my UIViewController and the app is in foreground. And, the app associated with that is already found as shown on the right side
1
0
2.7k
Sep ’19