1.一种智能家具设备批量认证方法,其特征在于,所述方法包括:A1.对注册机构的认证数据进行初始化;
A2.家庭网关向所述注册机构进行离线注册;
A3.用户向注册机构进行在线注册,具体包括:A3.1:用户随机选择唯一的用户身份IDi和用户密码PWi,并将用户身份IDi与用户密码PWi输入到用户移动设备中,其中i表示第i个用户;
A3.2:移动设备生成第一随机数ai和第二随机数ai',并将第一随机数ai与用户密码PWi合并后生成第二哈希值h1(ai||PWi);
A3.3:移动设备将第二哈希值与第二随机数异或后得到第二哈希值的掩码SPWi,即A3.4:用户选择需要注册到的家庭网关身份 并将家庭网关身份 输入到用户移动设备中;
A3.5:移动设备通过安全通道向注册机构发送用户注册信息,用户注册信息为用户身份IDi、家庭网关身份 与第二哈希值的掩码SPWi,即移动设备向注册机构发送A3.6:注册机构收到移动设备发送的用户注册信息后,在数据库中检索用户身份IDi是否已经存在,如果用户身份IDi已经存在,注册机构将请求用户重新选择新的用户身份,然后移动设备重新发送新的注册信息给注册机构;如果用户身份IDi不存在,注册机构执行A3.7;
A3.7:注册机构生成第三随机数ri,然后使用第三随机数ri与用户身份IDi合并后生成第三哈希值TIDi,将第三哈希值TIDi作为用户身份假名,即用户身份假名TIDi=h1(ri||IDi);
k
A3.8:注册机构使用系统私钥s与家庭网关身份 合并后生成第四哈希值SID ,第k四哈希值SID用于生成用户与家庭网关间认证的密钥,即k
A3.9:注册机构将第四哈希值SID 与第三哈希值TIDi合并后生第五哈希值 将第四哈希值与第五哈希值合并后生成第六哈希值 将第六哈希值与第二哈希值的掩码异或后得到Ai,即注册机构计算
A3.10:用户身份假名TIDi与Ai由注册机构通过安全通道发送给移动设备,即向用户移动设备发送
A3.11:用户移动设备收到用户身份假名与Ai后,接收用户输入的用户生物特征BIOi;
A3.12:用户移动设备向模糊提取器生成函数GEN中输入用户生物特征BIOi后得到生物特征密钥σi与生物特征模板参数τi,即用户移动设备计算GEN(BIOi)=(σi,τi);
A3.13:用户移动设备将Ai与第二随机数异或得到 将用户身份与用户密码合并后生成第七哈希值h1(IDi||PWi),将第七哈希值与第一随机数异或后得到Bi,即用户移动设备计算A3.14:用户移动设备将用户身份、用户密码、生物特征密钥与第一随机数合并后生成第八哈希值Ci=h2(IDi||PWi||σi||ai);
A3.15:生物特征模板参数τi、 Bi、第八哈希值、用户身份假名、哈希函数以及生物特征密钥容错阈值t存储在用户移动设备内存中,即用户移动设备将存入移动设备内存中;
A4.多个智能家居设备向注册机构进行在线注册;
A5.用户通过注册机构和家庭网关,与多个不同的智能家居设备进行批量认证与密钥协商,具体包括:A5.1:接收用户输入的用户身份 用户密码 以及用户生物特征用户移动设备将用户身份 与用户密码 合并后生成第十哈希值将 和第十哈希值异或后得到第五随机数
其中,ai为第一随机数;
A5.2:向模糊提取器再现函数REP中输入用户生物特征和存储在用户移动设备中生物特征模板参数后,得到恢复的用户生物特征密钥A5.3:用户移动设备将用户身份、用户密码、恢复的生物特征密钥和第五随机数合并后生成第十一哈希值,即A5.4:用户移动设备检查第十一哈希值是否与存储在移动设备中第八哈希值Ci相等,如果第十一哈希值与第八哈希值不相等,用户移动设备拒绝认证请求,接收用户重新输入的正确的用户身份、用户密码和用户生物特征;如果第十一哈希值与第八哈希值相等,用户移动设备继续执行A5.5;
A5.5:用户选择需要认证的家庭网关身份 然后选择多个不同需要认证的智能家居设备身份,用户移动设备将选择的多个不同的智能家居设备身份合并后构成智能家居设备身份列表 其中1≤x≤z≤o,且x与z分别表示第x与第z个智能家居设备,o为用户家庭中总共注册完的智能家居设备数量;
A5.6:用户移动设备将第五随机数 与用户密码合并后生成第十二哈希值SPWi,将第十二哈希值与 异或后得到Ki,即 和A5.7:用户移动设备生成第六随机数ui和第一时间戳T1,将Ki与第六随机数异或后得到M1,即 将用户假名、家庭网关身份、第五随机数 智能家居设备身份列表和第一时间戳T1合并后生成第十三哈希值V1,即
移动设备通过公共信道将用户认证请求发送给家庭网关,用户认证请求包括用户假名,家庭网关身份,M1,第十三哈希值,第一时间戳和智能家居设备身份列表,即移动设备向家庭网关发送A5.8:家庭网关收到用户认证请求后,检查第一时间戳T1是否在最大时间延迟范围内,如果第一时间戳不在最大时间延迟范围内,家庭网关拒绝用户认证请求;如果第一时间戳在最大时间延迟范围内,家庭网关继续执行A5.9;
A5.9:家庭网关将第一哈希值fk与用户假名TIDi合并后生成第十四哈希值将第一哈希值与第十四哈希值合并后生成第十五哈希值 即家庭网关计算和
A5.10:家庭网关将第十五哈希值与M1异或后生成第七随机数 即将用户假名、家庭网关身份、第七随机数、智能家居设备身份列表和第一时间戳合并后生成第十六哈希值 然后家庭网关检查第十三哈希值V1是否与第十六哈希值相等,如果第十三哈希值与第十六哈希值不相等,家庭网关拒绝所述用户认证请求;如果第十三哈希值与第十六哈希值相等,家庭网关继续执行A5.11;
A5.11:家庭网关为智能家居设备身份列表中每个智能家居设备生成第八随机数Nq与第二时间戳 其中Nq、 都与 对应,然后家庭网关生成一个第九随机数m,其中,q表示从已注册的智能家居设备中选择认证的第q个智能家居设备;
A5.12:家庭网关根据智能家居设备身份列表中每个智能家居设备身份从网关数据库中提取对应的第九哈希值SHKq,SHKq属于SHKj且与 对应;
A5.13:家庭网关在网关数据库中根据智能家居设备身份列表中每个智能家居设备身份 为每个智能家居设备从与每个智能家居设备身份对应的n个挑战响应对中随机选择一对挑战响应对 其中e∈[1,
n], 与 对应,其中e表示从一个智能家居设备所对应的n个挑战响应对中选择的第e个挑战响应对;
A5.14:家庭网关为智能家居设备身份列表中每个智能家居设备——使用第八随机数与选择的挑战响应对中的响应 合并后生成第十七哈希值 其中e表示从一个智能家居设备所对应的n个挑战响应对中选择的第e个挑战响应对,使用第七随机数m与第十七哈希值异或后得到 具体地,家庭网关为所述智能家居设备身份列表中每个智能家居设备都生成一个 即 每个智能家居设备的 不相同;
A5.15:对于智能家居设备身份列表中的每个智能家居设备,家庭网关将用户假名、家庭网关身份、第八随机数、第九随机数、选择的挑战响应对中的挑战 和所述第二时间戳合并后生成第十八哈希值 即家庭网关为智能家居设备身份列表中每个智能家居设备都生成一个 每个智能家居设备的 不相同,即A5.16:家庭网关将网关认证请求通过公共信道发送给智能家居设备身份列表中对应的智能家居设备,网关认证请求包括家庭网关身份、用户假名、 第十八哈希值、挑战、第八随机数和第二时间戳,具体地,家庭网关向智能家居设备身份列表中对应的智能家居设备发送A5.17:智能家居设备身份列表中的智能家居设备收到网关认证请求后,检查第二时间戳 是否在最大时间延迟范围内,如果第二时间戳不在最大时间延迟范围内,智能家居设备拒绝网关认证请求;如果第二时间戳在最大时间延迟范围内,智能家居设备继续执行A5.18;
具体地,智能家居设备身份列表中的每个智能家居设备都生成一个当前时间戳 然后检查等式 如果等式不成立,智能家居设备拒绝认证请求;如果等式成立,智能家居设备执行A5.18;
A5.18:智能家居设备将智能家居设备中嵌入的物理不可克隆函数PUF将挑战 输出为响应 即智能家居设备计算 其中PUFq(·)与 对应;
A5.19:智能家居设备将第八随机数与响应 合并后生成第十九哈希值*
将 与第十九哈希值异或得到第十随机数m ,即
A5.20:智能家居设备将用户假名、家庭网关身份、第八随机数、第十随机数、挑战 和第二时间戳合并后生成第二十哈希值A5.21:智能家居设备检查第十八哈希值 与第二十哈希值是否相等,如果第十八哈希值与第二十哈希值不相等,智能家居设备拒绝网关认证请求;如果第十八哈希值与第二十哈希值相等,智能家居设备继续执行A5.22;
*
A5.22:智能家居设备将家庭网关身份与第十随机数m 合并后生成第二十一哈希值*将智能家居设备身份与第十随机数m 合并后生成第二十二哈希值然后智能家居设备将SKq与第二十一哈希值相乘,相乘的值与第二十二哈希值相加后再对大素数p取模得到αq,
A5.23:智能家居设备将家庭网关身份、用户假名与第十随机数合并后生成第二十三哈希值SSK,即 第二十三哈希值用作用户与智能家居设备间通信的临时安全会话密钥;
A5.24:智能家居设备通过公共信道向家庭网关发送智能家居设备响应请求,智能家居设备响应请求包括智能家居设备身份、αq以及存储在智能家居设备中的Gq,即A5.25:家庭网关在向智能家居设备身份列表中的每个智能家居设备发送完所有网关认证请求后,等待λ时间,以收集智能家居设备身份列表中每个智能家居设备发送的智能家居设备响应请求;
A5.26:家庭网关在等待λ时间的期间生成一个元素数量与智能家居设备身份列表中智ξ能家居设备数量相等的随机向量δ=<δx,...,δz>,其中δq∈δ,并且δq∈(1,2],ξ是一个安全参数,δq与 对应;
A5.27:家庭网关将δq、αq、椭圆曲线上的基点P、家庭网关身份 第九随机数m、Gq、系统公钥Ppub以及SHKq执行等式(1)来认证智能家居设备身份列表中的每个智能家居设备,其中,求和符号∑是指对智能家居设备身份列表中的每个智能家居设备求和;
A5.28:家庭网关检查等式(1)是否成立,如果等式(1)不成立,家庭网关利用二分查找法找出非法的智能家居设备,并将非法智能家居设备发送的响应从智能家居设备响应请求中剔除,然后家庭网关重复执行A5.27~A5.28,直到等式(1)成立后后,家庭网关执行以下步骤A5.29;
A5.29:家庭网关生成第三时间戳T3,将第十五哈希值与第七随机数合并后生成第二十六哈希值 将第二十六哈希值与第九随机数异或后得到M3,即将家庭网关身份、用户假名、第三时间戳、第九随机数以及第七随机数合并后生成第二十七哈希值V3,即
A5.30:家庭网关通过公共信道向用户发送网关响应请求,网关响应请求包括M3、第二十七哈希值以及第三时间戳,即
A5.31:用户的移动设备收到网关响应请求后,判断第三时间戳是否在最大时间延迟范围内,如果第三时间戳不在最大时间延迟范围内,智能家居设备拒绝网关响应请求;如果第三时间戳在最大时间延迟范围内,智能家居设备继续执行A5.32;
A5.32:移动设备将Ki和第六随机数合并后生成第二十八哈希值h1(Ki||ui),将第二十八*哈希值与M3异或后得到第十一随机数m,即
A5.33:移动设备将家庭网关身份、用户假名、第三时间戳、第十一随机数和第六随机数合并后生成第二十九哈希值A5.34:移动设备判断第二十七哈希值V3与第二十九哈希值是否相等,如果第二十七哈希值与第二十九哈希值不相等,移动设备拒绝网关响应请求;如果第二十七哈希值与第二十九哈希值相等,移动设备将家庭网关身份、用户假名和第十一随机数合并后生成第三十哈希值SSK,即 所述第三十哈希值用作用户与智能家居设备间通信的密钥。
2.如权利要求1所述的智能家居设备批量认证方法,其特征在于,A1具体包括:w
A1.1:注册机构选择安全参数1和大素数p,并在有限域Fp上选择椭圆曲线Ep,从所述椭圆曲线上选择基点P;
A1.2:注册机构随机生成一个系统私钥s,并选择能将随机比特串映射到 上的哈希函数h1和能将随机比特串映射到固定长度比特串的哈希函数h2,其中 表示比0大且比所述*大素数p小并与所述大素数p互素的所有整数集合,即 h2={0,1} →d
{0,1};
A1.3:注册机构将所述系统私钥s和所述椭圆曲线上的基点P点乘得到系统公钥Ppub,即计算Ppub=s·P;
A1.4:将所述椭圆曲线Ep、哈希函数h1、哈希函数h2、大素数p、椭圆曲线上的基点P和系统公钥Ppub作为系统公共参数进行公开,将所述系统私钥s进行保存,即注册机构公开系统公共参数Ep,h1,h2,p,P,Ppub,保存系统私钥s,其中Ep表示椭圆曲线,h1,h2表示哈希函数,p表示大素数,P表示椭圆曲线上的基点,Ppub表示系统公钥。
3.如权利要求1所述的智能家居设备批量认证方法,其特征在于,A2具体包括:A2.1:注册机构为每个家庭网关选择唯一的家庭网关身份 并将所述家庭网关身份 与所述系统私钥s合并,生成第一哈希值fk,即注册机构计算所述第一哈希值fk用于生成家庭网关与用户间认证的密钥;
A2.2:所述家庭网关身份 与所述第一哈希值fk由注册机构离线发送给家庭网关,即注册机构向家庭网关离线发送A2.3:家庭网关收到所述家庭网关身份与所述第一哈希值后,将所述家庭网关身份与所述第一哈希值存储在家庭网关受保护的内存当中。
4.如权利要求1所述的智能家居设备批量认证方法,其特征在于,A4具体包括:A4.1:为所述每个智能家居设备嵌入唯一的物理不可克隆函数PUF;
A4.2:智能家居设备随机选择一个唯一的智能家居设备身份 与需要注册到的家庭网关身份 并向注册机构发送智能家居设备注册信息,所述智能家居设备注册信息包括所述智能家居设备身份 和所述家庭网关身份 其中,j表示第j个智能家居设备;
A4.3:注册机构收到所述智能家居设备注册信息后,在数据库中检索所述智能家居设备 是否已经存在,其中,j表示第j个智能家居设备,如果所述智能家居设备身份已经存在,注册机构请求智能家居设备重新选择一个新的智能家居设备身份,然后重新发送一个新的注册信息给注册机构;如果所述智能家居设备身份 不存在,注册机构继续执行A4.4:;
A4.4:注册机构生成第四随机数gj,将所述第四随机数gj与所述椭圆曲线上的基点P点乘后得到Gj,即Gj=gj·P,将所述系统私钥s与所述第四随机数gj合并后生成第九哈希值SHKj,即SHKj=h1(s||gj);
A4.5:注册机构将所述系统私钥s乘以所述第九哈希值后与所述第四随机数相加,相加后的结果再对所述大素数p取模得到SKj,即SKj=(gj+s·SHKj)mod pA4.6:注册机构选择n个挑战 并将所述n个挑战、所述SKj与所述Gj通过安全通道发送给智能家居设备,即注册机构向智能家居设备发送 其中n表示一个智能家居设备对应的挑战或响应的数量;
A4.7:智能家居设备在收到所述n个挑战、所述SKj与所述Gj后,将{SKj,Gj}存储在智能家居设备内存中,然后计算所述n个挑战对应的n个响应 即A4.8:智能家居设备通过安全通道将n个响应 发往注册机构;
A4.9:注册机构在收到所述n个响应后,通过安全通道向家庭网关发送所述智能家居设备身份、所述第九哈希值与n对挑战与响应对 具体地,注册机构向家庭网关发送
A4 .10:家庭网关收到所述智能家居设备身份、所述第九哈希值与所述 n 对 挑 战 与 响 应对后,存储在网关数据库中 ,具体地 ,家庭网关将存入网关数据库中。
5.如权利要求1所述的智能家居设备批量认证方法,其特征在于,所述方法还包括:old
A6.1:用户向移动设备输入用户身份 旧的用户密码PWi 和旧的用户生物特征old
移动设备将所述用户身份 与所述旧的用户密码PWi 合并后生成第三十一哈希值 将所述第三十一哈希值与存储在移动设备中的所述Bi异或后得到第十二随机数 即
A6.2:移动设备在模糊提取器再现函数REP中输入旧的生物特征 与所述生物特征模板参数τi后得到旧的生物特征密钥 即
A6.3:移动设备将所述用户身份、所述旧的用户密码、所述旧的生物特征密钥与所述第十二随机数 合并后生成第三十二哈希值 判断所述第三十二哈希值与存储在移动设备中的所述第八哈希值Ci是否相等,如果所述第三十二哈希值与所述第八哈希值不相等,移动设备拒绝修改用户密码与生物特征的请求;如果所述第三十二哈希值与所述第八哈希值相等,移动设备继续执行A6.4;
A6.4:移动设备接收用户输的入新的用户密码 与新的用户生物特征A6.5:向模糊提取器生成函数GEN中输入所述新的用户生物特征 得到新的生物特征密钥 与新的生特征模板参数 即
A6.6:移动设备将所述第十二随机数 与所述旧的用户密码合并后生成第三十三哈希old值SPWi ,即 将所述第十二随机数 与所述新的用户密码合new
并后生成第三十四哈希值SPWi ,即
A6.7:移动设备将存储在设备中的所述 所述三十三哈希值与所述第三十四哈希值异或后得到 即A6.7:移动设备将所述用户身份与所述新的用户密码合并后生成第三十五哈希值将所述第十二随机数 与所述第三十五哈希值异或后得到 即A6.8:移动设备将所述用户身份、所述新的用户密码、所述新的生物特征密钥以及所述第十二随机数合并后生成第三十六哈希值A6.9:移动设备将所述新的生特征模板参数 所述 所述 和所述第三十六哈希值分别替换存储在设备内存中原有的所述生特征模板参数τi、所述 所述Bi和所述八哈希值Ci。
6.如权利要求1所述的智能家居设备批量认证方法,其特征在于,所述方法还包括:A7.1:为所述每个新添加的智能家居设备中嵌入一个唯一的物理不可克隆函数PUF;
A7.2:新添加的智能家居设备为自己选择一个唯一的身份 与需要注册到的家庭网关身份 然后新添加的智能家居设备通过安全通道向注册机构发送注册信息,所述注册信息为所述新添加的智能家居设备身份和所述家庭网关身份,即注册信息为A7.2:注册机构收到所述注册信息后,在数据库中检索所述新添加的智能家居设备身份 是否已经存在,如果所述新添加的智能家居设备身份 已经存在,所述新添加的智能家居设备重新选择一个新的智能家居设备身份,并重新发送一个新的注册信息给注册机构,如果所述新添加的智能家居设备身份 不存在,注册机构继续执行A7.3;
A7.3:注册机构生成第十二随机数 然后注册机构将所述第十二随机数与所述椭圆曲线上的基点P点乘得到 即 将所述系统私钥s与所述第十二随机数合并后生成第三十七哈希值 即
A7.4:注册机构将所述系统私钥s乘以所述第三十七哈希值后与所述第十二随机数相加,相加的值对所述大素数取模得到 即然后注册机构随机选择n个新的不同挑战 并将
通过安全通道发送给新添加的智能家居设备;
A7.5:新添加的智能家居设备在收到所述
后,将 存储在自己的内存中,同时新添加的智能家居设备计算所述n个新的不同挑战对应的n个响应 即
然后通过安全通道向
注册机构发送所述n个响应
A7.6:注册机构在收到所述n个响应 后,通过安全通道向家庭网关发送所述新添加的智能家居设备身份 和n个新的挑战响应对即注册机构向家庭网关发送
A7.7:家庭网关收到所述新添加的智能家居设备身份、所述 和所述n个新的挑战响应对后,并存储在网关数据库中,即家庭网关将
存入网关
数据库中。
7.一种计算设备,其特征在于,所述计算设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至6任一项所述的智能家居设备批量认证方法。
8.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1至6任一项所述的智能家居设备批量认证方法。