Няма описание

Eric Betts ab2c44cecd Save off keys/adf response when reading from BLE преди 10 месеца
.catalog bcaa7d2ced custom zero key adf преди 10 месеца
.github 1b7cc79438 Initial import преди 1 година
boards 1b7cc79438 Initial import преди 1 година
files 1b7cc79438 Initial import преди 1 година
headers f55b2dfdb5 move headers I copied from firmware into a directory преди 11 месеца
images 1b7cc79438 Initial import преди 1 година
scenes b50834c853 Major refactor: create seos_credential module преди 10 месеца
.clang-format 1b7cc79438 Initial import преди 1 година
.gitattributes 1b7cc79438 Initial import преди 1 година
.gitignore 1b7cc79438 Initial import преди 1 година
CHANGELOG.md 67ed9cc3f8 update changelog преди 10 месеца
LICENSE b8f4f1ac78 LICENSE преди 1 година
README.md bcaa7d2ced custom zero key adf преди 10 месеца
aes_cmac.c 1b7cc79438 Initial import преди 1 година
aes_cmac.h 1b7cc79438 Initial import преди 1 година
application.fam 1b7cc79438 Initial import преди 1 година
demo.mkv 8099ec3c92 add demo преди 1 година
demo.mp4 8099ec3c92 add demo преди 1 година
des_cmac.c 1b7cc79438 Initial import преди 1 година
des_cmac.h 1b7cc79438 Initial import преди 1 година
example.seos 962f586779 Copy priv/auth keys to credential on success преди 10 месеца
keys-example.txt e0c9f02c2d typo преди 10 месеца
keys.c d7cf6489c0 Correct keys array length преди 10 месеца
keys.h 1b7cc79438 Initial import преди 1 година
memmem.c 1b7cc79438 Initial import преди 1 година
secure_messaging.c 1b7cc79438 Initial import преди 1 година
secure_messaging.h 1b7cc79438 Initial import преди 1 година
seos.c b50834c853 Major refactor: create seos_credential module преди 10 месеца
seos.h b50834c853 Major refactor: create seos_credential module преди 10 месеца
seos.png cd007c7678 fix png using convert seos.png -colorspace gray -channel rgb -threshold 50% +channel new-seos.png преди 11 месеца
seos_att.c 1b7cc79438 Initial import преди 1 година
seos_att.h 1b7cc79438 Initial import преди 1 година
seos_att_i.h 1b7cc79438 Initial import преди 1 година
seos_central.c b50834c853 Major refactor: create seos_credential module преди 10 месеца
seos_central.h b50834c853 Major refactor: create seos_credential module преди 10 месеца
seos_central_i.h 1b7cc79438 Initial import преди 1 година
seos_characteristic.c b50834c853 Major refactor: create seos_credential module преди 10 месеца
seos_characteristic.h b50834c853 Major refactor: create seos_credential module преди 10 месеца
seos_characteristic_i.h 1b7cc79438 Initial import преди 1 година
seos_common.c b50834c853 Major refactor: create seos_credential module преди 10 месеца
seos_common.h b50834c853 Major refactor: create seos_credential module преди 10 месеца
seos_credential.c b50834c853 Major refactor: create seos_credential module преди 10 месеца
seos_credential.h 6cdc65c5b0 Expand ADF response size преди 10 месеца
seos_credential_i.h b50834c853 Major refactor: create seos_credential module преди 10 месеца
seos_emulator.c 6cdc65c5b0 Expand ADF response size преди 10 месеца
seos_emulator.h b50834c853 Major refactor: create seos_credential module преди 10 месеца
seos_emulator_i.h 1b7cc79438 Initial import преди 1 година
seos_hci.c 5721bb2633 more senmantic le read buffer command преди 1 година
seos_hci.h 6c3bd85ed6 Only haptic once for up to 5 readers преди 1 година
seos_hci_h5.c 6852132c8c Move h5 thread free to _free преди 11 месеца
seos_hci_h5.h 1b7cc79438 Initial import преди 1 година
seos_hci_h5_i.h 1b7cc79438 Initial import преди 1 година
seos_hci_i.h 1b7cc79438 Initial import преди 1 година
seos_i.h b50834c853 Major refactor: create seos_credential module преди 10 месеца
seos_l2cap.c 1b7cc79438 Initial import преди 1 година
seos_l2cap.h 1b7cc79438 Initial import преди 1 година
seos_l2cap_i.h 1b7cc79438 Initial import преди 1 година
seos_native_peripheral.c ab2c44cecd Save off keys/adf response when reading from BLE преди 10 месеца
seos_native_peripheral.h 2944c272ea Emulate credential over native peripheral преди 11 месеца
seos_native_peripheral_i.h 9870538b04 Starting SeosNativePeripheral преди 11 месеца
seos_profile.c 7084f1aafb Revert "Reduce mfg data because I made the furi_check too tight in the firmware" преди 11 месеца
seos_profile.h bffa200f07 Working on peripheral-as-credential преди 11 месеца
seos_reader.c 6cdc65c5b0 Expand ADF response size преди 10 месеца
seos_reader.h 1b7cc79438 Initial import преди 1 година
seos_reader_i.h 1b7cc79438 Initial import преди 1 година
seos_service.c f55b2dfdb5 move headers I copied from firmware into a directory преди 11 месеца
seos_service.h bffa200f07 Working on peripheral-as-credential преди 11 месеца
seos_service_uuid.inc bffa200f07 Working on peripheral-as-credential преди 11 месеца
uart.c 1b7cc79438 Initial import преди 1 година
uart.h 1b7cc79438 Initial import преди 1 година
uart_i.h 1b7cc79438 Initial import преди 1 година

README.md

Flipper Seos

Flipper app for reading and emulating Seos-compatible cards/fobs/mobile credentials.

Demo Video

Keys

The app uses all 00 keys by default. It uses an ADF OID of 030107090000000000 ("0.3.1.7.9.0.0.0.0.0"). If you'd like to use your own keys/ADF OID, use the format of the keys-example.txt to specify them, and place into SD Card/apps_data/seos/keys.txt

Note

This software incorporates a third-party implementation of Seos®️ technology. It is not developed, authorized, licensed, or endorsed by HID Global, ASSA ABLOY, or any of their affiliates. References to Seos®️ are solely for descriptive and compatibility purposes.

No guarantee of compatibility or functionality is made. This implementation may not work with all Seos®️ -enabled systems, and its performance, security, and reliability are not assured. Users assume all risks associated with its use.

Seos®️ , HID Global, and ASSA ABLOY are trademarks or registered trademarks of their respective owners. This software is not associated with or sponsored by them in any way.

To do:

  • Fix iso14443a-4 framing
  • ASN.1 for serializing/deserializing
  • Support for larger message wrapping/unwrapping
  • When parsing incoming data, use buffer + len instead of BitBuffer so I can increment buffer pointer as I parse header(s)
  • CMAC checking where I missed it

Hardware for BLE support (experimental)

  1. Install/setup nordic SDK
  2. Install Toolchain manager
  3. Launch Toolchain manager
  4. Next to SDK version click down arroy and "open terminal"
  5. navigate to samples/bluetooth/hci_uart_3wire

nRF52840

  1. Edit boards/nrf52840dk_nrf52840.overlay and change current-speed to 460800 to match Flipper app.

  2. west build -b nrf52840dk_nrf52840 -p auto

  3. west flash

nRF52840 dongle

  1. Copy boards/nrf52840dongle_nrf52840.overlay to hci_uart_3wire
  2. Might need to: nrfutil install nrf5sdk-tools
  3. west build -b nrf52840dongle_nrf52840 -p auto
  4. nrfutil nrf5sdk-tools pkg generate --hw-version 52 --sd-req=0x00 --application ./build/hci_uart_3wire/zephyr/zephyr.hex --application-version 1 app.zip
  5. Put dongle into DFU by pressing 'reset' button
  6. nrfutil nrf5sdk-tools dfu usb-serial -pkg app.zip -p /dev/cu.usbmodemD39BF26162261

Connection

flipper purpose pin color nRF52840 dk pin nRF52840 dongle pin
rx 16 yellow P0.06 P0.20
tx 15 orange P0.08 P0.24
gnd 11 black any ground GND
power 5v red VIN 3-5v VBUS