Leggere i tag NFC con iPhone 6 / iOS 8


96

Ora che Apple ha appena annunciato che l'iPhone 6 avrà un chip NFC, qualcuno sa se iOS 8 consentirà la lettura / rilevamento dei tag RFID per il dispositivo iPhone 6? Qualcuno ha dei dettagli da condividere su questo?

Risposte:


169

Gli iPhone6 ​​/ 6s / 6 + NON sono progettati per leggere tag NFC passivi (ovvero modalità Discovery). C'è molta disinformazione su questo argomento, quindi ho pensato di fornire alcune informazioni tangibili da prendere in considerazione per gli sviluppatori. La mancanza di supporto per la lettura dei tag NFC non è dovuta al software ma all'hardware. Per capire perché, è necessario capire come funziona NFC. NFC funziona tramite Load Modulation. Ciò significa che l'interrogatore (PCD) emette un campo magnetico portante che eccita il bersaglio passivo (PICC). Con il potenziale generato da questo campo portante, il bersaglio è quindi in grado di demodulare i dati provenienti dall'interrogatore e rispondere modulando i dati sopra questo stesso campo. La chiave qui è che l'obiettivo non crea mai un campo proprio.

Se guardi lo smontaggio dell'iPhone6 ​​e l'elenco delle parti vedrai la presenza di un'antenna NFC a telaio molto piccola, nonché l'uso dell'IC booster AS3923 . Questo design era destinato a schede microSD o SIM personalizzateper consentire ai vecchi telefoni cellulari di effettuare pagamenti. Questo è il tipo di applicazione in cui il telefono cellulare presenta una credenziale emulata con carta a un terminale POS contactless ad alta potenza. Il terminale POS funge da lettore, energizzando l'iPhone6 ​​con l'aiuto del chip AS3923. Lo schema a blocchi dell'AS3923 mostra chiaramente come la modulazione RX e TX viene potenziata da un segnale presentato da un dispositivo di lettura. In altre parole, l'iPhone6 ​​non è pensato per fornire un campo, ma solo per reagire a uno. Ecco perché il suo design è pensato solo per l'emulazione di schede NFC e forse per Peer-2-Peer, ma sicuramente non per il tag Discovery.

IC booster AS3923

Ci sono alcune alternative per ottenere tag Discovery con un iPhone6 ​​utilizzando accessori HW . Parlo di queste integrazioni e di come gli sviluppatori possono progettare soluzioni in questo post del blog . I nostri progetti di lettori a bassa potenza aprono interessanti opportunità di coinvolgimento mobile a cui pochi sviluppatori stanno pensando.

Divulgazione: sono il fondatore di Flomio, Inc. , una società TechStars che fornisce hardware, software e servizi di identificazione di prossimità per applicazioni che vanno dal controllo degli accessi ai pagamenti.

Aggiornamento: questa voce , se vera, aprirebbe la possibilità per l'iPhone di supportare praticamente la modalità Discovery tag NFC. Un design tutto in vetro non interferirebbe con l'antenna NFC come fa il retro in metallo dell'attuale iPhone. Abbiamo tentato questo approccio di progettazione, anche se con materiali più economici, su alcuni dei nostri progetti di lettori personalizzati con successo, quindi non vediamo l'ora di questo miglioramento.

Aggiornamento: iOS11 ha annunciato il supporto per la "modalità lettore NFC" per iPhone7 / 7 +. Dettagli qui . L'API supporta solo la lettura dei messaggi NDEF (non APDU ISO7816) mentre un'app è in primo piano (nessun rilevamento in background). In uscita in autunno, 2017 ... controlla lo screenshot dal keynote del WWDC:

inserisci qui la descrizione dell'immagine


2
Non sono un tipo hardware, ma c'è una possibilità che lo smontaggio dell'iPhone non abbia mostrato tutto? È questa l'analisi finale? Impossibile leggere i tag NFC passivi?
Salaryman

3
Ho progettato diversi lettori NFC e in base a ciò che ho visto dallo smontaggio, studiando il layout e osservando come si comporta l'iPhone6 ​​su NFC, questa è la mia opinione. Non ho dissimulato fisicamente un iPhone6 ​​da solo, quindi non è fuori dal cono di possibilità che ci sia un induttore della ferita d'aria nascosto da qualche parte con tracce che aggirano l'AS3923. Il mio punto principale è che questo non sarebbe convenzionale e avrebbe un rendimento scarso nella lettura dei tag nella migliore delle ipotesi.
grundyoso

@grundyoso Se solo la tua azienda potesse mettere insieme un SDK decente, sarebbe fantastico. Qualche aggiornamento su Flomio SDK? Ancora limitato alla spesa di $ 1200 + club?
Dan1one

@ Dan1one, ci stiamo ancora lavorando. I nostri utenti beta hanno trovato bug che stiamo ancora risolvendo, quindi la restrizione di $ 1200 + è davvero solo per mantenere i nostri sforzi concentrati. Quando saremo soddisfatti della qualità, invieremo l'SDK Flomio a tutti i nostri clienti. Sarà incluso un plugin Cordova che renderà le soluzioni web molto più facili da costruire.
grundyoso

1
@Randomblue Ho rivisto il teardown su iFixIt quando è uscito il 6S e il chip booster e il design della piccola antenna sono rimasti. I nostri accessori HW stanno maturando bene per rispondere a questa esigenza, con frequenti aggiornamenti a Flomio SDK per una facile integrazione. Prendi in considerazione di unirti a noi a TrackHack per giocare con loro insieme a fantastici hardware di altri fornitori RFID.
grundyoso

43

Dall'analisi dei documenti iOS 8 disponibili a partire dal 9 settembre alle 15:30, non si fa menzione dell'accesso degli sviluppatori al controller NFC per eseguire operazioni NFC; che include la lettura di tag, la scrittura di tag, l'abbinamento, i pagamenti, l'emulazione di tag ... Dato che è un controller NXP, l'hardware ha la capacità di eseguire queste funzionalità. Hanno menzionato un'app di terze parti per l'orologio che consentiva a un ospite dell'hotel di aprire la porta della propria camera con NFC. Questo è un classico caso d'uso per NFC e fornisce alcune indicazioni che il controller NFC sarà aperto agli sviluppatori a un certo punto. Ricorda, l'orologio non dovrebbe essere rilasciato fino al primo trimestre del 2015. Quindi per ora direi che è chiuso ma sarà presto aperto. Data la "novità"

Divulgazione: sono il CEO di GoToTags , una società NFC con evidente interesse acquisito per Apple che apre NFC agli sviluppatori.

--- Correzione e aggiornamento ---

L'app dell'hotel utilizza effettivamente il Bluetooth, non l'NFC. NFC è ancora spesso utilizzato per sbloccare le porte, ma non in questo esempio. È possibile utilizzare NFC se l'orologio ha un controller NFC aperto.

So che Apple è a conoscenza di tutto questo e ne sta discutendo con i suoi migliori sviluppatori e stakeholder. C'è già stato un enorme respingimento negativo sulla mancanza di supporto per la lettura dei tag. Come spesso accade in passato, mi aspetto che Apple alla fine lo apra agli sviluppatori per funzionalità relative al mancato pagamento (lettura di tag, associazione). Tuttavia, non credo che Apple consentirà mai altri portafogli. Probabilmente anche la condivisione dei file verrà lasciata ad AirDrop.

--- Aggiornamento il 23 marzo 2016 ---

Mi vengono continuamente richiesti aggiornamenti su questo argomento, spesso con persone che fanno riferimento a questo post. Con il rilascio dell'iPhone SE da parte di Apple, molti si chiedono nuovamente perché Apple non abbia ancora supportato la lettura dei tag. In sintesi, Apple è più concentrata sul successo di Apple Pay rispetto agli altri casi d'uso per NFC per ora. Apple potrebbe guadagnare molti soldi da Apple Pay e ha meno da guadagnare dagli altri usi per NFC. Apple probabilmente aprirà la lettura dei tag NFC quando sentirà che la fiducia e la sicurezza dei consumatori con NFC e Apple Pay è tale da non mettere a rischio Apple Pay. Ulteriori informazioni qui .

--- Aggiornamento il 24 maggio 2017 ---

Uno sviluppatore in Grecia ha violato l'iPhone 6s per convincerlo a leggere i tag NFC tramite i framework privati ​​NFC; maggiori informazioni e video . Sebbene questa non sia una soluzione a lungo termine, fornisce alcune indicazioni su alcune domande in sospeso: c'è abbastanza potenza nel controller NFC dell'iPhone per alimentare un tag NFC? Sembra che la risposta sia . Dal test iniziale la distanza è di pochi cm, il che non è male. Potrebbe anche essere che la potenza sia regolabile; questo è oggetto di indagine in questo momento. Le implicazioni di ciò sono significative. Se i modelli di telefoni più vecchi hanno abbastanza potenza RF per la lettura / scrittura di tag, quando Apple aprirà l'SDK significa che ci saranno 100 milioni di iPhone in grado di leggere i tag NFC, rispetto al caso in cui solo i nuovi iPhone potrebbero.


Ecco il collegamento a PassKit, la parte relativa al pagamento dell'SDK iOS. developer.apple.com/library/prerelease/ios/documentation/…
craig.tadlock

Nella lettura della documentazione per Apple Pay che sono riuscito a trovare, non si fa menzione di NFC. Questo è tutto quello che ho trovato per ora. Non sono ancora convinto che l'iPhone 6 avrà anche NFC. L'ho visto affermato in un articolo di notizie, ma i giornalisti potrebbero confondere un'API del sistema di pagamento per i pagamenti NFC. Puoi condividere un collegamento a qualsiasi documentazione di Apple che afferma che l'iPhone 6 avrà hardware NFC?
strwils

7
Hai guardato il feed? C'era un enorme messaggio "NFC" quando si parlava di Apple Pay. Vai a controllare la registrazione TechCrunch di esso.
craig.tadlock

No, non l'ho fatto. Grazie, lo controllerò.
strwils

2
@tricknology TouchID esiste solo dall'iPhone 5S, quasi esattamente un anno fa. L'API è stata rilasciata agli sviluppatori 3 mesi fa.
Tim Bodeit

5

Al momento, non c'è alcun accesso aperto al controller NFC. Al momento non ci sono API NFC nell'SDK GM di iOS 8, il che indicherebbe che la funzionalità NFC sarà limitata ad Apple Pay al momento del lancio. Questa è la nostra comprensione.

Chiaramente, è probabile che il chip NXP all'interno dell'iPhone 6 sia in grado di fare di più, quindi questo non significa che non verranno aggiunte funzionalità aggiuntive (accoppiamento, scansione / codifica dei tag) per il rilascio o nel prossimo futuro.


2

Al momento, Apple non ha aperto agli sviluppatori alcun accesso al chip NFC incorporato come suggerito da molti articoli come questi:

L'elenco potrebbe continuare. Il motivo principale sembra (come molte altre funzionalità hardware aggiunte all'iPhone in passato) che Apple voglia garantire la sicurezza di tale tecnologia prima di rilasciare qualsiasi API per gli sviluppatori per consentire loro di fare quello che vogliono. Quindi all'inizio lo useranno internamente solo per le loro esigenze (come Apple Pay al momento del lancio).

"Al momento, non c'è alcun accesso aperto al controller NFC", ha detto RapidNFC, un fornitore di tag NFC. "Al momento non ci sono API NFC nell'SDK GM di iOS 8".

Ma alla fine, penso che possiamo essere tutti d'accordo sul fatto che svilupperanno tale API, è solo questione di tempo.


7
Ti rendi conto di aver fatto riferimento ad articoli che usano questa domanda come fonte? È tornato al punto di
partenza

Non sapevo che i giornalisti tecnologici usassero SO come fonte, ma credo che abbia senso. Ad ogni modo, il mio punto era solo citare le fonti poiché la domanda originale riguardava la capacità per noi sviluppatori di emettere codice utilizzando il chip NFC incorporato nell'ultimo iPhone.
m4rtin

@ m4rtin, "Ma alla fine, penso che possiamo essere tutti d'accordo che svilupperanno tale API, è solo questione di tempo." No è una questione di SOLDI! Ci sono voluti anni per ottenere un supporto Bluetooth completo, non vogliono sentire parlare di flash e in NFC, hanno solo preso la parte del paiment. Apple integra una tecnologia solo se può vincere denaro. Non si preoccupano assolutamente dei servizi che la techno può fornire ai loro utenti!
fralbo

2

La possibilità di leggere un tag NFC è stata aggiunta a iOS 11 che supporta solo iPhone 7 e 7 plus

Come test drive ho realizzato questo repo

Primo: dobbiamo avviare la classe NFCNDEFReaderSession

var session: NFCNDEFReaderSession? 
session = NFCNDEFReaderSession(delegate: self, queue: nil, invalidateAfterFirstRead: false)

Quindi dobbiamo iniziare la sessione:

session?.begin()

e al termine:

session?.invalidate()

Il delegato (che dovrebbe essere implementato da sé) ha fondamentalmente due funzioni:

func readerSession(_ session: NFCNDEFReaderSession, didDetectNDEFs messages: [NFCNDEFMessage])
func readerSession(_ session: NFCNDEFReaderSession, didInvalidateWithError error: Error)

ecco i miei documenti Apple di riferimento


Sto provando anche a testare Core NFC. Hai già funzionato qualcosa? Mi rendo conto che è solo il primo giorno :)
Blisterpeanuts

@Blisterpeanuts Ho aggiornato la mia risposta ma non funziona completamente a causa dell'assenza dell'architettura x86_64 in CoreNFC ma lo risolverò presto
zombie

Vedi stackoverflow.com/questions/44380305/… Alcuni di noi lo hanno fatto funzionare.
Blisterpeanuts

1

L'unica informazione attualmente disponibile è che Apple Pay sarà disponibile in ios8, ma ciò non fa luce sul fatto che i tag RFID o meglio i tag NFC in particolare possano essere rilevati / letti.

IMO sarebbe una mossa miope non consentire questa possibilità, ma in realtà i soldi sono in Apple Pay, non necessariamente nel consentire agli sviluppatori di accedere a quelle funzionalità: l'abbiamo visto prima con tethering, Bluetooth SPP e accesso ridotto a determinate funzioni .

... ma poi di nuovo, sono passate circa 5 ore dal primo annuncio.


2
I dati NFC di un iPhone 6 saranno leggibili dai lettori NFC esistenti?
tricknology

-2

Penso che ci vorrà del tempo prima di poter vedere l'accesso all'NFC come puro lato di sicurezza, come ad esempio essere in grado di passare accanto a qualcuno sfiorandoli e e portare il telefono a zapare i dettagli della carta o semplicemente Agitare il telefono sul portafoglio di qualcuno che hanno lasciato sulla scrivania.

Penso che il primo passo sia per Apple parlare con le banche e trovare altri modi per proteggere le carte e l'NFC prima che ciò sia consentito

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.