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 It's primarily intended for Raspberry Pi, but can work for other plaforms that
can work with libnfc (including common x86 systems). can work with libnfc (including common x86 systems).
## Aims Info about authorized users and their cards and keys is stored in sqlite database.
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
## Building ## Building
@ -30,6 +15,7 @@ You need just to run `make`. Additional dependencies:
- [SWIG](http://www.swig.org/) - [SWIG](http://www.swig.org/)
- [WiringPi2 pythonic binding](https://github.com/WiringPi/WiringPi2-Python) (for switching lock on Raspberry) - [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 ## 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 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 3. Add some users
- either authenthication by UID, e.g.: - 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 - 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: Finally, run the daemon:
python brmdoor_nfc_daemon.py brmdoor.config python brmdoor_nfc_daemon.py brmdoor_nfc.config