SlideShare uma empresa Scribd logo
1 de 53
NFC & RFID
with Android



     Tod E. Kurt, ThingM
Where 2.0 2011, Santa Clara, CA
What is this talk?
Why you should care about RFID & NFC

Overview of what RFID & NFC is technically


                  How Android implements NFC

                  What Android can and cannot do

                  Some existing Android apps


                            Tips on how to add NFC to your Android app

                            Non-Android NFC hacking
Who is this guy?
 @todbot does...

Crystal Monster




                            BlinkM Smart LEDs




             ScrewShield


                                      Spooky Arduino
Wiichuck
 adapter
Why Should I Care About RFID?


    Exxon           Mastercard PayPass        Identification
SpeedPass
            Financial Transactions
Asset tracking

                                                         Access control
                                  SF Muni Clipper pass




                       Supply chain
Why Should I Care About NFC?
Some of the things NFC promises...




                                     http://www.nfc-forum.org
Also...
Why I like RFID
ThingM: WineM
                                             AFK: SeaWorld in Dubai




         ThingM: Ghost Tours at Henry Ford




         !
RFID
RFID is Easy




RFID tag – just a serial number, a unique ID
UID 32-bit or 56-bit
Some tags UP TO 4kB! (wow!) of writeable data
Why RFID instead of...

...barcodes
– can have a lot more data, no ugly barcode

...QR codes
– can write data, no camera lag, no ugly qr code

...Bluetooth
– cheaper, low-overhead, easier setup

...WiFi / GPS localization
– cheap, definite, closely-spaced location
What RFID is Not

NOT localization

NOT proximity detection

NOT fast data transfer

NOT secure (for non-smartcard)



Be careful using it for identification, use it instead for fun
How RFID works




“reader”                         “tag”
expensive ($10)                cheap ($0.10)
Passive Tag Internals
Some Interesting RFID Examples
Waterpark ticket




day-pass vs season pass

age-based restrictions

payment of food, beverages, merchandise
Casino Chips Theft Fail
                             man steals $1.5M in chips,
                             cashes them in for $0 and jail




“RFID can void the stolen
chips, like a registration
that’s no longer valid,”
Kendall said.

“When we manufacture
RFID-embedded chips and
send them to a casino,
they’re not worth anything
until they register the codes.
Until then, they’re nothing but
freight.”
NFC
NFC: Near Field Communication
                             web-like semantics for RFID


                                             Built on existing RFID tech


                                             Multi-part, mime-typed, textual data


                                             Devices can have 3 modes:
                                             - tag reader/writer
Nokia 3220 NFC
                                             - tag emulation
                                             - peer-to-peer data transfer
NFC products available since 2005
NFC Technical Architecture




                  http://www.nfc-forum.org/
NDEF: NFC data exchange format
        some example NDEF formats




                                    http://wiki.forum.nokia.com/
Some cool NFC ideas

Tap Your Top10 – Send top 10 list to DJ by tapping phone



HouseMood – Tap your house so it knows your mood



HiRes 4SQ – Precise, hyper-dense checkins with foursquare
NFC Capabilities on Android

Currently available Android NFC phones: Google Nexus S



Use Android 2.3.3 (API Level 10) as the NFC APIs drastically
changed from 2.3.2.



New Intent Filter and TechFilter APIs for registering interest in
types of cards, types of NDEF messages, types of NFC events
What works now on Android?


  Tag reader/writer

  Tag emulation (of certain NFC NDEF tags)

  P2P communication (Android-specific)
What doesn’t work


Tag emulation of Smart Cards

Peer-to-peer with Nokia NFC phones
Nexus S NFC Hardware
Current App Landscape
taglet & AnyTag


        “bit.ly for RFID tags”

        maps UID –> URL

        works with any tag phone can read

        but both don’t seem to work on 2.3.3
Tags App
           System App



           Two functions:

           - tag reader

           - tag emulator



           Makes sharing
           contact info &
           URLs easy
NFC TagInfo
  most useful
NXP TagWriter
lets you format tags for NDEF use
NXP TagWriter
App Demos
Let’s try to show some demos...
Developing NFC on Android


Disclaimer: I’m not a big Android programmer.

Good docs at http://developer.android.com/guide/topics/nfc/
go read them.

Instead, look at the process from a high level

And at the lower-level setup and gotchas
Quick Android SDK Setup Intro

Android apps are written in Java using Eclipse IDE



Install Eclipse (or other favorite IDE)

Download Android SDK

Hook Android SDK up to Eclipse

Tell SDK to download needed extra packages

Then you can start a new Eclipse Android project
App Activity lifecycle

              Apps have at least one Activity

              Activities triggered from system
              events, “intents”

              Activities are paused & resumed
              by Android system
Main Steps to add NFC

■ Edit app’s AndroidManifest.xml, set:

 ■ Minimum SDK version

 ■ Hardware permissions

 ■ Intent filters

■ Two ways to work:

 ■ Intent Dispatch – run your Activity on tag presence

 ■ Foreground Dispatch – intercept tag intents
Permissions in Manifest


Set SDK version to get to NFC APIs:

<uses-sdk android:minSdkVersion="10"/>


Request permission from the user to use NFC hardware:
<uses‐permission
android:name="android.permission.NFC">
Intent Filter in Manifest
NFC intent filters tell Android your Activity can handle NFC
And let you control what kind of tags your Activity sees
<intent-filter>
  <action android:name="android.nfc.action.NDEF_DISCOVERED"/>
  <data android:mimeType="mime/type" />
</intent-filter>


<intent-filter>
  <action android:name="android.nfc.action.TECH_DISCOVERED"/>
  <meta-data android:name="android.nfc.action.TECH_DISCOVERED"
                android:resource="@xml/nfc_tech_filter.xml" />
</intent-filter>

<intent-filter>
  <action android:name="android.nfc.action.TAG_DISCOVERED"/>
</intent-filter>
Intent Filter
            Can even filter on NFC mime-type


<intent‐filter>



<action
android:name="android.nfc.action.NDEF_DISCOVERED"/>


<data
android:mimeType="text/x‐vcard"/>



<category
android:name="android.intent.category.DEFAULT"/>

</intent‐filter>
TechFilter
  Filter for what kind of tag hardware you care about

<resources
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
    <tech-list>
        <tech>android.nfc.tech.IsoDep</tech>
        <tech>android.nfc.tech.NfcA</tech>        
        <tech>android.nfc.tech.NfcB</tech>
        <tech>android.nfc.tech.NfcF</tech>
        <tech>android.nfc.tech.NfcV</tech>
        <tech>android.nfc.tech.Ndef</tech>
        <tech>android.nfc.tech.NdefFormatable</tech>
        <tech>android.nfc.tech.MifareClassic</tech>
        <tech>android.nfc.tech.MifareUltralight</tech>
    </tech-list>
</resources>
Get Tag Data
            In onCreate() if using intent filters,

            or anywhere using foreground dispatch


Intent intent = getIntent();

NdefMessage[] msgs =
  intent.getParcelableArrayExtra(NfcAdapter.EXTRA_NDEF_MESSAGESs);

for (int i = 0; i < msgs.length; i++) {
    NdefRecord[] records = msgs[i].getRecords();
}
FakeTagsActivity
Hacking NFC
                        not on Android




Get a USB or serial reader

Get some tags (SF Muni Clipper, your prox card, etc.)

Get some apps

Hook it up to your PC or Arduino
Touchatag
           http://touchatag.com




Inexpensive ($40) USB NFC reader

Comes with 10 read-only 64-byte tags

Works with libnfc
Proxmark
http://www.proxmark.org/


                           GPL RFID hardware reader

                           Build it yourself, if you’re
                           hardcore

                           Read/emulate any RFID tag

                           $300
SonMicro RFID
  http://sonmicro.com


                        13.56 MHz RFID reader

                        Libraries for Processing &
                        Arduino

                        Read/write tags

                        Limited NFC, no emulation

                        $30

                        avail from SparkFun
LibNFC
           http://www.libnfc.org/




Multi-platform library for NFC exploration

Works with most all NFC/RFID USB readers

Understands most all NFC/RFID tag types

Active developer community
Open NFC
http://www.open-nfc.org/
TagAge.net

             Create custom NFC
             tags with custom
             graphics, all online
Links

http://developer.android.com/sdk/android-2.3.3.html

http://developer.android.com/guide/topics/nfc/index.html

http://developer.android.com/reference/android/nfc/NfcAdapter.html

http://www.rfid-handbook.com/rfid/

http://www.nfc-research.at/

http://www.nfc-forum.org/

http://www.proxmark.org/
Thank You




imagine these guys with NFC tags
Thank You




imagine these guys with NFC tags
Tod E. Kurt
http://thingm.com/
http://todbot.com/blog/

Mais conteúdo relacionado

Mais procurados

NFC: Shaping the Future of the Connected Customer Experience
NFC: Shaping the Future of the Connected Customer ExperienceNFC: Shaping the Future of the Connected Customer Experience
NFC: Shaping the Future of the Connected Customer ExperienceNFC Forum
 
Rfid Attadance System ( Project PPt )
Rfid Attadance System ( Project PPt )Rfid Attadance System ( Project PPt )
Rfid Attadance System ( Project PPt )Bhautik Vaghela
 
NFC (near Field Communication)
NFC (near Field Communication)NFC (near Field Communication)
NFC (near Field Communication)Chetan Chaudhari
 
Applications of RFID technology
Applications of RFID technologyApplications of RFID technology
Applications of RFID technologysweta dargad
 
Nfc Overview
Nfc OverviewNfc Overview
Nfc Overviewmehdibs
 
Radio frequency identification
Radio frequency    identificationRadio frequency    identification
Radio frequency identificationRavi Teja
 
Rfid based attendance system
Rfid based attendance systemRfid based attendance system
Rfid based attendance systemA Jay Vardhan
 
Rfid based library management system
Rfid based library management systemRfid based library management system
Rfid based library management systemiaitoinfotech
 
RFID BASED ATTENDANCE SYSTEM PPT
RFID BASED ATTENDANCE SYSTEM PPTRFID BASED ATTENDANCE SYSTEM PPT
RFID BASED ATTENDANCE SYSTEM PPTnikhilpatewar
 

Mais procurados (20)

Near Field Communiation
Near Field CommuniationNear Field Communiation
Near Field Communiation
 
NFC: Shaping the Future of the Connected Customer Experience
NFC: Shaping the Future of the Connected Customer ExperienceNFC: Shaping the Future of the Connected Customer Experience
NFC: Shaping the Future of the Connected Customer Experience
 
Rfid technologies
Rfid technologiesRfid technologies
Rfid technologies
 
Rfid presentation
Rfid presentationRfid presentation
Rfid presentation
 
RFID
RFIDRFID
RFID
 
Rfid Attadance System ( Project PPt )
Rfid Attadance System ( Project PPt )Rfid Attadance System ( Project PPt )
Rfid Attadance System ( Project PPt )
 
RFID based Attendance System
RFID based Attendance SystemRFID based Attendance System
RFID based Attendance System
 
RFID
RFIDRFID
RFID
 
NFC (near Field Communication)
NFC (near Field Communication)NFC (near Field Communication)
NFC (near Field Communication)
 
Near field communication
Near field communicationNear field communication
Near field communication
 
Rfid technology
Rfid technologyRfid technology
Rfid technology
 
Nfc technology ppt
Nfc technology pptNfc technology ppt
Nfc technology ppt
 
Applications of RFID technology
Applications of RFID technologyApplications of RFID technology
Applications of RFID technology
 
NFC TECHNOLOGY
NFC TECHNOLOGYNFC TECHNOLOGY
NFC TECHNOLOGY
 
Nfc Overview
Nfc OverviewNfc Overview
Nfc Overview
 
Radio frequency identification
Radio frequency    identificationRadio frequency    identification
Radio frequency identification
 
Rfid based attendance system
Rfid based attendance systemRfid based attendance system
Rfid based attendance system
 
Rfid based library management system
Rfid based library management systemRfid based library management system
Rfid based library management system
 
RFID BASED ATTENDANCE SYSTEM PPT
RFID BASED ATTENDANCE SYSTEM PPTRFID BASED ATTENDANCE SYSTEM PPT
RFID BASED ATTENDANCE SYSTEM PPT
 
RFID Technology
RFID TechnologyRFID Technology
RFID Technology
 

Semelhante a NFC & RFID on Android

NFC on Android - Near Field Communication
NFC on Android - Near Field CommunicationNFC on Android - Near Field Communication
NFC on Android - Near Field CommunicationSven Haiges
 
DefCon 2012 - Near-Field Communication / RFID Hacking - Lee
DefCon 2012 - Near-Field Communication / RFID Hacking - LeeDefCon 2012 - Near-Field Communication / RFID Hacking - Lee
DefCon 2012 - Near-Field Communication / RFID Hacking - LeeMichael Smith
 
NFC Bootcamp Seattle Day 2
NFC Bootcamp Seattle Day 2 NFC Bootcamp Seattle Day 2
NFC Bootcamp Seattle Day 2 traceebeebe
 
Rfid101 rfid introduction_lr
Rfid101 rfid introduction_lrRfid101 rfid introduction_lr
Rfid101 rfid introduction_lrCecile Tan
 
Rfid101 rfid introduction_lr
Rfid101 rfid introduction_lrRfid101 rfid introduction_lr
Rfid101 rfid introduction_lrCecile Tan
 
A 2018 practical guide to hacking RFID/NFC
A 2018 practical guide to hacking RFID/NFCA 2018 practical guide to hacking RFID/NFC
A 2018 practical guide to hacking RFID/NFCSecuRing
 
A 2018 practical guide to hacking RFID/NFC
A 2018 practical guide to hacking RFID/NFCA 2018 practical guide to hacking RFID/NFC
A 2018 practical guide to hacking RFID/NFCSlawomir Jasek
 
CONFidence 2018: A 2018 practical guide to hacking RFID/NFC (Sławomir Jasek)
CONFidence 2018: A 2018 practical guide to hacking RFID/NFC (Sławomir Jasek)CONFidence 2018: A 2018 practical guide to hacking RFID/NFC (Sławomir Jasek)
CONFidence 2018: A 2018 practical guide to hacking RFID/NFC (Sławomir Jasek)PROIDEA
 
Mikel_Berdufi_RFID_NFC_REPORT
Mikel_Berdufi_RFID_NFC_REPORTMikel_Berdufi_RFID_NFC_REPORT
Mikel_Berdufi_RFID_NFC_REPORTMikel Berdufi
 
การใช้งานโปรแกรม Power point
การใช้งานโปรแกรม Power pointการใช้งานโปรแกรม Power point
การใช้งานโปรแกรม Power pointanniesimcard
 
My best effort
My best effortMy best effort
My best effortsujataray
 
RFID BASED VEHICLE TRACKING SYSTEM
RFID BASED VEHICLE TRACKING SYSTEMRFID BASED VEHICLE TRACKING SYSTEM
RFID BASED VEHICLE TRACKING SYSTEMAyush Dixit
 
Meetup -- RFID
Meetup -- RFIDMeetup -- RFID
Meetup -- RFIDKevin2600
 
Near field communication
Near field communication Near field communication
Near field communication Siddharth Dc
 
RFID vs NFC Metal Card
RFID vs NFC Metal CardRFID vs NFC Metal Card
RFID vs NFC Metal CardNewbega China
 
Nahuel Grisolia. RFID Workshop.
Nahuel Grisolia. RFID Workshop.Nahuel Grisolia. RFID Workshop.
Nahuel Grisolia. RFID Workshop.Positive Hack Days
 
Rfid security workshop v0.9 -nahuel_grisolia
Rfid security workshop v0.9  -nahuel_grisoliaRfid security workshop v0.9  -nahuel_grisolia
Rfid security workshop v0.9 -nahuel_grisoliaPositive Hack Days
 
Evaluation of the Technology Supporting the Development of an Assets Tracking...
Evaluation of the Technology Supporting the Development of an Assets Tracking...Evaluation of the Technology Supporting the Development of an Assets Tracking...
Evaluation of the Technology Supporting the Development of an Assets Tracking...Dominique Guinard
 

Semelhante a NFC & RFID on Android (20)

NFC on Android - Near Field Communication
NFC on Android - Near Field CommunicationNFC on Android - Near Field Communication
NFC on Android - Near Field Communication
 
DefCon 2012 - Near-Field Communication / RFID Hacking - Lee
DefCon 2012 - Near-Field Communication / RFID Hacking - LeeDefCon 2012 - Near-Field Communication / RFID Hacking - Lee
DefCon 2012 - Near-Field Communication / RFID Hacking - Lee
 
NFC Bootcamp Seattle Day 2
NFC Bootcamp Seattle Day 2 NFC Bootcamp Seattle Day 2
NFC Bootcamp Seattle Day 2
 
Rfid101 rfid introduction_lr
Rfid101 rfid introduction_lrRfid101 rfid introduction_lr
Rfid101 rfid introduction_lr
 
Rfid101 rfid introduction_lr
Rfid101 rfid introduction_lrRfid101 rfid introduction_lr
Rfid101 rfid introduction_lr
 
A 2018 practical guide to hacking RFID/NFC
A 2018 practical guide to hacking RFID/NFCA 2018 practical guide to hacking RFID/NFC
A 2018 practical guide to hacking RFID/NFC
 
A 2018 practical guide to hacking RFID/NFC
A 2018 practical guide to hacking RFID/NFCA 2018 practical guide to hacking RFID/NFC
A 2018 practical guide to hacking RFID/NFC
 
CONFidence 2018: A 2018 practical guide to hacking RFID/NFC (Sławomir Jasek)
CONFidence 2018: A 2018 practical guide to hacking RFID/NFC (Sławomir Jasek)CONFidence 2018: A 2018 practical guide to hacking RFID/NFC (Sławomir Jasek)
CONFidence 2018: A 2018 practical guide to hacking RFID/NFC (Sławomir Jasek)
 
Aidc technology
Aidc technologyAidc technology
Aidc technology
 
Mikel_Berdufi_RFID_NFC_REPORT
Mikel_Berdufi_RFID_NFC_REPORTMikel_Berdufi_RFID_NFC_REPORT
Mikel_Berdufi_RFID_NFC_REPORT
 
การใช้งานโปรแกรม Power point
การใช้งานโปรแกรม Power pointการใช้งานโปรแกรม Power point
การใช้งานโปรแกรม Power point
 
RFID/NFC for the Masses
RFID/NFC for the MassesRFID/NFC for the Masses
RFID/NFC for the Masses
 
My best effort
My best effortMy best effort
My best effort
 
RFID BASED VEHICLE TRACKING SYSTEM
RFID BASED VEHICLE TRACKING SYSTEMRFID BASED VEHICLE TRACKING SYSTEM
RFID BASED VEHICLE TRACKING SYSTEM
 
Meetup -- RFID
Meetup -- RFIDMeetup -- RFID
Meetup -- RFID
 
Near field communication
Near field communication Near field communication
Near field communication
 
RFID vs NFC Metal Card
RFID vs NFC Metal CardRFID vs NFC Metal Card
RFID vs NFC Metal Card
 
Nahuel Grisolia. RFID Workshop.
Nahuel Grisolia. RFID Workshop.Nahuel Grisolia. RFID Workshop.
Nahuel Grisolia. RFID Workshop.
 
Rfid security workshop v0.9 -nahuel_grisolia
Rfid security workshop v0.9  -nahuel_grisoliaRfid security workshop v0.9  -nahuel_grisolia
Rfid security workshop v0.9 -nahuel_grisolia
 
Evaluation of the Technology Supporting the Development of an Assets Tracking...
Evaluation of the Technology Supporting the Development of an Assets Tracking...Evaluation of the Technology Supporting the Development of an Assets Tracking...
Evaluation of the Technology Supporting the Development of an Assets Tracking...
 

Mais de todbotdotcom

How blink(1) was made – Hackaday 10th anniversary talk
How blink(1) was made –  Hackaday 10th anniversary talkHow blink(1) was made –  Hackaday 10th anniversary talk
How blink(1) was made – Hackaday 10th anniversary talktodbotdotcom
 
Disrupting and Enhancing Healthcare with the Internet of Things
Disrupting and Enhancing Healthcare with the Internet of ThingsDisrupting and Enhancing Healthcare with the Internet of Things
Disrupting and Enhancing Healthcare with the Internet of Thingstodbotdotcom
 
Intro to the Arduino Entrepreneurial System
Intro to the Arduino Entrepreneurial SystemIntro to the Arduino Entrepreneurial System
Intro to the Arduino Entrepreneurial Systemtodbotdotcom
 
Cash machinepres woodbury
Cash machinepres woodburyCash machinepres woodbury
Cash machinepres woodburytodbotdotcom
 
From Prototype to Kickstarter to Production: How blink(1) was made
From Prototype to Kickstarter to Production: How blink(1) was madeFrom Prototype to Kickstarter to Production: How blink(1) was made
From Prototype to Kickstarter to Production: How blink(1) was madetodbotdotcom
 
Cash machine sketching12
Cash machine sketching12Cash machine sketching12
Cash machine sketching12todbotdotcom
 

Mais de todbotdotcom (6)

How blink(1) was made – Hackaday 10th anniversary talk
How blink(1) was made –  Hackaday 10th anniversary talkHow blink(1) was made –  Hackaday 10th anniversary talk
How blink(1) was made – Hackaday 10th anniversary talk
 
Disrupting and Enhancing Healthcare with the Internet of Things
Disrupting and Enhancing Healthcare with the Internet of ThingsDisrupting and Enhancing Healthcare with the Internet of Things
Disrupting and Enhancing Healthcare with the Internet of Things
 
Intro to the Arduino Entrepreneurial System
Intro to the Arduino Entrepreneurial SystemIntro to the Arduino Entrepreneurial System
Intro to the Arduino Entrepreneurial System
 
Cash machinepres woodbury
Cash machinepres woodburyCash machinepres woodbury
Cash machinepres woodbury
 
From Prototype to Kickstarter to Production: How blink(1) was made
From Prototype to Kickstarter to Production: How blink(1) was madeFrom Prototype to Kickstarter to Production: How blink(1) was made
From Prototype to Kickstarter to Production: How blink(1) was made
 
Cash machine sketching12
Cash machine sketching12Cash machine sketching12
Cash machine sketching12
 

Último

Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...DianaGray10
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXTarek Kalaji
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding TeamAdam Moalla
 
Building AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxBuilding AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxUdaiappa Ramachandran
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1DianaGray10
 
AI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarAI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarPrecisely
 
Linked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesLinked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesDavid Newbury
 
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Will Schroeder
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPathCommunity
 
Bird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemBird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemAsko Soukka
 
UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8DianaGray10
 
NIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopNIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopBachir Benyammi
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioChristian Posta
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationIES VE
 
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...Aggregage
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostMatt Ray
 
Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.YounusS2
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Commit University
 
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfJamie (Taka) Wang
 

Último (20)

Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBX
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team
 
Building AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxBuilding AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptx
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1
 
AI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarAI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity Webinar
 
Linked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesLinked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond Ontologies
 
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation Developers
 
Bird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemBird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystem
 
UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8
 
NIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopNIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 Workshop
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and Istio
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
 
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
 
Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)
 
20150722 - AGV
20150722 - AGV20150722 - AGV
20150722 - AGV
 
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
 

NFC & RFID on Android

  • 1. NFC & RFID with Android Tod E. Kurt, ThingM Where 2.0 2011, Santa Clara, CA
  • 2. What is this talk? Why you should care about RFID & NFC Overview of what RFID & NFC is technically How Android implements NFC What Android can and cannot do Some existing Android apps Tips on how to add NFC to your Android app Non-Android NFC hacking
  • 3. Who is this guy? @todbot does... Crystal Monster BlinkM Smart LEDs ScrewShield Spooky Arduino Wiichuck adapter
  • 4. Why Should I Care About RFID? Exxon Mastercard PayPass Identification SpeedPass Financial Transactions Asset tracking Access control SF Muni Clipper pass Supply chain
  • 5. Why Should I Care About NFC? Some of the things NFC promises... http://www.nfc-forum.org
  • 7. Why I like RFID ThingM: WineM AFK: SeaWorld in Dubai ThingM: Ghost Tours at Henry Ford !
  • 9. RFID is Easy RFID tag – just a serial number, a unique ID UID 32-bit or 56-bit Some tags UP TO 4kB! (wow!) of writeable data
  • 10. Why RFID instead of... ...barcodes – can have a lot more data, no ugly barcode ...QR codes – can write data, no camera lag, no ugly qr code ...Bluetooth – cheaper, low-overhead, easier setup ...WiFi / GPS localization – cheap, definite, closely-spaced location
  • 11. What RFID is Not NOT localization NOT proximity detection NOT fast data transfer NOT secure (for non-smartcard) Be careful using it for identification, use it instead for fun
  • 12. How RFID works “reader” “tag” expensive ($10) cheap ($0.10)
  • 15. Waterpark ticket day-pass vs season pass age-based restrictions payment of food, beverages, merchandise
  • 16. Casino Chips Theft Fail man steals $1.5M in chips, cashes them in for $0 and jail “RFID can void the stolen chips, like a registration that’s no longer valid,” Kendall said. “When we manufacture RFID-embedded chips and send them to a casino, they’re not worth anything until they register the codes. Until then, they’re nothing but freight.”
  • 17. NFC
  • 18. NFC: Near Field Communication web-like semantics for RFID Built on existing RFID tech Multi-part, mime-typed, textual data Devices can have 3 modes: - tag reader/writer Nokia 3220 NFC - tag emulation - peer-to-peer data transfer NFC products available since 2005
  • 19. NFC Technical Architecture http://www.nfc-forum.org/
  • 20. NDEF: NFC data exchange format some example NDEF formats http://wiki.forum.nokia.com/
  • 21. Some cool NFC ideas Tap Your Top10 – Send top 10 list to DJ by tapping phone HouseMood – Tap your house so it knows your mood HiRes 4SQ – Precise, hyper-dense checkins with foursquare
  • 22. NFC Capabilities on Android Currently available Android NFC phones: Google Nexus S Use Android 2.3.3 (API Level 10) as the NFC APIs drastically changed from 2.3.2. New Intent Filter and TechFilter APIs for registering interest in types of cards, types of NDEF messages, types of NFC events
  • 23. What works now on Android? Tag reader/writer Tag emulation (of certain NFC NDEF tags) P2P communication (Android-specific)
  • 24. What doesn’t work Tag emulation of Smart Cards Peer-to-peer with Nokia NFC phones
  • 25. Nexus S NFC Hardware
  • 27. taglet & AnyTag “bit.ly for RFID tags” maps UID –> URL works with any tag phone can read but both don’t seem to work on 2.3.3
  • 28. Tags App System App Two functions: - tag reader - tag emulator Makes sharing contact info & URLs easy
  • 29. NFC TagInfo most useful
  • 30. NXP TagWriter lets you format tags for NDEF use
  • 32. App Demos Let’s try to show some demos...
  • 33. Developing NFC on Android Disclaimer: I’m not a big Android programmer. Good docs at http://developer.android.com/guide/topics/nfc/ go read them. Instead, look at the process from a high level And at the lower-level setup and gotchas
  • 34. Quick Android SDK Setup Intro Android apps are written in Java using Eclipse IDE Install Eclipse (or other favorite IDE) Download Android SDK Hook Android SDK up to Eclipse Tell SDK to download needed extra packages Then you can start a new Eclipse Android project
  • 35. App Activity lifecycle Apps have at least one Activity Activities triggered from system events, “intents” Activities are paused & resumed by Android system
  • 36. Main Steps to add NFC ■ Edit app’s AndroidManifest.xml, set: ■ Minimum SDK version ■ Hardware permissions ■ Intent filters ■ Two ways to work: ■ Intent Dispatch – run your Activity on tag presence ■ Foreground Dispatch – intercept tag intents
  • 37. Permissions in Manifest Set SDK version to get to NFC APIs: <uses-sdk android:minSdkVersion="10"/> Request permission from the user to use NFC hardware: <uses‐permission
android:name="android.permission.NFC">
  • 38. Intent Filter in Manifest NFC intent filters tell Android your Activity can handle NFC And let you control what kind of tags your Activity sees <intent-filter>   <action android:name="android.nfc.action.NDEF_DISCOVERED"/>   <data android:mimeType="mime/type" /> </intent-filter> <intent-filter>   <action android:name="android.nfc.action.TECH_DISCOVERED"/>   <meta-data android:name="android.nfc.action.TECH_DISCOVERED"                 android:resource="@xml/nfc_tech_filter.xml" /> </intent-filter> <intent-filter>   <action android:name="android.nfc.action.TAG_DISCOVERED"/> </intent-filter>
  • 39. Intent Filter Can even filter on NFC mime-type <intent‐filter> 

<action
android:name="android.nfc.action.NDEF_DISCOVERED"/> 

<data
android:mimeType="text/x‐vcard"/> 

<category
android:name="android.intent.category.DEFAULT"/> </intent‐filter>
  • 40. TechFilter Filter for what kind of tag hardware you care about <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">     <tech-list>         <tech>android.nfc.tech.IsoDep</tech>         <tech>android.nfc.tech.NfcA</tech>                 <tech>android.nfc.tech.NfcB</tech>         <tech>android.nfc.tech.NfcF</tech>         <tech>android.nfc.tech.NfcV</tech>         <tech>android.nfc.tech.Ndef</tech>         <tech>android.nfc.tech.NdefFormatable</tech>         <tech>android.nfc.tech.MifareClassic</tech>         <tech>android.nfc.tech.MifareUltralight</tech>     </tech-list> </resources>
  • 41. Get Tag Data In onCreate() if using intent filters, or anywhere using foreground dispatch Intent intent = getIntent(); NdefMessage[] msgs = intent.getParcelableArrayExtra(NfcAdapter.EXTRA_NDEF_MESSAGESs); for (int i = 0; i < msgs.length; i++) { NdefRecord[] records = msgs[i].getRecords(); }
  • 43. Hacking NFC not on Android Get a USB or serial reader Get some tags (SF Muni Clipper, your prox card, etc.) Get some apps Hook it up to your PC or Arduino
  • 44. Touchatag http://touchatag.com Inexpensive ($40) USB NFC reader Comes with 10 read-only 64-byte tags Works with libnfc
  • 45. Proxmark http://www.proxmark.org/ GPL RFID hardware reader Build it yourself, if you’re hardcore Read/emulate any RFID tag $300
  • 46. SonMicro RFID http://sonmicro.com 13.56 MHz RFID reader Libraries for Processing & Arduino Read/write tags Limited NFC, no emulation $30 avail from SparkFun
  • 47. LibNFC http://www.libnfc.org/ Multi-platform library for NFC exploration Works with most all NFC/RFID USB readers Understands most all NFC/RFID tag types Active developer community
  • 49. TagAge.net Create custom NFC tags with custom graphics, all online
  • 51. Thank You imagine these guys with NFC tags
  • 52. Thank You imagine these guys with NFC tags

Notas do Editor

  1. \n
  2. \n
  3. I&amp;#x2019;m Tod, aka &amp;#x201C;todbot&amp;#x201D;. I&amp;#x2019;m a professional tinkerer.\n\nI founded ThingM with Mike Kuniavsky five years ago. We&amp;#x2019;re a ubiquitous computing device studio, a micro-OEM, producing a range of &amp;#x201C;Smart LED&amp;#x201D; products called BlinkM.\n\nI&amp;#x2019;ve written articles for MAKE magazine, had projects featured on MAKE:TV, and wrote the book on hacking the Roomba robot vacuum.\n\nI&amp;#x2019;ve been involved in the Arduino community for about five years too, and have produced a set of instructional material and hacking products.\n\nFinally, I&amp;#x2019;m active in the local Los Angeles hacker community. In 2010 I co-founded\nCRASH Space, the first LA hackerspace. And I work with local Los Angeles artists to help them add technology to their works.\n \n \n
  4. First, how many have played with RFID tags? How many with NFC on Android?\n\nNFC is a type of RFID.\nRFID tech is being used increasingly for identification &amp; financial transactions. \nAs keys to open locks of all kinds.\nAs the mobile phone has become a &amp;#x201C;convergence&amp;#x201D; device for other portable electronics,\nso too it may become a universal &amp;#x201C;keyring&amp;#x201D; for RFID applications.\n\n\nsf muni pic: http://www.flickr.com/photos/jlkinsel/5084445802/\n\n
  5. Some of the promises:\none-touch setup of WiFi &amp; Bluetooth\nsimple touch-based data exchange\nPC logins\ncar personalization\nsmart posters\n\nhttp://www.nfc-forum.org/events/oulu_spotlight/Technical_Architecture.pdfhttp://www.nfc-forum.org/aboutnfc/tech_enabler/\nhttp://www.nfc-forum.org/aboutnfc/nfc_in_action/\n
  6. If the rumors about the next iPhone are true, we could see a flood of NFC applications in the near future.\n
  7. A ThingM prototype, I designed a high-density RFID reader network for WineM, a winerack you can ask questions of. It knows what wine is in it and where it&amp;#x2019;s located. Each wine slot has an RFID reader. Each wine bottle has an RFID tag.\nWhen a wine bottle is inserted, the winerack registers that fact.\nhttp://winem.thingm.com/\n\nFor the Henry Ford Museum, we prototyped &amp;#x201C;Ghost Tours&amp;#x201D; where visitors had &amp;#x201C;magic tickets&amp;#x201D; that created an interactive narrative flow on top of existing museum exhibits.\n\nAnother startup I co-founded was AFK, with Ben Cerveny (Bloom) and Kevin Slavin (area/code).\nAFK focused on building platforms for spatial interaction.\nWe worked with Busch Entertainment (SeaWorld/Busch Gardens) on new projects domestically and in Dubai. \nOne of the things I designed was an active and semi-active RFID ticket sensor network that was to blanket an entire park.\n\n
  8. Okay so let&amp;#x2019;s talk about what RFID actually is.\n
  9. I used to think RFID tags stored lots of data.\nAnd that the RFID tag had some meaningful communication with its reader.\nNo. At its basic, RFID is just a barcode.\n\nRFID tags are just another kind of machine-readable number.\nLike barcodes, or QR codes, or magstripes.\n\nAll RFID tags have a permanent UID. Some tags have an additional writable area of 64bytes to 4kB.\nSome tags have a crypto engine for doing key exchanges, but those are in the minority.\n\n\n
  10. \n
  11. Not localization - no position data can be inferred from a tag read\nNot proximity detection - you can&amp;#x2019;t tell how far away a tag is from a reader\nNot crypto\n\nIt&amp;#x2019;s easy to use RFID but hard to use it securely. So eschew the use of it for sensitive information, instead use it for entertainment and fun.\n\n
  12. This is the only schematic in here, promise.\n\nThe reader does two things: \n- generate a high-power RF field to power the tag\n- officiate the protocol between the two devices\n\nMost tags are &amp;#x201C;passive&amp;#x201D;. They have no power source. Instead, powered by the reader.\nPower and communication are transmitted inductively, like a wireless charging sytems.\n\nReaders control the data transmission. Readers energize the tags.\n\nData rate is between 100 kbps and 800 kbps. \nRF carrier is at 13.56MHz for NFC RFID. \n\nhttp://www.rfid-handbook.com/rfid/types_of_rfid.html\n\n\n
  13. The insides of these cheap tiny tags. \nIt&amp;#x2019;s essentially three sections: an RF interface, a memory, and a controller joining the two.\n\nSome tags have rewritable EEPROM, some just have ROM. \nSome have only a few bytes (just enough for the UID), some have up to 4kB.\n\nhttp://www.rfid-handbook.com/rfid/types_of_rfid.html\n
  14. \n
  15. Tickets in the form of RFID wristbands are becoming increasingly popular in amusement parks.\nBecause they are waterproof and wrist-attached, people can carry them anywhere. \n\nUse their RFID bracelet to lock up their personal effects.\n\nSince visitors carry them everywhere, they can be leveraged for other purposes.\nVisitors can purchase food and merchandise. Alcohol served only to non-minors.\n\n
  16. Dec 2010, guy walks in with a motorcycle helmut on, walked up to craps table, and walked out with $1.5 million in chips. The casino unregisters the chips. Thief comes in to cash some in, security grab him.\n\nhttp://www.minyanville.com/businessmarkets/articles/bellagio-anthony-carleo-rfid-las-vegas/2/3/2011/id/32595\nimage: http://news.cnet.com/2009-7355_3-5568411.html?tag=mncol;txt\n\n
  17. And what&amp;#x2019;s NFC then?\n
  18. Instead of just using the UID, a key into a database,\nnow can have interesting self-contained data\n\nimage: http://www.elasticspace.com/2005/12/nokia-3220-nfc\n\n
  19. \n\nimage: http://www.nfc-forum.org/events/oulu_spotlight/Technical_Architecture.pdf\n
  20. In addition to the low-level protocol specs, \nNFC also defines a set of mime-types and microformats for concisely embedding certain types of information, like URLs, where it has codes for common strings like &amp;#x201C;https://www.&amp;#x201D;\n\n\nimage: http://wiki.forum.nokia.com/\n
  21. free business models here, no charge.\n\n
  22. \n
  23. \n
  24. \n
  25. Nexus S NFC antenna in back cover; two spring-loaded contacts make the connection.\nThe Secure Element chip is on the blue board for tag emulation. \nIt&amp;#x2019;s a SmartMX combined into the same package as the PN544 NFC controller\n
  26. \nI&amp;#x2019;ve been looking at them mostly for testing of NFC &amp; RFID\n\n
  27. AnyTag is open source : http://code.google.com/p/anytag-android/\ntaglet is implemented as a web app somehow.\n
  28. \n
  29. They recompiled the SDK to get access to previously hidden APIs.\n\nThese guys are good.\n\nhttp://www.nfc-research.at/\n\n
  30. NXP produces many RFID chips and reader products.\nTagWriter can &amp;#x201C;back up&amp;#x201D; NFC tags.\n\nHere is an example of TagWriter reading one of the 46-byte read-only Touchatag tags.\n\n\n
  31. And here&amp;#x2019;s an example of TagWriter writing to a 1kB Mifare tag.\n\n
  32. \n
  33. Show some of these apps in action on the video camera.\n
  34. \nOkay let&amp;#x2019;s look at what it would take to add RFID/NFC capability to an app.\n\n
  35. \n
  36. If you&amp;#x2019;ve never programmed in Android before, here&amp;#x2019;s the basic lifecycle of the primary chunk of code you write: the Activity\n\nimage: http://stuffthathappens.com/blog/2008/11/01/android-activity-lifecycle/\n
  37. Every Android app has an AndroidManifest.xml file that describes needed resources and permissions.\nAn app&amp;#x2019;s activities, intents and services and permissions are declared in the manifest file\n\n\nhttp://stackoverflow.com/questions/4815718/getting-the-nfc-hardware-id-in-android\n
  38. These are the two most important things to add to your code.\nIn your app&amp;#x2019;s AndroidManifest.xml\n
  39. There are three different intents you can register for:\n- NDEF_DISCOVERED - What kind of NFC-formatted NDEF packet you&amp;#x2019;re looking for\n- TECH_DISCOVERED &amp;#x2013; What kind of RFID tag you&amp;#x2019;re expecting\n- TAG_DISCOVERED - Is a tag present or not\n
  40. Seems you need to have &amp;#x201C;category&amp;#x201D; or it doesn&amp;#x2019;t work.\n\n
  41. Filter for what kind of tag hardware you want to look at.\n\n
  42. With all that setup, just getIntent() then get an array of NdefMessages containing an array of NdefRecords.\n
  43. Like most interesting sensors on smartphones, you can&amp;#x2019;t use the simulator to test. You test on the device. Google provides a trick around this.\n
  44. \n
  45. \n
  46. If you want to explore RFID &amp; NFC outside of Android (which is useful for debugging Android), you should get some reader hardware.\n\n\n
  47. The tags it comes with are read-only, but pre-formated with NFC URL data.\n\n
  48. Open source and awesome, is used to explore possible exploits to RFID and NFC.\n\n
  49. \nAt SparkFun at http://www.sparkfun.com/products/10126\nshould probably also get: http://www.sparkfun.com/products/10162\n\n
  50. http://www.libnfc.org/\n
  51. http://www.open-nfc.org/\n
  52. Print your own NFC tags, with multiple tag types.\nSame web interface as online sticker makers, but also contains RFID tags.\n\n
  53. \n
  54. hat-tip to Carlyn for this video\nhttp://www.youtube.com/watch?v=IQ6xGMSOu1E\n\n\n
  55. \n