07 / PROJECT CASE STUDY · 2025

Hand-Drawn PIN Authentication App

An Android application that recognizes hand-drawn numbers to authenticate a four-digit PIN.

JavaAndroidTensorFlow LiteAuthentication
Android application flow: user draws four digits, an on-device classifier interprets them, local verification occurs, then failure handling or access decision.
Student-project authentication flowSimplified diagram derived from the public Android student project. It illustrates application flow rather than a vetted production authentication design.On smaller screens, swipe horizontally to explore the diagram →

01 / CONTEXT

The challenge

Explore how an on-device digit-recognition model can be integrated into a familiar authentication flow while handling unsuccessful attempts.

02 / EXECUTION

My approach

  1. Developed an Android user flow for drawing and confirming four PIN digits.
  2. Integrated an MNIST-based TensorFlow Lite model for digit recognition.
  3. Implemented local PIN verification with a 15-second lockout after three failed attempts.

03 / EVIDENCE

Outcomes & contribution

  • Delivered a functioning educational Android application with a machine-learning inference component.
  • Demonstrated the interaction between UI design, application state, and security controls.
  • Published a repository with setup and execution instructions.

04 / TAKEAWAY

What I learned

Authentication UX, model error handling, and failure controls must be designed together. This prototype is not represented as production-grade authentication.

Sharing & confidentiality

Public student project. Repository is accessible below.

KEEP EXPLORING

More work worth a look.

Browse all projects ↗