时间:2016-12-5来源:本站原创作者:佚名

随着NFC技术的发展和智能手机的普及,现有的智能家居门禁系统已难以满足人们的需求。

本文设计了一种通过智能手机控制的门禁系统,该系统使用NFC(近场通信)技术实现开锁功能,可以随时随地使用,不需要繁琐的操作与持续的电源供应,只需要NFC功能模块和电池供给的少量电量即可支持系统功能。

该系统的后台管理功能可有效管理用户,并可给予权限或收回权限,以使门禁系统始终处在可控范围。最后,在所有的通信过程中加入动态检验码并进行加密传输,从而有效提高了智能家居系统的安全性。

NFC是一种短距离的高频无线通信技术,在13.56MHz频率运行于20厘米距离内。其传输速度有Kb/s、Kb/s、Kb/s三种。目前近场通信已通过成为ISO/IECIS国际标准、EMCA-标准与ETSITS标准。NFC采用主动和被动两种读取模式。相对于蓝牙,NFC兼容于现有的被动RFID设备。

NFC的功耗更低,与蓝牙V4.0低能协议类似。当NFC在一台无动力设备(比如一台关机的手机、非接触式智能信用卡,或智能海报)上工作时,NFC的能量消耗会大大低于低功率蓝牙V4.0。

1、整体方案设计

本方案主要由客户端、服务端、NFC模块及Arduino开发板三个端构成。服务端由C#实现,后台管理由PHP提供支持。整个方案流程分为如下几步:

新用户打开App注册;

管理员使用后台管理系统通过用户注册并分配开锁列表及权限;

用户登录手机钥匙,获取开锁列表及相关权限;

用户使用NFC手机靠近NFC模块,使用开锁功能;

门锁被打开,用户可允许的开锁次数减少。其中,若用户A具有可授权权限,用户A可以通过双方手机NFC直接通信将开锁权限授权给用户B。用户B无需请求服务端管理员分配权限即可获得由用户A所授权的权限。一次开锁流程如图1所示。

2、数据传输设计

(1)用户通过NFC手机App请求注册信息至服务端;

(2)管理员进入后台管理系统通过用户请求及分配权限后,将开锁列表及权限返回至NFC手机;

(3)用户开锁时,请求服务端获取开锁指令;

(4)使用NFC手机靠近NFC模块将开锁指令传输至Arduino开发板进行验证,判断是否进行开锁。

整个方案的数据传输过程都采用了AES加密[9],保证了数据的安全性,同时保护了用户的个人私密信息。在判断开锁指令是否合法时通过Hashkey值进行比较,增加系统的安全性,防止了恶意用户盗取他人信息从而非法开锁等问题的出现。

3、数据库设计

本方案的数据关系如下:

(1)管理员(aid用户id,logname用户名,pass密码,grade权限,lastdateline最后登录时间,salt随机数)

(2)用户信息(authid授权条目id,lid锁id,autheduid被授权人id,number允许开锁次数,starttime_d开始日期,endtime_d结束日期,starttime_h开始时间,endtime_h结束时间,authuid授权人id,allow再次授权,fromauthid该条项目是由哪一个授权项目二次授权的)

(3)开锁记录(hid历史id,lid锁id,date开锁时间,uid用户id)

(4)门锁信息(lid锁id,lname锁的名称,isgprs是否允许gprs流量开锁,pass与锁通信数据加密密码,keyword开锁用的关键字)

(5)加密日志(auto_num自增序列,uid_num用户id,md5_nummd5值,lid_num锁id)

(6)用户(uid用户id,ucode用户手机编码,







































辽宁治疗白癜风医院
武汉权威的白癜风医院

转载请注明原文网址:http://www.helimiaopu.com/bbqb/2507.html

------分隔线----------------------------