Update README

This commit is contained in:
Ondrej Mikle 2015-12-04 17:10:13 +01:00
parent f77a3e3e86
commit c1d531e201

View file

@ -7,22 +7,7 @@ database, the door unlocks.
It's primarily intended for Raspberry Pi, but can work for other plaforms that
can work with libnfc (including common x86 systems).
## Aims
People have made few implementations that kind of work
[1](https://www.brmlab.cz/project/brmdoor),
[2](https://github.com/hiviah/brmdoor-pn532/tree/pn532), but are
messy - either due to limitations of hardware or plagued by having to simulate
backward compatbility errors.
So we need and have:
- clean, documented C++ code and swig wrapper interfacing libnfc directly
- clean, documented Python code
- documentation (doxygen)
- sqlite support - no need to recompile for access control list change, just
edit the sqlite database
- extensibility
Info about authorized users and their cards and keys is stored in sqlite database.
## Building
@ -30,6 +15,7 @@ You need just to run `make`. Additional dependencies:
- [SWIG](http://www.swig.org/)
- [WiringPi2 pythonic binding](https://github.com/WiringPi/WiringPi2-Python) (for switching lock on Raspberry)
- you may have to change `python2.7-config` to `python-config` on some older systems in Makefile
## Howto
@ -39,20 +25,24 @@ You need just to run `make`. Additional dependencies:
2. Copy sample config file, edit your pins, DB file location, timeouts
cp brmdoor_nfc.config.sample brmdoor.config
cp brmdoor_nfc.config.sample brmdoor_nfc.config
3. Add some users
- either authenthication by UID, e.g.:
brmdoor_adduser.py -c brmdoor.config -a uid 34795FCC SomeUserName
brmdoor_adduser.py -c brmdoor_nfc.config -a uid 34795FCC SomeUserName
- authenthication by Yubikey's HMAC-SHA1 programmed on slot 2
brmdoor_adduser.py -c brmdoor.config -a hmac 40795FCCAB0701 SomeUserName 000102030405060708090a0b0c0d0e0f31323334
brmdoor_adduser.py -c brmdoor_nfc.config -a hmac 40795FCCAB0701 SomeUserName 000102030405060708090a0b0c0d0e0f31323334
- to program Yubikey slot 2 to use HMAC with given key, use:
ykpersonalize -2 -ochal-resp -ohmac-sha1 -ohmac-lt64 -oserial-api-visible
Finally, run the daemon:
python brmdoor_nfc_daemon.py brmdoor.config
python brmdoor_nfc_daemon.py brmdoor_nfc.config