การอ่านแท็ก NFC ด้วย iPhone 6 / iOS 8


96

ตอนนี้ Apple เพิ่งประกาศ iPhone 6 จะมีชิป NFC มีใครรู้บ้างว่า iOS 8 จะเปิดใช้งานการอ่าน / ตรวจจับแท็ก RFID สำหรับอุปกรณ์ iPhone 6 ได้หรือไม่? ใครมีรายละเอียดที่จะแบ่งปันเกี่ยวกับเรื่องนี้?

คำตอบ:


169

iPhone6 ​​/ 6s / 6 + ไม่ได้ออกแบบมาเพื่ออ่านแท็ก NFC แบบพาสซีฟ (aka Discovery Mode) มีข้อมูลที่ผิดเกี่ยวกับหัวข้อนี้มากมายดังนั้นฉันจึงคิดว่าจะให้ข้อมูลที่จับต้องได้เพื่อให้นักพัฒนาได้พิจารณา การขาดการรองรับการอ่านแท็ก NFC ไม่ใช่เพราะซอฟต์แวร์ แต่เป็นเพราะฮาร์ดแวร์ เพื่อให้เข้าใจว่าทำไมคุณต้องเข้าใจว่า NFC ทำงานอย่างไร NFC ทำงานโดยวิธี Load Modulation นั่นหมายความว่าผู้สอบสวน (PCD) จะปล่อยสนามแม่เหล็กพาหะซึ่งกระตุ้นเป้าหมายแฝง (PICC) ด้วยศักยภาพที่สร้างขึ้นโดยฟิลด์ผู้ให้บริการนี้เป้าหมายจึงสามารถ demodulate ข้อมูลที่มาจากผู้สอบสวนและตอบสนองโดยการปรับข้อมูลที่ด้านบนของฟิลด์เดียวกันนี้ ที่สำคัญคือเป้าหมายไม่เคยสร้างเขตข้อมูลของตัวเอง

หากคุณดูที่ iPhone6 ​​teardown และรายการชิ้นส่วนคุณจะเห็นว่ามีเสาอากาศลูป NFC ขนาดเล็กมากรวมถึงการใช้IC บูสเตอร์ AS3923IC การออกแบบนี้มีไว้สำหรับmicroSD หรือซิมการ์ดที่กำหนดเองเพื่อให้โทรศัพท์มือถือรุ่นเก่าสามารถชำระเงินได้ นี่คือประเภทของแอปพลิเคชันที่โทรศัพท์มือถือแสดงข้อมูลรับรอง Card Emulated ให้กับเครื่อง POS แบบไม่สัมผัสกำลังสูง เครื่อง POS ทำหน้าที่เป็นเครื่องอ่านเพิ่มพลังให้กับ iPhone6 ​​ด้วยความช่วยเหลือจากชิป AS3923 แผนภาพบล็อก AS3923 แสดงให้เห็นอย่างชัดเจนว่าการมอดูเลต RX และ TX ได้รับการเพิ่มจากสัญญาณที่นำเสนอโดยอุปกรณ์อ่านอย่างไร กล่าวอีกนัยหนึ่งคือ iPhone6 ​​ไม่ได้มีไว้เพื่อให้มีฟิลด์เพียงเพื่อตอบสนองต่อหนึ่งเท่านั้น นั่นเป็นเหตุผลว่าทำไมการออกแบบจึงมีไว้สำหรับ NFC Card Emulation และอาจเป็น Peer-2-Peer แต่ไม่ใช่แท็ก Discovery

AS3923 ไอซีบูสเตอร์

มีทางเลือกบางอย่างเพื่อให้บรรลุแท็กการค้นพบที่มี iPhone6 ใช้เป็นอุปกรณ์เสริม HW ฉันพูดถึงการผสานรวมเหล่านี้และวิธีที่นักพัฒนาสามารถออกแบบโซลูชันในโพสต์บล็อกนี้ การออกแบบเครื่องอ่านพลังงานต่ำของเราเปิดโอกาสที่น่าสนใจสำหรับการมีส่วนร่วมกับอุปกรณ์เคลื่อนที่ซึ่งนักพัฒนาเพียงไม่กี่คนกำลังคิดถึง

การเปิดเผยข้อมูล: ฉันเป็นผู้ก่อตั้งFlomio, Inc.ซึ่งเป็น บริษัท TechStars ที่ให้บริการฮาร์ดแวร์ซอฟต์แวร์และบริการสำหรับแอปพลิเคชันตั้งแต่การควบคุมการเข้าถึงไปจนถึงการชำระเงิน

อัปเดต: ข่าวลือนี้หากเป็นจริงจะเปิดโอกาสให้ iPhone รองรับโหมดการค้นหาแท็ก NFC ในทางปฏิบัติ การออกแบบกระจกทั้งหมดจะไม่รบกวนเสาอากาศ NFC เช่นเดียวกับด้านหลังโลหะของ iPhone รุ่นปัจจุบัน เราได้ลองใช้แนวทางการออกแบบนี้ - แม้ว่าจะใช้วัสดุที่ถูกกว่า - ในการออกแบบเครื่องอ่านแบบกำหนดเองบางส่วนของเราประสบความสำเร็จดังนั้นรอคอยที่จะปรับปรุงนี้

อัปเดต: iOS11 ได้ประกาศรองรับ "NFC reader mode" สำหรับ iPhone7 / 7 + รายละเอียดที่นี่ . API รองรับการอ่านข้อความ NDEF เท่านั้น (ไม่มี ISO7816 APDU) ในขณะที่แอปอยู่ในส่วนหน้า (ไม่มีการตรวจจับพื้นหลัง) เนื่องจากในฤดูใบไม้ร่วง 2017 ... ตรวจสอบภาพหน้าจอจากประเด็นสำคัญของ WWDC:

ป้อนคำอธิบายภาพที่นี่


2
ฉันไม่ใช่คนใช้ฮาร์ดแวร์ แต่มีโอกาสไหมที่การฉีกขาดของ iPhone จะไม่แสดงทุกอย่าง? นี่คือการวิเคราะห์ขั้นสุดท้ายหรือไม่? ไม่สามารถอ่านแท็ก NFC แบบพาสซีฟได้?
มนุษย์เงินเดือน

3
ฉันได้ออกแบบเครื่องอ่าน NFC หลายเครื่องและอิงจากสิ่งที่ฉันได้เห็นจากการฉีกขาดศึกษาเลย์เอาต์และสังเกตว่า iPhone6 ​​ทำงานอย่างไรบน NFC นั่นคือความคิดเห็นของฉัน ฉันไม่ได้ประกอบ iPhone6 ​​ด้วยตัวเองดังนั้นจึงไม่พ้นจากความเป็นไปได้ที่จะมีตัวเหนี่ยวนำบาดแผลทางอากาศซ่อนตัวอยู่ที่ไหนสักแห่งพร้อมกับร่องรอยที่หลีกเลี่ยง AS3923 ประเด็นหลักของฉันคือสิ่งนี้จะไม่เป็นทางการและทำงานได้ไม่ดีในการอ่านแท็กที่ดีที่สุด
กรุนด์โยโซ

@grundyoso หากมีเพียง บริษัท ของคุณเท่านั้นที่สามารถรวบรวม SDK ที่เหมาะสมออกมาได้ก็คงจะดีมาก การอัปเดตใด ๆ เกี่ยวกับ Flomio SDK หรือไม่ ยังคง จำกัด การใช้จ่าย - $ 1200 + club หรือไม่?
Dan1one

@ Dan1one เรากำลังดำเนินการแก้ไขอยู่ ผู้ใช้เบต้าของเราพบข้อบกพร่องที่เรายังคงแก้ไขอยู่ดังนั้นข้อ จำกัด $ 1,200 + จึงเป็นเพียงเพื่อให้เรามุ่งเน้น เมื่อเราพอใจกับคุณภาพแล้วเราจะส่ง Flomio SDK ให้กับลูกค้าของเราทุกคน รวมแล้วจะเป็นปลั๊กอิน Cordova ที่จะทำให้การสร้างเว็บโซลูชั่นง่ายขึ้นมาก
grundyoso

1
@Randomblue ฉันตรวจสอบการฉีกขาดของ iFixIt เมื่อ 6S ออกมาและชิปบูสเตอร์และการออกแบบเสาอากาศขนาดเล็กยังคงอยู่ อุปกรณ์เสริม HWของเรามีความสมบูรณ์เพื่อตอบสนองความต้องการนี้ด้วยการอัปเดต Flomio SDK เป็นประจำเพื่อการรวมที่ง่ายดาย พิจารณาเข้าร่วมกับเราที่TrackHackเพื่อเล่นกับพวกเขาพร้อมกับฮาร์ดแวร์ที่ยอดเยี่ยมจากผู้จำหน่าย RFID รายอื่น
grundyoso

43

จากการขุดลงในเอกสาร iOS 8 ที่พร้อมใช้งานเมื่อวันที่ 9 กันยายน 15:30 น. ไม่มีการพูดถึงการเข้าถึงของนักพัฒนาในการควบคุม NFC เพื่อดำเนินการ NFC ใด ๆ ซึ่งรวมถึงการอ่านแท็กการเขียนแท็กการจับคู่การชำระเงินการจำลองแท็ก ... ด้วยตัวควบคุม NXP ฮาร์ดแวร์จึงมีความสามารถในการใช้งานคุณสมบัติเหล่านี้ พวกเขากล่าวถึงแอปของบุคคลที่สามสำหรับนาฬิกาที่อนุญาตให้แขกของโรงแรมเปิดประตูห้องด้วย NFC นี่เป็นกรณีการใช้งานแบบคลาสสิกสำหรับ NFC และให้ข้อบ่งชี้บางประการว่าคอนโทรลเลอร์ NFC จะเปิดให้นักพัฒนาใช้งานได้ในบางจุด โปรดจำไว้ว่านาฬิกาไม่ควรวางจำหน่ายจนถึงไตรมาสที่ 1 ปี 2015 ดังนั้นตอนนี้ฉันบอกว่ามันปิดแล้ว แต่จะเปิดเร็ว ๆ นี้ ให้ 'ความใหม่'

การเปิดเผยข้อมูล: ฉันเป็น CEO ของGoToTagsซึ่งเป็น บริษัท NFC ที่มีส่วนได้เสียอย่างชัดเจนใน Apple ที่เปิด NFC ให้กับนักพัฒนา

- การแก้ไขและปรับปรุง -

แอพของโรงแรมใช้บลูทู ธ จริงๆไม่ใช่ NFC NFC ยังคงใช้ในการปลดล็อกประตูอยู่บ่อยครั้งไม่ใช่ในตัวอย่างนี้ สามารถใช้ NFC ได้หากนาฬิกามีตัวควบคุม NFC ที่เปิดอยู่

ฉันรู้ว่า Apple ตระหนักถึงสิ่งเหล่านี้ทั้งหมดและกำลังพูดคุยเรื่องนี้กับนักพัฒนาชั้นนำและผู้มีส่วนได้ส่วนเสีย มีการผลักดันเชิงลบจำนวนมากกลับมาจากการขาดการสนับสนุนในการอ่านแท็ก บ่อยครั้งในอดีตฉันคาดว่า Apple จะเปิดให้นักพัฒนาซอฟต์แวร์ทราบถึงฟังก์ชันที่ไม่เกี่ยวข้องกับการชำระเงิน (อ่านแท็กจับคู่) ฉันไม่คิดว่า Apple จะยอมให้มีกระเป๋าสตางค์อื่น ๆ การแชร์ไฟล์จะถูกปล่อยให้ AirDrop เช่นกัน

--- อัพเดทวันที่ 23 มีนาคม 2559 ---

ฉันถูกขอให้อัปเดตเกี่ยวกับหัวข้อนี้อย่างต่อเนื่องโดยมักจะมีคนอ้างถึงโพสต์นี้ เมื่อ Apple เปิดตัว iPhone SE หลายคนถามอีกครั้งว่าทำไม Apple ยังไม่รองรับการอ่านแท็ก โดยสรุปแล้ว Apple ให้ความสำคัญกับ Apple Pay มากกว่ากรณีการใช้งานอื่น ๆ สำหรับ NFC ในตอนนี้ Apple สามารถทำเงินได้มากมายจาก Apple Pay และมีรายได้น้อยกว่าจากการใช้ NFC อื่น ๆ Apple จะเปิดอ่านแท็ก NFC เมื่อพวกเขารู้สึกว่าความไว้วางใจของผู้บริโภคและความปลอดภัยด้วย NFC และ Apple Pay นั้นจะไม่ทำให้ Apple Pay ตกอยู่ในความเสี่ยง ข้อมูลเพิ่มเติมที่นี่

--- อัพเดทวันที่ 24 พฤษภาคม 2560 ---

นักพัฒนาในกรีซได้แฮ็ก iPhone 6s เพื่อให้อ่านแท็ก NFC ผ่านเฟรมเวิร์กส่วนตัวของ NFC ข้อมูลและวิดีโอเพิ่มเติม แม้ว่านี่จะไม่ใช่วิธีแก้ปัญหาในระยะยาว แต่ก็ให้คำแนะนำสำหรับคำถามที่โดดเด่นบางประการ: คอนโทรลเลอร์ NFC ของ iPhone มีพลังงานเพียงพอที่จะเปิดใช้งานแท็ก NFC หรือไม่ ดูเหมือนว่าคำตอบคือใช่ จากการทดสอบเบื้องต้นระยะห่างเพียงไม่กี่ซม. ซึ่งไม่เลวร้ายเกินไป นอกจากนี้ยังอาจเป็นพลังงานที่สามารถปรับได้ สิ่งนี้กำลังถูกตรวจสอบในขณะนี้ ผลกระทบนี้มีความสำคัญ หากโทรศัพท์รุ่นเก่ามีพลังงาน RF เพียงพอสำหรับการอ่าน / เขียนแท็กเมื่อ Apple เปิด SDK หมายความว่าจะมี iPhone 100 ล้านเครื่องที่สามารถอ่านแท็ก NFC เทียบกับกรณีที่มีเพียง iPhone รุ่นใหม่เท่านั้นที่สามารถทำได้


นี่คือลิงค์ไปยัง PassKit ซึ่งเป็นส่วนการชำระเงินของ iOS SDK developer.apple.com/library/prerelease/ios/documentation/…
craig.tadlock

ในการอ่านเอกสารสำหรับ Apple Payที่ฉันสามารถหาได้ไม่มีการกล่าวถึง NFC นี่คือทั้งหมดที่ฉันหาได้ในตอนนี้ ฉันยังไม่มั่นใจว่า iPhone 6 จะมี NFC ด้วยซ้ำ ฉันเห็นมันระบุไว้ในบทความข่าว แต่ผู้สื่อข่าวอาจสับสนกับ API ระบบการชำระเงินสำหรับการชำระเงิน NFC คุณสามารถแชร์ลิงก์ไปยังเอกสารใด ๆ จาก Apple ที่ระบุว่า iPhone 6 จะมีฮาร์ดแวร์ NFC ได้หรือไม่
strwils

7
คุณดูฟีดไหม มีข้อความ "NFC" ขนาดใหญ่เมื่อพวกเขาพูดถึง Apple Pay ไปตรวจสอบการบันทึกของ TechCrunch
craig.tadlock

ไม่ฉันไม่ได้ ขอบคุณฉันจะตรวจสอบให้
strwils

2
@tricknology TouchID มีมาตั้งแต่ iPhone 5S ซึ่งเกือบหนึ่งปีที่แล้ว API เปิดตัวให้กับนักพัฒนาซอฟต์แวร์เมื่อ 3 เดือนที่แล้ว
Tim Bodeit

5

ในขณะนี้ไม่มีการเข้าถึงคอนโทรลเลอร์ NFC แบบเปิด ขณะนี้ไม่มี NFC API ใน iOS 8 GM SDK ซึ่งจะบ่งชี้ว่าความสามารถ NFC จะถูก จำกัด ไว้ที่ Apple Pay เมื่อเปิดตัว นี่คือความเข้าใจของเรา

เห็นได้ชัดว่าชิป NXP ใน iPhone 6 มีแนวโน้มที่จะทำอะไรได้มากกว่านี้จึงไม่ได้หมายความว่าจะไม่มีการเพิ่มคุณสมบัติเพิ่มเติม (การจับคู่การสแกนแท็ก / การเข้ารหัส) สำหรับการเปิดตัวหรือในอนาคตอันใกล้


2

ในขณะนี้ Apple ยังไม่ได้เปิดการเข้าถึงชิป NFC แบบฝังให้กับนักพัฒนาตามที่แนะนำในบทความต่างๆเช่นบทความเหล่านี้:

รายการต่อไป เหตุผลหลักดูเหมือน (เช่นเดียวกับคุณสมบัติฮาร์ดแวร์อื่น ๆ ที่เพิ่มเข้ามาใน iPhone ในอดีต) ที่ Apple ต้องการรับรองความปลอดภัยของเทคโนโลยีดังกล่าวก่อนที่จะปล่อย API ใด ๆ สำหรับนักพัฒนาเพื่อให้พวกเขาทำสิ่งที่พวกเขาต้องการ ดังนั้นในตอนแรกพวกเขาจะใช้เป็นการภายในเพื่อความต้องการเท่านั้น (เช่น Apple Pay ในเวลาเปิดตัว)

"ในขณะนี้ไม่มีการเข้าถึงคอนโทรลเลอร์ NFC แบบเปิด" RapidNFC ผู้ให้บริการแท็ก NFC กล่าว "ขณะนี้ไม่มี NFC API ใน iOS 8 GM SDK"

แต่ในที่สุดฉันคิดว่าเราทุกคนสามารถตกลงกันได้ว่าพวกเขาจะพัฒนา API ดังกล่าวเป็นเพียงเรื่องของเวลา


7
คุณทราบว่าคุณอ้างอิงบทความที่ใช้คำถามนี้เป็นแหล่งที่มาหรือไม่? มาเต็มวง ...
craig.tadlock

ไม่ทราบว่าผู้สื่อข่าวเทคโนโลยีใช้ SO เป็นแหล่งที่มา แต่ฉันคิดว่ามันสมเหตุสมผล อย่างไรก็ตามประเด็นของฉันคือเพียงแค่อ้างแหล่งที่มาเนื่องจากคำถามเดิมเกี่ยวกับความสามารถในการที่นักพัฒนาของเราสามารถออกรหัสโดยใช้ชิป NFC ที่ฝังอยู่ใน iPhone เครื่องล่าสุด
m4rtin

@ m4rtin "แต่ในที่สุดฉันคิดว่าเราทุกคนสามารถตกลงกันได้ว่าพวกเขาจะพัฒนา API ดังกล่าวก็เป็นเพียงเรื่องของเวลาเท่านั้น" ไม่เป็นเรื่องของเงิน! ใช้เวลาหลายปีกว่าจะได้รับการสนับสนุนบลูทู ธ เต็มรูปแบบพวกเขาไม่ต้องการได้ยินการพูดถึงแฟลชและใน NFC พวกเขาก็เข้ามามีส่วนสำคัญ Apple จะผสานรวมเทคโนโลยีก็ต่อเมื่อพวกเขาสามารถรับเงินได้ พวกเขาไม่สนใจบริการที่เทคโนสามารถมอบให้กับผู้ใช้ได้อย่างแน่นอน!
fralbo

2

เพิ่มความสามารถในการอ่านแท็ก NFC ใน iOS 11 ซึ่งรองรับเฉพาะ iPhone 7 และ 7 plus เท่านั้น

ในการทดลองขับฉันทำสิ่งนี้ repo

อันดับแรก: เราต้องเริ่มต้นคลาส NFCNDEFReaderSession

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

จากนั้นเราต้องเริ่มเซสชันโดย:

session?.begin()

และเมื่อทำเสร็จ:

session?.invalidate()

ผู้รับมอบสิทธิ์ (ซึ่งตัวเองควรนำไปใช้) มีสองหน้าที่โดยทั่วไป:

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

นี่คือเอกสารอ้างอิงของApple


ฉันกำลังพยายามทดสอบ Core NFC ด้วย คุณมีอะไรทำงานหรือยัง? ฉันรู้ว่ามันเป็นเพียงวันแรก :)
Blisterpeanuts

@Blisterpeanuts ฉันอัปเดตคำตอบของฉัน แต่มันทำงานได้ไม่เต็มที่เนื่องจากไม่มีสถาปัตยกรรม x86_64 ใน CoreNFC แต่ฉันจะแก้ไขเร็ว ๆ นี้
zombie

ดูstackoverflow.com/questions/44380305/…พวกเราบางคนทำให้มันใช้งานได้
Blisterpeanuts

1

ข้อมูลเดียวที่มีอยู่ในขณะนี้คือ Apple Pay จะพร้อมใช้งานใน ios8 แต่นั่นไม่ได้ทำให้ชัดเจนว่าแท็ก RFID หรือแท็ก NFC โดยเฉพาะจะสามารถตรวจจับ / อ่านได้หรือไม่

IMO จะเป็นการเคลื่อนไหวที่มองไม่เห็นที่จะไม่อนุญาตให้มีความเป็นไปได้นั้น แต่จริงๆแล้วเงินอยู่ใน Apple Pay ไม่จำเป็นต้องอนุญาตให้นักพัฒนาเข้าถึงคุณสมบัติเหล่านั้น - เราเคยเห็นมาก่อนด้วยการเชื่อมต่ออินเทอร์เน็ตผ่านมือถือ Bluetooth SPP และการเข้าถึงบางฟังก์ชันลดลง .

... แต่แล้วอีกครั้งก็เป็นเวลาประมาณ 5 ชั่วโมงแล้วนับตั้งแต่การประกาศครั้งแรก


2
ข้อมูล NFC จาก iPhone 6 จะสามารถอ่านได้โดยผู้อ่าน NFC ที่มีอยู่หรือไม่?
เคล็ดลับ

-2

ฉันคิดว่าคงต้องใช้เวลาสักพักก่อนที่เราจะได้เห็นการเข้าถึง NFC ในด้านความปลอดภัยอย่างแท้จริงเช่นสามารถเดินผ่านใครสักคนผ่านพวกเขาและรับโทรศัพท์ของคุณไปที่รายละเอียดการ์ดหรือเพียงแค่โบกมือโทรศัพท์ของคุณ กระเป๋าสตางค์ของใครบางคนที่ทิ้งไว้บนโต๊ะทำงาน

ฉันคิดว่าขั้นตอนแรกคือให้ Apple คุยกับธนาคารและค้นหาวิธีการรักษาความปลอดภัยการ์ดและ NFC เพิ่มเติมก่อนที่จะได้รับอนุญาต

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.