Android Smart Card ID Checker UHCL Capstone Team 6 Michael Woodruff Raymond Nnodim Faisal Moiz Presentation Outline • • • • • • Background Requirements User interface Data model Communications model Q and A Background • Johnson Space Center security access • Goal – use smart card embedded in ID badge to verify appropriate access • Tietronix Software sponsoring project Common Access Cards • NFC – Near Field Communication – ISO 14443 – operates at 13.56 MHz – Short range communication <= 10 cm – Newer smart phones have embedded NFC readers • Samsung Galaxy Nexus and S II, HTC Amaze 4G – Android support with SDK 2.3 • Personnel Data on card Requirements • Use Android smart phone to read NFC cards • Use ID number read to query remote database and display digital replica of ID card • Display additional personnel details • Display warnings such as revoked or expired cards • Log time and location of scans • Log and photograph Guests • Should work offline User Interface Home Screen Add Guest Scanned ID Found In Database Scanned ID Triggers Warnings Scanned ID Not Found In Database Data Model Remotely Generated Phone Generated Database Tables - Card Field Data Type ID (PK) varchar(20) Flags tinyint Expiration_Date datetime Last_Updated datetime Database Tables – Person Field EDI_ID (PK) FName LName Access_Level Class Company Photo Flags Card_ID (FK) Last_Updated Data Type varchar(20) nvarchar(50) nvarchar(50) varchar(500) tinyint varchar(50) varchar(100) varchar(500) varchar(20) datetime Database Tables - Guest Field Data Type ID (Auto) (PK) int Name nvarchar(100) Company varchar(50) Address varchar(50) Photo varchar(100) Comment varchar(500) DateTime datetime Latitude float Longitude float Database Tables - Scan Field Data Type ID (Auto) (PK) bigint Card_ID varchar(20) DateTime datetime Latitude float Longitude float Pull Personnel Records Request records Send records Save records to local database Local Database Remote Database Retrieve Personnel Data Locally Remote Database Use local copy Local Database Remote Database Unavailable Scan/Guest Log Data Save Scan/Guest Logs Local Database Push Scan/Guest Logs Push Scan/Guest Logs Logs Received Confirmation Retrieve Logs to send from local database Delete Logs from Local Database Local database Remote database Questions