CN110298941A - 一种智能门锁一次性临时密码生成方法 - Google Patents
一种智能门锁一次性临时密码生成方法 Download PDFInfo
- Publication number
- CN110298941A CN110298941A CN201910421564.5A CN201910421564A CN110298941A CN 110298941 A CN110298941 A CN 110298941A CN 201910421564 A CN201910421564 A CN 201910421564A CN 110298941 A CN110298941 A CN 110298941A
- Authority
- CN
- China
- Prior art keywords
- door lock
- temporary
- temporary password
- password
- intelligent door
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C9/00—Individual registration on entry or exit
- G07C9/00174—Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys
- G07C9/00817—Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys where the code of the lock can be programmed
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Lock And Its Accessories (AREA)
Abstract
本发明公开一种一种智能门锁一次性临时密码生成方法,包括以下步骤:临时密钥分发***获取从App发起的申请临时密码请求;临时密钥分发***比较当前时间与基准时间的差值,计算得到TID值;临时密钥分发***根据存储在临时密钥分发***中的智能门锁设备信息对TID值加密计算得到密文及Tag值;并将密文及Tag值通过运算得到临时密码;临时密钥分发***对App下发生成的临时密码。本发明通过使用App直接向临时密钥分发***申请临时密码,获取临时密码后,访客通过数字键输入临时密码,门锁验证成功后,门锁将打开。该机制中,无需传输户主常用密码,密码由临时密钥分发***临时生成临时有效,安全性高。
Description
技术领域
本发明涉及智能门锁领域,尤其涉及一种一次性临时密码生成机制。
背景技术
在智能门锁领域,存在户主未在房中,而有临时访客访问场景,针对该场景,若将户主常用密码告知临时访客,常用密码的传输会造成极大的安全隐患。为了解决该问题,本发明通过使用App直接向临时密钥分发***申请临时密码,获取临时密码后,访客通过数字键输入临时密码,门锁验证成功后,门锁将打开。该机制中,无需传输户主常用密码,密码由临时密钥分发***临时生成临时有效,安全性高。
发明内容
为解决以上技术问题,本发明提供一种智能门锁一次性临时密码生成方法以及一种智能门锁临时用户开锁方法。
本发明采用以下技术方案:
一种智能门锁一次性临时密码生成方法,包括以下步骤:
a)临时密钥分发***获取从App发起的申请临时密码请求;
b)临时密钥分发***比较当前时间与基准时间的差值,计算得到TID值;
c)临时密钥分发***根据存储在临时密钥分发***中的智能门锁设备信息对TID值加密计算得到密文及Tag值;并将密文及Tag值通过运算得到临时密码;
d)临时密钥分发***对App下发生成的临时密码。
进一步,所述TID值计算方法如下:当前时间与基准时间的差值除以20min所得值,TID值长度为20bit。比如当前时间为2019年1月1日2点,基准时间为2019年1月1日0点,则TID(20bit)为120min/20min=6,则对应的TID值是将6(当前时间与基准时间的差值除以20min所得值),转换为20bit的二进制值为00000000000000000110bit。
再进一步,若20min内临时密钥分发***获取从App发起的申请临时密码的多次请求,则将当前时间与基准时间的差值除以20min所得值加1后转换为20bit的二进制值作为新TID值。确保不同的临时密码使用不同的TID值。比如当前时间为2019年1月1日2点10分又一次收到申请临时密码的请求,则TID(20bit)为120min/20min+1=7,则对应的TID值为00000000000000000111bit。
进一步,所述智能门锁设备信息为门锁序列号和出厂前门锁内已配置的EK密钥(Encryption KEY,16字节)。
进一步,每个门锁的EK密钥不同,如果临时密钥分发***不便存储各个门锁的EK密钥,也可通过对门锁序列号进行hash(哈希)算法得到的值作为所述EK密钥,这样临时密钥分发***需要EK密钥时可以临时生成。
进一步,所述对TID值根据存储在临时密钥分发***中的智能门锁设备信息加密计算得到密文及Tag值为:根据门锁序列号和出厂前门锁内已配置的EK密钥,对TID值进行AES-GCM-128加密后得到20bit的密文及12字节的Tag值。
进一步,所述临时密码=密文(20bit)||Tag值的高6bit,并将所得临时密码转为十进制并补齐8位,高位补0。
一种智能门锁临时用户开锁方法,包括:
临时用户通过App向临时密钥分发***发起获取临时密码的请求;
临时密钥分发***根据权利要求1~7之一所述生成所述临时密码并对App下发临时密码;
临时用户获取临时密码并在智能门锁上输入临时密码;
智能门锁检测输入的临时密码是否正确,如果正确则开锁成功,否则,智能门锁提示密码错误。
进一步,所述智能门锁检测输入的临时密码是否正确具体为:智能门锁判断输入密码长度是否为8位,如果是,则将密码转成十六进制,使用AES-GCM-128解密高20bit并验证低6bit的Tag值,校验出错则提示密码错误;校验正确则检查解密后的TID值是否大于当前锁内保存的TID值,是则开锁成功,并更新当前的TID值,否则提示密码错误。
进一步,所述临时用户通过身份认证后才能通过App向***临时密钥分发***发起获取临时密码的请求。
与现有技术相比,本发明具有以下优点:
(1)本发明通过使用APP直接向临时密钥分发***申请临时密码,获取临时密码后,访客通过数字键输入临时密码,门锁验证成功后,门锁将打开。该机制中,无需传输户主常用密码,密码由临时密钥分发***临时生成临时有效,安全性高。
(2)引入TID值作为临时密码产生时进行加密的一个输入因子,可以确保临时密码的唯一性。确保临时密码不会被重复攻击。
(3)TID值计算方式间隔为20min的周期内不重复产生临时密钥的情况下,该算法可支持39年产生的临时密钥不同。即使临时密钥产生周期比较密集,也可确保较长周期内临时密钥不重复。
(4)本发明设计的临时密码计算方法,产生的临时密码为8位十进制数字,不会因密码长度过长,带来用户输入的不便,同时该算法中使用的加密算法包含了门锁序列号,TID值等输入因子,确保了临时密码的安全性、唯一性。
(5)智能门锁只要支持密码开锁即可实现本发明的方案,无需联网。
附图说明
图1为本发明的工作流程图。
图2为本发明的临时密码生成机制图。
具体实施方式
为了便于理解本发明技术方案,以下结合附图与具体实施例进行详细说明。
如图1、2所示,
一种智能门锁一次性临时密码生成方法,包括以下步骤:
a)临时密钥分发***获取从App发起的申请临时密码请求。
b)临时密钥分发***比较当前时间与基准时间的差值,引入TID值作为密码因子。TID值计算公式为:当前时间与基准时间的差值除以20min所得值,TID值长度为20bit。比如当前时间为2019年1月1日2点,基准时间为2019年1月1日0点,则TID(20bit)为120min/20min=6,则对应的TID值为00000000000000000110bit。
若20min内临时密钥分发***获取从App发起的申请临时密码的多次请求,则将原TID(20bit)加1作为新的TID(20bit),也就是当前时间与基准时间的差值除以20min所得值加1后转换为20bit的二进制值作为新的TID值,确保不同的临时密码使用不同的TID值。比如当前时间为2019年1月1日2点10分又一次收到申请临时密码的请求,则TID(20bit)为120min/20min+1=7,则对应的TID值为00000000000000000111bit。
c)根据门锁序列号和出厂前门锁内已配置的EK密钥,对TID值进行AES-GCM-128加密后得到20bit的密文及12字节的Tag值,并将密文及Tag值通过运算得到临时密码。
如图2所示,四个输入因子IV、ADD、EK密钥、TID值通过AES-GCM-128算法加密后得到20bit的密文及12字节的Tag值。其中,IV、ADD都是基于门锁序列号,不同的是IV固定为12字节,在不足或多余12字节时,仅采用12字节,而ADD则为实际的门锁序列号信息。AES-GCM-128算法对应的原文与密文长度相同,所以如果原始TID值为20bit,则加密后仍为20bit。该算法对应的Tag值为固定16字节,取前12字节。
得到20bit的密文及12字节的Tag值后,所述临时密码(16进制,26bit)=密文(20bit)||Tag值的高6bit,并将所得临时密码转为十进制并补齐8位(高位补0)。此处“||”表示级联,即字符串连接。
下面举例说明:
TID 20bit后面补4bit的0变成:001120
门锁序列号12字节:001122334455667000000000
AK 16字节:00112233445566700011223344556670
EK 16字节:000102030405060708090a0b0c0d0e0f
密文:89 9a fb
Tag:a7 97 28d6fe dc ff 62 0d 23dc 86
则,临时密码为:000000||密文的高20bit||Tag的高6bit=0x 02 26 6B E9
0000 0010 0010 0110 0110 1011 1110 1001=0x 02 26 6B E9,转为十进制并补齐8位后得到临时密码36072425。
d)临时密钥分发***对App下发生成的临时密码。通过上述方法可生成唯一的、不重复的、安全性高的临时密码。
本发明还提供一种智能门锁临时用户开锁方法,包括:
临时用户通过身份认证后,通过App向临时密钥分发***发起获取临时密码的请求;
临时密钥分发***生成的所述临时密码,并对App下发临时密码;
临时用户获取临时密码并在智能门锁上通过门锁键盘手动输入8位十进制的临时密码;
智能门锁判断输入密码长度是否为8位,如果是,则将密码转成十六进制,使用AES-GCM-128解密高20bit并验证低6bit的Tag值,校验出错则提示密码错误;校验正确则检查解密后的TID值是否大于当前锁内保存的TID值,是则开锁成功,并更新当前的TID值,否则提示密码错误。锁内保存的TID(20bit)初始值为0,对应的TID值为0的20bit的二进制值。
为了防止任意无关访客都能申请临时密码,确保临时密码的安全性,在App中申请临时密码时,需登录或注册账号,会有相应的用户名、密码验证作为临时用户身份认证。验证方式有很多种,如验证时与主人的手机号相关联,App向主人手机发送验证码,临时用户向主人索取验证码后才能登陆App使用申请临时密码的权限。
以上仅是本发明的优选实施方式,本发明的保护范围以权利要求所限定的范围为准,本领域技术人员在不脱离本发明的精神和范围内做出的若干改进和润饰,也应视为本发明的保护范围。
Claims (10)
1.一种智能门锁一次性临时密码生成方法,包括以下步骤:
a)临时密钥分发***获取从App发起的申请临时密码请求;
b)临时密钥分发***比较当前时间与基准时间的差值,计算得到TID值;
c)临时密钥分发***根据存储在临时密钥分发***中的智能门锁设备信息对TID值加密计算得到密文及Tag值;并将密文及Tag值通过运算得到临时密码;
d)临时密钥分发***对App下发生成的临时密码。
2.如权利要求1所述的智能门锁一次性临时密码生成方法,其特征在于:所述TID值为当前时间与基准时间的差值除以20min所得值,TID值长度为20bit。
3.如权利要求1所述的智能门锁一次性临时密码生成方法,其特征在于:所述智能门锁设备信息为门锁序列号和出厂前门锁内已配置的EK密钥。
4.如权利要求1所述的智能门锁一次性临时密码生成方法,其特征在于:所述EK密钥也可通过对门锁序列号进行hash算法得到。
5.如权利要求1所述的智能门锁一次性临时密码生成方法,其特征在于所述对TID值根据存储在临时密钥分发***中的智能门锁设备信息加密计算得到密文及Tag值为:根据门锁序列号和出厂前门锁内已配置的EK密钥,对TID值进行AES-GCM-128加密后得到20bit的密文及12字节的Tag值。
6.如权利要求1所述的智能门锁一次性临时密码生成方法,其特征在于:所述临时密码=密文(20bit)||Tag值的高6bit,并将所得临时密码转为十进制并补齐8位。
7.如权利要求2所述的智能门锁一次性临时密码生成方法,其特征在于:若20min内临时密钥分发***获取从App发起的申请临时密码的多次请求,则将当前时间与基准时间的差值除以20min所得值加1后转换为20bit的二进制值作为新TID值。
8.一种智能门锁临时用户开锁方法,其特征在于包括:
临时用户通过App向临时密钥分发***发起获取临时密码的请求;
临时密钥分发***根据权利要求1~7之一所述生成所述临时密码并对App下发临时密码;
临时用户获取临时密码并在智能门锁上输入临时密码;
智能门锁检测输入的临时密码是否正确,如果正确则开锁成功,否则,智能门锁提示密码错误。
9.如权利要求8所述的方法,其特征在于所述智能门锁检测输入的临时密码是否正确具体为:智能门锁判断输入密码长度是否为8位,如果是,则将密码转成十六进制,使用AES-GCM-128解密高20bit并验证低6bit的Tag值,校验出错则提示密码错误;校验正确则检查解密后的TID值是否大于当前锁内保存的TID值,是则开锁成功,并更新当前的TID值,否则提示密码错误。
10.如权利要求8所述的方法,其特征在于:所述临时用户通过身份认证后才能通过App向***临时密钥分发***发起获取临时密码的请求。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910421564.5A CN110298941A (zh) | 2019-05-21 | 2019-05-21 | 一种智能门锁一次性临时密码生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910421564.5A CN110298941A (zh) | 2019-05-21 | 2019-05-21 | 一种智能门锁一次性临时密码生成方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110298941A true CN110298941A (zh) | 2019-10-01 |
Family
ID=68026979
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910421564.5A Pending CN110298941A (zh) | 2019-05-21 | 2019-05-21 | 一种智能门锁一次性临时密码生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110298941A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112383919A (zh) * | 2020-11-13 | 2021-02-19 | 歌尔科技有限公司 | 一种信息处理方法、装置、智能门铃及存储介质 |
CN113362510A (zh) * | 2021-05-10 | 2021-09-07 | 华翔翔能科技股份有限公司 | 一种小区访客管理方法及*** |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005029985A (ja) * | 2003-07-08 | 2005-02-03 | Toshiba Corp | 人物認証装置 |
CN103413109A (zh) * | 2013-08-13 | 2013-11-27 | 江西理工大学 | 一种无线射频识别***的双向认证方法 |
CN103905195A (zh) * | 2012-12-28 | 2014-07-02 | 中国电信股份有限公司 | 基于动态口令的用户卡认证方法和*** |
CN204759558U (zh) * | 2015-07-14 | 2015-11-11 | 深圳市亲邻科技有限公司 | 一种智能门禁、设备及*** |
CN106131179A (zh) * | 2016-07-05 | 2016-11-16 | 林哲敏 | 一种智能门锁的密码权限管理***及方法 |
CN106683281A (zh) * | 2016-12-28 | 2017-05-17 | 宁波三星医疗电气股份有限公司 | 一种可切换功能的智能电表及其使用方法 |
CN107403486A (zh) * | 2017-06-28 | 2017-11-28 | 宁波久婵物联科技有限公司 | 一种电子锁的一次性密码验证方法 |
CN108462686A (zh) * | 2018-01-08 | 2018-08-28 | 平安科技(深圳)有限公司 | 动态密钥的获取方法、装置、终端设备及存储介质 |
-
2019
- 2019-05-21 CN CN201910421564.5A patent/CN110298941A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005029985A (ja) * | 2003-07-08 | 2005-02-03 | Toshiba Corp | 人物認証装置 |
CN103905195A (zh) * | 2012-12-28 | 2014-07-02 | 中国电信股份有限公司 | 基于动态口令的用户卡认证方法和*** |
CN103413109A (zh) * | 2013-08-13 | 2013-11-27 | 江西理工大学 | 一种无线射频识别***的双向认证方法 |
CN204759558U (zh) * | 2015-07-14 | 2015-11-11 | 深圳市亲邻科技有限公司 | 一种智能门禁、设备及*** |
CN106131179A (zh) * | 2016-07-05 | 2016-11-16 | 林哲敏 | 一种智能门锁的密码权限管理***及方法 |
CN106683281A (zh) * | 2016-12-28 | 2017-05-17 | 宁波三星医疗电气股份有限公司 | 一种可切换功能的智能电表及其使用方法 |
CN107403486A (zh) * | 2017-06-28 | 2017-11-28 | 宁波久婵物联科技有限公司 | 一种电子锁的一次性密码验证方法 |
CN108462686A (zh) * | 2018-01-08 | 2018-08-28 | 平安科技(深圳)有限公司 | 动态密钥的获取方法、装置、终端设备及存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112383919A (zh) * | 2020-11-13 | 2021-02-19 | 歌尔科技有限公司 | 一种信息处理方法、装置、智能门铃及存储介质 |
CN113362510A (zh) * | 2021-05-10 | 2021-09-07 | 华翔翔能科技股份有限公司 | 一种小区访客管理方法及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10680808B2 (en) | 1:N biometric authentication, encryption, signature system | |
CN101291224B (zh) | 在通信***中处理数据的方法和*** | |
US7178025B2 (en) | Access system utilizing multiple factor identification and authentication | |
US7934096B2 (en) | Integrity protected smart card transaction | |
US9467293B1 (en) | Generating authentication codes associated with devices | |
US20070257813A1 (en) | Secure network bootstrap of devices in an automatic meter reading network | |
EP3398289B1 (en) | A method, system and apparatus using forward-secure cryptography for passcode verification | |
US9647842B2 (en) | Dual-party session key derivation | |
CN109474419A (zh) | 一种活体人像照片加密、解密方法及加解密*** | |
CN113114475B (zh) | 基于比特自检puf身份认证***及协议 | |
EP1472816A2 (en) | Access system utilizing multiple factor identification and authentication | |
WO2021111824A1 (ja) | 電子署名システム及び耐タンパ装置 | |
CN106936588A (zh) | 一种硬件控制锁的托管方法、装置及*** | |
CN107958513A (zh) | 一种电子锁的离线授权方法及*** | |
JP2021090114A (ja) | 電子署名システム及び耐タンパ装置 | |
CN110298941A (zh) | 一种智能门锁一次性临时密码生成方法 | |
CN111125456A (zh) | 一种虚位密码比对方法、***及智能锁 | |
CN106921501B (zh) | 一种智能密码签名身份鉴别认证方法及*** | |
CN112530053B (zh) | 智能锁的控制方法、***、锁设备、服务器及存储介质 | |
CN108989051B (zh) | 一种动态密码的生成方法 | |
CN112446982A (zh) | 用于控制智能锁的方法、装置、计算机可读介质及设备 | |
CN101424142B (zh) | 一种锁具及其开锁方法及锁具管理中心及其控制方法 | |
CN111428232A (zh) | 一种加密输入的密码处理方法、加密处理装置、智能锁 | |
CN111181917A (zh) | 一种fpga安全防护方法 | |
CN117711094A (zh) | 智能门锁的动态密码生成方法及相关设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191001 |
|
RJ01 | Rejection of invention patent application after publication |