Securing and Streamlining Schools with JuicyBadge

Summary

    On a school campus, there are a variety of ways that students authenticate themselves, but this set of systems is extremely inconvenient and slow. Among these systems is the humble photo ID. These plastic IDs usually serve no purpose other than to serve as visual identification, or to bear a barcode. Our goal is to make these IDs into a multifunctional tool that integrates with and enhances existing systems. For example, JuicyBadge can replace the ubiquitous lunchroom fingerprint scanner; its contactless Near Field Communication (NFC) technology is more reliable and doesn’t require cleaning. In surveys conducted on students, the majority of respondents indicated that the fingerprint scanner had a poor ability to recognize them. Our survey of teachers indicated that many take issue with wasting time manually taking attendance each class; JuicyBadge takes attendance automatically, relieving them of this hassle. Security and theft-prevention are effortless with JuicyBadge, as the NFC chip can protect any type of data. The software behind JuicyBadge is Free Open Source Software under the MIT license, so its use will relieve schools of any need to purchase licensing or rely exclusively on a third party company for maintenance. In the future, we will continue to support the software by adding features and fixing issues.

Full reader source code is available at: https://github.com/cr8tiveCoding/functionalbadges-max
Full server source code is available at: https://github.com/maxmorris2001/FunctionalBadgesWebserver

Question / Proposal

How can we improve upon and consolidate existing authentication systems in schools? Barcode scanners, electronically controlled doors, and fingerprint scanners are commonly found on school campuses. Each require a different method of authentication and the software/hardware that comes with it. These systems are usually slow, inconvenient, and expensive, thus our group raised a question: How could we improve upon and consolidate these existing authentication systems in schools? We brainstormed, and determined that we could improve upon a common pre existing system: Photo IDs. ID’s are commonly found in most schools and most importantly, are often required to be held on students’ and faculties’ person at all times. This means that if there was an inexpensive way to turn these ubiquitous but functionally useless ID’s into a form of data storage, and pair this with software to handle the data, then schools would be able to simply remove their multiple obsolete authentication systems and replace them with one system. Through our project, we hope to reinvent the school ID to become multifunctional and, for once, useful.

Research

Our efforts initially were to directly improve an existing system. We determined two possible candidates: the fingerprint scanner and the barcode. Research on various online vendors yielded that fingerprint scanners and barcode scanners are inordinately expensive. Additionally, fingerprint scanners require constant cleaning, and barcodes are very easily duplicated. From these conclusions we determined that a better option would be to introduce a new system that took advantage of existing infrastructure. Our research led us to Near Field Communication tags. Existing plastic photo IDs can easily be adapted to support the technology. NFC tags are extremely cost-effective, able to be bought in bulk for 5-10 cents each. NFC Readers do not require cleaning like fingerprint scanners, as they are contactless. NFC tags can also securely store arbitrary data. This shifted the scope of our project, allowing it to accomplish more things than we otherwise could. Research into toolkits for interfacing with an NFC card reader led us to choose LogicalAccess for C++, because it is versatile and fast. Building JuicyBadge on the foundation of photo ID is relevant today as, according to the National Education Center for Statistics, approximately 13% of middle schools and 16.2% of high schools use Photo ID. These schools must change a minimal amount of infrastructure to adopt the NFC badge: simply apply the chip to the existing ID. This simple implementation allows JuicyBadge to be adopted more readily by a larger set of schools.

Method / Testing and Redesign

The Juicy Reader/Writer and the Juicy Webserver are programs written to demonstrate and test the use of NFC technology. The Reader/Writer, written in C++, interacts with the card reader and records the timings of various operations. The Webserver, written in Dart, recieves data sent by the Reader. The Webserver maintains a list of authorized cards, and responds to the reader reflecting the validity of the data.

Full reader source code is available at: https://github.com/cr8tiveCoding/functionalbadges-max
Full server source code is available at: https://github.com/maxmorris2001/FunctionalBadgesWebserver

Speed and Efficiency Testing:
Use 2 computers (Machine A and Machine B) connected on a Local Area Network, an ACR122 NFC card reader, and a set of programmed Mifare Classic 1K NFC badges.

  1. Launch Juicy Webserver on Machine B.
  2. Connect NFC Reader to Machine A.
  3. Launch Juicy Reader on Machine A.
  4. Randomly select a badge and scan it, recording the time between the chip connection and the data being received.
  5. Repeat step 4, 100 times.

JuicyBadge aims to be efficient. In order to test the efficiency of the reader program, we scanned several badges one hundred times and measured the amount of time it took to read data from the card. The recorded timing of operations is precise and accurate, because it is recorded programatically by the computer executing the Juicy code. This method can be externally verified and reproduced, by inspecting and running the publicly available source code. The cards were programmed to meet all possible cases, namely an entry being accepted and an entry being rejected. Bias in the results was reduced, as the experiment was repeated many times over all possible cases.

We also conducted two types of surveys to show that public sentiment favors the adoption of NFC technology. One survey was administered to faculty, and the other to students at Lee.

In the student survey, the following questions were given:

  1. On average, how is your experience with the fingerprint scanner at lunch?
  2. Do you have difficulty getting to class due to problems accessing the buildings?
  3. How would you feel about an automatic door lock, that opens with your ID?

The first question determines an average range of numbers, to measure the efficiency of existing fingerprint scanners in our local school. The latter two are yes/no questions designed to measure public sentiment. In order to maintain high reliability of the data, we phrased our questions simply and clearly. This survey was administered through Google Forms and Google Classroom.

In the faculty survey, the following questions were given:

  1. How much time does taking attendance take?
  2. Do you feel that the current attendance system could be improved upon?
  3. Would an automatic and accurate attendance-taking system be a welcome improvement?

As in the former survey, these questions are direct and straightforward, eliminating miscommunication or skew in the results. We used the results of the first question to calculate an average amount of time that JuicyBadge could save. This survey was administered in person.

 

Results

The results of our testing used to find the amount of time taken for the scanning process can be seen in the graph. The range of results was 28 milliseconds, demonstrating a high amount of precision. The maximum time taken for a scan was 218 milliseconds.

 

The data in figure 2 shows student opinions regarding implementing this system in schools. Overall, approximately 68% of responses indicate support of NFC technology either directly or through using NFC as a solution to a specified problem.

 

The data in figure 3 shows faculty opinion regarding automated attendance. All teachers surveyed showed dissatisfaction with current attendance systems, and all but one individual indicated support for automatic badge-based attendence. Calculated using the time spent taking attendance as reported by faculty, an average of 3-9 hours is wasted on taking attendance during a single 180-day school year, per teacher, per class period.

 

Conclusion

    The product we’ve developed has fulfilled our expected outcome. JuicyBadge is fast and efficient. On average, reading data from a JuicyBadge takes only 213 milliseconds, which is twice as fast as the blink of an eye. Surveys we conducted show that there is a demand for JuicyBadge from both faculty and students, as shown by Results Figure 2 and Results Figure 3. These points completely address and fulfill the goal of our project, and we can confidently state that we have created a multipurpose authentication system that consolidates and can replace pre-existing software and hardware in schools. It must be noted that our surveys did not reach the largest audience possible. Most of our responses came from upperclassmen, and this may have affected our data from these surveys. Having acknowledged these points, we are still confident that the data reasonably depicts the sentiment of faculty and students in local schools. In addition, the source code for the JuicyBadge software is freely available for everyone under the MIT Software License. Other researchers and potential users can easily download and modify the code to suit their needs, add features, fix problems, and publish their own versions, all without the need to pay royalties or adhere to any restrictive licensing terms. The openness of our system allows it to be easily maintained and improved upon by ourselves and the world. Organizations outside of the school system can simply modify the code to suit their specific criteria. In the future, we hope to see NFC tags built into Photo IDs adopted by schools and other organizations, and to see derivative software making use of the Juicy source code.

Full reader source code is available at: https://github.com/cr8tiveCoding/functionalbadges-max
Full server source code is available at: https://github.com/maxmorris2001/FunctionalBadgesWebserver

About me

We are JuicyHands: a team of 3 young engineers at Lee Magnet High School in Baton Rouge, LA.
Our mission is to secure and streamline the school experience. Winning will spread awareness of JuicyBadge and the need to advance technology in our country's most important places. Winning scholarships will help each of us attend a college we love, consequently transforming our passion for technology into the power to make a difference.

My name is Max Morris. I have a passion for Computer Science, especially in the areas of Software Engineering and Programming Language Design. I discovered programming from a young age, and have been devoting time and energy to improving my skills ever since. I plan to major in computer science, and winning a scholarship would help me achieve that dream.

My name is Pacco Tan. My fields of interest include math, physics, and computer science. I got into computer science during freshman year, in web design which brought me the joy and satisfaction that finishing code provides. I hope to major in Electrical Engineering, with at least a minor in Computer Science so I can prototype anything I want.

My name is Scott Gaspard, and I love creating things through computer programming and music production. I became interested in programming as soon as I arrived at Lee. So far I've been learning in courses involving Java, Python, and Javascript. I'd like to go into studies involving computer science, as I see how essential it is in our everyday life.

Health & Safety

Our mentor, Jewell Simon, can be reached by email at JSimon@ebrschools.org

Bibliography, references, and acknowledgements

C++ Libraries Used:

  • LogicalAccess (https://github.com/islog/liblogicalaccess)
  • Pistache I/O (https://github.com/oktal/pistache)

Data Cited:

Percentage of public schools with various safety and security measures. (2017). Retrieved from https://nces.ed.gov/programs/digest/d17/tables/dt17_233.50.asp

Indicator 20: Safety and Security Measures Taken by Public Schools. (2016). Retrieved from https://nces.ed.gov/programs/crimeindicators/ind_20.asp

Jewell Simon - Our mentor; assisted us by providing equipment, food, and financial support.