Willy-JL 6611b64919 Merge passy from https://github.com/bettse/passy 8 months ago
..
.catalog 6611b64919 Merge passy from https://github.com/bettse/passy 8 months ago
.github 6354d44c1e Add passy from https://github.com/bettse/passy 9 months ago
images 6611b64919 Merge passy from https://github.com/bettse/passy 8 months ago
lib 2818c6cca5 Merge passy from https://github.com/bettse/passy 9 months ago
reference 08628d25f2 Merge passy from https://github.com/bettse/passy 9 months ago
scenes 6611b64919 Merge passy from https://github.com/bettse/passy 8 months ago
.clang-format 6354d44c1e Add passy from https://github.com/bettse/passy 9 months ago
.gitignore 6354d44c1e Add passy from https://github.com/bettse/passy 9 months ago
.gitsubtree 6354d44c1e Add passy from https://github.com/bettse/passy 9 months ago
README.md 6611b64919 Merge passy from https://github.com/bettse/passy 8 months ago
application.fam 6611b64919 Merge passy from https://github.com/bettse/passy 8 months ago
bsearch.c 2818c6cca5 Merge passy from https://github.com/bettse/passy 9 months ago
eMRTD.asn1 2818c6cca5 Merge passy from https://github.com/bettse/passy 9 months ago
memmem.c 2818c6cca5 Merge passy from https://github.com/bettse/passy 9 months ago
passy.c 2818c6cca5 Merge passy from https://github.com/bettse/passy 9 months ago
passy.h 2818c6cca5 Merge passy from https://github.com/bettse/passy 9 months ago
passy.png 6611b64919 Merge passy from https://github.com/bettse/passy 8 months ago
passy_common.c 5fed652ef9 Merge passy from https://github.com/bettse/passy 9 months ago
passy_common.h 2818c6cca5 Merge passy from https://github.com/bettse/passy 9 months ago
passy_i.h e1247ae33d Merge passy from https://github.com/bettse/passy 9 months ago
passy_reader.c 6611b64919 Merge passy from https://github.com/bettse/passy 8 months ago
passy_reader.h 5347f915fc Merge passy from https://github.com/bettse/passy 9 months ago
secure_messaging.c 6354d44c1e Add passy from https://github.com/bettse/passy 9 months ago
secure_messaging.h 6354d44c1e Add passy from https://github.com/bettse/passy 9 months ago

README.md

Passy: A Flipper Zero Passport reader

Tested with the following countries:

🇺🇸 🇨🇱 🇫🇷 🇬🇧 🇵🇭 🇷🇺 🇹🇼 🇺🇦 🇦🇿

(If it works for yours, submit a PR to add your country flag)

To use:

eMTRD are secured to prevent people from reading the data on a passport just by bumping into it. The data is secured using a key based on the passport number, date of birth, and date of expiry. A real passport machine reads these values from the MRZ (Machine Readable Zone, the ones with ">") using a camera. For the app, you have to enter the values manually. The app will then generate the key and read the data using a system called BAC(https://en.wikipedia.org/wiki/Basic_access_control).

Limitations

  • Does not parse some of the optional DG (under 'advanced' menu)

To do

  • Support other country passports

Generate asn:

asn1c -D ./lib/asn1 -no-gen-example -pdu=all eMRTD.asn1