1.一种通信装置与终端协商密钥的方法,其特征在于,所述通信装置用于智能门锁与终端进行交互通信,包括以下步骤:步骤S1:终端生成第一随机数;发送所述第一随机数和预置的对称密钥ID至通信装置;
步骤S2:所述通信装置根据接收到的所述对称密钥ID检索与所述对称密钥ID对应保存的第一对称密钥;生成第二随机数;根据所述第一对称密钥、所述第二随机数和接收到的所述第一随机数得到第一密文数据;发送所述第二随机数和所述第一密文数据至所述终端;
步骤S3:所述终端根据预置的对称密钥ID获取与所述对称密钥ID对应保存的第二对称密钥,根据所述第二对称密钥、所述第一随机数和接收到的所述第二随机数得到第二密文数据;当所述第二密文数据和接收到的所述第一密文数据相等时,根据所述第二对称密钥和所述第二随机数得到第三密文数据,发送所述第三密文数据至所述通信装置;
步骤S4:所述智能门锁根据检索到的所述第一对称密钥和所述第二随机数得到第四密文数据,当所述第四密文数据和接收到的所述第三密文数据相等时,根据所述第一随机数、所述第二随机数和所述第一对称密钥得到第一会话数据,将所述第一会话数据作为会话密钥保存;发送认证成功信息至所述终端;
步骤S5:所述终端接收所述认证成功信息;根据所述第一随机数、所述第二随机数和所述第二对称密钥得到第二会话数据,将所述第二会话数据作为会话密钥保存。
2.如权利要求1所述的方法,其特征在于,所述步骤S2中,所述根据所述第一对称密钥、所述第二随机数和接收到的所述第一随机数得到第一密文数据,具体为:所述通信装置对所述第二随机数和接收到的所述第一随机数进行计算得到第一中间数据,使用所述第一对称密钥对所述第一中间数据进行加密得到第一密文数据。
3.如权利要求1所述的方法,其特征在于,所述步骤S3中,所述根据所述第二对称密钥、所述第一随机数和接收到的所述第二随机数得到第二密文数据,具体为:所述终端对所述第一随机数和接收到的所述第二随机数进行计算得到第二中间数据,使用所述第二对称密钥对所述第二中间数据进行加密得到第二密文数据。
4.如权利要求1所述的方法,其特征在于,所述步骤S3中,所述根据所述第二对称密钥和所述第二随机数得到第三密文数据,具体为:所述终端使用所述第二对称密钥对所述第二随机数进行加密得到第三密文数据。
5.如权利要求1所述的方法,其特征在于,所述步骤S3中,所述根据所述第二对称密钥、所述第一随机数和接收到的所述第二随机数得到第二密文数据之后,还包括:所述终端判断所述第二密文数据和接收到的所述第一密文数据是否相等,当所述第二密文数据和接收到的所述第一密文数据相等时,根据所述第二对称密钥和所述第二随机数得到第三密文数据,当所述第二密文数据和接收到的所述第一密文数据不相等时,报错,结束。
6.如权利要求5所述的方法,其特征在于,当所述终端判断所述第二密文数据和接收到的所述第一密文数据不相等时,所述报错,结束替换为:所述终端更新第一计数值;判断更新后的第一计数值是否大于第一预设值,当判断更新后的第一计数值大于第一预设值时,删除预置的所述对称密钥ID及与所述对称密钥ID对应保存的所述第二对称密钥,当判断更新后的第一计数值不大于第一预设值时,返回步骤S1。
7.如权利要求1所述的方法,其特征在于,所述步骤S3中,当所述第二密文数据和接收到的所述第一密文数据相等时,还包括:所述终端发送所述对称密钥ID至所述通信装置;
所述步骤S4之前,还包括:所述通信装置检索与接收到的所述对称密钥ID对应保存的第一对称密钥。
8.如权利要求1所述的方法,其特征在于,所述步骤S4中,所述根据检索到的所述第一对称密钥和所述第二随机数得到第四密文数据,具体为:所述通信装置使用检索到的所述第一对称密钥对所述第二随机数进行加密得到第四密文数据。
9.如权利要求1所述的方法,其特征在于,所述步骤S4中,所述通信装置根据检索到的所述第一对称密钥和所述第二随机数得到第四密文数据之后,还包括:所述通信装置判断所述第四密文数据和接收到的所述第三密文数据是否相等,是则根据所述第一随机数、所述第二随机数和所述第一对称密钥得到第一会话数据;否则返回错误码至所述终端,执行步骤S6;
步骤S6:所述终端接收错误码,报错,结束。
10.如权利要求9所述的方法,其特征在于,当判断所述第四密文数据和接收到的所述第三密文数据不相等时,所述返回错误码至所述终端之前,还包括:所述通信装置更新第二计数值;判断递增后的第二计数值是否大于第二预设值,当判断更新后的第二计数值大于第二预设值时,删除收到的所述对称密钥ID与所述对称密钥ID对应保存的第一对称密钥,返回错误码至所述终端;当判断更新后的第二计数值不大于第二预设值时,发送第二错误信息至所述终端,执行步骤S7;
步骤S7:所述终端接收所述第二错误信息,返回步骤S1。
11.如权利要求1所述的方法,其特征在于,所述步骤S4中,当判断所述第四密文数据和接收到的所述第三密文数据相等时,还包括:所述通信装置根据所述第一对称密钥和所述第二随机数得到第三数据,根据所述第三数据得到第一MAC数据,将所述第一MAC数据作为MAC计算密钥保存;
所述步骤S5中,还包括:所述终端根据所述第二对称密钥和所述第二随机数得到第四数据,根据所述第四数据得到第二MAC数据,将所述第二MAC数据作为MAC计算密钥保存。
12.如权利要求1所述的方法,其特征在于,所述步骤S1之前,还包括以下步骤:步骤A1:终端与通信装置进行连接,当连接成功后,执行步骤A2;
步骤A2:所述终端生成第一私钥和第一公钥;根据所述第一公钥生成密钥交换请求,发送所述密钥交换请求至所述通信装置;
步骤A3:所述通信装置解析接收到的所述密钥交换请求得到第一公钥;使用预置的第二私钥加密所述第一公钥得到第一对称密钥,根据所述第一对称密钥生成与所述第一对称密钥对应的对称密钥ID,对应保存对称密钥ID与所述第一对称密钥;发送预置的第二公钥和所述对称密钥ID至所述终端;
步骤A4:所述终端使用所述第一私钥加密接收到的所述第二公钥得到第二对称密钥,对应保存所述第二对称密钥和所述对称密钥ID。
13.如权利要求12所述的方法,其特征在于,所述步骤S3中,还包括:当所述第二密文数据和接收到的所述第一密文数据不相等时,所述终端更新第一计数值;判断更新后的第一计数值是否大于第一预设值,当判断更新后的第一计数值大于第一预设值时,删除预置的所述对称密钥ID及与所述对称密钥ID对应保存的所述第二对称密钥,返回步骤A2,当判断更新后的第一计数值不大于第一预设值时,返回步骤S1。
14.如权利要求1所述的方法,其特征在于,所述步骤S5后,还包括以下步骤:步骤D1:所述终端生成状态监测指令,使用所述会话密钥加密所述状态检测指令得到状态检测数据,发送所述状态检测数据至所述通信装置;
步骤D2:所述通信装置接收状态检测数据,使用所述会话密钥解密状态检测数据得到状态检测指令;检测自身开关现状,生成状态检测响应,使用所述会话密钥加密所述状态检测响应得到状态检测响应数据,发送所述状态检测响应数据至所述终端;
步骤D3:所述终端接收所述状态检测响应数据,使用所述会话密钥解密所述状态检测响应数据得到状态检测响应。
15.如权利要求14所述的方法,其特征在于,所述步骤D3后,还包括以下步骤:步骤D4:所述终端根据所述状态检测响应判断通信装置开关现状,当所述通信装置开关现状为打开状态时,生成所述关闭指令,使用所述会话密钥加密所述关闭指令得到关闭数据,发送所述关闭数据至所述通信装置,执行步骤D5;当所述通信装置开关现状为关闭状态时,生成所述打开指令,使用所述会话密钥加密所述打开指令得到打开数据,发送所述打开数据至所述通信装置,执行步骤D7;
步骤D5:所述通信装置接收所述关闭数据,使用所述会话密钥解密所述关闭数据得到关闭指令,关闭,生成关闭成功响应,使用所述会话密钥加密所述关闭成功响应得到所述关闭成功响应数据,发送所述关闭成功响应数据至所述终端,执行步骤D6;
步骤D6:所述终端接收所述关闭成功响应数据,使用所述会话密钥解密所述关闭成功响应数据得到关闭成功响应,结束;
步骤D7:所述通信装置接收所述打开数据,使用所述会话密钥解密所述打开数据得到打开指令,打开,生成打开成功响应,使用所述会话密钥加密打开成功响应得到打开成功响应数据,发送所述打开成功响应数据至所述终端,执行步骤D8;
步骤D8:所述终端接收所述打开成功响应数据,使用所述会话密钥解密所述打开成功响应数据得到打开成功响应,结束。
16.如权利要求15所述的方法,其特征在于,所述步骤D5中,所述使用所述会话密钥解密所述关闭数据得到关闭指令之后,还包括:所述通信装置检测自身开关状态是否为已关闭状态,当自身开关状态为已经关闭状态时,生成已关闭响应,使用所述会话密钥加密所述已关闭响应得到已关闭响应数据,发送所述已关闭响应数据至所述终端,执行步骤D9;当自身开关状态不是已经关闭状态时,关闭;
步骤D9:所述终端接收所述已关闭响应数据,使用所述会话密钥解密所述已关闭响应数据得到已关闭响应,显示通信装置已关闭,结束。
17.如权利要求15所述的方法,其特征在于,所述步骤D5中,所述关闭之后,还包括:所述通信装置判断是否关闭成功,是则生成关闭成功响应;否则,生成报错响应,使用所述会话密钥加密所述报错响应得到报错响应数据,发送所述报错响应数据至所述终端,执行步骤D10;
步骤D10:所述终端接收所述报错响应数据,使用所述会话密钥解密所述报错响应数据得到报错响应,报错,结束。
18.如权利要求15所述的方法,其特征在于,所述步骤D7中,所述使用所述会话密钥解密所述打开数据得到打开指令之后,还包括:所述通信装置检测自身开关状态是否为已打开状态,当自身开关状态为已经打开状态时,生成已打开响应,使用所述会话密钥加密所述已打开响应得到已打开响应数据,发送所述已打开响应数据至终端,执行步骤D11;当自身开关状态不是已经打开状态时,打开;
步骤D11:所述终端接收所述已打开响应数据,使用所述会话密钥解密已打开响应数据得到已打开响应,显示通信装置已打开,结束。
19.如权利要求15所述的方法,其特征在于,所述步骤D7中,所述打开之后,还包括:所述通信装置判断是否打开成功,是则生成打开成功响应;否则,生成报错响应,使用所述会话密钥加密报错响应得到报错响应数据,发送所述报错响应数据至所述终端,执行步骤D12;
步骤D12:所述终端接收所述报错响应数据,使用所述会话密钥解密所述报错响应数据得到报错响应,报错,结束。
20.如权利要求14所述的方法,其特征在于,所述步骤D1之前,还包括:当所述终端接收到用户输入的第一指令时,所述终端提示用户输入指纹信息,判断用户输入的指纹信息与预置的指纹信息是否相同,是则执行步骤D1,否则报错,结束。
21.一种通信装置与终端协商密钥的方法,其特征在于,所述通信装置用于智能门锁与终端进行交互通信,包括以下步骤:步骤E1:所述通信装置接收终端发送的第一随机数和对称密钥ID,根据接收到的所述对称密钥ID检索与所述对称密钥ID对应保存的第一对称密钥;生成第二随机数;根据所述第一对称密钥、所述第二随机数和接收到的所述第一随机数得到第一密文数据;发送所述第二随机数和所述第一密文数据至所述终端;
步骤E2:所述通信装置接收终端发送的第三密文数据,根据检索到的所述第一对称密钥和所述第二随机数得到第四密文数据,当所述第四密文数据和接收到的所述第三密文数据相等时,根据所述第一随机数、所述第二随机数和所述第一对称密钥得到第一会话数据,将所述第一会话数据作为会话密钥保存;发送认证成功信息至所述终端。
22.如权利要求21所述的方法,其特征在于,所述步骤E1中,所述根据所述第一对称密钥、所述第二随机数和接收到的所述第一随机数得到第一密文数据,具体为:所述通信装置对所述第二随机数和接收到的所述第一随机数进行计算得到第一中间数据,使用所述第一对称密钥对所述第一中间数据进行加密得到第一密文数据。
23.如权利要求21所述的方法,其特征在于,所述步骤E2中,所述根据检索到的所述第一对称密钥和所述第二随机数得到第四密文数据,具体为:所述通信装置使用检索到的所述第一对称密钥对所述第二随机数进行加密得到第四密文数据。
24.如权利要求21所述的方法,其特征在于,所述步骤E2中,所述通信装置根据检索到的所述第一对称密钥和所述第二随机数得到第四密文数据之后,还包括:所述通信装置判断所述第四密文数据和接收到的所述第三密文数据是否相等,是则根据所述第一随机数、所述第二随机数和所述第一对称密钥得到第一会话数据;否则返回错误码至所述终端。
25.如权利要求24所述的方法,其特征在于,当判断所述第四密文数据和接收到的所述第三密文数据不相等时,所述返回错误码至所述终端之前,还包括:所述通信装置更新第二计数值;判断递增后的第二计数值是否大于第二预设值,当判断更新后的第二计数值大于第二预设值时,删除所述第一对称密钥及与所述对称密钥ID,返回错误码至所述终端;当判断更新后的第二计数值不大于第二预设值时,发送第二错误信息至所述终端。
26.如权利要求21所述的方法,其特征在于,所述步骤E2中,当判断所述第四密文数据和接收到的所述第三密文数据相等时,还包括:所述通信装置根据所述第一对称密钥和所述第二随机数得到第三数据,根据所述第三数据得到第一MAC数据,将所述第一MAC数据作为MAC计算密钥保存。
27.如权利要求21所述的方法,其特征在于,所述步骤E1之前,还包括以下步骤:步骤F1:所述通信装置接收所述终端发送的所述密钥交换请求,解析接收到的所述密钥交换请求得到第一公钥;使用预置的第二私钥加密所述第一公钥得到第一对称密钥,根据所述第一对称密钥生成与所述第一对称密钥对应的对称密钥ID,对应保存对称密钥ID与所述第一对称密钥;发送预置的第二公钥和所述对称密钥ID至所述终端。
28.如权利要求21所述的方法,其特征在于,所述步骤E2后,还包括以下步骤:步骤G1:所述通信装置接收所述终端发送的状态检测数据,使用所述会话密钥解密状态检测数据得到状态检测指令;检测自身开关现状,生成状态检测响应,使用所述会话密钥加密所述状态检测响应生成状态检测响应数据,发送所述状态检测响应数据至所述终端。
29.如权利要求28所述的方法,其特征在于,所述步骤G1后,还包括以下步骤:步骤G2:所述通信装置接收所述终端发送的关闭数据,使用所述会话密钥解密所述关闭数据得到关闭指令,关闭,生成关闭成功响应,使用所述会话密钥加密所述关闭成功响应得到所述关闭成功响应数据,发送所述关闭成功响应数据至所述终端;
步骤G3:所述通信装置接收所述终端发送的打开数据,使用所述会话密钥解密所述打开数据得到打开指令,打开,生成打开成功响应,使用所述会话密钥加密打开成功响应得到打开成功响应数据,发送所述打开成功响应数据至所述终端。
30.如权利要求29所述的方法,其特征在于,所述步骤G2中,所述使用所述会话密钥解密所述关闭数据得到关闭指令之后,还包括:所述通信装置检测自身开关状态是否为已关闭状态,当自身开关状态为已经关闭状态时,生成已关闭响应,使用所述会话密钥加密所述已关闭响应得到已关闭响应数据,发送所述已关闭响应数据至所述终端;当自身开关状态不是已经关闭状态时,关闭。
31.如权利要求29所述的方法,其特征在于,所述步骤G2中,所述关闭之后,还包括:所述通信装置判断是否关闭成功,是则生成关闭成功响应;否则,生成报错响应,使用所述会话密钥加密所述报错响应生成报错响应数据,发送所述报错响应数据至所述终端。
32.如权利要求29所述的方法,其特征在于,所述步骤G3中,所述使用所述会话密钥解密所述打开数据得到打开指令之后,还包括:所述通信装置检测自身开关状态是否为已打开状态,当自身开关状态为已经打开状态时,生成已打开响应,使用所述会话密钥加密所述已打开响应得到已打开响应数据,发送所述已打开响应数据至终端;当自身开关状态不是已经打开状态时,打开,生成打开成功响应。
33.如权利要求29所述的方法,其特征在于,所述步骤G3中,所述打开之后,还包括:所述通信装置判断是否打开成功,是则生成打开成功响应;否则,生成报错响应,使用所述会话密钥加密报错响应生成报错响应数据,发送所述报错响应数据至所述终端。
34.一种通信装置与终端协商密钥的系统,其特征在于,所述通信装置用于智能门锁与终端进行交互通信,包括终端和通信装置;
所述终端包括第一生成模块、第一发送模块、第一接收模块、第一获取模块、第二密文模块、第三密文模块、第二会话模块和第二保存模块;
所述通信装置包括第二接收模块、第一检索模块、第二生成模块、第一密文模块、第四密文模块、第一会话模块和第一保存模块;
所述第一生成模块,用于生成第一随机数;
所述第一发送模块,还用于发送所述第一随机数和预置的对称密钥ID至通信装置;
所述第二接收模块,用于接收所述对称密钥ID和所述第一随机数;
所述第一检索模块,用于根据所述第二接收模块接收到的所述对称密钥ID检索与所述对称密钥ID对应保存的第一对称密钥;
所述第二生成模块,用于生成第二随机数;
所述第一密文模块,用于根据所述第一检索模块检索到的所述第一对称密钥、所述第二生成模块生成的所述第二随机数和所述第二接收模块接收到的所述第一随机数得到第一密文数据;
所述第二发送模块,还用于发送所述第二生成模块生成的所述第二随机数和所述第一密文模块得到的所述第一密文数据至所述终端;
所述第一接收模块,用于接收所述第二发送模块发送的所述第二随机数和所述第一密文数据;
所述第一获取模块,用于根据预置的对称密钥ID获取与所述对称密钥ID对应保存的第二对称密钥;
所述第二密文模块,用于根据所述第一获取模块获取的所述第二对称密钥、所述第一生成模块生成的所述第一随机数和所述第一接收模块接收到的所述第二随机数得到第二密文数据;
所述第三密文模块,用于当所述第二密文数据和接收到的所述第一密文数据相等时,根据所述第一获取模块获取的所述第二对称密钥和所述第一接收模块接收到的所述第二随机数得到第三密文数据;
所述第一发送模块,还用于发送所述第三密文数据模块得到的所述第三密文数据至所述第二接收模块;
所述第二接收模块,还用于接收所述第三密文数据;
所述第四密文模块,用于根据所述第一检索模块检索到的所述第一对称密钥和所述第二生成模块生成的所述第二随机数得到第四密文数据;
所述第一会话模块,用于当所述第四密文模块得到的所述第四密文数据和所述第二接收模块接收到的所述第三密文数据相等时,根据所述第二接收模块接收的所述第一随机数、所述第二生成模块生成的所述第二随机数和所述第一检索模块检索到的所述第一对称密钥得到第一会话数据;
所述第一保存模块,用于将所述第一会话模块得到的所述第一会话数据作为会话密钥保存;
所述第二发送模块,还用于发送认证成功信息至所述第一接收模块;
所述第一接收模块,还用于接收所述认证成功信息;
所述第二会话模块,用于根据所述第一生成模块生成的所述第一随机数、所述第一接收模块接收的所述第二随机数和所述第一获取模块获取的所述第二对称密钥得到第二会话数据;
所述第二保存模块,用于将所述第二会话模块得到的所述第二会话数据作为会话密钥保存。
35.如权利要求34所述的系统,其特征在于,所述第一密文模块,具体用于对所述第二生成模块生成的所述第二随机数和所述第二接收模块接收到的所述第一随机数进行计算得到第一中间数据,使用所述第一检索模块检索到的所述第一对称密钥对所述第一中间数据进行加密得到第一密文数据。
36.如权利要求34所述的系统,其特征在于,所述第二密文模块,具体用于对所述第一生成模块生成的所述第一随机数和所述第一接收模块接收到的所述第二随机数进行计算得到第二中间数据,使用所述第一获取模块获取的所述第二对称密钥对所述第二中间数据进行加密得到第二密文数据。
37.如权利要求34所述的系统,其特征在于,所述第三密文模块,具体用于使用所述第一获取模块获取的所述第二对称密钥对所述第一接收模块接收到的所述第二随机数进行加密得到第三密文数据。
38.如权利要求34所述的系统,其特征在于,还包括第一判断模块和第一报错模块;
所述第一判断模块,用于判断所述第二密文数据和接收到的所述第一密文数据是否相等;
所述第三密文模块,具体用于当所述第一判断模块判断所述第二密文数据和接收到的所述第一密文数据相等时,根据所述第一获取模块获取的所述第二对称密钥和所述第一接收模块接收到的所述第二随机数得到第三密文数据;
所述第一报错模块,用于当所述第一判断模块判断所述第二密文数据和接收到的所述第一密文数据不相等时,报错,结束。
39.如权利要求38所述的系统,其特征在于,还包括第二判断模块和第一删除模块;
所述第二判断模块,用于更新第一计数值;判断更新后的第一计数值是否大于第一预设值;
所述第一删除模块,用于当所述第二判断模块判断更新后的第一计数值大于第一预设值时,删除预置的所述对称密钥ID及与所述对称密钥ID对应保存的所述第二对称密钥;
所述第一生成模块,具体用于当所述第二判断模块判断更新后的第一计数值不大于第一预设值时,生成第一随机数。
40.如权利要求34所述的系统,其特征在于,还包括第二检索模块;
所述第一发送模块,还用于发送所述对称密钥ID至所述通信装置;
所述第二接收模块,还用于接收所述第一发送模块发送的所述对称密钥ID;
所述第二检索模块,还用于检索与所述第二接收模块接收到的所述对称密钥ID对应保存的第一对称密钥;
所述第四密文模块,还用于根据所述第二检索模块检索到的所述第一对称密钥和所述第二生成模块生成的所述第二随机数得到第四密文数据;
所述第一会话模块,用于当所述第四密文模块得到的所述第四密文数据和所述第二接收模块接收到的所述第三密文数据相等时,根据所述第二接收模块接收的所述第一随机数、所述第二生成模块生成的所述第二随机数和所述第二检索模块检索到的所述第一对称密钥得到第一会话数据。
41.如权利要求34所述的系统,其特征在于,所述第四密文模块,具体用于使用所述第一检索模块检索到的所述第一对称密钥对所述第二生成模块生成的所述第二随机数进行加密得到第四密文数据。
42.如权利要求34所述的系统,其特征在于,还包括第三判断模块和第二报错模块;
所述第三判断模块,用于判断所述第四密文模块得到的所述第四密文数据和所述第二接收模块接收到的所述第三密文数据是否相等;
所述第一会话模块,具体用于当所述第三判断模块判断所述第四密文模块得到的所述第四密文数据和所述第二接收模块接收到的所述第三密文数据相等时,根据所述第二接收模块接收的所述第一随机数、所述第二生成模块生成的所述第二随机数和所述第一检索模块检索到的所述第一对称密钥得到第一会话数据;
所述第二发送模块,还用于当所述第三判断模块判断所述第四密文模块得到的所述第四密文数据和所述第二接收模块接收到的所述第三密文数据不相等时,返回错误码至所述终端;
所述第一接收模块,还用于接收错误码;
所述第二报错模块,用于报错,结束。
43.如权利要求42所述的系统,其特征在于,还包括第四判断模块;
所述第四判断模块,用于当所述第三判断模块判断所述第四密文模块得到的所述第四密文数据和所述第二接收模块接收到的所述第三密文数据不相等时,更新第二计数值;判断递增后的第二计数值是否大于第二预设值;
所述第二删除模块,用于当所述第四判断模块判断更新后的第二计数值大于第二预设值时,删除所述第二接收模块收到的所述对称密钥ID与所述对称密钥ID对应保存的第一对称密钥;
所述第二发送模块,还用于当所述第四判断模块判断更新后的第二计数值不大于第二预设值时,发送第二错误信息至所述第一接收模块;
所述第一接收模块,还用于接收所述第二错误信息;
所述第一生成模块,具体用于当所述第一接收模块接收所述第二错误信息时,生成第一随机数。
44.如权利要求34所述的系统,其特征在于,还包括第一MAC模块和第二MAC模块;
所述第一MAC模块,用于当所述第四密文模块得到的所述第四密文数据和所述第二接收模块接收到的所述第三密文数据相等时,根据所述第一检索模块检索到的所述第一对称密钥和所述第二生成模块生成的所述第二随机数得到第三数据,根据所述第三数据得到第一MAC数据,将所述第一MAC数据作为MAC计算密钥保存;
所述第二MAC模块,用于根据所述第一获取模块获取的所述第二对称密钥和所述第一接收模块接收的所述第二随机数得到第四数据,根据所述第四数据得到第二MAC数据,将所述第二MAC数据作为MAC计算密钥保存。
45.如权利要求34所述的系统,其特征在于,还包括第一连接模块、第三生成模块、第四生成模块、第一解析模块、第一加密模块、第五生成模块和第二加密模块;
所述第一连接模块,用于与通信装置进行连接;
所述第三生成模块,用于所述第一连接模块与通信装置进行连接成功时,生成第一私钥和第一公钥;
所述第四生成模块,用于根据所述第三生成模块生成的所述第一公钥生成密钥交换请求;
所述第一发送模块,还用于发送所述密钥交换请求至所述第二接收模块;
所述第二接收模块,还用于接收所述密钥交换请求;
所述第一解析模块,用于解析所述第二接收模块接收到的所述密钥交换请求得到第一公钥;
所述第一加密模块,用于使用预置的第二私钥加密所述第一解析模块解析得到的所述第一公钥得到第一对称密钥;
所述第五生成模块,用于根据所述第一加密模块加密得到的所述第一对称密钥生成与所述第一对称密钥对应的对称密钥ID,对应保存对称密钥ID与所述第一对称密钥;
所述第二发送模块,还用于发送预置的第二公钥和所述第五生成模块生成的所述对称密钥ID至所述第一接收模块;
所述第一接收模块,还用于接收所述第二公钥和所述对称密钥ID;
所述第二加密模块,用于使用所述第三生成模块生成的所述第一私钥加密所述第二接收模块接收到的所述第二公钥得到第二对称密钥,对应保存所述第二对称密钥和所述第二接收模块接收到的所述对称密钥ID。
46.如权利要求45所述的系统,其特征在于,还包括所述第五判断模块;
所述第五判断模块,用于当所述第二密文模块得到的所述第二密文数据和所述第一接收模块接收到的所述第一密文数据不相等时,更新第一计数值;判断更新后的第一计数值是否大于第一预设值;
所述第三删除模块,用于当所述第五判断模块判断更新后的第一计数值大于第一预设值时,删除预置的所述对称密钥ID及与所述对称密钥ID对应保存的所述第二对称密钥;
所述第三生成模块,具体用于当所述第三删除模块删除预置的所述对称密钥ID及与所述对称密钥ID对应保存的所述第二对称密钥后,生成第一私钥和第一公钥;
所述第一生成模块,具体用于当所述第五判断模块判断更新后的第一计数值不大于第一预设值时,生成第一随机数。
47.如权利要求34所述的系统,其特征在于,还包括第十一生成模块、第十一加密模块、第十一解密模块、第一检测模块、第十二生成模块、第十二加密模块和第十二解密模块;
所述第十一生成模块,用于生成状态监测指令;
所述第十一加密模块,用于使用所述第二保存模块保存的所述会话密钥加密所述第十一生成模块生成的所述状态检测指令得到状态检测数据;
所述第一发送模块,还用于发送所述第十一加密模块加密的所述状态检测数据至所述第二接收模块;
所述第二接收模块,用于接收状态检测数据;
所述第十一解密模块,用于使用所述第一保存模块保存的所述会话密钥解密所述第二接收模块接收的状态检测数据得到状态检测指令;
所述第一检测模块,用于检测自身开关现状;
所述第十二生成模块,用于生成状态检测响应;
所述第十二加密模块,用于使用所述第一保存模块保存的所述会话密钥加密所述第十二生成模块生成的所述状态检测响应得到状态检测响应数据;
所述第二发送模块,还用于发送所述第十二加密模块加密得到的所述状态检测响应数据至所述第一接收模块;
所述第一接收模块,还用于接收所述状态检测响应数据;
所述第十二解密模块,用于使用所述第二保存模块保存的所述会话密钥解密所述第一接收模块接收的所述状态检测响应数据得到状态检测响应。
48.如权利要求47所述的系统,其特征在于,还包括十一判断模块、第十三生成模块、第十三加密模块、第十三解密模块、第一关闭模块、第十四生成模块、第十四加密模块、第十四解密模块、第十五生成模块、第十五加密模块、第十五解密模块、第十六生成模块、第十六加密模块和第十六解密模块;
所述第十一判断模块,用于根据所述第十二解密模块加密得到的所述状态检测响应判断通信装置开关现状;
所述第十三生成模块,用于当所述第十一判断模块判断所述通信装置开关现状为打开状态时,生成所述关闭指令;
所述第十三加密模块,用于使用所述第二保存模块保存的所述会话密钥加密所述第十三生成模块生成的所述关闭指令得到关闭数据;
所述第一发送模块,还包括发送所述第十三加密模块加密得到的所述关闭数据至所述第二接收模块;
所述第二接收模块,还用于接收所述第一发送模块发送的所述关闭数据;
所述第十三解密模块,用于使用所述第一保存模块保存的所述会话密钥解密所述第二接收模块接收的所述关闭数据得到关闭指令;
所述第一关闭模块,用于当所述第十三解密模块解密所述关闭数据得到关闭指令时,关闭;
所述第十四生成模块,用于生成关闭成功响应;
所述第十四加密模块,用于使用所述第一保存模块保存的所述会话密钥加密所述第十四生成模块生成的所述关闭成功响应得到所述关闭成功响应数据;
所述第二发送模块,还用于发送所述第十四加密模块加密得到的所述关闭成功响应数据至所述第一接收模块;
所述第一接收模块,用于接收所述关闭成功响应数据;
所述第十四解密模块,用于使用所述第二保存模块保存的所述会话密钥解密所述第一接收模块接收的所述关闭成功响应数据得到关闭成功响应,结束;
所述第十五生成模块,用于当所述第十一判断模块判断所述通信装置开关现状为关闭状态时,生成所述打开指令;
所述第十五加密模块,用于使用所述第二保存模块保存的所述会话密钥加密所述第十五生成模块生成的所述打开指令得到打开数据;
所述第一发送模块,还用于发送所述第十五加密模块加密得到的所述打开数据至所述第二接收模块;
所述第二接收模块,用于接收所述打开数据;
所述第十五解密模块,用于使用所述第一保存模块保存的所述会话密钥解密所述第二接收模块接收的所述打开数据得到打开指令;
所述第一打开模块,用于当所述第十六解密模块解密所述打开数据得到打开指令时,打开;
所述第十六生成模块,用于生成打开成功响应;
所述第十六加密模块,用于使用所述第一保存模块保存的所述会话密钥加密所述第十六生成模块生成的打开成功响应得到打开成功响应数据;
所述第二发送模块,还用于发送所述第十六加密模块加密得到的所述打开成功响应数据至所述第一接收模块;
所述第一接收模块,还用于接收所述打开成功响应数据;
所述第十六解密模块,用于使用所述第二保存模块保存的所述会话密钥解密所述第一接收模块接收的所述打开成功响应数据得到打开成功响应,结束。
49.如权利要求48所述的系统,其特征在于,还包括第二检测模块、第十七生成模块、第十七加密模块、第十七解密模块和第一显示模块;
所述第二检测模块,用于检测自身开关状态是否为已关闭状态;
所述第十七生成模块,用于当所述第二检测模块检测自身开关状态为已经关闭状态时,生成已关闭响应;
所述第十七加密模块,用于使用所述第一保存模块保存的所述会话密钥加密所述第十七生成模块生成的所述已关闭响应得到已关闭响应数据;
所述第二发送模块,还用于发送所述第十七加密模块加密得到的所述已关闭响应数据至所述第一接收模块;
所述第一接收模块,用于接收所述已关闭响应数据;
所述第十七解密模块,用于使用所述第一保存模块保存的所述会话密钥解密所述第一接收模块接收的所述已关闭响应数据得到已关闭响应;
所述第一显示模块,用于显示通信装置已关闭,结束;
所述第一关闭模块,具体用于当所述第二检测模块检测自身开关状态不是已经关闭状态时,关闭。
50.如权利要求48所述的系统,其特征在于,还包括第十二判断模块、第十四生成模块、第十八生成模块、第十八加密模块、第十八解密模块和第三报错模块;
所述第十二判断模块,用于当所述第一关闭模块关闭后,判断是否关闭成功;
所述第十四生成模块,具体用于当所述第十二判断模块判断关闭成功时,生成关闭成功响应;
所述第十八生成模块,用于当所述第十二判断模块判断未关闭成功时,生成报错响应;
所述第十八加密模块,用于使用所述第一保存模块保存的所述会话密钥加密所述第十八生成模块生成的所述报错响应得到报错响应数据;
所述第二发送模块,用于发送所述第十八加密模块加密得到的所述报错响应数据至所述第一接收模块;
所述第一接收模块,用于接收所述报错响应数据;
所述第十八解密模块,用于使用所述第二保存模块保存的所述会话密钥解密所述报错响应数据得到报错响应;
所述第三报错模块,用于报错,结束。
51.如权利要求48所述的系统,其特征在于,还包括第三检测模块、第十九生成模块、第十九加密模块、第十九解密模块和第二显示模块;
所述第三检测模块,用于检测自身开关状态是否为已打开状态;
所述第十九生成模块,用于当所述第三检测模块检测自身开关状态为已经打开状态时,生成已打开响应;
所述第十九加密模块,用于使用所述第一保存模块保存的所述会话密钥加密所述已打开响应得到已打开响应数据;
所述第二发送模块,还用于发送所述第十九加密模块加密得到的所述已打开响应数据至所述第一接收模块;
所述第一接收模块,用于接收所述已打开响应数据;
所述第十九解密模块,用于使用所述第二保存模块保存的所述会话密钥解密已打开响应数据得到已打开响应;
所述第二显示模块,用于显示通信装置已打开,结束;
所述第一打开模块,具体用于当所述第三检测模块检测自身开关状态不是已经打开状态时,打开。
52.如权利要求48所述的系统,其特征在于,还包括第十三判断模块、第二十生成模块、第二十加密模块、第二十解密模块和第四报错模块;
所述第十三判断模块,用于当所述第一打开模块打开后,判断是否打开成功;
所述第十六生成模块,具体用于当所述第十三判断模块判断打开成功时,生成打开成功响应;
所述第二十生成模块,用于当所述第十三判断模块判断未打开成功时,生成报错响应;
所述第二十加密模块,用于使用所述第一保存模块保存的所述会话密钥加密报错响应得到报错响应数据;
所述第二发送模块,还用于发送所述第十九加密模块加密得到的所述报错响应数据至所述第一接收模块;
所述第一接收模块,用于接收所述报错响应数据;
所述第二十解密模块,用于使用所述第二保存模块保存的所述会话密钥解密所述第一接收模块接收的所述报错响应数据得到报错响应;
所述第四报错模块,用于报错,结束。
53.如权利要求48所述的系统,其特征在于,还包括第十四判断模块、和第三报错模块;
所述第一接收模块,还用于接收用户输入的第一指令;
所述第一提示模块,用于当所述第一接收模块接收到所述第一指令时,提示用户输入指纹信息;
所述第一接收模块,还用于接收输入的指纹信息;
所述第十四判断模块,用于判断所述第一接收模块接收的用户输入的指纹信息与预置的指纹信息是否相同;
所述是第一生成模块,具体用于当判断所述第一接收模块接收的用户输入的指纹信息与预置的指纹信息相同时,生成状态监测指令;
所述第三报错模块,用于当判断所述第一接收模块接收的用户输入的指纹信息与预置的指纹信息不相同时,报错,结束。
54.一种通信装置,其特征在于,所述通信装置用于智能门锁与终端进行交互通信,包括第五十二接收模块、第五十一检索模块、第五十一生成模块、第五十一密文模块、第五十二发送模块、第五十四密文模块、第五十一会话模块和第五十一保存模块;
所述第五十二接收模块,用于接收终端发送的所述对称密钥ID和所述第一随机数;
所述第五十一检索模块,用于根据所述第五十二接收模块接收到的所述对称密钥ID检索与所述对称密钥ID对应保存的第一对称密钥;
所述第五十一生成模块,用于生成第二随机数;
所述第五十一密文模块,用于根据所述第五十一检索模块检索到的所述第一对称密钥、所述第五十一生成模块生成的所述第二随机数和所述第五十二接收模块接收到的所述第一随机数得到第一密文数据;
所述第五十二发送模块,用于发送所述第五十一生成模块生成的所述第二随机数和所述第五十一密文模块得到的所述第一密文数据至所述终端;
所述第五十二接收模块,还用于接收终端发送的所述第三密文数据;
所述第五十四密文模块,用于根据所述第五十一检索模块检索到的所述第一对称密钥和所述第五十一生成模块生成的所述第二随机数得到第四密文数据;
所述第五十一会话模块,用于当所述第五十四密文模块得到的所述第四密文数据和所述第五十二接收模块接收到的所述第三密文数据相等时,根据所述第五十二接收模块接收的所述第一随机数、所述第五十一生成模块生成的所述第二随机数和所述第五十一检索模块检索到的所述第一对称密钥得到第一会话数据;
所述第五十一保存模块,用于将所述第五十一会话模块得到的所述第一会话数据作为会话密钥保存;
所述第五十二发送模块,还用于发送认证成功信息至所述终端。
55.如权利要求54所述的通信装置,其特征在于,所述第五十一密文模块,具体用于对所述第五十一生成模块生成的所述第二随机数和所述第五十二接收模块接收到的所述第一随机数进行计算得到第一中间数据,使用所述第五十一检索模块检索到的所述第一对称密钥对所述第一中间数据进行加密得到第一密文数据。
56.如权利要求54所述的通信装置,其特征在于,所述第五十四密文模块,具体用于使用所述第五十一检索模块检索到的所述第一对称密钥对所述第五十一生成模块生成的所述第二随机数进行加密得到第四密文数据。
57.如权利要求54所述的通信装置,其特征在于,还包括第五十三判断模块;
所述第五十三判断模块,用于判断所述第五十四密文模块得到的所述第四密文数据和所述第五十二接收模块接收到的所述第三密文数据是否相等;
所述第五十一会话模块,具体用于当所述第五十三判断模块判断所述第五十四密文模块得到的所述第四密文数据和所述第五十二接收模块接收到的所述第三密文数据相等时,根据所述第五十二接收模块接收的所述第一随机数、所述第五十一生成模块生成的所述第二随机数和所述第五十一检索模块检索到的所述第一对称密钥得到第一会话数据;
所述第五十二发送模块,还用于当所述第五十三判断模块判断所述第五十四密文模块得到的所述第四密文数据和所述第五十二接收模块接收到的所述第三密文数据不相等时,返回错误码至所述终端。
58.如权利要求57所述的通信装置,其特征在于,还包括第五十四判断模块;
所述第五十四判断模块,用于当所述第五十三判断模块判断所述第五十四密文模块得到的所述第四密文数据和所述第五十二接收模块接收到的所述第三密文数据不相等时,更新第二计数值;判断递增后的第二计数值是否大于第二预设值;
所述第五十二删除模块,用于当所述第五十四判断模块判断更新后的第二计数值大于第二预设值时,删除所述第五十二接收模块收到的所述对称密钥ID与所述对称密钥ID对应保存的第一对称密钥;
所述第五十二发送模块,还用于当所述第五十四判断模块判断更新后的第二计数值不大于第二预设值时,发送第二错误信息至所述终端。
59.如权利要求54所述的通信装置,其特征在于,还包括第五十一MAC模块;
所述第五十一MAC模块,用于当所述第五十四密文模块得到的所述第四密文数据和所述第五十二接收模块接收到的所述第三密文数据相等时,根据所述第五十一检索模块检索到的所述第一对称密钥和所述第五十一生成模块生成的所述第二随机数得到第三数据,根据所述第三数据得到第一MAC数据,将所述第一MAC数据作为MAC计算密钥保存。
60.如权利要求54所述的通信装置,其特征在于,还包括第五十二接收模块、第五十一解析模块、第五十一加密模块和第五十五生成模块;
所述第五十二接收模块,还用于接收所述终端发送的密钥交换请求;
所述第五十一解析模块,用于解析所述第五十二接收模块接收的所述密钥交换请求得到第一公钥;
所述第五十一加密模块,用于使用预置的第二私钥加密所述第五十一解析模块解析得到的所述第一公钥得到第一对称密钥;
所述第五十五生成模块,用于根据所述第五十一加密模块加密得到的所述第一对称密钥生成与所述第一对称密钥对应的对称密钥ID,对应保存对称密钥ID与所述第一对称密钥;
所述第五十二发送模块,还用于发送预置的第二公钥和所述第五十五生成模块生成的所述对称密钥ID至所述终端。
61.如权利要求54所述的通信装置,其特征在于,还包括第五十一解密模块、第五十一检测模块、第五十二生成模块和第五十二加密模块;
所述第五十二接收模块,还用于接收所述终端发送的状态检测数据;
所述第五十一解密模块,用于使用所述第五十一保存模块保存的所述会话密钥解密所述第五十二接收模块接收的状态检测数据得到状态检测指令;
所述第五十一检测模块,用于检测自身开关现状;
所述第五十二生成模块,用于生成状态检测响应;
所述第五十二加密模块,用于使用所述第五十一保存模块保存的所述会话密钥加密所述第五十二生成模块生成的所述状态检测响应得到状态检测响应数据;
所述第五十二发送模块,还用于发送所述第五十二加密模块加密得到的所述状态检测响应数据至所述终端。
62.如权利要求61所述的通信装置,其特征在于,还包括第五十三解密模块、第五十一关闭模块、第五十四生成模块和第五十四加密模块;
所述第五十二接收模块,还用于接收所述终端发送的所述关闭数据;
所述第五十三解密模块,用于使用所述第五十一保存模块保存的所述会话密钥解密所述第五十二接收模块接收的所述关闭数据得到关闭指令;
所述第五十一关闭模块,用于当所述第五十三解密模块解密所述关闭数据得到关闭指令时,关闭;
所述第五十四生成模块,用于生成关闭成功响应;
所述第五十四加密模块,用于使用所述第五十一保存模块保存的所述会话密钥加密所述第五十四生成模块生成的所述关闭成功响应得到所述关闭成功响应数据;
所述第五十二发送模块,还用于发送所述第五十四加密模块加密得到的所述关闭成功响应数据至所述终端;
所述第五十二接收模块,还用于接收所述终端发送的打开数据;
所述第五十五解密模块,用于使用所述第五十一保存模块保存的所述会话密钥解密所述第五十二接收模块接收的所述打开数据得到打开指令;
所述第五十一打开模块,用于当所述第十六解密模块解密所述打开数据得到打开指令时,打开;
所述第五十六生成模块,用于生成打开成功响应;
所述第五十六加密模块,用于使用所述第五十一保存模块保存的所述会话密钥加密所述第五十六生成模块生成的打开成功响应得到打开成功响应数据;
所述第五十二发送模块,还用于发送所述第五十六加密模块加密得到的所述打开成功响应数据至所述终端。
63.如权利要求62所述的通信装置,其特征在于,还包括第五十二检测模块、第五十七生成模块和第五十七加密模块;
所述第五十二检测模块,用于检测自身开关状态是否为已关闭状态;
所述第五十七生成模块,用于当所述第五十二检测模块检测自身开关状态为已经关闭状态时,生成已关闭响应;
所述第五十七加密模块,用于使用所述第五十一保存模块保存的所述会话密钥加密所述第五十七生成模块生成的所述已关闭响应得到已关闭响应数据;
所述第五十二发送模块,还用于发送所述第十七解密模块加密得到的所述已关闭响应数据至所述终端。
64.如权利要求62所述的通信装置,其特征在于,还包括第五十二判断模块、第五十八生成模块和第五十八加密模块;
所述第五十二判断模块,用于当所述第五十一关闭模块关闭后,判断是否关闭成功;
所述第五十四生成模块,具体用于当所述第五十二判断模块判断关闭成功时,生成关闭成功响应;
所述第五十八生成模块,用于当所述第五十二判断模块判断未关闭成功时,生成报错响应;
所述第五十八加密模块,用于使用所述第五十一保存模块保存的所述会话密钥加密所述第五十八生成模块生成的所述报错响应得到报错响应数据;
所述第五十二发送模块,还用于发送所述第五十八加密模块加密得到的所述报错响应数据至所述终端。
65.如权利要求62所述的通信装置,其特征在于,还包括第五十三检测模块、第五十九生成模块和第五十九加密模块;
所述第五十三检测模块,用于检测自身开关状态是否为已打开状态;
所述第五十九生成模块,用于当所述第五十三检测模块检测自身开关状态为已经打开状态时,生成已打开响应;
所述第五十九加密模块,用于使用所述第五十一保存模块保存的所述会话密钥加密所述第五十九生成模块生成的所述已打开响应得到已打开响应数据;
所述第五十二发送模块,还用于发送所述第五十九加密模块加密得到的所述已打开响应数据至所述通信装置。
66.如权利要求62所述的通信装置,其特征在于,还包括第五十三判断模块、第六十生成模块、第六十加密模块和第四报错模块;
所述第五十三判断模块,用于当所述第五十一打开模块打开后,判断是否打开成功;
所述第五十六生成模块,具体用于当所述第五十三判断模块判断打开成功时,生成打开成功响应;
所述第六十生成模块,用于当所述第五十三判断模块判断未打开成功时,生成报错响应;
所述第六十加密模块,用于使用所述第五十一保存模块保存的所述会话密钥加密报错响应得到报错响应数据;
所述第五十二发送模块,还用于发送所述第五十九加密模块加密得到的所述报错响应数据至所述通信装置。