Skip to content

v1.0.0 — first public release

Choose a tag to compare

@JohnMcLear JohnMcLear released this 20 May 08:29
· 9 commits to main since this release

First public release. Sideload-only Android app that turns a phone into a Yondoor NFC unlock token.

Install

Download app-debug.apk below and sideload:

adb install -r app-debug.apk

Or copy the APK to the phone and open it with a file manager (you may need to enable "install from unknown sources" for the file manager).

Pair

Open the app, tap + Pair new reader, paste the yondoor://pair?... URI from your Yondoor reader. See the companion firmware repo for how to provision a reader.

What's included

  • Multi-reader pairing — one phone can be a credential for multiple Yondoor doors.
  • HMAC-SHA256 challenge-response over the proprietary AID F0796F6E646F6F72.
  • Reader-confirmed unlock animation (gold key) — only fires when the reader has accepted the HMAC, never on the phone's own optimistic guess.
  • EncryptedSharedPreferences with Android Keystore-backed master key.
  • 26 unit tests covering APDU layout, HMAC vector, URI parser, multi-secret handling.

Known limitations

See the README for the full list. Headline: Google Wallet preempts the unlock UI on a locked tap — unlock the phone first, then tap.

Requirements

  • Android 6.0+ (API 23+)
  • NFC + HCE hardware (any phone made in the last ~10 years qualifies)

Build from source

./gradlew assembleDebug

Needs JDK 17 + Android SDK platform-34 + build-tools-34. See README for full setup.