ports/esp32/components/aliro_reader/presence_link.h
openaliro/openaliro
Module

presence_link.h

Presence dongle commands (CONFIG_WOZ_PRESENCE): fresh, challenge-driven signed…

ports/esp32/components/aliro_reader/presence_link.h

Overview

Presence dongle commands (CONFIG_WOZ_PRESENCE): fresh, challenge-driven signed statements from a new trusted Aliro authentication and later UWB range, turning proximity of a provisioned iPhone into a factor any tool can check. See tools/presence_verify.py and tools/presence_git.py for the other end. These are console commands rather than a private binary channel, so the shell stays available on the same board: provisioning (aliro-import) and presence both work without reflashing between modes. Every response is one tagged hex line, so a log line landing mid-conversation is just another line rather than corruption: presence pub -> PRESENCE-PUB <65 bytes hex> (enrolment) presence credential -> PRESENCE-CRED <8 bytes hex> (pinned human) presence prove <nonce-hex> -> PRESENCE-P256 <115 bytes hex> (fresh proof) anything rejected -> PRESENCE-ERR <reason>

used by app_main.cpp app_shell.cpp app_shell.c main.c presence_link.c piv_identity.c

API

Fvoid presence_link_init(bool drive_wallet_grant)

ports/esp32/components/aliro_reader/presence_link.h:33

Fint presence_link_require_fresh(void)

ports/esp32/components/aliro_reader/presence_link.h:41

Fint presence_link_cmd(int argc, char **argv)

ports/esp32/components/aliro_reader/presence_link.h:44