From de5d0f5527dd6a7153c120bdbd91ee0fe5a175c1 Mon Sep 17 00:00:00 2001 From: Connor L Jackson Date: Tue, 25 Apr 2017 00:36:13 -0400 Subject: [PATCH] Adding Security Team's Contributions to Main Repo --- .../SF_DeviceSecuritySystem-master/.gitignore | 5 + .../.idea/SF_DeviceSecuritySystem.iml | 11 + .../.idea/misc.xml | 4 + .../.idea/modules.xml | 8 + .../.idea/vcs.xml | 6 + .../DSSystem/DSSystem.py | 1065 +++++++++++++++++ .../DSSystem/GUIButtonImage/Color Code.docx | Bin 0 -> 13359 bytes .../GUIButtonImage/DeviceFrame/back.gif | Bin 0 -> 5138 bytes .../GUIButtonImage/DeviceFrame/back_2.gif | Bin 0 -> 2141 bytes .../GUIButtonImage/DeviceFrame/check_in.gif | Bin 0 -> 6889 bytes .../GUIButtonImage/DeviceFrame/check_in_2.gif | Bin 0 -> 2542 bytes .../GUIButtonImage/DeviceFrame/check_out.gif | Bin 0 -> 6574 bytes .../DeviceFrame/check_out_2.gif | Bin 0 -> 2100 bytes .../DSSystem/GUIButtonImage/Preview_map_1.PNG | Bin 0 -> 175977 bytes .../DSSystem/GUIButtonImage/Preview_map_2.PNG | Bin 0 -> 52284 bytes .../GUIButtonImage/background_800x480.gif | Bin 0 -> 1010 bytes .../fingerPrintEnrollFrame/back.gif | Bin 0 -> 5828 bytes .../fingerPrintEnrollFrame/back_2.gif | Bin 0 -> 2410 bytes .../fingerPrintEnrollFrame/fno1.gif | Bin 0 -> 9000 bytes .../fingerPrintEnrollFrame/fno1_2.gif | Bin 0 -> 2736 bytes .../fingerPrintEnrollFrame/fno2.gif | Bin 0 -> 8741 bytes .../fingerPrintEnrollFrame/fno2_2.gif | Bin 0 -> 2811 bytes .../fingerPrintEnrollFrame/fno3.gif | Bin 0 -> 8729 bytes .../fingerPrintEnrollFrame/fno3_2.gif | Bin 0 -> 2762 bytes .../GUIButtonImage/fingerUnlockFrame/back.gif | Bin 0 -> 5961 bytes .../fingerUnlockFrame/back_2.gif | Bin 0 -> 2454 bytes .../fingerUnlockFrame/start.gif | Bin 0 -> 5994 bytes .../fingerUnlockFrame/start_2.gif | Bin 0 -> 2524 bytes .../indexPage/background_800x480.gif | Bin 0 -> 1010 bytes .../indexPage/setting_button.gif | Bin 0 -> 8656 bytes .../indexPage/unlock_button.gif | Bin 0 -> 7287 bytes .../DSSystem/GUIButtonImage/logFrame/back.gif | Bin 0 -> 5476 bytes .../GUIButtonImage/logFrame/back_2.gif | Bin 0 -> 2295 bytes .../GUIButtonImage/logFrame/left_arrow.gif | Bin 0 -> 5857 bytes .../GUIButtonImage/logFrame/left_arrow_2.gif | Bin 0 -> 2164 bytes .../GUIButtonImage/logFrame/right_arrow.gif | Bin 0 -> 5416 bytes .../GUIButtonImage/logFrame/right_arrow_2.gif | Bin 0 -> 2074 bytes .../GUIButtonImage/numberPadFrame/0.gif | Bin 0 -> 5339 bytes .../GUIButtonImage/numberPadFrame/1.gif | Bin 0 -> 5569 bytes .../GUIButtonImage/numberPadFrame/2.gif | Bin 0 -> 4860 bytes .../GUIButtonImage/numberPadFrame/3.gif | Bin 0 -> 5075 bytes .../GUIButtonImage/numberPadFrame/4.gif | Bin 0 -> 5388 bytes .../GUIButtonImage/numberPadFrame/5.gif | Bin 0 -> 4851 bytes .../GUIButtonImage/numberPadFrame/6.gif | Bin 0 -> 4891 bytes .../GUIButtonImage/numberPadFrame/7.gif | Bin 0 -> 5062 bytes .../GUIButtonImage/numberPadFrame/8.gif | Bin 0 -> 4816 bytes .../GUIButtonImage/numberPadFrame/9.gif | Bin 0 -> 4833 bytes .../GUIButtonImage/numberPadFrame/back.gif | Bin 0 -> 5394 bytes .../GUIButtonImage/numberPadFrame/clear.gif | Bin 0 -> 4942 bytes .../GUIButtonImage/numberPadFrame/confirm.gif | Bin 0 -> 5711 bytes .../GUIButtonImage/settingFrame/Dadmins.gif | Bin 0 -> 8033 bytes .../GUIButtonImage/settingFrame/back.gif | Bin 0 -> 5756 bytes .../GUIButtonImage/settingFrame/exit.gif | Bin 0 -> 9219 bytes .../settingFrame/fingerprint.gif | Bin 0 -> 7762 bytes .../GUIButtonImage/settingFrame/log.gif | Bin 0 -> 6321 bytes .../GUIButtonImage/startFrame/setting.gif | Bin 0 -> 15035 bytes .../GUIButtonImage/startFrame/unlock.gif | Bin 0 -> 15249 bytes .../unlockOptionsFrame/back.gif | Bin 0 -> 5976 bytes .../unlockOptionsFrame/fingerprint.gif | Bin 0 -> 7320 bytes .../unlockOptionsFrame/password.gif | Bin 0 -> 6918 bytes .../DSSystem/NFCConnect.py | 15 + .../__pycache__/config.cpython-34.pyc | Bin 0 -> 1001 bytes .../__pycache__/config.cpython-36.pyc | Bin 0 -> 914 bytes .../DSSystem/backup-menu.py | 321 +++++ .../DSSystem/config.py | 25 + .../DSSystem/fingerpi/__init__.py | 1 + .../DSSystem/fingerpi/__init__.pyc | Bin 0 -> 226 bytes .../__pycache__/__init__.cpython-34.pyc | Bin 0 -> 190 bytes .../fingerpi/__pycache__/base.cpython-34.pyc | Bin 0 -> 2344 bytes .../__pycache__/fingerpi.cpython-34.pyc | Bin 0 -> 9885 bytes .../__pycache__/structure.cpython-34.pyc | Bin 0 -> 3351 bytes .../DSSystem/fingerpi/base.py | 143 +++ .../DSSystem/fingerpi/base.pyc | Bin 0 -> 2755 bytes .../DSSystem/fingerpi/exceptions.py | 60 + .../DSSystem/fingerpi/fingerpi.py | 323 +++++ .../DSSystem/fingerpi/fingerpi.pyc | Bin 0 -> 12485 bytes .../DSSystem/fingerpi/structure.py | 111 ++ .../DSSystem/fingerpi/structure.pyc | Bin 0 -> 3824 bytes .../DSSystem/testQ.py | 58 + .../SF_DeviceSecuritySystem-master/README.md | 1 + .../autostart.txt | 14 + .../__MACOSX/._SF_DeviceSecuritySystem-master | Bin 0 -> 216 bytes .../._.DS_Store | Bin 0 -> 216 bytes .../._.gitignore | Bin 0 -> 216 bytes .../SF_DeviceSecuritySystem-master/._.idea | Bin 0 -> 216 bytes .../SF_DeviceSecuritySystem-master/._DSSystem | Bin 0 -> 216 bytes .../._README.md | Bin 0 -> 216 bytes .../._autostart.txt | Bin 0 -> 216 bytes .../.idea/._SF_DeviceSecuritySystem.iml | Bin 0 -> 216 bytes .../.idea/._misc.xml | Bin 0 -> 216 bytes .../.idea/._modules.xml | Bin 0 -> 216 bytes .../.idea/._vcs.xml | Bin 0 -> 216 bytes .../.idea/._workspace.xml | Bin 0 -> 216 bytes .../DSSystem/._DSSystem.py | Bin 0 -> 216 bytes .../DSSystem/._GUIButtonImage | Bin 0 -> 216 bytes .../DSSystem/._NFCConnect.py | Bin 0 -> 216 bytes .../DSSystem/.___pycache__ | Bin 0 -> 216 bytes .../DSSystem/._backup-menu.py | Bin 0 -> 216 bytes .../DSSystem/._config.py | Bin 0 -> 216 bytes .../DSSystem/._fingerpi | Bin 0 -> 216 bytes .../DSSystem/._testQ.py | Bin 0 -> 216 bytes .../DSSystem/GUIButtonImage/._Color Code.docx | Bin 0 -> 216 bytes .../DSSystem/GUIButtonImage/._DeviceFrame | Bin 0 -> 216 bytes .../GUIButtonImage/._Preview_map_1.PNG | Bin 0 -> 216 bytes .../GUIButtonImage/._Preview_map_2.PNG | Bin 0 -> 216 bytes .../GUIButtonImage/._background_800x480.gif | Bin 0 -> 216 bytes .../GUIButtonImage/._fingerPrintEnrollFrame | Bin 0 -> 216 bytes .../GUIButtonImage/._fingerUnlockFrame | Bin 0 -> 216 bytes .../DSSystem/GUIButtonImage/._indexPage | Bin 0 -> 216 bytes .../DSSystem/GUIButtonImage/._logFrame | Bin 0 -> 216 bytes .../DSSystem/GUIButtonImage/._numberPadFrame | Bin 0 -> 216 bytes .../DSSystem/GUIButtonImage/._settingFrame | Bin 0 -> 216 bytes .../DSSystem/GUIButtonImage/._startFrame | Bin 0 -> 216 bytes .../GUIButtonImage/._unlockOptionsFrame | Bin 0 -> 216 bytes .../GUIButtonImage/DeviceFrame/._back.gif | Bin 0 -> 216 bytes .../GUIButtonImage/DeviceFrame/._back_2.gif | Bin 0 -> 216 bytes .../GUIButtonImage/DeviceFrame/._check_in.gif | Bin 0 -> 216 bytes .../DeviceFrame/._check_in_2.gif | Bin 0 -> 216 bytes .../DeviceFrame/._check_out.gif | Bin 0 -> 216 bytes .../DeviceFrame/._check_out_2.gif | Bin 0 -> 216 bytes .../fingerPrintEnrollFrame/._back.gif | Bin 0 -> 216 bytes .../fingerPrintEnrollFrame/._back_2.gif | Bin 0 -> 216 bytes .../fingerPrintEnrollFrame/._fno1.gif | Bin 0 -> 216 bytes .../fingerPrintEnrollFrame/._fno1_2.gif | Bin 0 -> 216 bytes .../fingerPrintEnrollFrame/._fno2.gif | Bin 0 -> 216 bytes .../fingerPrintEnrollFrame/._fno2_2.gif | Bin 0 -> 216 bytes .../fingerPrintEnrollFrame/._fno3.gif | Bin 0 -> 216 bytes .../fingerPrintEnrollFrame/._fno3_2.gif | Bin 0 -> 216 bytes .../fingerUnlockFrame/._back.gif | Bin 0 -> 216 bytes .../fingerUnlockFrame/._back_2.gif | Bin 0 -> 216 bytes .../fingerUnlockFrame/._start.gif | Bin 0 -> 216 bytes .../fingerUnlockFrame/._start_2.gif | Bin 0 -> 216 bytes .../indexPage/._background_800x480.gif | Bin 0 -> 216 bytes .../indexPage/._setting_button.gif | Bin 0 -> 216 bytes .../indexPage/._unlock_button.gif | Bin 0 -> 216 bytes .../GUIButtonImage/logFrame/._back.gif | Bin 0 -> 216 bytes .../GUIButtonImage/logFrame/._back_2.gif | Bin 0 -> 216 bytes .../GUIButtonImage/logFrame/._left_arrow.gif | Bin 0 -> 216 bytes .../logFrame/._left_arrow_2.gif | Bin 0 -> 216 bytes .../GUIButtonImage/logFrame/._right_arrow.gif | Bin 0 -> 216 bytes .../logFrame/._right_arrow_2.gif | Bin 0 -> 216 bytes .../GUIButtonImage/numberPadFrame/._0.gif | Bin 0 -> 216 bytes .../GUIButtonImage/numberPadFrame/._1.gif | Bin 0 -> 216 bytes .../GUIButtonImage/numberPadFrame/._2.gif | Bin 0 -> 216 bytes .../GUIButtonImage/numberPadFrame/._3.gif | Bin 0 -> 216 bytes .../GUIButtonImage/numberPadFrame/._4.gif | Bin 0 -> 216 bytes .../GUIButtonImage/numberPadFrame/._5.gif | Bin 0 -> 216 bytes .../GUIButtonImage/numberPadFrame/._6.gif | Bin 0 -> 216 bytes .../GUIButtonImage/numberPadFrame/._7.gif | Bin 0 -> 216 bytes .../GUIButtonImage/numberPadFrame/._8.gif | Bin 0 -> 216 bytes .../GUIButtonImage/numberPadFrame/._9.gif | Bin 0 -> 216 bytes .../GUIButtonImage/numberPadFrame/._back.gif | Bin 0 -> 216 bytes .../GUIButtonImage/numberPadFrame/._clear.gif | Bin 0 -> 216 bytes .../numberPadFrame/._confirm.gif | Bin 0 -> 216 bytes .../GUIButtonImage/settingFrame/._Dadmins.gif | Bin 0 -> 216 bytes .../GUIButtonImage/settingFrame/._back.gif | Bin 0 -> 216 bytes .../GUIButtonImage/settingFrame/._exit.gif | Bin 0 -> 216 bytes .../settingFrame/._fingerprint.gif | Bin 0 -> 216 bytes .../GUIButtonImage/settingFrame/._log.gif | Bin 0 -> 216 bytes .../GUIButtonImage/startFrame/._setting.gif | Bin 0 -> 216 bytes .../GUIButtonImage/startFrame/._unlock.gif | Bin 0 -> 216 bytes .../unlockOptionsFrame/._back.gif | Bin 0 -> 216 bytes .../unlockOptionsFrame/._fingerprint.gif | Bin 0 -> 216 bytes .../unlockOptionsFrame/._password.gif | Bin 0 -> 216 bytes .../__pycache__/._config.cpython-34.pyc | Bin 0 -> 216 bytes .../__pycache__/._config.cpython-36.pyc | Bin 0 -> 216 bytes .../DSSystem/fingerpi/.___init__.py | Bin 0 -> 216 bytes .../DSSystem/fingerpi/.___init__.pyc | Bin 0 -> 216 bytes .../DSSystem/fingerpi/.___pycache__ | Bin 0 -> 216 bytes .../DSSystem/fingerpi/._base.py | Bin 0 -> 216 bytes .../DSSystem/fingerpi/._base.pyc | Bin 0 -> 216 bytes .../DSSystem/fingerpi/._exceptions.py | Bin 0 -> 216 bytes .../DSSystem/fingerpi/._fingerpi.py | Bin 0 -> 216 bytes .../DSSystem/fingerpi/._fingerpi.pyc | Bin 0 -> 216 bytes .../DSSystem/fingerpi/._structure.py | Bin 0 -> 216 bytes .../DSSystem/fingerpi/._structure.pyc | Bin 0 -> 216 bytes .../__pycache__/.___init__.cpython-34.pyc | Bin 0 -> 216 bytes .../__pycache__/._base.cpython-34.pyc | Bin 0 -> 216 bytes .../__pycache__/._fingerpi.cpython-34.pyc | Bin 0 -> 216 bytes .../__pycache__/._structure.cpython-34.pyc | Bin 0 -> 216 bytes 180 files changed, 2171 insertions(+) create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/.gitignore create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/.idea/SF_DeviceSecuritySystem.iml create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/.idea/misc.xml create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/.idea/modules.xml create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/.idea/vcs.xml create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/DSSystem.py create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/Color Code.docx create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/back.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/back_2.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/check_in.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/check_in_2.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/check_out.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/check_out_2.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/Preview_map_1.PNG create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/Preview_map_2.PNG create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/background_800x480.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/back.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/back_2.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/fno1.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/fno1_2.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/fno2.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/fno2_2.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/fno3.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/fno3_2.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerUnlockFrame/back.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerUnlockFrame/back_2.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerUnlockFrame/start.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerUnlockFrame/start_2.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/indexPage/background_800x480.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/indexPage/setting_button.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/indexPage/unlock_button.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/back.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/back_2.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/left_arrow.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/left_arrow_2.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/right_arrow.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/right_arrow_2.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/0.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/1.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/2.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/3.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/4.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/5.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/6.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/7.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/8.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/9.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/back.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/clear.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/confirm.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/Dadmins.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/back.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/exit.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/fingerprint.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/log.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/startFrame/setting.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/startFrame/unlock.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/unlockOptionsFrame/back.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/unlockOptionsFrame/fingerprint.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/unlockOptionsFrame/password.gif create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/NFCConnect.py create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/__pycache__/config.cpython-34.pyc create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/__pycache__/config.cpython-36.pyc create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/backup-menu.py create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/config.py create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__init__.py create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__init__.pyc create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__pycache__/__init__.cpython-34.pyc create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__pycache__/base.cpython-34.pyc create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__pycache__/fingerpi.cpython-34.pyc create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__pycache__/structure.cpython-34.pyc create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/base.py create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/base.pyc create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/exceptions.py create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/fingerpi.py create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/fingerpi.pyc create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/structure.py create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/structure.pyc create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/testQ.py create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/README.md create mode 100644 SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/autostart.txt create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/._SF_DeviceSecuritySystem-master create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/._.DS_Store create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/._.gitignore create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/._.idea create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/._DSSystem create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/._README.md create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/._autostart.txt create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/.idea/._SF_DeviceSecuritySystem.iml create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/.idea/._misc.xml create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/.idea/._modules.xml create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/.idea/._vcs.xml create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/.idea/._workspace.xml create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/._DSSystem.py create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/._GUIButtonImage create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/._NFCConnect.py create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/.___pycache__ create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/._backup-menu.py create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/._config.py create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/._fingerpi create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/._testQ.py create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._Color Code.docx create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._DeviceFrame create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._Preview_map_1.PNG create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._Preview_map_2.PNG create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._background_800x480.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._fingerPrintEnrollFrame create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._fingerUnlockFrame create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._indexPage create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._logFrame create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._numberPadFrame create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._settingFrame create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._startFrame create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._unlockOptionsFrame create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/._back.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/._back_2.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/._check_in.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/._check_in_2.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/._check_out.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/._check_out_2.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/._back.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/._back_2.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/._fno1.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/._fno1_2.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/._fno2.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/._fno2_2.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/._fno3.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/._fno3_2.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerUnlockFrame/._back.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerUnlockFrame/._back_2.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerUnlockFrame/._start.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerUnlockFrame/._start_2.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/indexPage/._background_800x480.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/indexPage/._setting_button.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/indexPage/._unlock_button.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/._back.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/._back_2.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/._left_arrow.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/._left_arrow_2.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/._right_arrow.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/._right_arrow_2.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._0.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._1.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._2.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._3.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._4.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._5.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._6.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._7.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._8.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._9.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._back.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._clear.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._confirm.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/._Dadmins.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/._back.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/._exit.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/._fingerprint.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/._log.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/startFrame/._setting.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/startFrame/._unlock.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/unlockOptionsFrame/._back.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/unlockOptionsFrame/._fingerprint.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/unlockOptionsFrame/._password.gif create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/__pycache__/._config.cpython-34.pyc create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/__pycache__/._config.cpython-36.pyc create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/.___init__.py create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/.___init__.pyc create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/.___pycache__ create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/._base.py create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/._base.pyc create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/._exceptions.py create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/._fingerpi.py create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/._fingerpi.pyc create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/._structure.py create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/._structure.pyc create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__pycache__/.___init__.cpython-34.pyc create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__pycache__/._base.cpython-34.pyc create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__pycache__/._fingerpi.cpython-34.pyc create mode 100644 SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__pycache__/._structure.cpython-34.pyc diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/.gitignore b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/.gitignore new file mode 100644 index 0000000..03db30a --- /dev/null +++ b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/.gitignore @@ -0,0 +1,5 @@ +/.DS_Store +/Fingerprint/resources/SF_DSS/image +/.idea/workspace.xml +/Fingerprint/resources/.DS_Store +/Fingerprint/resources/SF_DSS/.DS_Store \ No newline at end of file diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/.idea/SF_DeviceSecuritySystem.iml b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/.idea/SF_DeviceSecuritySystem.iml new file mode 100644 index 0000000..6711606 --- /dev/null +++ b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/.idea/SF_DeviceSecuritySystem.iml @@ -0,0 +1,11 @@ + + + + + + + + + + \ No newline at end of file diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/.idea/misc.xml b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/.idea/misc.xml new file mode 100644 index 0000000..19f5faa --- /dev/null +++ b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/.idea/misc.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/.idea/modules.xml b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/.idea/modules.xml new file mode 100644 index 0000000..d9b2185 --- /dev/null +++ b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/.idea/vcs.xml b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/DSSystem.py b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/DSSystem.py new file mode 100644 index 0000000..98a5301 --- /dev/null +++ b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/DSSystem.py @@ -0,0 +1,1065 @@ +#!/usr/bin/env python3 + +''' +GUI For Device Security System +''' +# Import For GUI +import tkinter +from tkinter import * +# Import GPIO For Lock Control +import RPi.GPIO as GPIO +# Import PiCamera and datetime For Camera Usage +from picamera import PiCamera +#import datetime +# Import fingerpi,time For Fingerprint Sensor +import fingerpi as fp +import time +#import for DB +import config #execute query with config.executeQuery(SQLCOMMAND) +import serial #for USB connection to NFC +import hashlib # for pincode md5 comparison +# Import for NFC +import serial +import config +from datetime import datetime +from datetime import date +ser = serial.Serial('/dev/ttyACM0', 115200, timeout = 10, writeTimeout = 10) + +# Initialize Fingerprint Sensor, GPIO,Camera +f = fp.FingerPi() +f.Open() +f.CmosLed(False) +GPIO.setmode(GPIO.BCM) +GPIO.setwarnings(False) +LOCK = 4 +camera = PiCamera() + +# GUI main frame setting +top = tkinter.Tk() # GUI top +######################## Dan, If you want full screen, put the following two lines back. +#top.attributes("-fullscreen", True) # Full screen +#top.overrideredirect(1) # Distable close, minimize, and maximize + +# GUI Default Variables +WIDTH = 800 # Screen Width +HEIGHT = 480 # Screnn Height +CharcoalGray = '#3b3c43' +top.config(bg = CharcoalGray ) +DEFAULTBG = top.cget("bg") # Default background color +TextColor = '#fbc600' # Synchrony Gold +DEFAULTFONT = "Times 15" # Defualt font + +# Globle variables +Employee_ID = 999999999 # Default Employee_ID +loglist = [] # For log +curr = 0 # For log + + + +''' +Helper Functions +''' +def updateText(t,s): + t.insert(INSERT,s) + t.pack() + top.update() +def updateEntry(t,s): + t.delete(0,END) + t.insert(0,s) + top.update() +def updateTextGrid(t,s): + t.insert(INSERT,s) + t.grid(row = 0, ipadx = 120,column = 0,columnspan=2) + top.update() +def takePic(): + date = datetime.now().strftime("%Y-%m-%d_%H:%M:%S") + camera.resolution = (400,300) + camera.framerate = (15) + camera.capture("LogImage/%s.jpg" % date) +def pinUnlock(t): + GPIO.setup(LOCK, GPIO.OUT) + GPIO.output(LOCK, True) + s = "Unlock\n" + updateEntry(t,s) + i = 5 + while i > 0: + updateEntry(t,str(i)) + i = i -1 + time.sleep(1) + GPIO.output(LOCK, False) + s = "Lock\n" + updateEntry(t,s) + +''' +Fingerprint Sensor -- Functions +''' +def fingerUnlock(t): + global Employee_ID + takePic() + f.CmosLed(True) + s = "Place your finger on the scanner\n" + t.delete('1.0',END) + updateText(t,s) + f.WaitForFinger(False) + cap1 = f.CaptureFinger(best_image = False) + if (cap1[0]['ACK'] == False): + s = "No Image captured \n" + updateText(t,s) + return + rp = f.Identify() + s = "Remove your finger \n" + updateText(t,s) + f.WaitForFinger(True) + f.CmosLed(False) + if (rp[0]['ACK']): + fingerID = rp[0]['Parameter'] # int Type + ##################################################################### + # + # Here we need to use fingerID to findout Employee_ID in database + # and create a timestamp for system log, Need Employee_ID returned! + # + finsql='SELECT Admin_ID from admin WHERE Finger_Registered_Flag = "%d" AND (FINGER_ID="%d" OR FINGER_ID_2="%d" OR FINGER_ID_3="%d")' + val = config.executeQuery(finsql %(1,fingerID,fingerID,fingerID)); + if(val): #found in database + timestamp = datetime.now().strftime('%Y-%m-%d %H:%M:%S') + Employee_ID = val[0]["Admin_ID"] #list of dictionaries, set Employee ID + #Create log + logsql='INSERT INTO log(Employee_ID,AccessTime)VALUES("%d","%s")'%(Employee_ID,timestamp) + config.executeQuery(logsql); + + ##################################################################### + s = "The finger ID is " + s = s + str(fingerID) + "\n" + updateText(t,s) + GPIO.setup(LOCK, GPIO.OUT) + GPIO.output(LOCK, True) + s = "Unlock\n" + updateText(t,s) + i = 5 + while i > 0: + s = str(i) + "\n" + updateText(t,s) + i = i -1 + time.sleep(1) + GPIO.output(LOCK, False) + s = "Lock\n" + updateText(t,s) + t.delete('1.0',END) + t.insert(INSERT, "Click Start to Unlock") + t.pack() + top.update() + else: + s = "Finger is not registered \n" + updateText(t,s) + return False + f.CmosLed(False) + return True + +def removeFingerIDs(fingerIDs,t): + for id in fingerIDs: + if id is not None and id < 200: + status = f.CheckEnrolled(id)[0]['ACK'] + if (not status): + s = "ID "+str(id)+" is not registered." + updateEntry(t,s) + continue + else: + rp = f.DeleteId(id) + if(rp[0]['ACK']): + s = "ID "+str(id)+" is deleted." + updateEntry(t,s) + else: + s = str(rp[0]['Parameter']) + " error!" + updateEntry(t,s) + else: + s = "ID " + str(id) + " is not valid." + updateEntry(t,s) + time.sleep(1) + return + +# function that return enroll count +def enroll_count(): + count = f.GetEnrollCount()[0]['Parameter'] + return int(count) + +def IdEnrolled(id): + status = f.CheckEnrolled(id)[0]['ACK'] + if (status): + return True + else: + return False + +def printEnroll(id, t): + t.delete('1.0',END) + f.CmosLed(True) + status = f.EnrollStart(id) + if not status[0]['ACK']: + s = "Error! Try Again. Error code: "+str(status[0]['Parameter']) + "\n" + updateTextGrid(t,s) + f.CmosLed(False) + return False + + s = "1.Place your finger on the scanner\n" + updateTextGrid(t,s) + f.WaitForFinger(False) + cap1 = f.CaptureFinger(best_image = True) + if (cap1[0]['ACK'] == False): + s = "1. No Image captured\n" + updateTextGrid(t,s) + f.CmosLed(False) + return False + status1 = f.Enroll1() + if not status1[0]['ACK']: + s = "Error! Try Again. Error code: "+str(status1[0]['Parameter']) + "\n" + updateTextGrid(t,s) + f.CmosLed(False) + return False + s = "1. Remove your finger\n" + updateTextGrid(t,s) + f.WaitForFinger(True) + s ="2.Place same finger on the scanner\n" + updateTextGrid(t,s) + f.WaitForFinger(False) + cap2 = f.CaptureFinger(best_image = True) + if (cap2[0]['ACK'] == False): + s = "2. No Image captured\n" + updateTextGrid(t,s) + f.CmosLed(False) + return False + status2 = f.Enroll2() + if not status2[0]['ACK']: + s = "Error! Try Again. Error code: "+str(status2[0]['Parameter']) + "\n" + updateTextGrid(t,s) + f.CmosLed(False) + return False + s = "2. Remove your finger\n" + updateTextGrid(t,s) + f.WaitForFinger(True) + + s = "3.Place same finger on the scanner\n" + updateTextGrid(t,s) + f.WaitForFinger(False) + cap3 = f.CaptureFinger(best_image = True) + if (cap3[0]['ACK'] == False): + s = "3. No Image captured\n" + updateTextGrid(t,s) + f.CmosLed(False) + return False + status3 = f.Enroll3() + if not status3[0]['ACK']: + if (status3[0]['Parameter'] == 0): + s = "Finger is already registered\n" + updateTextGrid(t,s) + f.CmosLed(False) + return False + else: + s = "Error! Try Again. Error code: "+str(status2[0]['Parameter']) + "\n" + updateTextGrid(t,s) + f.CmosLed(False) + return False + else: + s = "3. Remove your finger\n" + updateTextGrid(t,s) + f.WaitForFinger(True) + s = "Enroll success\n" + updateTextGrid(t,s) + f.CmosLed(False) + return True + + +''' +GUI--Start Frame +==================================================================================================== +''' +# Trigger Functions +def unlockTrigger(): + startFrame.pack_forget() + unlockOptionsFrame.pack() +def settingTrigger(): + takePic() + startFrame.pack_forget() + # Need to Add pinSettingBackTrigger and pinSubmitTrigger + numBackButton.config(command = lambda:pinSettingBackTrigger(usrInpt)) + numSubmitButton.config(command = lambda:pinSubmitTrigger(usrInpt,outputText)) + numberPadFrame.pack() + outputText.delete(0,END) + outputText.insert(0,"Enter Your Pin Code") + top.update() +# Start Frame Building +startFrame = Frame(width = WIDTH, height = HEIGHT) +startFrame.pack_propagate(0) +# Start Frame Variables + # Unlock Button With Image +unlockButton = Button(startFrame, text = "Unlock", bg=DEFAULTBG,activebackground=DEFAULTBG, command = unlockTrigger) +unlockImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/indexPage/unlock_button.gif") +unlockButton.config(image=unlockImage,width="100",height="100") + # Setting Button With Image +settingButton = Button(startFrame, text = "Setting", bg=DEFAULTBG,activebackground=DEFAULTBG,command = settingTrigger) +settingImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/indexPage/setting_button.gif") +settingButton.config(image=settingImage,width="100",height="100") +# Display Start Frame +startFrame.pack(fill= BOTH, expand = True) +unlockButton.pack(side = LEFT, fill = BOTH,expand = 1) +settingButton.pack(side = RIGHT, fill = BOTH,expand = 1) + +''' +GUI--Unlock Options Frame +==================================================================================================== +''' +# Trigger Functions + + # For Entering Admin ID to Unlock the Door +def pinIDBackTrigger(u): + u.delete(0, END) + numberPadFrame.pack_forget() + unlockOptionsFrame.pack() +def pinIDSubmitTrigger(u,t): + global Employee_ID + Employee_ID = int(u.get()) + + u.delete(0, END) + t.delete(0,END) + t.insert(0,Employee_ID) + numberPadFrame.pack_forget() + numBackButton.config(command = lambda:pinUnlockBackTrigger(usrInpt)) + numSubmitButton.config(command = lambda:pinUnlockSubmitTrigger(usrInpt,outputText)) + numberPadFrame.pack() + outputText.delete(0,END) + outputText.insert(0,"Enter your Pin Code") + top.update() + # For Entering Admin Pincode to Unlock the Door +def pinUnlockBackTrigger(u): + u.delete(0, END) + numberPadFrame.pack_forget() + unlockOptionsFrame.pack() +def pinUnlockSubmitTrigger(u,t): + takePic() + pin = u.get() + u.delete(0, END) + t.delete(0,END) + ##################################################################### + # + # We need function that take Employee_ID and pin as parameter + # search Database return True or False to accept the pin or reject + # + pinsql = 'SELECT Pincode from admin WHERE Admin_ID = "%d"'%(Employee_ID) + val = config.executeQuery(pinsql) #the md5 hash in the db + #print(val) + valPin = val[0]['Pincode'] + pinmsg = hashlib.md5() + pinmsg.update(pin.encode("utf-8")) + checkPin = pinmsg.hexdigest() ## the md5 hash of the input + #print(valPin) + #print(checkPin) + result = checkPin==valPin #check equality of input to the DB value + ##################################################################### + + if result: + pinUnlock(t) + ##################################################################### + # + # Update Datebase Log + timestamp = datetime.now().strftime('%Y-%m-%d %H:%M:%S') + logsql='INSERT INTO log(Employee_ID,AccessTime)VALUES("%d","%s")'%(Employee_ID,timestamp) + config.executeQuery(logsql) + ##################################################################### + numberPadFrame.pack_forget() + deviceFrame.pack() + else: + updateEntry(t,"Invalid ID or Pin") + time.sleep(2) + numberPadFrame.pack_forget() + startFrame.pack() + + + +def fingerTrigger(): + unlockOptionsFrame.pack_forget() + fingerFrame.pack() +def pinTrigger(): + unlockOptionsFrame.pack_forget() + # Need to Add pinIDBackTrigger and pinIDSubmitTrigger + numBackButton.config(command = lambda:pinIDBackTrigger(usrInpt)) + numSubmitButton.config(command = lambda:pinIDSubmitTrigger(usrInpt,outputText)) + numberPadFrame.pack() + outputText.delete(0,END) + outputText.insert(0,"Enter your employee ID") + top.update() + +def optionsBackTrigger(): + unlockOptionsFrame.pack_forget() + startFrame.pack() +# Frame Building +unlockOptionsFrame = Frame(width = WIDTH, height = HEIGHT) +unlockOptionsFrame.pack_propagate(0) +# Frame Variables +fingerButton = Button(unlockOptionsFrame, text = "Use Fingerprint", bg=DEFAULTBG,activebackground=DEFAULTBG, command = fingerTrigger) +fingerButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/unlockOptionsFrame/fingerprint.gif") +fingerButton.config(image=fingerButtonImage) +pinButton = Button(unlockOptionsFrame, text = "Use Pin Code", bg=DEFAULTBG,activebackground=DEFAULTBG, command = pinTrigger) +pinButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/unlockOptionsFrame/password.gif") +pinButton.config(image=pinButtonImage) +optionsBackButton = Button(unlockOptionsFrame, text = "Back", bg=DEFAULTBG,activebackground=DEFAULTBG, command = optionsBackTrigger) +optionsBackButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/unlockOptionsFrame/back.gif") +optionsBackButton.config(image=optionsBackButtonImage) +# Display Frame +fingerButton.pack(fill=BOTH, expand=1) +pinButton.pack(fill=BOTH, expand=1) +optionsBackButton.pack(fill=BOTH, expand=1) + +''' +GUI--Finger Print Unlock Frame +==================================================================================================== +''' +# Trigger Functions +def fingerStartTrigger(t): + s = "Start finger print scanner" + t.delete('1.0',END) + t.insert(INSERT, s) + t.pack() + if fingerUnlock(t): + fingerFrame.pack_forget() + deviceFrame.pack() +def fingerBackTrigger(t): + t.delete('1.0',END) + t.insert(INSERT, "Click Start to Unlock") + t.pack() + f.CmosLed(False) + fingerFrame.pack_forget() + unlockOptionsFrame.pack() +# Frame Building +fingerFrame = Frame(width = WIDTH, height = HEIGHT) +fingerFrame.pack_propagate(0) +# Frame Variables + # Text Box For Unlock Status +fingerString = "Click Start to Unlock" +fingerText = Text(fingerFrame, bg=DEFAULTBG,fg=TextColor) +fingerText.delete('1.0',END) +fingerText.insert(INSERT, fingerString) + # Start Button +fingerStartButton = Button(fingerFrame, text= "Start", bg=DEFAULTBG, activebackground=DEFAULTBG,command = lambda:fingerStartTrigger(fingerText)) +fingerStartButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/fingerUnlockFrame/start_2.gif") +#Resize# +fingerStartButton.config(image=fingerStartButtonImage) + # Back Button +fingerBackButton = Button(fingerFrame, text= "Back", bg=DEFAULTBG,activebackground=DEFAULTBG, command = lambda:fingerBackTrigger(fingerText)) +fingerBackButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/fingerUnlockFrame/back_2.gif") +#Resize# +fingerBackButton.config(image=fingerBackButtonImage) +# Display Frame +fingerText.pack(ipadx = 120) +fingerStartButton.pack(fill=BOTH, expand=1) +fingerBackButton.pack(fill=BOTH, expand=1) + +''' +GUI--Number Pad Frame +==================================================================================================== +Default number pad frame +Use for diffrent place by replacing the diffrent command for submit button and back button +''' +# Trigger Functions +def hitNum(u, n): + if u.get() == "": + u.delete(0, END) + u.insert(0, n) + else: + u.insert(END, n) + +def deleteTrigger(u): + u.delete(0, END) + u.insert(0, "") +# Frame Building +numberPadFrame = Frame(width = WIDTH, height = HEIGHT) +numberPadFrame.pack_propagate(0) +# Frame Variables +iPadX = 0 +iPadY = 0 + # Input Text Box +usrInpt = Entry(numberPadFrame) +usrInpt.insert(0, "") + # Output Text Box +outputString = "" +outputText = Entry(numberPadFrame,bg=DEFAULTBG,fg=TextColor) +outputText.insert(0,outputString) + # Button From 0 to 9 +zeroButton = Button(numberPadFrame, text = "0", bg=DEFAULTBG, font = DEFAULTFONT, command = lambda:hitNum(usrInpt, "0")) +oneButton = Button(numberPadFrame, text = "1", bg=DEFAULTBG, font = DEFAULTFONT, command = lambda:hitNum(usrInpt, "1")) +twoButton = Button(numberPadFrame, text = "2", bg=DEFAULTBG, font = DEFAULTFONT, command = lambda:hitNum(usrInpt, "2")) +threeButton = Button(numberPadFrame, text = "3", bg=DEFAULTBG, font = DEFAULTFONT, command = lambda:hitNum(usrInpt, "3")) +fourButton = Button(numberPadFrame, text = "4", bg=DEFAULTBG, font = DEFAULTFONT, command = lambda:hitNum(usrInpt, "4")) +fiveButton = Button(numberPadFrame, text = "5", bg=DEFAULTBG, font = DEFAULTFONT, command = lambda:hitNum(usrInpt, "5")) +sixButton = Button(numberPadFrame, text = "6", bg=DEFAULTBG, font = DEFAULTFONT, command = lambda:hitNum(usrInpt, "6")) +sevenButton = Button(numberPadFrame, text = "7", bg=DEFAULTBG, font = DEFAULTFONT, command = lambda:hitNum(usrInpt, "7")) +eightButton = Button(numberPadFrame, text = "8", bg=DEFAULTBG, font = DEFAULTFONT, command = lambda:hitNum(usrInpt, "8")) +nineButton = Button(numberPadFrame, text = "9", bg=DEFAULTBG, font = DEFAULTFONT, command = lambda:hitNum(usrInpt, "9")) + # Other Buttons +deleteButton = Button(numberPadFrame, text="Delete", bg=DEFAULTBG, command=lambda:deleteTrigger(usrInpt)) +numBackButton = Button(numberPadFrame, text = "Back", bg=DEFAULTBG) +numSubmitButton = Button(numberPadFrame, text = "Submit", bg=DEFAULTBG) + #Image +zeroButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/numberPadFrame/0.gif") +oneButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/numberPadFrame/1.gif") +twoButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/numberPadFrame/2.gif") +threeButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/numberPadFrame/3.gif") +fourButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/numberPadFrame/4.gif") +fiveButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/numberPadFrame/5.gif") +sixButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/numberPadFrame/6.gif") +sevenButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/numberPadFrame/7.gif") +eightButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/numberPadFrame/8.gif") +nineButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/numberPadFrame/9.gif") +deleteButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/numberPadFrame/clear.gif") +numBackButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/numberPadFrame/back.gif") +numSubmitButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/numberPadFrame/confirm.gif") + +#Resize# +zeroButton.config(image=zeroButtonImage) +oneButton.config(image=oneButtonImage) +twoButton.config(image=twoButtonImage) +threeButton.config(image=threeButtonImage) +fourButton.config(image=fourButtonImage) +fiveButton.config(image=fiveButtonImage) +sixButton.config(image=sixButtonImage) +sevenButton.config(image=sevenButtonImage) +eightButton.config(image=eightButtonImage) +nineButton.config(image=nineButtonImage) +deleteButton.config(image=deleteButtonImage) +numBackButton.config(image=numBackButtonImage) +numSubmitButton.config(image=numSubmitButtonImage) + +# Display Frame +usrInpt.grid(row=0, column=1, ipadx=50, ipady=38) +outputText.grid(row=0, column=2,ipadx=50,ipady=38) + # 0 - 9 Button + +zeroButton.grid(row=4, column=1, ipady=iPadY, sticky=N+S+E+W) +oneButton.grid(row=1, column=0, ipady=iPadY, sticky=N+S+E+W) +twoButton.grid(row=1, column=1,ipady=iPadY, sticky=N+S+E+W) +threeButton.grid(row=1, column=2,ipady=iPadY, sticky=N+S+E+W) +fourButton.grid(row=2, column=0, ipady=iPadY, sticky=N+S+E+W) +fiveButton.grid(row=2, column=1, ipady=iPadY, sticky=N+S+E+W) +sixButton.grid(row=2, column=2, ipady=iPadY, sticky=N+S+E+W) +sevenButton.grid(row=3, column=0, ipady=iPadY, sticky=N+S+E+W) +eightButton.grid(row=3, column=1, ipady=iPadY, sticky=N+S+E+W) +nineButton.grid(row=3, column=2, ipady=iPadY, sticky=N+S+E+W) + # Other Button +numBackButton.grid(row=0, column =0, ipadx=iPadX, ipady=iPadY, sticky=N+S+E+W) +deleteButton.grid(row=4, column=0, ipadx=iPadX, ipady=iPadY, sticky=N+S+E+W) +numSubmitButton.grid(row=4, column=2, ipadx=iPadX, ipady=iPadY, sticky=N+S+E+W) + +''' +GUI--Device Frame +==================================================================================================== +For Device To Check in or Check out + +''' +def sessionmaker(t, s): #Adds a session into db, returns the NFC of the device scanned + t.delete('1.0',END) + updateTextGrid(t,s) + nfcVal = '' + while(nfcVal=='' or nfcVal==None): + nfcVal = str(ser.readline()) + nfcVal = nfcVal[2:-5] + s = nfcVal + "\n" + updateTextGrid(t,s) + date = datetime.now().strftime('%Y-%m-%d %H:%M:%S') + NFCsql='INSERT INTO sessions (PersonID, AccessTime, NFCID) VALUES("%d","%s","%s")'%(Employee_ID,date,nfcVal) + config.executeQuery(NFCsql) + return nfcVal +def showDeviceName(nfcID, t): + sql = 'SELECT * from devices where NFC_ID ="%s"'%(nfcID) + val = config.executeQuery(sql) + if val: + name = val[0]['Device_Name'] + "\n" + updateTextGrid(t,name) + return True + else: + s = "This device is not in the system" + updateTextGrid(t,s) + return False + +def updateDevice(intoLocker, nfcID,t): #updates the attributes of the device + if not showDeviceName(nfcID, t): + return + sqll = [] + sqll.append('UPDATE devices SET ' ) + if intoLocker: + sqll.append('Location = "%d", Renter = NULL, Ticket_ID = NULL, Borrow_Date=NULL, Permanent = NULL, Return_Date="%s", Status ="Available"') + else:# take out of locker + chksql = 'SELECT * from devices where NFC_ID ="%s"'%(nfcID) + chkVal = config.executeQuery(chksql) + print(chkVal) + if chkVal: + if(chkVal[0]["Status"]=="Ready to Ship"): + if chkVal[0]['Permanent'] == 0: + sqll.append('Status="Shipped"') + else : + sqll.append('Status="On Loan"') + else: + chkVal = False + sqll.append('WHERE NFC_ID = "%s"') + sql = ''.join(sqll) #The Query is joined here. + curDate = date.today().strftime('%Y-%m-%d') + if intoLocker: #query variables depend on direction of movement + val = config.executeQuery(sql %(1,curDate,nfcID)) + if val: + s = "Checkin Sucess!\n" + updateTextGrid(t,s) + elif chkVal: + val = config.executeQuery(sql %(nfcID)) + if val: + s = "Checkout Sucess!\n" + updateTextGrid(t,s) + else: #wrong device, do not modify device table, warn user + s = "Warnning! The device is not scheduled to be shipped" + updateTextGrid(t,s) + +# Trigger Functions +def deviceCheckinTrigger(t): + ##################################################################### + s = "Place your device to check in.\nThe NFC scanner will stop working in 10 senconds.\n" + updateDevice(True, sessionmaker(t , s),t) + + ##################################################################### + return +def deviceCheckoutTrigger(t): + ##################################################################### + + s="Place your device to check out.\nThe NFC scanner will stop working in 10 senconds.\n" + + updateDevice(False, sessionmaker(t,s), t) + + ##################################################################### + return +def deviceBackTrigger(t): + global Employee_ID + t.delete('1.0',END) + t.insert(INSERT, "Device check in or check out\n") + Employee_ID = 999999999 # Reset Employee_ID be default + deviceFrame.pack_forget() + startFrame.pack() +# Frame Building +deviceFrame = Frame(width = WIDTH, height = HEIGHT) +deviceFrame.pack_propagate(0) +# Frame Variables +string = "Device check in or check out" +deviceText = Text(deviceFrame, bg=DEFAULTBG, fg=TextColor) +deviceText.insert(INSERT,string) +checkinButton = Button(deviceFrame,text = "Check In", bg=DEFAULTBG,activebackground=DEFAULTBG,command = lambda:deviceCheckinTrigger(deviceText)) +checkoutButton = Button(deviceFrame, text = "Check Out", bg=DEFAULTBG,activebackground=DEFAULTBG,command = lambda:deviceCheckoutTrigger(deviceText)) +deviceBackButton = Button(deviceFrame, text = "Back", bg=DEFAULTBG, activebackground=DEFAULTBG,command = lambda:deviceBackTrigger(deviceText)) +# image for frame button +checkinButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/DeviceFrame/check_in_2.gif") +checkinButton.config(image=checkinButtonImage) +checkoutButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/DeviceFrame/check_out_2.gif") +checkoutButton.config(image=checkoutButtonImage) +deviceBackButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/DeviceFrame/back_2.gif") +deviceBackButton.config(image=deviceBackButtonImage) +# Display Frame +deviceText.grid(row = 0, ipadx = 120,column = 0,columnspan=2) +checkinButton.grid(row = 1, column = 0,ipadx = 80,ipady=10, sticky=W+E+N+S) +checkoutButton.grid(row = 1, column = 1,ipadx = 80,ipady=10,sticky=W+E+N+S) +deviceBackButton.grid(row = 2, column = 0,columnspan = 2,ipady=10,sticky=W+E+N+S) + +''' +GUI--Setting Options Frame +==================================================================================================== +''' +# Trigger Functions + # For Entering Admin Pincode to Enter Setting Page +def pinSettingBackTrigger(u): + u.delete(0, END) + numberPadFrame.pack_forget() + startFrame.pack() +def pinSubmitTrigger(u,t): + pin = u.get() + u.delete(0, END) + ##################################################################### + # + # Fuction that take pin as prameter to search if there is a match + # return ture or False + # + pinmsg = hashlib.md5() + pinmsg.update(str(pin).encode("utf-8")) + msg = pinmsg.hexdigest() + #print(msg) + pinsql = 'SELECT * from admin WHERE Pincode = "%s"'%(msg) + val = config.executeQuery(pinsql) #the md5 hash in the db + #print(val) + result = False + #print(len(val)) + if len(val) != 0: + result = True + ##################################################################### + if result: + numberPadFrame.pack_forget() + settingOptionsFrame.pack() + else: + updateEntry(t,"Invalid Pin") + time.sleep(2) + numberPadFrame.pack_forget() + startFrame.pack() + + # For Entering Admin ID to Enroll Finger Print +def fingerEnrollBackTrigger(u): + u.delete(0, END) + numberPadFrame.pack_forget() + startFrame.pack() + +def fingerEnrollSubmitTrigger(u,t): + global Employee_ID + Employee_ID = int(u.get()) + u.delete(0, END) + ##################################################################### + # + # Fuction that take Employee_ID as prameter to search if there is a match + # return ture or False + # + #ID Exists AND FLAG+1 AND FINGS ALL FILL then TRUe otherwise False + result = True + finsql='SELECT * from admin WHERE Admin_ID = "%d"'%(Employee_ID) + #print(finsql) + adminfings = config.executeQuery(finsql ) + #print(adminfings) + if adminfings[0] and adminfings[0]["Finger_Registered_Flag"]==1: + if adminfings[0]["Finger_ID"]!= None and adminfings[0]["Finger_ID_2"]!= None and adminfings[0]["Finger_ID_3"]!= None: + result = False + ##################################################################### + if result: + numberPadFrame.pack_forget() + fingerEnrollFrame.pack() + else: + updateEntry(t, "Invalid ID or Already Enrolled.") + time.sleep(2) + numberPadFrame.pack_forget() + settingOptionsFrame.pack() + #fingerEnrollFrame.pack() + + # For Entering Admin ID to Remove Admin +def fingerDeleteBackTrigger(u): + u.delete(0, END) + numberPadFrame.pack_forget() + settingOptionsFrame.pack() +def fingerDeleteSubmitTrigger(u,t): + AdminID = int(u.get()) + u.delete(0, END) + ##################################################################### + # + # Fuction that take AdminID as prameter to search if there is a match + # if Match, and flag be 1, return array of fingerID + # + finsql='SELECT * from admin WHERE Admin_ID = "%d"' + adminfings = config.executeQuery(finsql %(AdminID)) + fingerIDs = [] + if adminfings[0] and adminfings[0]["Finger_Registered_Flag"]==1: + fingerIDs.append(adminfings[0]["Finger_ID"]) + fingerIDs.append(adminfings[0]["Finger_ID_2"]) + fingerIDs.append(adminfings[0]["Finger_ID_3"]) + ##################################################################### + #fingerIDs = [200,201,202] # Need to be return value + removeFingerIDs(fingerIDs,t) + ## if success Delete here + + rmsql = 'UPDATE admin SET Finger_Registered_Flag = "%d" WHERE Admin_ID = "%d"' + config.executeQuery(rmsql %(0, AdminID)) #set finger registered flag to 0, wipe the Admin_IDs. + rmsql = 'DELETE from fingerprint WHERE Finger_ID = "%d"' + for fid in fingerIDs: + config.executeQuery(rmsql %(fid)) #remove fingerID from the fingerprint table, corresponding attributes in admin are set to null from foreign key relation + numberPadFrame.pack_forget() + settingOptionsFrame.pack() + +def logTrigger(): + global loglist + loglist = getLog() + settingOptionsFrame.pack_forget() + logFrame.pack() +def addPrintTrigger(): + numBackButton.config(command = lambda:fingerEnrollBackTrigger(usrInpt)) + numSubmitButton.config(command = lambda:fingerEnrollSubmitTrigger(usrInpt,outputText)) + settingOptionsFrame.pack_forget() + numberPadFrame.pack() + outputText.delete(0,END) + outputText.insert(0,"Enter Your Admin ID To enroll") + top.update() +def deletePrintTrigger(): + settingOptionsFrame.pack_forget() + numBackButton.config(command = lambda:fingerDeleteBackTrigger(usrInpt)) + numSubmitButton.config(command = lambda:fingerDeleteSubmitTrigger(usrInpt,outputText)) + numberPadFrame.pack() + outputText.delete(0,END) + outputText.insert(0,"Enter Admin ID To Delete") + top.update() +def exitTrigger(): + f.CmosLed(False) + top.destroy() +def settingBackTrigger(): + settingOptionsFrame.pack_forget() + startFrame.pack() +# Frame Building +settingOptionsFrame = Frame(width = WIDTH, height = HEIGHT) +settingOptionsFrame.pack_propagate(0) +# Frame Variables +logButton = Button(settingOptionsFrame, text = "Log", bg=DEFAULTBG, activebackground=DEFAULTBG,command = logTrigger) +addPrintButton = Button(settingOptionsFrame, text = "Add Fingerprints", bg=DEFAULTBG,activebackground=DEFAULTBG, command = addPrintTrigger) +deletePrintButton = Button(settingOptionsFrame, text = "Delete Admins", bg=DEFAULTBG,activebackground=DEFAULTBG, command = deletePrintTrigger) +exitButton = Button(settingOptionsFrame, text = "Exit Application", bg=DEFAULTBG, activebackground=DEFAULTBG,command = exitTrigger) +settingBackButton = Button(settingOptionsFrame, text = "Back", bg=DEFAULTBG,activebackground=DEFAULTBG, command = settingBackTrigger) +# Image for setting options +logButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/settingFrame/log.gif") +logButton.config(image=logButtonImage) +addPrintButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/settingFrame/fingerprint.gif") +addPrintButton.config(image=addPrintButtonImage) +deletePrintButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/settingFrame/Dadmins.gif") +deletePrintButton.config(image=deletePrintButtonImage) +exitButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/settingFrame/exit.gif") +exitButton.config(image=exitButtonImage) +settingBackButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/settingFrame/back.gif") +settingBackButton.config(image=settingBackButtonImage) +# Display Frame +logButton.pack(fill=BOTH, expand=1) +addPrintButton.pack(fill=BOTH, expand=1) +deletePrintButton.pack(fill=BOTH, expand=1) +exitButton.pack(fill=BOTH, expand=1) +settingBackButton.pack(fill=BOTH, expand=1) + +''' +GUI--Log Frame +==================================================================================================== +''' + +# database +def getLog(): + logsql = 'SELECT * from log' + sessionsql = 'SELECT sessions.*, devices.Device_Name from sessions INNER JOIN devices ON sessions.NFCID = devices.NFC_ID' + logdata = config.executeQuery(logsql) + sessiondata = config.executeQuery(sessionsql) + for session in sessiondata: + logdata.append(session) + logdata.sort(key=lambda item:item['AccessTime'], reverse=True) + loglist = [] + for dct in logdata: + if len(dct)==3: + s = "{:20s}".format(dct["AccessTime"].strftime('%Y-%m-%d %H:%M:%S'))+ "(Door opened) | Employee ID: {:9d}".format(dct["Employee_ID"]) + elif len(dct)>3: + s = "{:20s}".format(dct["AccessTime"].strftime('%Y-%m-%d %H:%M:%S'))+ "(Device Scanned) | Employee ID: {:9d}".format(dct["PersonID"]) +" | Device ID: {:16s}".format(dct["NFCID"])+" | Name : {:20s}".format(dct["Device_Name"]) + loglist.append(s) + loglist.append("\n") + #teststring = ''.join(loglist) + #print (loglist) + return loglist + +def log45(): + global curr + #print(curr) + if curr + 1 > len(loglist) or curr < 0: + return "There is no more records" + ls = [] + for i in range(curr, curr+46): + if i > len(loglist) -1: + break + ls.append(loglist[i]) + string = ''.join(ls) + #print(string) + return string + +def logLeft45(): + global curr + curr -= 45 + if curr + 1 > len(loglist) or curr < 0: + curr = -45 + return "There is no more records" + + ls = [] + for i in range(curr, curr+46): + if i > len(loglist) -1: + break + ls.append(loglist[i]) + string = ''.join(ls) + #print(string) + return string + +def logRight45(): + global curr + curr += 45 + if curr + 1 > len(loglist) or curr < 0: + curr -= 45 + return "There is no more records" + ls = [] + for i in range(curr, curr+46): + if i > len(loglist) -1: + break + ls.append(loglist[i]) + string = ''.join(ls) + #print(string) + return string + +# Trigger Functions +def logBackTrigger(text): + global curr + curr = 0 + logFrame.pack_forget() + settingOptionsFrame.pack() +def logLeftTrigger(t): + t.delete('1.0',END) + s = logLeft45() + updateTextGrid(t,s) + + return +def logRightTrigger(t): + t.delete('1.0',END) + s = logRight45() + updateTextGrid(t,s) + return + +def showLog(text,s): + text.delete('1.0',END) + updateTextGrid(text,s) + + +# Frame Building +logFrame = Frame(width = WIDTH, height = HEIGHT) +logFrame.pack_propagate(0) +# Frame Variables +loglist = getLog() +logString = log45() +logText = Text(logFrame, bg=DEFAULTBG, fg=TextColor) +showLog(logText,logString) +logLeftButton = Button(logFrame,text = "<|", bg=DEFAULTBG,activebackground=DEFAULTBG,command = lambda:logLeftTrigger(logText)) +logRightButton = Button(logFrame, text = "|>", bg=DEFAULTBG,activebackground=DEFAULTBG,command = lambda:logRightTrigger(logText)) +logBackButton = Button(logFrame, text = "Back", bg=DEFAULTBG,activebackground=DEFAULTBG, command = lambda:logBackTrigger(logText)) +# image for frame +logLeftButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/logFrame/left_arrow_2.gif") +logLeftButton.config(image=logLeftButtonImage) +logRightButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/logFrame/right_arrow_2.gif") +logRightButton.config(image=logRightButtonImage) +# change size +logBackButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/logFrame/back_2.gif") +logBackButton.config(image=logBackButtonImage) +# Display Frame +logText.grid(row = 0, ipadx = 120,column = 0,columnspan=2) +logLeftButton.grid(row = 1, column = 0,ipadx = 0,ipady=10, sticky=W+E+N+S) +logRightButton.grid(row = 1, column = 1,ipadx = 0,ipady=10,sticky=W+E+N+S) +logBackButton.grid(row = 2, column = 0,columnspan = 2,ipady=10,sticky=W+E+N+S) + +''' +GUI--Finger Enroll Frame +==================================================================================================== +''' +# Trigger Functions +def addFingerTrigger(t,n): # n is which finger + + ##################################################################### + # + # Fuction that take Employee_ID as prameter to search if there is a match + # Check flag, Chech fingerID1-3 is None or not, return True or False + # + finsql = 'SELECT * from admin WHERE Admin_ID = "%d"' + print(Employee_ID) + result = True #we can add the new fingerprint + adminfings = config.executeQuery(finsql %(Employee_ID)) + if (adminfings[0] and adminfings[0]["Finger_Registered_Flag"]==1): + if adminfings[0]["Finger_ID"] != None and adminfings[0]["Finger_ID_2"]!= None and adminfings[0]["Finger_ID_3"]!= None: + result = False #all slots full, we cannot add the fingerprint + + ##################################################################### + if n == "1" and adminfings[0]["Finger_ID"]!= None: + s = "Finger_1 is already enrolled.\n" + updateTextGrid(t,s) + return + if n == "2" and adminfings[0]["Finger_ID_2"]!= None: + s = "Finger_2 is already enrolled.\n" + updateTextGrid(t,s) + return + if n == "3" and adminfings[0]["Finger_ID_3"]!= None: + s = "Finger_3 is already enrolled.\n" + updateTextGrid(t,s) + return + printID = 0 + printID = enroll_count() + test = 200 + while(test > 0): + if IdEnrolled(printID): + printID = printID +1 + else: + break + result = printEnroll(printID,t) + if result: + ##################################################################### + # Update the fingerprint table + # Then + # Update admin table with flag(1)/finger(printID). using Employee_ID + # + # + #logsql='INSERT INTO log(Employee_ID,AccessTime)VALUES("%d","%s")'%(Employee_ID,timestamp) + ufsql='INSERT INTO fingerprint(Finger_ID) VALUES("%d")'%(printID) + try: + config.executeQuery(ufsql) + #print("#1") + ##admin table + sqll = [] + sqll.append('UPDATE admin SET Finger_Registered_Flag = "%d", ') + if n == "1": + #This is for fingerOne + sqll.append('Finger_ID = "%d" ') + if n == "2": + #This is for fingerTwo + sqll.append('Finger_ID_2 = "%d" ') + if n == "3": + #This is for fingerThree + sqll.append('Finger_ID_3 = "%d" ') + + sqll.append('WHERE Admin_ID = "%d"') + uasql = ''.join(sqll) #The Query is joined here. + uasql = uasql %(1, printID, Employee_ID) + #print(uasql) + config.executeQuery(uasql ) #set finger registered flag to 1, put the printID in the right place. + + #print("#2") + except: + fingerIDs = [printID] + removeFingerIDs(fingerIDs,t) + ##################################################################### + return + else: + s = "Enroll Failed. Try again later." + updateTextGrid(t,s) + +def addFingerBackTrigger(t): + f.CmosLed(False) + global Employee_ID + Employee_ID = 999999999 + t.delete('1.0',END) + updateTextGrid(t,"Click Buttons To Enroll Your Finger Prints\n") + fingerEnrollFrame.pack_forget() + settingOptionsFrame.pack() +# Frame Building +fingerEnrollFrame = Frame(width = WIDTH, height = HEIGHT) +fingerEnrollFrame.pack_propagate(0) +# Frame Variables +fingerString = "Click Buttons To Enroll Your Finger Prints\n" +fingerEnrollText = Text(fingerEnrollFrame, bg=DEFAULTBG, fg=TextColor) +fingerEnrollText.delete('1.0',END) +fingerEnrollText.insert(INSERT, fingerString) +fingerOneButton = Button(fingerEnrollFrame, text = "Finger One", bg=DEFAULTBG,activebackground=DEFAULTBG, command = lambda:addFingerTrigger(fingerEnrollText, "1")) +fingerTwoButton = Button(fingerEnrollFrame, text = "Finger Two", bg=DEFAULTBG, activebackground=DEFAULTBG,command = lambda:addFingerTrigger(fingerEnrollText, "2")) +fingerThreeButton = Button(fingerEnrollFrame, text = "Finger Three", bg=DEFAULTBG,activebackground=DEFAULTBG, command = lambda:addFingerTrigger(fingerEnrollText, "3")) +fingerEnrollBackButton = Button(fingerEnrollFrame, text = "Back", bg=DEFAULTBG, activebackground=DEFAULTBG,command = lambda:addFingerBackTrigger(fingerEnrollText)) +# image for frame button +fingerOneButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/fno1_2.gif") +fingerOneButton.config(image=fingerOneButtonImage) +fingerTwoButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/fno2_2.gif") +fingerTwoButton.config(image=fingerTwoButtonImage) +fingerThreeButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/fno3_2.gif") +fingerThreeButton.config(image=fingerThreeButtonImage) +fingerEnrollBackButtonImage=PhotoImage(file="/home/pi/SF_DeviceSecuritySystem/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/back_2.gif") +fingerEnrollBackButton.config(image=fingerEnrollBackButtonImage) +# Display Frame +fingerEnrollText.grid(row = 0, column = 0,columnspan=2,ipadx = 120) +fingerOneButton.grid(row = 1, column = 0, sticky=W+E+N+S, ipady = 10) +fingerTwoButton.grid(row = 1, column = 1,sticky=W+E+N+S) +fingerThreeButton.grid(row = 2, column = 0,sticky=W+E+N+S) +fingerEnrollBackButton.grid(row = 2, column = 1, sticky=W+E+N+S, ipady = 10) +''' +GUI--Start +==================================================================================================== +''' +top.mainloop() diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/Color Code.docx b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/Color Code.docx new file mode 100644 index 0000000000000000000000000000000000000000..f670158edca78d5e0576558c7ab5a6f83a0ad4ec GIT binary patch literal 13359 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 ALI3~& literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/back_2.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/back_2.gif new file mode 100644 index 0000000000000000000000000000000000000000..77b99317187b723c0a8431bbbc692f97408155dd GIT binary patch literal 2141 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 VhM%3(89SB{0&&{09R&x@{|^)0-kJaa literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/check_in_2.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/check_in_2.gif new file mode 100644 index 0000000000000000000000000000000000000000..bd71119e07a8615da82cd3028c0052cd4df10193 GIT binary patch literal 2542 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 S9ebf$KDn-JX~09k!T$pNr>F@4 literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/Preview_map_1.PNG b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/Preview_map_1.PNG new file mode 100644 index 0000000000000000000000000000000000000000..3896ca2fe1b380cfa0283afba3aaf6aac6b57879 GIT binary patch literal 175977 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

&fbov3bpWXKaaw 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 literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/background_800x480.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/background_800x480.gif new file mode 100644 index 0000000000000000000000000000000000000000..cb4baf8f36d25058e841e649ecbc3d8c1c538555 GIT binary patch literal 1010 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 OK2RI7Y1pLJOu%(5C zjiu#D8>Af)Y3G8pwzG3MckaB0w-3_C_kxd)udg4**EhiL(s4|%119J^Cg7}pU_d~C zV^F9^5cWbaHaIvWBslmq7UvXtKS+4H;#NYK0YBn-Y|jY zkdSOePVposT_7hWlF7#?bWaM^mqHDoBqvd>;}faTiAhe$%wMQ1DwRs3QY}*0{wWOI z)SJesnYO8HpH!v^J^LWzmQ`A|DKpoYmB(VSPGsciW)>M|-cifCcjRV~R(5H2cD6?D z16b|@G5uGga?C*3Qf~d{}6m z{i}O!sb^tDy7*~mdG+P;>g4Ayv+Em+8(S+|-`2Ok@9ysYx6=R1|C)gQH;5bnPy#Uj zY52Jb0CX474%K!MKI}?^s+t9eg`DRZ$_8$wlwmd?Q`3q#DX!u6G0~u8ZP(f|Nx@ze z@v@}$v9!n{tiROt*^|K%WZdGUV^_8Q1 zzXb2W{(AnU3jfYb9e3ZW!v`Z?RR&5Ms^2!o{MrATd!t~gmGVU}3cB$0eJ2g9pnLZ9 z;r9TR>LK0aS$19@THRgn9rSrt8m<53^#E+`eIF|SIN`txG;V-5?&~?Y9h(ccPgyQ* zH|UjDe{$|Eb-+Nb*h(Z(mJHf{UHnk=D_9QP_AAT^%X=YGYHpdY8;g9skS~+-;513x zv@8Ch**rTs_KF|;dq?~C&5!)(b10LXA9j=l-bqxiY{FI!p^+hv6*}B7zBd_ymOqp$ zJDsMC7Qfqn2!fblX}XC~O1QT3atuU}$_>4pW?^@vd0Fuz^4c3wx4d5RumfE-oRI-T zB*$oF!8R7c682-Z{>(*90Kl*~90OroOyk|qBiPgFvZf36PWzk|u%T&31oqEwpQ*zF zHDrjPT$nb~0u`yG^4AllTE{^=b3*5&b3xH;hO7b9@ex|x$j<>C*X1zdaPw4rhztjt ze17ikMf1dTm>+L?y0jRhfqzmen13Yi^5GjAc4d--Ga?m-py4sI`@{(P>~0qt?t7L7 zhT{ijWUDAVdM}q!n%AqHw0z7N?zA(0u)O5RQWedVSt&8%-l5Af@_3v`gr4m;s15obYs4)jrz@(to2{MzEZDb zl8Ja$@an*$m6S5;P4?Zm(ivGs4v(`aTpV*@=jYe0yntLx-CePfn(ZD&N<-YUT=jlk z&0`PJOJ@%0vMf|w4L!mwonb5l#RYC-m)oNmUPv%zq?YFOfRg=BZ!Lb88QNa@(QQiZ zDiQ(%U~JI}U*Gx^;p8W%N`AVWj42|Gd%|r5U#VRtuwCZ2?)|ZDk~mC<)jbdCRlBl7 ze`rXYr6Y_|rs=YVq@oZggI&g9$^~2OMCeVageF2RK0uycGJCM_pO;g72#|FVf#4Q2 zEdQNM*~Qj5Q;@?g)8`1~{cKABKJrf7+bvR2`f3e_K=T{X85su88?Dkz&vN7yBGMEf zSeC_2jv{b@zDM0$m8A*M*9IQ2FVt67O#*B0e(G)Ds8#QyuA&SqUp|A+0F|!3a+-`` z(qWj-nb1;^LXEiRh?%l$yMcepfI zV;X64(vKpeb9jnaT^~t5Fi`~7WIMtqEiy1;`Dr*L5TYzeKQ&vP7Dq#A)y9A<%Q!_8 z-t#Imv^$bVR}A+`)1I47KViqYRZaS6_DnLU);0oG&+XQDVefe?c}C%~m<~}F(&X)C z6tXN)>J2eN<`GyRoPxLO6z(z=%|l9qd7wQmxqE1CT_B(SV4JVJo@m>3j&e57$;9nt zCT9J%YB3FBhM?baLx2<_?9o;eG-w13yx+whWSiL{cl;qxWtb*o3h*YQY20NT-q`@* zosszEk-bu-mwpQ)eeYMEi^rmk^Y%!d?d@n-g2<q3+2LOS9Q~v;i_}KUW literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/fno1.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/fno1.gif new file mode 100644 index 0000000000000000000000000000000000000000..6c1d83e52e323705348e4fd6e4c32e5dc434941b GIT binary patch literal 9000 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 Db(^q^ literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/fno1_2.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/fno1_2.gif new file mode 100644 index 0000000000000000000000000000000000000000..88fe9091e8cee91dd2f349777a9f416613737d10 GIT binary patch literal 2736 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 NG{F`m8#Dko@L%l2#zz1E literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/fno2.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/fno2.gif new file mode 100644 index 0000000000000000000000000000000000000000..8b70dd8b177a0185923411218f1894d78919c6d9 GIT binary patch literal 8741 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


7;P1DhQQ-;50^0C^ees@}} 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 CAr#2~ literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/fno2_2.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/fno2_2.gif new file mode 100644 index 0000000000000000000000000000000000000000..1d64e9720931c544fcfea260595cbee3fa5d2a15 GIT binary patch literal 2811 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 Df}IvE literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/fno3_2.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/fno3_2.gif new file mode 100644 index 0000000000000000000000000000000000000000..0abf248e2683838ed15e050921d8361adef9a72e GIT binary patch literal 2762 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 literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerUnlockFrame/back.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerUnlockFrame/back.gif new file mode 100644 index 0000000000000000000000000000000000000000..368d41276addaf4ffda06b1f879fc139cca08443 GIT binary patch literal 5961 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 literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerUnlockFrame/back_2.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerUnlockFrame/back_2.gif new file mode 100644 index 0000000000000000000000000000000000000000..d39f480b6b74b4f9b8771001703e0454564d4181 GIT binary patch literal 2454 zcmeH``9Bj51IKsUm>dr>$8xME_fbScMvghg6s6opjLoqebBt`vCP$`;ujH91M~)#m zQq2*|Qj)%kj`0;#>gHl?6~+UY0=5CaWnyY+ zYG!3_Zgs@M#>)D*^)Y)J+Y>mPvy+pXo0}KG>lD%3*U#JA$LA!$*YB*KulpJQK>sr? z0l{8D!9hVmVZlN8kZ`|{u;7qTQb=$_Xoz2Uq;o`cL_~z$`Ivz7(XmnI&qv3cCdE=n z(Y7)1Ct?yj$nl|M3YkpCQK-k`lBscVN8?ih;;HcoR2?eaiAp0=so@urlai7wlIbQX z7u{0n>8Ys)XiQTY!;zMKj+PltOHWNpGfvMXq+bk7&myO19?E2UW-^JHjL6LF6ZBj< zosP|71!OaGva<;}Y&FK^L(F0mW|3xI*|EG5T^84n#bvQrhx561oU%g&R|^XZHH)fB zOE2qiYs$*X)Oqzv<+pUo>j4!lN)?TN`{Op~TAS>(R&Y%xqNWqdzavxItytHse6tsI zvq!U`PrIQH-Pn(5>Njk;Z{GIMQt%%OZ8`^??~dSm9(neT`rRK7cp#1#dKxqGEbh^B z>ey7W=mlN;k})xp_v}^S^VzcLH-F5$uX!!0n_Fmk_n||w)U&X1Z}H>M^4j?7`sAn2 zFV{EbzI>bi_I-7G=kw0)=I%fD_V)fe;Q!-)Z$SG81OWh)1B`wnet!Z0-vh|OHShwy z0|O>4?=KS64zuNT-K+5(H=Nl}X;o`cN8Q+En8_s#x6b;<`Rew~fyapRjzENpUZq>t zt%+;aNvm%jcQrh_CWC~8`sdvA$&~>s5piIIiV3mK{knU1^UK@*U9oRt%caYt5g@pK z+H|91rD+ zJ!(ArIzNa@yF=Xu1&I#*GG>KnLjRqQ`Ff}=dhICTChhav z3Ud4L=0sq*_`wy!kf-!xD$8ZpJhp$)`%^w#4KczzxlsFJO)^}#cc7h)P{b_0@E%(T zU3t#ZnHDF+|7##?bCtVe7VZQu`SuNphk|-qod6(^GzYTJ5i&TOYx@KTmfb7p;VXue zI^?UKwqS)Y7YodM-47^h;pkeoXlPkaj`?U|1f>_MpzoRXp8eppYc4W~4;<5otp-A5 z(6_9E$!}8bl*+l3(9rwrI1HGk@5vu7sAylVW3kf0m-oeZPZ3BuQm`Sy(5tylaHrXs z`jk(74T?ZS8g%J;+EP=)^)MBmQOzqv9le94@+fO!YI@{ zsS$L?qxRrPMiYidsd82cN>*SYkM_qJSGG>L;iP9$3mfXKLiZWGW z>M6F41zKyX4v#SBf9!d!=d!0FgWrJR>!D%{dDP^Ft42)a-p1He91qCh)8(_^n*OI2*i*bk9~V{KyqvAMxURTX zsYdi2BB-3U{$p8x#Mq>^L^X~kisH$*YGfM8vQf(h;V{&vbumT9Z`&t-zox(7!?N(= zI%CLv3iWeiutDO0tb5NGRm*~7@u(QU0-n$G0=cU7ELDM#QLi4{;ivI{EHL_K$?@xI1+pIa@t=aj_MViCU?FZ- zPvkH^@0kSof|J{O-E;6m7Lk}Q57FLoE%yc;r5;k5N2fHL1J=(ufoLHo*Zk0IVfRI+q_CJFbxHjSj85wNBUzjB!j8Lq- z@5u!xwGkmhb9{qaO3^KIcLG42zLr%Q>2!Dr+U+3=S1zi~qAZg0vB)9$i)p#&pOZaD z>b2$aa33@RAG7U6wZXKV69=Yn`7YSQSA;F^QW_w z8W0Sy&dt-eu-}_J?3#TW45pRxSOCnqSB%E-mu(r{w|#CdpBcmYNo`K+X)6GBMdN?o z?f>2yDO=#}r!&(%^t~-@!tksdvEp9uNLz+%OQ@9C$09XadnLCye82eBD0Zu(w3q^w zwwc-1N(Glqv_x5n&x%f7wFHO3L0FI3sVbGueOf}IL7_Sb8LHn<+)5#=0U$}6yzUzA z8d*V-^Llryr!XZ43r}?JzE$j7#OzG8XB*$(?(S|s1nd*!NO?*? L>N~waAi(C|D&ET< literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerUnlockFrame/start.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerUnlockFrame/start.gif new file mode 100644 index 0000000000000000000000000000000000000000..b2d1834f06375e8527b6d8574fcf0753fd00b504 GIT binary patch literal 5994 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�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 a{N3OF{oeo{-~vA21YY0<&fhK&5CA(ulFw@Z literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/back_2.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/back_2.gif new file mode 100644 index 0000000000000000000000000000000000000000..cf39dd4e50838596ae68aa20276503982851a73f GIT binary patch literal 2295 zcmeH``#;kQ1INF+V2cjogiUR88D-^?%aWc)o7<3(Ycz9hE@$rd#b(A_CKlyZ%_Wvg zF_fel4n~}ivI-$jicU=riqkos)AJWRf57wp;q%+)m-pxOu_xK#EdsLvL*Og$1N}os z4RFSWMixfK7RDxc3%r%Xaf{=Y|FAlF>Yvs`0>RGKmgMB*;&J8-{;U_t%g4*h$J@)> z*UQt)+uzT}+t!clm&!uZIhOQn zI-PEok!zR1Hpt9Bk;ys4C^*R~Fk@e0v)MYimk)BTa5%Zzc~>m+E}IvWsTNipD6Bfn zt>kjKxm0^q=bb)#2Wt^Zns7Jz~$^5&y?e z0z_lMeZSF$CS!)D5=W-fpFC%b&#<3LawlGLr(W}(&sEIKUzaS@zFKUaTkcp~xx4hf zcX_q%-P+*$kK=2fe_NAI{VtV!{xZA1@vn`qYhSlNecRsn8ih3(3yDHQLoYbB8iOyKl)D_G+g-YdT-0YM^*G=IvM0nu!c!U$U^p(Ee6F_r*#gfN8;S!x@earF*;VTD5LPE%yb|hn^+&DfGq@Mk(a5p zqyrb)D1>~Ct?m-G`ZgY;XkNHJq-%~157tc-Fm2?p0)VC9QCq%LU@DgO!!#I^cHD{u zb%Lyp&xh;9Dr8RBMHnJH4_g6U%0-t+x;Y46$^t|!xO!19{^Un>h=OE0bx6&bzOGx1 zN0bc4QE=;XmEp3aL!@J(g$8VSZ(xo_3hw2Qny;Y74jC^wHH?g?ud$IcWbC#FXf`!n zmE{&TECwKdX(<^}lp&wHQQ4p7;jVBfDxaizfse7rRyz0R+)mODf_GNT8LCvb{&&cSAB?oP@2%)$$xUCPSoiT>VMNOPDIf5*a zh+(Jko_GFoCk7B6rcgn1`LC6M4D^v+3CZlP3%USG4;c_U*LR;|3UZiEc0PM6E1 zd~s{kOq2eK#3qT@$#`@^K|o0=13cL&tPXMPkeM&7PLuL>kjT?n&ulWTb!vJm#}Z_1zWeVq)HR zq5;VL(%!^2VqU#9_Q-zstZce2B-#P2?EKUZ!Sc$q&jp$}Tu|`aV?szaJ zhAHm?fM8Srs$MR#)NPw)s*F7YKU~&>Su0J*&&EUcQA6=+qZ2V&d_b8hu+ekOQt;q| zKaL4bSoBO5rj^!dNU0}gMqG-oOkYzy{egf&xRv#ER-xwv_~860ZS&yBMB);@0>XL??hHAg&bCVy?3>HV^Khhe)$L>4m{h^;ox Z>6Re1Cz2t{t@dIrF8Ek6g8=|1{sZI!mWKcU literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/left_arrow.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/left_arrow.gif new file mode 100644 index 0000000000000000000000000000000000000000..20abdbfdc4725d324e831e244ce5ef21ef1b7671 GIT binary patch literal 5857 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 literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/left_arrow_2.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/left_arrow_2.gif new file mode 100644 index 0000000000000000000000000000000000000000..2f337f744595110d7ebab14ee0b99db9092ecd19 GIT binary patch literal 2164 zcmeH``#;kQ1INFZd^NOCrbh1fqH-v4+{fk; zlyco_DRt^l!qY{ilV~e+@jXw^-|@VE_`F`9U*DhC#|MMn;}|0b?0{w97p7*`+jrR8 z+BxjDcXD>|aCP%?_dt7jV|;x5{rmz$0{jC4gCYX`!h`n*9t=Ga8WI*378)Mme<(8Q zQ24>aI5aLc28TNs850>9iH$lM9gWA}By7?NO44y$G9^AGH93WhA)iVkryNPma8ElEN6Da2DBL z4#R;~?nEokr|0-HN`o0Cp1It-yu8AKd@{3m7ppdgRqj<-y^md!!alpRNU)bv&*5-v zOD_7B*6%J8d6qToJ$uoL+Zx5K<8ry4=PqNPhwWy!n7R{r~aHfZ-}k6#y;*HowZRPXHhU!0qsSKL1WGsAYu{w_g}! zB8;(r`gYV0=c*wP_;xgBwA8?pjly&`NVpaUn{blO#(R}UIUpXmBD{Zo4`qI8?}4Jt zTNSkzQP``Zae?{iMEXVpI=Jb8uqxJiBA z$(HBWgD$wmXezh9=nWn=yM1r@GS0#$&qS5tojfy`@Wm(!_oeNup1XJ@*xq-&mIY^b zMrd=^QuK||EY1>FJZ|C{Qi5ENo@&B%fLE!t0li%xpLbI}j3vEJjdNw`rw%lLCF;h# zTnA%l$>u&CmqBuV+>E&egNB_Lj@H>3xS^BW29* z!UHopPuvX!*S|x+d{-0=HvjZUii6l^#)wB{)LAwcT7#Is-188WPzhcM8U(2$1m41_sc){7iVBt>^Dl+TYR>=&pj$Vl9)mf*PA`{|o zXy$8f5ZdxhMTn6_E|mnv8nNAkNJD*HT96?Je1;eDLWP&+s!8YsW5uKqOG1Te2~BA$ zoiu4$#?#guRE}+J_keE)okXg}96KVMIQIUX;P@@o_YH~FlZ=|=*Q>8;tqM9pqH7OCzWZX@{Ei ztbyGPl}cxlWd)3pucA{m+dgVHY9o`{*YVtke|y_}WyE%9C;5h%N=>~vOVk0t=nKvA zNB+;rSB3+8UZk$anWRZ9JP7J>mVY1_Obwkrn=cb_&pDLIV{Leb7Sn4$l6x4g$2K2Y zb!YI2Z}q;c-~Rz}>EaszF+SvF)kth#9cf_U<@~M#Ek;=t23<2152VYJf7m7wRdk&@ ze2gl9$VGFO*LRXZj=W=3KXbyJiArivK{s_}{ZRK^PZ68bliC_EnkJbjo&xpLB zk?#D`K$fx(f#1J2&0JlB08$;G;(L3>+u*daKYn#OLji1e(+uQ^Z@$3{z1$RZt(Mp*>Wl)Me`m+3r6RnV0C`8`s*>lX zF3)~wuIa9%R>~ni4Zr*7T#vlbuK1Ea0sEM{4hHP|7ke0lP5=M^ literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/right_arrow.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/right_arrow.gif new file mode 100644 index 0000000000000000000000000000000000000000..697b043b8410f32ba2edb157e4339ddbebffdbf8 GIT binary patch literal 5416 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 literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/0.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/0.gif new file mode 100644 index 0000000000000000000000000000000000000000..5683e84daaae0aabef0b121c49e478a3e12eb7bf GIT binary patch literal 5339 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 literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/1.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/1.gif new file mode 100644 index 0000000000000000000000000000000000000000..b6ae72d7782aacffea21b83338c3159329c9cae3 GIT binary patch literal 5569 zcmV;y6+Y@mNk%w1VFv+T0Qdg@DJm}$m#8*ub68?zBYug9(AihK$u)+MM`UP9O-+1! zd>e?C(d_Ryu)tt)bPS-gDs_HCa(Go(SSgO1bH~!@_V+I^Hm=|0FMNg>mZoH6WEzs8 zaBy%>RaP@{dMSjDMsIaBcYsWFdMkj7nbzK6z|Bm5g@}lV8;zUd^Yt91w|&di_4@lX zH9J*xdMhk34xO)HU|>*CP-Sy>M)I&YH@NUlc8k7&P-=&O;Aulf{Ju>bfnthfz8%jTwExEjvI}fH8wm9 zpR!?NWF~=)O?!bIikK0hv@tR`G;w(?E;N3Aer9H7a&mHtii%=lVp394T3T9eZf<&d zdWMFEYHDg$R#t+7f{u=kc6N4NUS2nPgQMEvCw_@nT3SDVi2wipTV7sMR#q#4j1Hc# zHgkJkVPTck-7YURhR@h5D=>=C**Auf4xqC$h?5?Pmmig-AB>tSj+!klGcS&sCxVWB zeSIr+e^yypWo2b?adC->iD6-3QBhG@Sy^puZFzZlg@uJNGB;^yX;oEKk&%)9{{C8B zT~AL>fq{WOv%*qURgH~}b#--JU0oiFnKCmue}8{xXJ>PBbBl|MV`F1eQ&U@8TW@b~ zdwY9_hlguxYgboSgM)*QkB@hEcVAy$8JDMa$u)^l+C4Y-wVPY>YG%6}Ezvb!@ zp|qCO-T(jpA^8LW=mY-%EC2ui00#kH000R804cTD1ZCH*FkxOOT*$DY!-o(fN}Ncs zqQ#3CGiuz(v13MrVLDlWQmsXoc&omh3l++l%a<@?%A85Frp=o;bL!m5v!~CWK!f^h z=`s`)9$mVuN-3zRQ>W*i3X1xaDpaXfn`WJgwQE(cSHFr4OI9mbvt!Yg<(ii5+O2TU zx>ZYeuHCq8@m^iI(%G(Y*pi}LO8A@M!-x|rUd*_$)2LIcUd_6->({Vj%brcUw(Z-smwpq(^2NB(s0o)APMY}ORl}DiM_ycc zbLPjFOMgB+I`!+;vm4*;Tzhx!(7{*#7muC1_we7-qhCK=_tX=;Hem}a8n^xX`19-E z&%b}{&Qm!9KsBPB z*dY{zrKsYHEVk(4i!jD0_vj)$5RY2=Ye9;OwLOlFnj zlTb#P*i+*pJ}etQajXm_~oI9CaUP7j5g}%qm8oU(g{Mg)6OZFTG|e!MTG+Cr=W%^ z>Zo24WhFd@lB(*etdeS~keE{clf*wt>#wCwdP))=+G*^u$R?}o zvdlK??6c55J1MNEPy>%D+;H>8w%MuzPZGCox@)xLmTT_0=q~F_rPg{V)VuJ;>l3A# zR-44N+>ql*G79wDZ!(^c!;LE7;;O5>2q&!YOVlQzin|L(EOAej#wshe`YOQAG(U9w z!!*;dqkt!G5KK+36Q`{5O$|Q`1*I^@Ec47X*KG66IOnYM&N5qCt*rQx!>=jRumX-b zpd<~7IgWrMk0}a}<88Q`@@)0hSZA&E%$HUR4>ulaD)!i9mu>dhXs50A+H8~k^S#)< zL5{}L$OBFlfgF=a55wsH(L*AKa4`lrKd>Y4x3}Wj_Tr2;?)c+lzpcs}VMA{D<(M!2 z_SbKCqJSwsfCCB#CP?wX>8Ph}PauRx?QOxC$1eNqk=yDp8#C{YEVo3j|LGHO0M0bY5ZLSDN5BFa@PG(BAKWJA3GyZIfe?%!{NSc7 z`h^Y@rEmcipr?s1lz{;tWB@;SfjWCg!yNKp2g$sJI0?G&g)o$#Dj4V?TG{Z1ILx6A zcgVvY`tXN9ycfRzHFA{fbwSLc7PrX7F4F2+ z7)yqS;6cVRn(>TiOrsjt$i_Ch@r`YqVYV`63L~xq6ZC+d3bc?7DEbi?sM|v+%<%(L z1n><5gQFrB$;d`Jl8xBXmgmO!$VyuBl8TIE@<8VZMARXAC8&TOM+wN&?csz^J7gj; z$;wu`5{;UiBot;y%Uasgb3W=mC0wsKF?gS;_~9!3WJ? zMfFtq%W7Kln%KMVi(igh?5g(I^fI|oY8f*SOo=oIEK!HLj@I`pCIbmzV{#tKl#A$8q=Lq7A_ zOn&IQYi6s z1=uJUf_l1qOhFo;D5?UE`qjGH^{#l$t5(B0v>!}WuYe7#V7+0Cm22;vMRt3Dn`1l&H(aC)~jS6i&kwBD=19=S$!E+84VT1D!lPbl?8^ z_rKT8?smJ21k@d27Ec(04xo45Kc;uR?Ul!S;|t&lTlm7y74Q%C3k839_`@I$v4}@Z z;u4$q#3p8kb~(mfBnlyQ4d{pd8Vto|rr{I)jO)kXi{c*p_{TsFGKp18G!;crwnCN5N*Rpb>4F*8t6ie@-%$5c+Un%B(cHdp!o z%B*k%lHE+_I@_7bR%WpyK(P)V{6T+bSb%xiT8T7_xy)yt@SPXU=teU+&p$AlhpbHL zN?ZEUn9j7OH_hozdz#ZA+py7&xMdM^`E&tr0uGcg=-fVl78)38dlUWXTHE^8xX$&a zLv1%XLjh#K4z{p|P3&SD``E}%wz8AmF(V(X8GW7tGq3=H8@$5`(8xrq(R(^tpyRFU zFb6nTA&-wO``qYGx4PGD>}JQ=93En~yys1CbbHL%Nb9pTK7o#TM1ls_5XZJ1-0g2m zBi!RIcfA+R@P-rH-Hw1a6g)=pid+2R7|*!IH_q{ndwj$4aQ2=#PzoPR;S-|&n1?#v zA@JKmRvV(=?K(iwG;)9Z<~Yx}&Ua4nkdGP^9tye8hfegO8~x}=PrA~V&h(}m*=P|T zT`All?Pr7|8eSN9jZsGiQLMMjOiQ@a$4>ULoBixUX9d(p7j(3{{q1mfy4t}J@n(=5 z6;tT9I*6h5Fmv7O?f`qu<4*X(8$Ru8Z-$4|&iKYV{_&8HyyPcO`N~`V@{9)u-I2xt zeQO{Fd+)mwn@NUejQQZr2s`Fi&-&K8{`HO5eBC+VA9g7&m+6U|4z|xu~{OVi(`qyGsKV z%y>p5_`ZB@KOh$Kcz*P!PyO-R|Ni*r{^-091>*bv{{R?(0yuyKSbzq2fC!j?0f;ov zc6`hLdhGWAU^aTFvkdd_ZGpEA&9F2~qktaxfgl)yBFKFVxDKV@A?A>RD!76y*n%$j zf-o3^GB|@YSc5DG3U*g=$QJ{o5P=go3(X_};ox=FAPuF!0UOAHHn@aL*o02_gh+#f zBqt3h2!&R7g;>~xNds+DHw79n4?QS)K!`d*_za(54L)#$NtlIf*oJPHf?GI+9-=gK zSci6ahj^HWdbo#t*oS^-hs|JjCb(tgAPV6?16kL81or^7pbpOeR}QFS-xkMcN=^jMGfc#rs)kNVhogXjb9 zU=6eQ4A+;#6j_lLd65;l4*iG<9-@&R`H>(Q zk|H^hBw3Osd6FoJlBKYco#+nKhz>Cj4y2F@>97r~c94GmcRC3m0}B}m^B@Wu@Cj1@ zk>j|MDS4DgnUqSolpo2G{%8#y$&^w#l~j3@D=Cft=!K#%0Iu)>l5hz&paz15lN5M5 z1b`1VfD9q92(9o84p|OFX@sRvm2_E`cIlM==pk3Rmwefme)*Sx8JL1On1o4~(r}pm zhzbCy0nZQwFyLjk=xWgu1wQ!6$)}n0ObE5dfKFIfh=A1?te2L1_)B5RtJtoWxn2#(A8GnV0}sn#kFl z&iS0MIh)E^4%OHS8-SaU>3;h|2fZl@%mA0d37z8qIiBJac z@EM=-IiK?B4lb#f)CrS)kUDGd3jX<@{z(Y=^audzpCq6HsDld(`Heyuob>si5E`Kp zI-$~OpNe^M9%7#wx}hA}p&t67AR3|~I-(>RqNs48<-l)N=Le``06_Jkendj2gAA#l zi>6l&Ls_Cax}!YWqduykCu$8-K%E)-qegn9NJ^qXI;6}1li`pDsKW~|I;FFK2dEF^HfaDm@BlyG{eh?=O1x~M__Dx@jO3?3q1C(49dEmz^4`vO24@TB~yksu~cfwz{jl+N+%U zsgH^dqKW~i0|}=JR2Oiitm>+t0IR7B2 z;`*)S@TeL9lh+6YsKW%ux>0t3IcYOd(uA>|sd0z0q- zTd)Ruun3#53cIif`w7%~uA&f=q<{daqXYO`?gD)wRZXp9)h)Yd$)L-w|cv`eA~Bv`?rAWw;C|G=pYJP8xAX11Vj+F*a-t3 zUoWKgazzp2L^!p53+X|6D3N(-k*N_hB z0KU+$!5rMd9?Zd`kPcShzVI6k@(aQA+rTQk!YtgvE8`7JLmr48$XB1w?!eLtMl`oC@zi1Eio1kzm5}5Cg$0v^QMER(!?U3&Hcy3LZkg zUi`&i9L8ci#$;T^W_-qIoW?Qyzpb#tq!0}~OanCV4s=|{c6`TlEXOqPzD^9qQ7pw% ztj2;o$b?+TgABnj5Cd)h>>&``$d3HTkQ~X9Jjs+?$(DS{n2gAYyu~{l3F<%!pbW>N zJj$e8%AnlGe*DLoyvnTH%C7v%n~b`Vz{sy$%eH*WupG;691fiv3BLTxz#PoN%*(AH zzw_|NfQ-w^yv)q3$;Z6I9+Jq?Jk8Wx&DMO)*qqJUyv^L)&C`6$TU^Y%%*(=D&gDGL z#ca&S?9J@l&hGrq@T|)ctPUOm&h~uI_?*xBywCjH&;I<+0G-e2yvyTU&<1_b2yMax z9ncKj&<_335N*%mjJTvw&k=pm7@g4&JR^eI=$26%)=g1(?A{6LOs+(UDQT>)JUDwO1;!f-PA?x z%j%#GJ^a&7UDZ~7)mWX?TD{d=-P2J$)lgv0Vm;PmUDjrO)@Ys9YQ5HM-PUgX)^J_U zQ60+f;2}|c*La=RdcD_t-PeBo*MJ?^f<4%TUD$?w*od9jihb9i+{39bAdC&ll0Dg! zUD=j>*_fT#n!VYa-PxY~*`OWTqCMKAP1+XbT*|Kf+OQqlvOU|hUE8*O z+qj+Ey1m=H-P^W}+No^?0I&&qjK{`(+{m5W%Dvpo-Q3Ro+|V7}(mmbOUER%{3Knd^ zRuCU^Y~9|T{oUXl-r_yp5akZ5C%M8#8!a8qtM_E{@@TE;SxUK6kg#Le&HCN;Tpc-9Nys` z{^1}V;tehX`p^R7P!I{x3;O^7EZ*WS{^Bqm<1#+uG+yI2e&aZv<2t_MJl^9z{^L4s P2K%582%!%a5D)-6U*|RG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/2.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/2.gif new file mode 100644 index 0000000000000000000000000000000000000000..b9d4114755e217dd89bf674ad5ed5d5ef9d097b3 GIT binary patch literal 4860 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 literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/4.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/4.gif new file mode 100644 index 0000000000000000000000000000000000000000..58ec974e5079eaf84726797b1ef90eabb0db119e GIT binary patch literal 5388 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 literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/5.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/5.gif new file mode 100644 index 0000000000000000000000000000000000000000..4d5e97a7a80db2ee7157c74de703095f10eb6f3b GIT binary patch literal 4851 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 ZUi`&i9L8ci#$PN853v(T>;?e=06QYVg}ML$ literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/6.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/6.gif new file mode 100644 index 0000000000000000000000000000000000000000..66b4c0a29edc47ed3bf12d2e6b168f9520495574 GIT binary patch literal 4891 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 literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/9.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/9.gif new file mode 100644 index 0000000000000000000000000000000000000000..f51cf070c59edf85d4a6a68685ce4953a0d0a2cc GIT binary patch literal 4833 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 literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/clear.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/clear.gif new file mode 100644 index 0000000000000000000000000000000000000000..eb0732ff6eaef99e880613da3ae8a1de03a1e0fc GIT binary patch literal 4942 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 literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/back.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/back.gif new file mode 100644 index 0000000000000000000000000000000000000000..4d7ca90a3e919b44cc4b91247b3d185cdbdbb991 GIT binary patch literal 5756 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 literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/exit.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/exit.gif new file mode 100644 index 0000000000000000000000000000000000000000..6c88c3359f068aeaabb66bd02679adaaffdd91b6 GIT binary patch literal 9219 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 literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/fingerprint.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/fingerprint.gif new file mode 100644 index 0000000000000000000000000000000000000000..ac69e9c214b49a93717a2c051cea867d23357c4c GIT binary patch literal 7762 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 YS<#l3w5OFUVnbTH!ph8-)(i*$JAKxh^#A|> literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/log.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/log.gif new file mode 100644 index 0000000000000000000000000000000000000000..cb9bc27eb0b2b1e59552196a45f0dd35de521096 GIT binary patch literal 6321 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 literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/unlockOptionsFrame/back.gif b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/unlockOptionsFrame/back.gif new file mode 100644 index 0000000000000000000000000000000000000000..1e367f0ec1047d196a5cf36127eb0c4f229060fa GIT binary patch literal 5976 zcmV-e7pLe)Nk%w1VIBco0Qdg@Dl0G(mZvIWXXQFM7Hjhbw6avP1COSr~9Ut^Hd z+dqGYO=D)!?C&mqi8ZgkDsz4B`1!EkFLiN`QtwZ*>}(sWoJ4q1oXrj+$0qU}eJ2HHee{|Nk9{mnx2%dU|?ATwjya z+(~6XjhVl9OSZ;A1lA$t#jat6TL2h(u!_Om%mzC7q%IWPzc6{me z_fk?)HEwl+&DXZ#=Ov4ntKH-=b9_#Jg+FU>4W6+Tm#8I=of(duk<;AM?eIA|K}TzF zN4CXl#L(aJ^o7pYNrH(ikDN7&mMV{&MP6Yyu)sQhh!UZ+F@}+!+2A!cJsgyzTWV}E zGB`4Ri2wipA^8LW=mY-%EC2ui03HEc000R80BHyuNU)&6g9s0*Te$Fu!-o(fN}Ncs zqQ#3CGiuz(v7^V26d5i|NV25KlPCwOqam{4kueX)$ec;Drp=o;bL!m5v!~CWK!XY$ zD$^m%hb>p8T*{Q`N|7;T>eDx7s@1DlvufSSwX4^!V8e({Vj%bpDzFkZBh9kx|^xwl)oFYW64jG?qFSv8U?U(UR_ z^XJf`OP@}?y7lYWvukHQn(uANM;TWC_6>Kgy1I8ihaN3!ko))WE=owWoQD&n;EHxw* zXekOQ<&;!bnI9%Z4v1HHnJuYOljr5AUX+*&Qf8S}rm5zd8lDMXkp&jT)>B>zB$8BP zn(5}AZ1(BrpYidzXPLSfnF>`1jz`{H!Rgo!CXnh0>7ZqiCDk&yK_H$@>M<{xkc~AELBTK2Y)@tjmxaO+suAHU{nM^hM#%NWY$;#`o$R?}o zvdm&iWN1?*s$h9d8ddD9&1S2uvQ1#p?Y7`v`s}YDiYQmLvC7iKy6m>=?z`~DEAPDY z)@$#*_~xtczWnyNqpc zCPS=r(o8Sybkk5jEp^mXPYvZ!wV2pr6-J~-H*6JPxF)WexdQMM;!Fb2C*@BQ~B6OMfIe}Z3Gd$pn zV0?fm#DPNkW$=pOOCuWBh($K4v5jziqa58BKsfF1cIWxu5sk>lJ^Imz$J?U&m_dd& za9|&Z+{YpJ5e;)F!x_bZL?Fs&J{1b@l3^R4`v9SbFnaOli%-6aZ#;}H_OeHE; zX+uk_tX$I~$Xw#q4@}zfmblENE^TSL(+TnrI`F_JzetWxs=^tPWa20*X+aB~E_j2p z;1UCohGB-$9Lc1jC3nfqZhG^QK)a*%&J(v9eDj>>Oy>iWH%MVx^PSPCKsJ}j%x2oN zne9^^GXeqs2~mL20)OblA2<<4Q_QoT>P)CYgBP&tWsFHq+R;KMO3_S?k9o|{z&khk zfK}i?l9QBR1edqW`IS$3Bi$!IL9hxihM^5GZG$JkH~oYa5t#F4++OxgBie=G?Q{x`9jsx^@q{kaBxfEael-b9v|Uv6umSW612aM4bt)f>*cZHnaKv z&2Ek}oaZd(I@9^iK>pw%R!ZdMt`*5)?8aKbFl8-=Q3y&<0xb-^<lpMa>k*V*}_+s811B>4z;L9P3lsc`qa}51PJJe-;(iqRV&QHp?RrU5a3y}$McTV)8gPNr0Ry7DZUSxHHkpX>( zX$lD8No=${rrq!)ITCR7cfefP#CXP9y$;4FVj^Igj(4B}7{GYi4`VbgadTyw+wXyoJ?v)>c-jYEdHRFNmlz_Gy~qNkz@MM+ z^BH{N55M@xKfdyf&-~;Q|Ml`iF2_CIatU-`nA6C|^*@;oE`w15Yo!4Hv^^1tHi)70 z4*#0`(&TCFEnJ-CBh*o9trgN1@I{^wUR^Mz)3hG>|BpH)_(6#+rm4b8?5!=?$3 z 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 MxAK)TU;_dGJ9-aCrT_o{ literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/NFCConnect.py b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/NFCConnect.py new file mode 100644 index 0000000..24d87a7 --- /dev/null +++ b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/NFCConnect.py @@ -0,0 +1,15 @@ +import serial +import config +from datetime import datetime +ser = serial.Serial('/dev/ttyACM0', 115200, timeout = 10, writeTimeout = 10) + +string = str(ser.readline()) +string = string[2:-5] +print(string) +print("release") + +#string="Thisbeconnection" +#print("proceed") +#date = datetime.now().strftime('%Y-%m-%d %H:%M:%S') +#sql='INSERT INTO sessions (PersonID, AccessTime, NFCID) VALUES("%d","%s","%s")'%(person,date,string) +#config.executeQuery(sql) diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/__pycache__/config.cpython-34.pyc b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/__pycache__/config.cpython-34.pyc new file mode 100644 index 0000000000000000000000000000000000000000..7664a47cac94f0afedd9694e13f561f233e3fede GIT binary patch literal 1001 zcmZ8gO>fgc5S?`#$4!&AAQcX9$R$XT$Vb!ABo#tPtx!2ofhXv|#zbPh>Rr6D@agCZmB9Iwbbycr zabrouFs5L#F8P1TX+q!xXX-RIkEgXvG<`ba&5)-_lX*fmJH3`4F^|(xD`C>z8144E zG+_N+XSg@)x^}-8?6KXQ{`5ipv{{dvby}+*?bqM!*BxbEq(Uk)6O1c+;t6q`a;gkE zavys1Z0ChH91Odip5G0Efu~CTg~tWbDI`b1>D&x8oFD9UT> z3-dF{Xzem%JfAiKFO2Xc)7!{0@Vqub@q*PP&uiYf7bcAjuCJ3SB&lqhTIRHapa*AAFO-BE<0G>${5iW43t`0=AuFxTd3 z6pcLpbHi2ztnb=KIFrPSG4v7VvPAE1XJhJ{sZ6cGHFYm#aVD?4=o|2Dl>K+NeUZkj zJqg>+o3lf975dDnG*J_GcRK=Lgxh8T_!SxH<; zBQ_F)7#J~=Sw9gm86Kjh{Qzim*2Ja90>xF7aEi4HJ`ZRE=om=;2FCCLGh<;eb73kp z!AmqTn6<n?#Zcp5m4LGNGGj}H594#?MplvMC!UaTa zi7--|%&YwF5G=jGvr&2M$(BaIj_pd?D|vxZ;~aW~K5Az(KbI}a#-bI8EN$^Xs@6`o zO=BJiHg2a}k@|SA*I^;=b$9v){SNVZ-SB|#?e=ER8yBrc(rPfjaeCDFbkrD<7XiE6 z-4FVQ{mxF8cEa#5Aa1V0!(`lTI;C};NmW|8mN&ilck4Ac*9DU_c5?n=wF2jc z(N%j|lw0ctzUcAU`hC6zhOniVQO7TF9UHiYy=qz5S!-ewP)$qdE#%pHXzkThWHs3e cQ5E}y)c{_4?~{z>G5?_d59t8Yr*9em0WL81vj6}9 literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/backup-menu.py b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/backup-menu.py new file mode 100644 index 0000000..54ee314 --- /dev/null +++ b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/backup-menu.py @@ -0,0 +1,321 @@ +import fingerpi as fp +import time +import datetime +from types import * +import RPi.GPIO as GPIO + + +f = fp.FingerPi() +print ('Opening connection...') + +f.Open() +f.CmosLed(False) + +#set up GPIO using BCM numbering +GPIO.setmode(GPIO.BCM) +LOCK = 4 + + + +def printMenu(): + print("\nMenu") + print("0. Unlock") + print("1. Enroll Count") + print("2. Check Enrolled ID") + print("3. Enroll new finger") + print("4. Remove enrolled ID") + print("5. Remove all IDs") + print("6. Verify ID (1:1)") + print("7. Identify ID (1:N)") + print("8. Exit \n") + return + +def enroll_count(): + count = f.GetEnrollCount()[0]['Parameter'] + print(("{} fingerprints has been enrolled\n".format(count))) + del count + return + +def enroll(): + enroll_failed = False + enroll_success = False + try: + print(("Totally {} fingerprints has been enrolled\n".format(f.GetEnrollCount()[0]['Parameter']))) + while ((not enroll_failed) and (not enroll_success)): + id = eval(input("Enter enrolled ID: 0-199 (200 to exit): ")) + if (id == 200): + enroll_failed = True + break + if type(id) is not IntType or id < 0 or id > 200: + print("ID is not valid\n") + continue + else: + res = f.CheckEnrolled(id) + if res[0]['ACK']: + print("ID is already used\n") + continue + # print(res[0]['Parameter']) + f.CmosLed(True) + status = f.EnrollStart(id) + if (not status[0]['ACK']): + print((status[0]['Parameter'])) + enroll_failed = True + break + # print(status[0]['Parameter']) + + print("1.Place your finger on the scanner\n") + f.WaitForFinger(False) + cap1 = f.CaptureFinger(best_image = True) + if (cap1[0]['ACK'] == False): + print("1. No Image captured") + enroll_failed = True + break + status1 = f.Enroll1() + if not status1[0]['ACK']: + print((status1[0]['Parameter'])) + enroll_failed = True + break + # print(status1[0]['Parameter']) + print ("1. Remove your finger\n") + f.WaitForFinger(True) + + print("2.Place same finger on the scanner\n") + f.WaitForFinger(False) + cap2 = f.CaptureFinger(best_image = True) + if (cap2[0]['ACK'] == False): + print("2. No Image captured") + enroll_failed = True + break + status2 = f.Enroll2() + if not status2[0]['ACK']: + print((status2[0]['Parameter'])) + enroll_failed = True + break + # print(status2[0]['Parameter']) + print ("2. Remove your finger\n") + f.WaitForFinger(True) + + print("3.Place same finger on the scanner\n") + f.WaitForFinger(False) + cap3 = f.CaptureFinger(best_image = True) + if (cap3[0]['ACK'] == False): + print("2. No Image captured") + enroll_failed = True + break + status3 = f.Enroll3() + if not status3[0]['ACK']: + if (status3[0]['Parameter'] == 0): + print("Finger is already registered") + else: + print((status3[0]['Parameter'])) + enroll_failed = True + break + # print(status3[0]['Parameter']) + enroll_success = True + print ("3. Remove your finger\n") + f.WaitForFinger(True) + + if enroll_failed : + time.sleep(2) + f.CmosLed(False) + print("Enroll failed\n\n") + if enroll_success : + time.sleep(2) + f.CmosLed(False) + print("Enroll success\n") + print(("Totally {} fingerprints has been enrolled.\n".format(f.GetEnrollCount()[0]['Parameter']))) + + except RuntimeError as e: + print(e) + return + + +def check_enrolled_ID(): + while (True): + id = eval(input("Enter enrolled ID: 0-199 (200 to eixt): ")) + if (id == 200): + break + if id < 0 or id > 199: + print("ID is not valid\n") + continue + else: + status = f.CheckEnrolled(id)[0]['ACK'] + if (status): + print(("ID: {} is already used.".format(id))) + else: + print(("ID: {} is good to use.".format(id))) + del status + break + return + +def verify(): + while (True): + id = eval(input("Enter the ID: 0-199 (200 to exit): ")) + if (id == 200): + break + if id < 0 or id > 199: + print("ID is not valid\n") + continue + else: + status = f.CheckEnrolled(id)[0]['ACK'] + if (not status): + print(("ID: {} is not registered.".format(id))) + else: + f.CmosLed(True) + print("Place your finger on the scanner\n") + f.WaitForFinger(False) + cap1 = f.CaptureFinger(best_image = False) + if (cap1[0]['ACK'] == False): + print("1. No Image captured") + break + rp = f.Verify(id) + print("Remove your finger \n") + f.WaitForFinger(True) + if (rp[0]['ACK']): + print((rp[0]['Parameter'])) + print ("Verified \n") + else: + print ("Finger is not verified \n") + + f.CmosLed(False) + break + return + +def identify(): + f.CmosLed(True) + print("Place your finger on the scanner\n") + f.WaitForFinger(False) + cap1 = f.CaptureFinger(best_image = False) + if (cap1[0]['ACK'] == False): + print("1. No Image captured \n") + return + rp = f.Identify() + print("Remove your finger \n") + f.WaitForFinger(True) + if (rp[0]['ACK']): + print(("The finger ID is {}.\n".format(rp[0]['Parameter']))) + else: + print ("Finger is not registered \n") + f.CmosLed(False) + return + +def removeID(): + while (True): + id = eval(input("Enter the ID: 0-199 (200 to exit): ")) + if (id == 200): + break + if id < 0 or id > 199: + print("ID is not valid\n") + continue + else: + status = f.CheckEnrolled(id)[0]['ACK'] + if (not status): + print(("ID: {} is not registered.".format(id))) + continue + else: + rp = f.DeleteId(id) + if(rp[0]['ACK']): + print(("ID: {} is deleted.".format(id))) + break + else: + print(("{} error!".format(rp[0]['Parameter']))) + break + return + +def removeAll(): + status = f.DeleteAll() + if (status): + print ("All the fingerprints are deleted") + else: + print(("{} error!".format(rp[0]['Parameter']))) + return + +def unlock(): + #takePic() + f.CmosLed(True) + print("Place your finger on the scanner\n") + f.WaitForFinger(False) + cap1 = f.CaptureFinger(best_image = False) + if (cap1[0]['ACK'] == False): + print("1. No Image captured \n") + return + rp = f.Identify() + print("Remove your finger \n") + f.WaitForFinger(True) + f.CmosLed(False) + if (rp[0]['ACK']): + print(("The finger ID is {}.\n".format(rp[0]['Parameter']))) + GPIO.setup(LOCK, GPIO.OUT) + GPIO.output(LOCK, True) + print("Unlock") + i = 5 + while i > 0: + print(i) + i = i -1 + time.sleep(1) + GPIO.output(LOCK, False) + print("lock") + else: + print ("Finger is not registered \n") + #f.CmosLed(False) + return + + + + + + + +try: + while True: + f.CmosLed(False) + printMenu() + option = eval(input("Select an option: ")) + if (option == 0 ): + print("0. Unlock") + unlock() + continue + if (option == 1): + print("1. Enroll Count: \n") + enroll_count() + continue + elif (option == 2): + print("2. Check Enrolled ID: \n") + check_enrolled_ID() + continue + elif (option == 3): + print("3. Enroll new finger: \n") + enroll() + continue + elif (option == 4): + print("4. Remove enrolled ID") + removeID() + continue + elif (option == 5): + print("5. Remove all IDs") + removeAll() + continue + elif (option == 6): + print("6. Verify ID (1:1)") + verify() + continue + elif (option == 7): + print("7. Identify ID (1:N)") + identify() + continue + elif (option == 8): + print("8. Exit") + f.Close() + GPIO.cleanup() + break + else: + print("Invalid input") + continue +except RuntimeError as e: + print(e) +except SyntaxError as e: + print (e) +except NameError as e: + print (e) + + diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/config.py b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/config.py new file mode 100644 index 0000000..9ab5439 --- /dev/null +++ b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/config.py @@ -0,0 +1,25 @@ +import pymysql +import pymysql.cursors +from datetime import datetime + +def executeQuery(sql): + Hostname = "us-cdbr-iron-east-04.cleardb.net" + Username = "b372dfe7409692" + Password = "74f6e317" + + date = datetime.now().strftime('%Y-%m-%d %H:%M:%S') + conn= pymysql.connect(host=Hostname,user=Username,password=Password,db='ad_15a989204c2ff8a',charset='utf8mb4',cursorclass=pymysql.cursors.DictCursor) + curs=conn.cursor(pymysql.cursors.DictCursor) + try: + curs.execute(sql) + retval = curs.fetchall() + conn.commit() + print("successfully executed query") + curs.close() + conn.close() + return retval + except: + print("failed to execute query, please try again") + conn.rollback() + curs.close() + conn.close() diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__init__.py b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__init__.py new file mode 100644 index 0000000..789392d --- /dev/null +++ b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__init__.py @@ -0,0 +1 @@ +from .fingerpi import FingerPi \ No newline at end of file diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__init__.pyc b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__init__.pyc new file mode 100644 index 0000000000000000000000000000000000000000..85cff3714be368227fc4c886c6d89d0c52fdbcf4 GIT binary patch literal 226 zcmY+8I}XAy42B)LAS5;pk%?RYAqLbDA+jKr45(c z`&qr_v*+V}wD7eF=M6_(FdB9NEr1hn5+IrhXjyTA1Vd(|DWj(Df?-cPna7KCE|RAM z3n2dyv#74UL*+^7+HCPg7B$)-P#X0Z6FT)->H~F21&sX=EXLBUwfe1B#!yGen57@f P-IeQ`p~ZFnE#|Xtf;TjV literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__pycache__/__init__.cpython-34.pyc b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__pycache__/__init__.cpython-34.pyc new file mode 100644 index 0000000000000000000000000000000000000000..aa807c2a646fe7dac242da7397e512fe983118c6 GIT binary patch literal 190 zcmaFI!^^c*>qUed0|UcjAcg}bAj<)Wi$#D$3J@_ee2R%io~krE<=<;*l2$MM+e z8KX5M9LRFzJ$L|aJOdBVS1#nj1MGqDRrkbBfM9#7tE;P~+g0CJ{by~a^2^d6yFWFE zey2+xANnIa*_RLreu9pO_MkYFxO61wbC`GmbB_|Ap1ZUMePRqKDH)?nNk~bVo+BQf z6-uf`_u07>)y}X3ZJ!CqNNBMXyKKOR&k*9-z>^(7-rF73ipVw21>?PjCCo{bM=+=EsuN4_o zM|Ju#mr9ot`As*L?QWt28;^a9$e&5wL?&LmzkD$0%jIErxwX~aH2y6ak5o4wx5im6 z`^%fHLixIzK9vfd`<+Za7>@P4OyfZ!+r`#xyT>wT`4$BE6)`JH_`3MkoSL{R)I980 z3R8l?6y_@^C=7CX=unOX3Qi^Jg6cMTC@O+-_!s5yua;vHje1>E4u7+gcUH6+9!4d_ z+baf#DnsaMg5@Hss>kCCLQPf`|9#yk(qr6hZXUs& zaTNKDA~Qu^UWP4Z=<w^s(g7;4Pn7q71y$Y!%Ax=CJ-$n#O9vV&|dWIHw zf<170ymtZ54}x~S;BAQz^1Vm9si57we90}TT^zMA<9{M@YF^-@30g0fYyVj0RR@{F zCO4>=%u>(bvdAWeW=;Jnc)5-QR;U*c=1>Y#Ge!38D!)>PANx;$2a_;e_ zc0b(sM3+CCus7T&sH$m8F*4L`77mLAh%?q+hd~}x{*jj z(@QwCsAkyfV3aa84a8N2E#;4%#d4T;2PwKuuC#j~pXop?VN{y5o z6iNyd{TDUr7kDeEVY!GS&HalS_KpCupI8mIO+gjFgfAMi32?UvbQcr^nsCS10~qRD zA;lEdh51^vTPpnz+Glb5AvHzUh#K4K735jH3ZcDCbU}5G=dVF*sXMG1gfbK@Lb-*h z*CD#+=g{8Z>02xqnHHX9+hDn(Q#`7Or`&I~%Pn@1r|&=%$Wss4z|C>bjSqV2C7v3% zO)#hK!$CV&Z0rr4adYqfw>L#%J$+NDQT`O#r@fU&v;$h gak8xr*ZYHHbR<7uVrG0q?DsC;eY3Mh)@pbE2F~EWC;$Ke literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__pycache__/fingerpi.cpython-34.pyc b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__pycache__/fingerpi.cpython-34.pyc new file mode 100644 index 0000000000000000000000000000000000000000..2b1ea769559aa84fb7a7b61a6bde451b0bd547f9 GIT binary patch literal 9885 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 C6F64@ literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/base.py b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/base.py new file mode 100644 index 0000000..e1f7aba --- /dev/null +++ b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/base.py @@ -0,0 +1,143 @@ + +import struct +from .structure import * + + +""" +Command Packet: +OFFSET ITEM TYPE DESCRIPTION +---------------------------------------------------------------- +0 0x55 BYTE Command start code 1 +1 0xAA BYTE Command start code 2 +2 Device ID WORD Device ID (default: 0x0001) +4 Parameter DWORD Input parameter +8 Command WORD Command code +10 Checksum WORD Byte addition checksum + +Response Packet: +OFFSET ITEM TYPE DESCRIPTION +---------------------------------------------------------------- +0 0x55 BYTE Response code 1 +1 0xAA BYTE Response code 2 +2 Device ID WORD Device ID (default: 0x0001) +4 Parameter DWORD Error code +8 Response WORD Response (ACK/NACK) +10 Checksum WORD Byte addition checksum + +Data Packet: +OFFSET ITEM TYPE DESCRIPTION +---------------------------------------------------------------- +0 0x5A BYTE Data code 1 +1 0xA5 BYTE Data code 2 +2 Device ID WORD Device ID (default: 0x0001) +4 Parameter N BYTES N bytes of data - size predefined +4 + N Checksum WORD Byte addition checksum +""" + +""" +Args: + typ: Type of the packet to create + 'comm': Command/Response packet + 'data': Data packet + device_id: Device ID (defualts to 1) + parameter: Parameter to send + command: Command to send +""" + +def encode_command_packet( + command = None, + parameter = 0, + device_id = 1): + + command = commands[command] + packet = bytearray(struct.pack(comm_struct(), + packets['Command1'], # Start code 1 + packets['Command2'], # Start code 2 + device_id, # Device ID + parameter, # Parameter + command # Command + )) + checksum = sum(packet) + packet += bytearray(struct.pack(checksum_struct(), checksum)) + return packet + +def encode_data_packet( + data = None, + data_len = 0, + device_id = 1): + + packet = bytearray(struct.pack(data_struct(data_len), + packets['Data1'], # Start code 1 + packets['Data2'], # Start code 2 + device_id, # Device ID + data # Data to be sent + )) + checksum = sum(packet) + packet += bytearray(struct.pack(checksum_struct(), checksum)) + return packet + +def decode_command_packet(packet): + response = { + 'Header': None, + 'DeviceID': None, + 'ACK': None, + 'Parameter': None, + 'Checksum': None + } + _debug = packet + if packet == '': # Nothing to decode + response['ACK'] = False + return response + # Check if it is a data packet: + if packet[0] == packets['Data1'] and packet[1] == packets['Data2']: + return decode_data_packet(packet) + # Strip the checksum and get the values out + checksum = sum(struct.unpack(checksum_struct(), packet[-2:])) # Last two bytes are checksum + packet = packet[:-2] + response['Checksum'] = sum(packet) == checksum # True if checksum is correct + + try: + packet = struct.unpack(comm_struct(), packet) + except Exception as e: + raise Exception(str(e) + ' ' + str(packet[0])) + response['Header'] = hex(packet[0])[2:] + hex(packet[1])[2:] + response['DeviceID'] = hex(packet[2])[2:] + response['ACK'] = packet[4] != 0x31 # Not NACK, might be command + # response['Parameter'] = packet[3] if response['ACK'] else errors[packet[3]] + response['Parameter'] = errors[packet[3]] if (not response['ACK'] and packet[3] in errors) else packet[3] + return response + +def decode_data_packet(packet): + response = { + 'Header': None, + 'DeviceID': None, + 'Data': None, + 'Checksum': None + } + if packet == '': + response['ACK'] = False + return response + # Check if it is a command packet: + if packet[0] == packets['Command1'] and packet[1] == packets['Command2']: + return decode_command_packet(packet) + + # Strip the checksum and get the values out + checksum = sum(struct.unpack(checksum_struct(), packet[-2:])) # Last two bytes are checksum + packet = packet[:-2] + # Data sum might be larger than the checksum field: + chk = sum(packet) + chk &= 0xffff + response['Checksum'] = chk == checksum # True if checksum is correct + + data_len = len(packet) - 4 # Exclude the header (2) and device ID (2) + + packet = struct.unpack(data_struct(data_len), packet) + response['Header'] = hex(packet[0])[2:] + hex(packet[1])[2:] + response['DeviceID'] = hex(packet[2])[2:] + response['Data'] = packet[3] + # print packet + return response + + + + diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/base.pyc b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/base.pyc new file mode 100644 index 0000000000000000000000000000000000000000..c1880b996340a918507119cd1d6836421ac45991 GIT binary patch literal 2755 zcmcIm+io015Urlsi@jc72qE?g#2N{q#S$#eLo6f<1=(0c2oudB5#<4EJ=4VF_0Fzl zdQmLw7o11FfhT@|Z{bsT2hOQ(-xNjS#a?%HcXjoxPMzwB|6XkU_2(bYQVD-G)Q?fB zrw|$bjhu))M{xAOa zbAx7&!clDG5R%3ab(A@j9hB+_!ik)Tbk5b(MRFXAtH}krSl&p7RV1CWNX`r`FB)=T z z&W`(gdGW%Q(=snyzqHk4R;IR6>%pM^lON3chr`N#Iz4soU`bn~lgu83GamRe^f6G~ zhmd;9ESn~NF@Ei+ZMxPs3D_B$|uANNM*5XqZ)9e2`VB<%t?n9zo_-R*R?Kn#1}wf1^@;Q#|=g~LBj$I z()ElaA+^6w(u2G@1suh~+_Wy+r=82`b74BB!up3|OKPCUs3m3FnDd$#^ju5nj;U=~ zWyc>E=U7Gg)ktCF8GygmXN%Ge3fuukRIGAyBimtM@oIqj2%f;QOVY`fWu$Q&yo0LK zE`Ku|UV%f}GHM9=XarTKXkIqCRLwiJ_ZG0)S9X7GhZ$(kQ1sM&va9Li%bjmD7d*Yn z3^dsZ2>`SL#uN#c(wv(xaPohUgEjH4=Mnpi=X{eQhUhVnHHYm_3afP48=h2Fso=Ok zW|jCiBF{5~(WM8T6%0saOhS_BDZhG|+NsMYg-?C1)cVN2)G4+sCuODlQWEKHk%y*} zqOxjnklDl83niBx-rg<6nBl@jZ)dpgFi?F4A;@dYZ~V2QhH0CYsYN}syJ$U#V$(qe z?3oR-X6{E@CVh>CpOb}1a@fgu!o9{qPd@}bX|;VxyvCb|S7;>NCSIY5^?wl0b9_N= z5zoJmpw73xg_kxE5rGPn5X7D!YoJ>o^?V>4$CQ}2SO=DLgCejCiYs<`eu79`6$3Ze zwTyQj%8+$>%yj$7DrB+-p&`4Aw4A(4)q4~j2u}g}-cvwBo)o~hh`Jv_bsGG9vXl2I zx)dZ-@-c#eppBA`WD){iw_JsetSI0 XW+(OwqEj*P;2NLk*Tk~Q_I&q09NQP& literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/exceptions.py b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/exceptions.py new file mode 100644 index 0000000..bb14509 --- /dev/null +++ b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/exceptions.py @@ -0,0 +1,60 @@ + +## Exceptions specifically for the FingerPi communication +## All exceptions inherit from RuntimeError + +################################################################################ +# Port IO related errors +class PortError(IOError): + """Base class for port errors""" + def __init__(self, *args, **kwargs): + IOError.__init__(self, *args, **kwargs) + +################################################################################ +# Cases when trying to reuse variables that are already in use +class AlreadyError(RuntimeError): + """Base class""" + def __init__(self, *args, **kwargs): + RuntimeError.__init__(self, *args, **kwargs) + +class AlreadyInitializedError(AlreadyError): + """If trying to initialize the device that is already initialized""" + def __init__(self, *args, **kwargs): + AlreadyError.__init__(self, *args, **kwargs) + +class AlreadyOpenError(AlreadyError): + """If trying to open the device that is already open""" + def __init__(self, *args, **kwargs): + AlreadyError.__init__(self, *args, **kwargs) +################################################################################ +# Cases when trying to use variables that are not yet created +class NotYetError(RuntimeError): + """Base class""" + def __init__(self, *args, **kwargs): + RuntimeError.__init__(self, *args, **kwargs) + +class NotInitializedError(NotYetError): + """If trying to use methods without initializing first""" + def __init__(self, *args, **kwargs): + NotYetError.__init__(self, *args, **kwargs) + +class NotOpenError(NotYetError): + """If trying to use methods without opening first""" + def __init__(self, *args, **kwargs): + NotYetError.__init__(self, *args, **kwargs) + +################################################################################ +# Nack errors (tricky) +class NackError(RuntimeError): + """Any NACK errors would be here""" + def __init__(self, *args, **kwargs): + RuntimeError.__init__(self, *args, **kwargs) + +################################################################################ +# Name/Key/Value errors +class OutOfBoundsError(ValueError): + """If the values are outside the range!""" + def __init__(self, *args, **kwargs): + ValueError.__init__(self, *args, **kwargs) + + + diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/fingerpi.py b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/fingerpi.py new file mode 100644 index 0000000..f93041b --- /dev/null +++ b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/fingerpi.py @@ -0,0 +1,323 @@ + +"""Communication with the Fingerprint Scanner using R-Pi""" + +import os, sys +import serial +import time + +from .base import * + +class FingerPi(): + def __init__(self, + port = '/dev/ttyUSB0', + baudrate = 9600, + device_id = 0x01, + timeout = 2, + *args, **kwargs): + self.port = port + self.baudrate = baudrate + if not os.path.exists(port): + raise IOError("Port " + self.port + " cannot be opened!") + + self.serial = serial.Serial( + port = self.port, baudrate = self.baudrate, timeout = timeout, + *args, **kwargs) + + self.device_id = device_id + self.timeout = 5 + + self.save = False + + self.serial.flushInput() + self.serial.flushOutput() + + + ########################################################## + ## Send/Get routines + + def sendCommand(self, command, parameter = 0x00): + if type(parameter) == bool: + parameter = parameter*1 + packet = encode_command_packet(command, parameter, device_id = self.device_id) + + # The length of the written command should match: + result = len(packet) == self.serial.write(packet) + self.serial.flush() + return result + + def getResponse(self, response_len = 12): + response = self.serial.read(response_len) + # print len(response) + return decode_command_packet(bytearray(response)) + + def sendData(self, data, data_len): + packet = encode_data_packet(data, data_len, device_id = self.device_id) + result = len(packet) == self.serial.write(packet) + self.serial.flush() + return result + + def getData(self, data_len): + # Data length is different for every command + response = self.serial.read(1+1+2+data_len+2) # Header(2) + ID(2) + data + checksum(2) + # return response + return decode_data_packet(bytearray(response)) + + + ########################################################## + ## Send/Get routines + def Open(self, extra_info = False, check_baudrate = False): + # Check baudrate: + if check_baudrate: + self.serial.timeout = 0.5 + for baudrate in (self.serial.baudrate,) + self.serial.BAUDRATES: + if 9600 <= baudrate <= 115200: + self.serial.baudrate = baudrate + if not self.sendCommand('Open', extra_info): + raise RuntimeError("Couldn't send 'Open' packet!") + # print baudrate + response = self.getResponse() + if response['ACK']: + # Decoded something + response['Parameter'] = baudrate + break + + if self.serial.baudrate > 115200: # Cannot be more than that + raise RuntimeError("Couldn't find appropriate baud rate!") + else: + self.sendCommand('Open', extra_info) + response = self.getResponse() + data = None + if extra_info: + data = self.getData(16+4+4) + self.serial.timeout = self.timeout + return [response, data] + + def Close (self): + self.ChangeBaudrate(9600) + if self.sendCommand('Close'): + response = self.getResponse() + self.serial.flushInput() + self.serial.flushOutput() + self.serial.close() + return [response, None] + + else: + raise RuntimeError("Couldn't send packet") + + def UsbInternalCheck(self): + if self.sendCommand('UsbInternalCheck'): + return [self.getResponse(), None] + else: + raise RuntimeError("Couldn't send packet") + + def CmosLed(self, on = False): + if self.sendCommand('CmosLed', on): + return [self.getResponse(), None] + else: + raise RuntimeError("Couldn't send packet") + + def ChangeBaudrate(self, baudrate): + if self.sendCommand('ChangeBaudrate', baudrate): + response = self.getResponse() + self.serial.baudrate = baudrate + return [response, None] + else: + raise RuntimeError("Couldn't send packet") + + def GetEnrollCount(self): + if self.sendCommand('GetEnrollCount'): + return [self.getResponse(), None] + else: + raise RuntimeError("Couldn't send packet") + + def CheckEnrolled(self, ID): + if self.sendCommand('CheckEnrolled', ID): + return [self.getResponse(), None] + else: + raise RuntimeError("Couldn't send packet") + + def EnrollStart(self, ID): + self.save = ID == -1 + if self.sendCommand('EnrollStart', ID): + return [self.getResponse(), None] + else: + raise RuntimeError("Couldn't send packet") + + def Enroll1(self): + if self.sendCommand('Enroll1'): + return [self.getResponse(), None] + else: + raise RuntimeError("Couldn't send packet") + + def Enroll2(self): + if self.sendCommand('Enroll2'): + return [self.getResponse(), None] + else: + raise RuntimeError("Couldn't send packet") + + def Enroll3(self): + if self.sendCommand('Enroll3'): + response = self.getResponse() + else: + raise RuntimeError("Couldn't send packet") + data = None + if self.save: + data = self.getData(498) + return [response, data] + + def IsPressFinger(self): + if self.sendCommand('IsPressFinger'): + return [self.getResponse(), None] + else: + raise RuntimeError("Couldn't send packet") + + def DeleteId(self, ID): + if self.sendCommand('DeleteID', ID): + return [self.getResponse(), None] + else: + raise RuntimeError("Couldn't send packet") + + def DeleteAll(self): + if self.sendCommand('DeleteAll'): + return [self.getResponse(), None] + else: + raise RuntimeError("Couldn't send packet") + + def Verify(self, ID): + if self.sendCommand('Verify',ID): + return [self.getResponse(), None] + else: + raise RuntimeError("Couldn't send packet") + + def Identify(self): + if self.sendCommand('Identify'): + return [self.getResponse(), None] + else: + raise RuntimeError("Couldn't send packet") + + def VerifyTemplate(self, ID, template): + if self.sendCommand('VerifyTemplate', ID): + response = self.getResponse() + else: + raise RuntimeError("Couldn't send packet") + if self.sendData(template, 498): + data = self.getResponse() + else: + raise RuntimeError("Couldn't send packet (data)") + return [response, data] + + def IdentifyTemplate(self, template): + if self.sendCommand('IdentifyTemplate'): + response = self.getResponse() + else: + raise RuntimeError("Couldn't send packet") + if self.sendData(template, 498): + data = self.getResponse() + else: + raise RuntimeError("Couldn't send packet (data)") + return [response, data] + + def CaptureFinger(self, best_image = False): + # For enrollment use 'best_image = True' + # For identification use 'best_image = False' + if best_image: + self.serial.timeout = 10 + if self.sendCommand('CaptureFinger', best_image): + self.serial.timeout = self.timeout + return [self.getResponse(), None] + else: + raise RuntimeError("Couldn't send packet") + + def MakeTemplate(self): + if self.sendCommand('MakeTemplate'): + response = self.getResponse() + else: + raise RuntimeError("Couldn't send packet") + self.serial.timeout = 10 + data = self.getData(498) + self.serial.timeout = self.timeout + return [response, data] + + def GetImage(self, dim = (258, 202)): + # The documentation is ambiguous: + # Dimensions could be 202x258 or 256x256 + to_read = dim[0]*dim[1] + + if self.sendCommand('GetImage'): + response = self.getResponse() + else: + raise RuntimeError("Couldn't send packet") + data = None + if response['ACK']: + self.serial.timeout = None # This is dangerous! + data = self.getData(dim[0]*dim[1]) + self.serial.timeout = self.timeout + data['Data'] = (data['Data'], dim) + return [response, data] + + def GetRawImage(self, dim = (160, 120)): + if self.sendCommand('GetRawImage'): + response = self.getResponse() + else: + raise RuntimeError("Couldn't send packet") + data = None + if response['ACK']: + self.serial.timeout = None # This is dangerous! + data = self.getData(dim[0]*dim[1]) + self.serial.timeout = self.timeout + # Add dimensions to the data + data['Data'] = (data['Data'], dim) + return [response, data] + + def GetTemplate(self, ID): + if self.sendCommand('GetTemplate', ID): + response = self.getResponse() + else: + raise RuntimeError("Couldn't send packet") + self.serial.timeout = None # This is dangerous! + data = self.getData(498) + self.serial.timeout = self.timeout + return [response, data] + + def SetTemplate(self, ID, template): + if self.sendCommand('SetTemplate', ID): + response = self.getResponse() + else: + raise RuntimeError("Couldn't send packet") + if self.sendData(template, 498): + data = self.getResponse() + else: + raise RuntimeError("Couldn't send packet (data)") + return [response, data] + + def GetDatabaseStart(self): + if self.sendCommand('GetDatabaseStart'): + return [self.getResponse(), None] + else: + raise RuntimeError("Couldn't send packet") + + def GetDatabaseEnd(self): + if self.sendCommand('GetDatabaseEnd'): + return [self.getResponse(), None] + else: + raise RuntimeError("Couldn't send packet") + + def SetIAPMode(self): + if self.sendCommand('SetIAPMode'): + return [self.getResponse(), None] + else: + raise RuntimeError("Couldn't send packet") + + def WaitForFinger(self, state): + if (state): + while(self.IsPressFinger()[0]['Parameter'] == 0): + time.sleep(0.1) + else: + n = 50 # only wait for about 10 sec + while(self.IsPressFinger()[0]['Parameter'] >0): + if n < 0: + self.CmosLed(False) + break + n -= 1 + time.sleep(0.1) + diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/fingerpi.pyc b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/fingerpi.pyc new file mode 100644 index 0000000000000000000000000000000000000000..2669a1d9054c86f6327a9c9365b8e14aa87791f6 GIT binary patch literal 12485 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 + 0x100C: 'NACK_BAD_FINGER', # Fingerprint is too bad + 0x100D: 'NACK_ENROLL_FAILED', # Enrollment Failure + 0x100E: 'NACK_IS_NOT_SUPPORTED', # The command is not supported + 0x100F: 'NACK_DEV_ERR', # Device error: probably Crypto-Chip is faulty (Wrong checksum ~Z) + 0x1010: 'NACK_CAPTURE_CANCELED', # (Obsolete) Capturing was canceled + 0x1011: 'NACK_INVALID_PARAM', # Invalid parameter + 0x1012: 'NACK_FINGER_IS_NOT_PRESSED', # Finger is not pressed +} + +responses = { + 'Ack': 0x30, + 'Nack': 0x31, + 0x30: 'Ack', + 0x31: 'Nack' +} + diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/structure.pyc b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/structure.pyc new file mode 100644 index 0000000000000000000000000000000000000000..f4900898333319831c85a54eb56555e606256717 GIT binary patch literal 3824 zcmd5;TX)k&5T4wLAlwS2r5D7trW9-kNGVMzvLu6wEgQ)WB)tg5vq`q`4M}cEPaoP- z{z%U$FTC})^sRrRf1opKTe0Ev9D1RxeYD^1H#6GVnOW^l{kEX}^7Bvk8!-4y5#FRH z{&fNX0oJIUfXCFC0Gw2vNx&)9nF2WrI1M-hOGv#rf<1uq1RCI8f_;Ds1p5IGz|z_@ z$P<7E0S^&(81NN>BY;NASeKu1Qwu8Pz1b1a2wDe_yq6{K?$%-%bNj7i*f-g#8mDkNRBS8%>hQ>XJXFrkJA8}*=e=HHtN-|u`QD8TBTU@?V7GTHM^`2 zezn!A&0Wj(P0y*;oQkVm{F^^5H+XsO(bcPiu3lKJsfmV8#Yq??dZU9v&ujVAz%X9G zU{PBfXj$Sb*$}#8(fD4)W6*cG42q4g*G#VKxktHNE`MITGO(+LQP>iRh**DM=(M}N zMDGqI+O>i1&|@AB=NNMAzm^}Y*W40~?YP$(RV?fzLJtvTB0FupG0@O7PsH6$I~M=1 zNS#HBrbJ#l07_aGi?S?WMx5im{I5n^Ie3O$p$BB08kK;-7d9`SKEo_Zy176yLk(AbUOpKeE~61c=FUD1}Tq26LPJF$?Qoa7)|#p_O+PKI{aRJBaUE=l%NV{V01 zE`_j%QJ4tH9wZtyzDOLSTBf6bt_j4=v2Lpqmjp_k2{yhZ61yFBnoYCQYbWv~^9$6d zIr-Ei|T9CM6286i13C~F&t{9k_RkN z%MH7{%?AF2Oz)$n9BzwLd7W9FkYeVv!c8H$ZdF)_@xrhBWOsy2Z66LvN=iybOmc3? zoNH!1j72}RTy(?q3?+6O<#)^!fvH6BcsT!V9mWNn&eE7n?gS=!8f7P>n&cI>PaWh=FYI6nwb{avT>b5~w@t}Xm zs4*X+!!ZYOcrhGu{0Zr*YkRDA0^8G7K34lu@U19TyO#F0x<|crzYmozcw{G+U2P?H8x5u#@Ro#pB&ZO)%qQJ0ClGT literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/testQ.py b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/testQ.py new file mode 100644 index 0000000..60140a1 --- /dev/null +++ b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/DSSystem/testQ.py @@ -0,0 +1,58 @@ +import config +from datetime import date +#fingerID=2 +#finsql='SELECT Admin_ID from admin WHERE FINGER_REGISTERED_FLAG = 1 AND (FINGER_ID="%d" OR FINGER_ID_2="%d" OR FINGER_ID_3="%d")' +#val = config.executeQuery(finsql %(fingerID,fingerID,fingerID)); + +#from datetime import datetime +#acctime = datetime.now().strftime('%Y-%m-%d %H:%M:%S') +#empID = 18 +#sql='INSERT INTO log(Employee_ID,AccessTime)VALUES("%d","%s")'%(empID,acctime) +#val = config.executeQuery(sql); +#print(val); + +#pinsql = 'SELECT pin from admin WHERE Admin_ID = getEmployeeIDSomeHow' +#val = config.executeQuery(pinsql) +#print(val==pin) +#import hashlib +#m = hashlib.md5() +#m.update("1234".encode("utf-8")) +#print(m.hexdigest()) # its more common to show hashes as a hex string +# '81dc9bdb52d04dc20036dbd8313ed055' + +#sql = 'SELECT * from admin WHERE Admin_ID = "8q6812"' +#adminfings = config.executeQuery(sql) + + +#print(adminfings) + +#if adminfings: + # print ("yes") +#else: +# print ("No") + +logsql = 'SELECT * from log' +#sessionsql = 'SELECT * from sessions' +sessionsql = 'SELECT sessions.*, devices.Device_Name from sessions INNER JOIN devices ON sessions.NFCID = devices.NFC_ID' +logdata = config.executeQuery(logsql) +sessiondata = config.executeQuery(sessionsql) +#devicedata = config.executeQuery(devicenamesql) +#print(devicedata) +for session in sessiondata: + logdata.append(session) +logdata.sort(key=lambda item:item['AccessTime'], reverse=False) +output = [] +for dct in logdata: + #print(dct) + if len(dct)==3: + s = "Access Time: {:20s}".format(dct["AccessTime"].strftime('%Y-%m-%d %H:%M:%S'))+ " (Door opened) | Log ID: {:4d}".format(dct['log_ID'])+" | Employee ID: {:9d}".format(dct["Employee_ID"]) + elif len(dct)>3: + s = "Access Time: {:20s}".format(dct["AccessTime"].strftime('%Y-%m-%d %H:%M:%S'))+ " (Device Scanned) | Ses ID: {:4d}".format(dct['SessionID'])+" | Employee ID: {:9d}".format(dct["PersonID"]) +" | Device ID: {:16s}".format(dct["NFCID"])+" | Name : {:20s}".format(dct["Device_Name"]) + output.append(s) + output.append("\n") +teststring = ''.join(output) + +print(output[0]) +#print(teststring) + +#print(date.today()) diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/README.md b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/README.md new file mode 100644 index 0000000..2e7204f --- /dev/null +++ b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/README.md @@ -0,0 +1 @@ +# SF_DeviceSecuritySystem \ No newline at end of file diff --git a/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/autostart.txt b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/autostart.txt new file mode 100644 index 0000000..f13c66e --- /dev/null +++ b/SF_DeviceSecuritySystem-master/SF_DeviceSecuritySystem-master/autostart.txt @@ -0,0 +1,14 @@ +in /home/pi/.config build a directory name autostart, and build a new file name DSSystem + +[Desktop Entry] +Name = DSSystem +Comment = DSSystem Autostart +Exec=python3 /home/pi/SF_DeviceSecuritySystem/DSSystem/DSSystem.py +Terminal = false +MultipleArgs = true (should be false if you do not want input) +MutipleArgs = true (should be false if you do not want input) +Type=Application +Categories=Application;Development; +StartupNotify=true + +then sudo reboot \ No newline at end of file diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/._SF_DeviceSecuritySystem-master b/SF_DeviceSecuritySystem-master/__MACOSX/._SF_DeviceSecuritySystem-master new file mode 100644 index 0000000000000000000000000000000000000000..637ce84a2728c634dc4e30fb4aa33be293ca721f GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+V`afpu_VT4GTqNS(E*i<6Ow ktC^dwsf)Rru8E_op{}E)v6HTok)f%htCO**fuk7%00uoEV*mgE literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/._.DS_Store b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/._.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/._.gitignore b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/._.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/._.idea b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/._.idea new file mode 100644 index 0000000000000000000000000000000000000000..637ce84a2728c634dc4e30fb4aa33be293ca721f GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+V`afpu_VT4GTqNS(E*i<6Ow ktC^dwsf)Rru8E_op{}E)v6HTok)f%htCO**fuk7%00uoEV*mgE literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/._DSSystem b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/._DSSystem new file mode 100644 index 0000000000000000000000000000000000000000..637ce84a2728c634dc4e30fb4aa33be293ca721f GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+V`afpu_VT4GTqNS(E*i<6Ow ktC^dwsf)Rru8E_op{}E)v6HTok)f%htCO**fuk7%00uoEV*mgE literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/._README.md b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/._README.md new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/._autostart.txt b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/._autostart.txt new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/.idea/._SF_DeviceSecuritySystem.iml b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/.idea/._SF_DeviceSecuritySystem.iml new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/.idea/._misc.xml b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/.idea/._misc.xml new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/.idea/._modules.xml b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/.idea/._modules.xml new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/.idea/._vcs.xml b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/.idea/._vcs.xml new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/.idea/._workspace.xml b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/.idea/._workspace.xml new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/._DSSystem.py b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/._DSSystem.py new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/._GUIButtonImage b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/._GUIButtonImage new file mode 100644 index 0000000000000000000000000000000000000000..637ce84a2728c634dc4e30fb4aa33be293ca721f GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+V`afpu_VT4GTqNS(E*i<6Ow ktC^dwsf)Rru8E_op{}E)v6HTok)f%htCO**fuk7%00uoEV*mgE literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/._NFCConnect.py b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/._NFCConnect.py new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/.___pycache__ b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/.___pycache__ new file mode 100644 index 0000000000000000000000000000000000000000..637ce84a2728c634dc4e30fb4aa33be293ca721f GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+V`afpu_VT4GTqNS(E*i<6Ow ktC^dwsf)Rru8E_op{}E)v6HTok)f%htCO**fuk7%00uoEV*mgE literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/._backup-menu.py b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/._backup-menu.py new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/._config.py b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/._config.py new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/._fingerpi b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/._fingerpi new file mode 100644 index 0000000000000000000000000000000000000000..637ce84a2728c634dc4e30fb4aa33be293ca721f GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+V`afpu_VT4GTqNS(E*i<6Ow ktC^dwsf)Rru8E_op{}E)v6HTok)f%htCO**fuk7%00uoEV*mgE literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/._testQ.py b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/._testQ.py new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._Color Code.docx b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._Color Code.docx new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._DeviceFrame b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._DeviceFrame new file mode 100644 index 0000000000000000000000000000000000000000..637ce84a2728c634dc4e30fb4aa33be293ca721f GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+V`afpu_VT4GTqNS(E*i<6Ow ktC^dwsf)Rru8E_op{}E)v6HTok)f%htCO**fuk7%00uoEV*mgE literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._Preview_map_1.PNG b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._Preview_map_1.PNG new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._Preview_map_2.PNG b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._Preview_map_2.PNG new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._background_800x480.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._background_800x480.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._fingerPrintEnrollFrame b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._fingerPrintEnrollFrame new file mode 100644 index 0000000000000000000000000000000000000000..637ce84a2728c634dc4e30fb4aa33be293ca721f GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+V`afpu_VT4GTqNS(E*i<6Ow ktC^dwsf)Rru8E_op{}E)v6HTok)f%htCO**fuk7%00uoEV*mgE literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._fingerUnlockFrame b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._fingerUnlockFrame new file mode 100644 index 0000000000000000000000000000000000000000..637ce84a2728c634dc4e30fb4aa33be293ca721f GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+V`afpu_VT4GTqNS(E*i<6Ow ktC^dwsf)Rru8E_op{}E)v6HTok)f%htCO**fuk7%00uoEV*mgE literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._indexPage b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._indexPage new file mode 100644 index 0000000000000000000000000000000000000000..637ce84a2728c634dc4e30fb4aa33be293ca721f GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+V`afpu_VT4GTqNS(E*i<6Ow ktC^dwsf)Rru8E_op{}E)v6HTok)f%htCO**fuk7%00uoEV*mgE literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._logFrame b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._logFrame new file mode 100644 index 0000000000000000000000000000000000000000..637ce84a2728c634dc4e30fb4aa33be293ca721f GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+V`afpu_VT4GTqNS(E*i<6Ow ktC^dwsf)Rru8E_op{}E)v6HTok)f%htCO**fuk7%00uoEV*mgE literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._numberPadFrame b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._numberPadFrame new file mode 100644 index 0000000000000000000000000000000000000000..637ce84a2728c634dc4e30fb4aa33be293ca721f GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+V`afpu_VT4GTqNS(E*i<6Ow ktC^dwsf)Rru8E_op{}E)v6HTok)f%htCO**fuk7%00uoEV*mgE literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._settingFrame b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._settingFrame new file mode 100644 index 0000000000000000000000000000000000000000..637ce84a2728c634dc4e30fb4aa33be293ca721f GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+V`afpu_VT4GTqNS(E*i<6Ow ktC^dwsf)Rru8E_op{}E)v6HTok)f%htCO**fuk7%00uoEV*mgE literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._startFrame b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._startFrame new file mode 100644 index 0000000000000000000000000000000000000000..637ce84a2728c634dc4e30fb4aa33be293ca721f GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+V`afpu_VT4GTqNS(E*i<6Ow ktC^dwsf)Rru8E_op{}E)v6HTok)f%htCO**fuk7%00uoEV*mgE literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._unlockOptionsFrame b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/._unlockOptionsFrame new file mode 100644 index 0000000000000000000000000000000000000000..637ce84a2728c634dc4e30fb4aa33be293ca721f GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+V`afpu_VT4GTqNS(E*i<6Ow ktC^dwsf)Rru8E_op{}E)v6HTok)f%htCO**fuk7%00uoEV*mgE literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/._back.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/._back.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/._back_2.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/._back_2.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/._check_in.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/._check_in.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/._check_in_2.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/._check_in_2.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/._check_out.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/._check_out.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/._check_out_2.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/DeviceFrame/._check_out_2.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/._back.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/._back.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/._back_2.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/._back_2.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/._fno1.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/._fno1.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/._fno1_2.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/._fno1_2.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/._fno2.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/._fno2.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/._fno2_2.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/._fno2_2.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/._fno3.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/._fno3.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/._fno3_2.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerPrintEnrollFrame/._fno3_2.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerUnlockFrame/._back.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerUnlockFrame/._back.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerUnlockFrame/._back_2.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerUnlockFrame/._back_2.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerUnlockFrame/._start.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerUnlockFrame/._start.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerUnlockFrame/._start_2.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/fingerUnlockFrame/._start_2.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/indexPage/._background_800x480.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/indexPage/._background_800x480.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/indexPage/._setting_button.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/indexPage/._setting_button.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/indexPage/._unlock_button.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/indexPage/._unlock_button.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/._back.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/._back.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/._back_2.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/._back_2.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/._left_arrow.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/._left_arrow.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/._left_arrow_2.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/._left_arrow_2.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/._right_arrow.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/._right_arrow.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/._right_arrow_2.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/logFrame/._right_arrow_2.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._0.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._0.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._1.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._1.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._2.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._2.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._3.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._3.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._4.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._4.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._5.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._5.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._6.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._6.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._7.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._7.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._8.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._8.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._9.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._9.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._back.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._back.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._clear.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._clear.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._confirm.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/numberPadFrame/._confirm.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/._Dadmins.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/._Dadmins.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/._back.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/._back.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/._exit.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/._exit.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/._fingerprint.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/._fingerprint.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/._log.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/settingFrame/._log.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/startFrame/._setting.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/startFrame/._setting.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/startFrame/._unlock.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/startFrame/._unlock.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/unlockOptionsFrame/._back.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/unlockOptionsFrame/._back.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/unlockOptionsFrame/._fingerprint.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/unlockOptionsFrame/._fingerprint.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/unlockOptionsFrame/._password.gif b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/GUIButtonImage/unlockOptionsFrame/._password.gif new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/__pycache__/._config.cpython-34.pyc b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/__pycache__/._config.cpython-34.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/__pycache__/._config.cpython-36.pyc b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/__pycache__/._config.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/.___init__.py b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/.___init__.py new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/.___init__.pyc b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/.___init__.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/.___pycache__ b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/.___pycache__ new file mode 100644 index 0000000000000000000000000000000000000000..637ce84a2728c634dc4e30fb4aa33be293ca721f GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+V`afpu_VT4GTqNS(E*i<6Ow ktC^dwsf)Rru8E_op{}E)v6HTok)f%htCO**fuk7%00uoEV*mgE literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/._base.py b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/._base.py new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/._base.pyc b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/._base.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/._exceptions.py b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/._exceptions.py new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/._fingerpi.py b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/._fingerpi.py new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/._fingerpi.pyc b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/._fingerpi.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/._structure.py b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/._structure.py new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/._structure.pyc b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/._structure.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__pycache__/.___init__.cpython-34.pyc b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__pycache__/.___init__.cpython-34.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__pycache__/._base.cpython-34.pyc b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__pycache__/._base.cpython-34.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__pycache__/._fingerpi.cpython-34.pyc b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__pycache__/._fingerpi.cpython-34.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001 diff --git a/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__pycache__/._structure.cpython-34.pyc b/SF_DeviceSecuritySystem-master/__MACOSX/SF_DeviceSecuritySystem-master/DSSystem/fingerpi/__pycache__/._structure.cpython-34.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4baaca9e94f189efd36ed4bab1f46687e47c1570 GIT binary patch literal 216 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDI}@iHI=@oxYz5x_AdBnYYuq+KhnX7+afKq@@~KS|nQsC#EG9WrEaM qo4Pm|nYfy{>6*HjyXl%Zx*F;_S{gg)IvE+7I=VU;n;JNpF#rH9c_APG literal 0 HcmV?d00001