CN111884991A - 一种面向智能家居的用户可监管匿名身份认证方法 - Google Patents
一种面向智能家居的用户可监管匿名身份认证方法 Download PDFInfo
- Publication number
- CN111884991A CN111884991A CN202010511958.2A CN202010511958A CN111884991A CN 111884991 A CN111884991 A CN 111884991A CN 202010511958 A CN202010511958 A CN 202010511958A CN 111884991 A CN111884991 A CN 111884991A
- Authority
- CN
- China
- Prior art keywords
- user
- authentication
- application server
- transaction
- fpk
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0869—Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
- H04L9/3073—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- General Physics & Mathematics (AREA)
- Algebra (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种面向智能家居的用户可监管匿名身份认证方法。本发明涉及IFTTT服务器、用户、智能设备、应用服务器和区块链。本发明首先***进行初始化,生成***所需参数;然后,用户U和应用服务器向IS注册以及智能设备SD向用户U注册;接着,智能设备SD代表用户U访问应用服务器实现匿名双向认证,双向认证完毕后,应用服务器向区块链写入认证结果;最后用户U通过自己的私钥和IS‑认证密钥监管自己的智能设备SD,最终实现可监管的匿名认证协议。本发明引入区块链技术,构建用户可监管的智能设备访问外网时的匿名认证方法,利用区块链不可篡改的特性,用户可以随时通过区块链监管智能设备的所有行为,从而实现完全控制该智能设备。
Description
技术领域
本发明涉及匿名认证技术领域,具体涉及一种面向智能家居的用户可监管匿名身份认证方法。
背景技术
随着机器学习、人工智能技术的飞速发展,具备自治和保姆式服务的智能家居网正变得越来越普及。智能家居设备不仅可以感知家庭环境,而且可以自主的为家庭用户做出各种行为,如访问外网进行购买、订阅、请求帮助、能源分享等等,使得用户可以轻松享受生活。
在这种场景下,虽然已经有一些匿名身份认证技术被提出;但是,所提出的协议不能满足用户对智能设备代表用户执行的各种网络行为进行随时监管的需求。因此,本发明提出了智能家居网内智能设备代表用户访问外网服务场景下的、用户可监管的匿名认证方法,使得智能家居访问应用服务时的匿名性的同时允许用户监管。
发明内容
本发明主要针对先存在的匿名身份认证技术的不足,提供的一种一种面向智能家居的用户可监管匿名身份认证方法。本发明包括IFTTT服务器、用户、智能设备、应用服务器和区块链组件,各个组件交互步骤如下:
(1)***初始化;IFTTT服务器、用户和区块链分别初始化,生成***所需参数;
(2)用户和应用服务器分别向IFTTT服务器注册;获取各自的IS-认证密钥用以证明自己的真实性和合法性;
(3)智能设备向用户注册;智能设备在进行外网访问前,需要向用户进行注册,以获得用户的IS-认证密钥以及用户的身份ID;而用户端通过管理授权智能设备的ID和对应的公钥实现后续监管;
(4)智能设备代表用户访问应用服务器实现匿名双向认证;智能设备生成可供用户监管的公钥,并使用用户的IS-认证密钥和身份ID,向应用服务器发起认证请求,实现匿名的双向认证;
(5)认证结果上链;双向认证完毕后,应用服务器向区块链写入认证结果,将本次认证的智能设备的公钥和对所认证公钥的签名等信息以区块链业务交易的形式存储到区块链中;
进一步的,步骤(1)所述的初始化,具体如下:
IFTTT服务器初始化:为应用服务器和用户提供可信IS-认证密钥准备好参数;用户初始化:为内部的智能设备安全通信准备好参数;区块链初始化:基于双线性映射加密方案的参数,为所有用户和智能设备的监管准备好参数;具体实现如下:
1-1.用户U单独为家居网内智能设备初始化参数和公私钥对:
用户U首先选择一个大素数pu,并在有限域下选择一条椭圆曲线接着,用户U选择一个阶为nu的椭圆曲线上的一个基点Pu,以及一个随机数xu,计算Qu=xu·Pu;然后,用户U秘密保存自己的私钥SKU=xu;当智能设备注册时,用户将其公钥PKU=Qu和参数{Epu(au,bu),pu,Pu}发给智能设备;
1-2.区块链平台为所有的用户初始化***公共参数
进一步的,步骤(2)和步骤(3)所述的注册其具体实现如下:
2-1.用户Ui通过IFTTT网关HGig向IFTTT服务器IS注册并获取IS-认证密钥注册完成后,IS并不存储认证密钥及任何用户相关信息;IFTTT网关HGig备份存储信息,用以预防用户的智能手机丢失后的恢复;用户Ui则存储其中EIDi为用户注册时预留的恢复用的扩展信息生成的伪名,user_secret是存储认证相关的随机数对,VL是为了实现本地用户密码验证的校验值;
所述的智能手机是指控制智能设备的客户端;
2-2.应用服务器Sj向IFTTT服务器IS注册并获取IS-认证密钥注册完成后,应用服务器Sj存储其中noncej=(r1j,r2j)是注册时产生的随机数对,即r1j和r2j均为随机数,SIDj为对用户公开的身份;而IFTTT服务器IS并不存储仅仅存储Sj的伪名及相关信息{rSIDj,mr2j},其中 同时将应用服务器的公钥和私钥r2j分别用PKAS和SKAS表示;
2-3.智能设备SDt向用户U注册:
SDt向用户U注册:
③用户U收到RM1后,利用自己的私钥进行解密获得用户根据智能设备的tID,重新计算其H1运算的结果与比对是否一致,来验证该智能设备是否属于自己的智能设备;如果一致,用户U首先保存好SDt的公钥信息pk;并生成随机数μ1,μ2∈{0,1}*,将要传输的IS-认证密钥以及用户的身份rIDi,做如下计算:
回送{RM2,RM3}给智能设备SDt,为方便后面描述简记RM2和RM3如下:RM2={RM2L,RM2R},RM3={RM3L,RM3R};
SDt用上面第③④步相同的计算,从RM3中取出rIDi并存储:
接着,SDt使用H3(rID′i||μ′2)=r′2,然后再计算r′2P1是否等于RM3L(即r2P1),如果相等,则保存rIDi,否则终止;
进一步的,步骤(4)所述的匿名双向认证,智能设备SDt代表用户U向应用服务器AS访问时,每一次应用业务访问均生成一次性伪公钥(FPK):
3-1智能设备SDt生成一次性伪公钥FPK向服务器AS发起认证请求:
再者,计算mM2=PXor(M2,Qt),mFPK=PXor(FPK,Qt),mPpub=PXor(Ppub,Qt),Vu=h(M1||SIDj||FPK||Ppub||T1),V=h(mM2,M3,mFPK,mPpub,Vu,T1);
所述的PXor操作,具体如下:
最后,SDt发送{mM2,M3,mFPK,mPpub,Vu,T1,V}给应用服务器;需要说明的是当一次业务需要多次不同时间登录进行操作时,需要多次认证的话,Qt是每次登录认证时随机生成的,其他的对应一次业务不变;
3-2.应用服务器AS认证智能设备SDt
应用服务器收到后,首先检查Tnow-T1≤ΔT是否符合?其中Tnow指AS收到信息的时刻,T1指SDt发送信息的时刻,ΔT指***设置的阈值;如果上述表达式结果符合条件,则计算h(mM2,M3,mFPK,mPpub,Vu,T1)并验证是否与收到V一致?若不一致,则终止认证;否则应用服务器首先用自己的私钥SKAS从M3中解密出计算 FPK*=PXor(mFPK,Qt *),以及 验证如果相等,应用服务器认为该SDt代表的用户为合法用户;接着,应用服务器计算HQt *=(h(x*),h(y*)),最后将{M4,T2,h(M4,T2)}返回给智能设备SDt;
3-3智能设备SDt认证应用服务器AS并确认会话密钥
SDt收到后,检查T′now-T2≤ΔT是否符合,其中T′now指SDt收到信息的时刻,F2指AS发送信息的时刻,ΔT指***设置的阈值,若不符合终止认证,否则计算HQt′=PXor(M4,M1)=(x′,y′),同时计算HQt=(h(x),h(y)),并判断HQt′=HQt是否成立?如果成立则说明该应用服务器为IFTTT服务器认证的合法应用服务器,同时将h(M1)作为本次通话的会话密钥;
接着,SDt随机生成r,计算出 因为 同时,计算M5=PXor(HQt,Qt),M6=PXor(r,Qt),mSignFSK(FPK)=PXor(SignFSK(FPK),Qt),V=h(M5,M6,mSignFSK(FPK),T3);
最后,向应用服务器回送{M5,M6,mSignFSK(FPK),T3,V};
3-4应用服务器AS确认会话密钥
应用服务器收到后,检查T″now-T3≤ΔT是否符合,其中T″now指AS收到信息的时刻,T3指SDt发送信息的时刻,ΔT指***设置的阈值;如果上述表达式结果符合条件,接着验证h(M5,M6,mSignFSK(FPK),T3)是否与V符合,若不符合终止认证,否则计算PXor(HQt *,Qt *)是否与M5相等?如果相等则说明智能设备SDt已经认证完毕并已确定了本次会话密钥同时认为Qt *=Qt,然后计算r=PXor(M6,Qt *),SignFSK(FPK)=PXor(mSignFSK(FPK),Qt *),执行上链操作,详见权力要求5;上链操作完毕,应用服务器也将作为本次通话的会话密钥,后续的业务流程将使用该密钥完成。
进一步的,认证结果上链保存特征实现如下:
认证结束时,应用服务器将身份认证结果写入到区块链中;区块链的交易是以应用服务器的公钥作为地址发出的交易,除了含有应用服务器的签名、身份SIDj外,必须包含智能设备SDt的FPK,r,SignFSK(FPK),Ppub,Time1,其中Time1为交易生成时间,其与SignFSK(FPK)中隐含的T3之间的距离必须小于ΔT,矿工验证才能通过,确认其为新鲜的真实认证交易;
4-1.认证结果交易上链
为了完成有效的业务监管,智能设备和应用服务器完成双向认证后,应用服务器发起Type为Auth的交易,即
其中Tcontent为:
{SIDj,FPK,r,SignFSK(FPK),Ppub,Time1,
矿工收到该交易后,确认该交易是Auth类型,判断Tin中的前一交易Tpre和输入脚本是否均为如果不是就终止;否则首先使用FPK,r,Ppub,计算然后再计算矿工首先判断FPK*是否等于FPK,接着判断Time1-T3≤ΔT,其中ΔT是预留的传输时延的阈值;如果均满足,则验证签名是否正确;如果三项验证均满足,矿工将该交易打包上链;上链完成后,应用服务器才确认此次认证成功,并确定此次业务的密钥为
4-2.认证后业务交易上链
当应用服务器和智能设备SDt后续进行业务交互产生需要监管的数据时,其产生Type为Merch的交易,Tin是中的前一交易Tpre必须是Type为Auth的交易或者一个可以追溯到Auth交易的一个Merch交易;
如果该交易由应用服务器发起,可表示为:
其中Tcontent为:
{SIDj,FPK,r,Ppub,M,SignFSK(M),Time1,
其中,M为应用服务器和智能设备SDt的使用会话密钥加密的业务数据,其可以随时供应用服务器和智能设备查阅,同时方便用户U监管自己的智能设备; 为基于椭圆曲线算法的签名过程;Time为智能设备SDt对业务内容进行签名的时间,Time1为交易生成时间。
如果该交易由智能设备SDt发起,可表示为
其中Tcontent为:
矿工收到应用服务器发起的业务交易后,首先根据Tin找到初始的Auth交易,如果没找到则退出,否则使用FPK,r,Ppub,计算 然后再计算矿工首先判断M*是否等于M,如果相等则进一步判断Time1-Time≤ΔT;其中ΔT是预留的传输时延的阈值;最后验证签名是否正确;如果三项验证均满足,矿工将该交易打包上链;
矿工收到智能设备SDt发起的交易验证过程同上,具体为:
矿工收到智能设备SDt发起的业务交易后,同样先根据Tin找到初始的Auth交易,如果没找到则退出,否则使用PKAS从取出M*和Time,并判断M*是否等于M,如果相等则使用FPK,r,Ppub,计算然后再计算
矿工首先判断以及SIDj *=SIDj,FPK*=FPK,r*=r,Ppub *=Ppub,如果均相等则进一步判断Time1*-Time≤ΔT;其中ΔT是预留的传输时延的阈值;如果三项验证均满足,矿工将该交易打包上链。
进一步的,监管特征实现如下:
用户通过查询区块链交易,针对每个交易的FPK,首先使用自己的私钥SKU进行解密,如果可以成功解密出 同时再使用验证签名一致的情况下,即可说明此交易的FPK是用户所属智能设备进行的操作,为进一步查阅其后续业务数据流,用户U使用自己的进行同时计算出h(M1)为本次会话的会话密钥,从而可以解密后续业务数据的密文M进行监管。
本发明有益效果:
本发明引入区块链技术,构建用户可监管的智能设备访问外网时的匿名认证方法,利用区块链不可篡改的特性,用户可以随时通过区块链监管智能设备的所有行为,从而实现完全控制该智能设备。
附图说明
图1***模型图;
图2整体流程图;
具体实施方式
下面结合附图和实施例对本发明作进一步说明。
如图1和2所示,一种面向智能家居的用户可监管匿名身份认证方法,其特征在于包括IFTTT服务器、用户、智能设备、应用服务器和区块链组件,各个组件交互步骤如下:
1初始化在该过程中,IFTTT服务器初始化:为应用服务器和用户提供可信IS-认证密钥准备好参数;其次,用户初始化:为内部的智能设备安全通信准备好参数;最后,区块链初始化:基于双线性映射加密方案的参数,为所有用户和智能设备的监管准备好参数。
1-1用户U单独为家居网内智能设备初始化参数和公私钥对
用户U首先选择一个大素数pu,并在有限域下选择一条椭圆曲线接着,U选择一个阶为nu的椭圆曲线上的一个基点Pu,以及一个随机数xu,计算Qu=xu·Pu。然后,U秘密保存自己的私钥SKU=xu;当智能设备注册时,用户将其公钥PKU=Qu和参数发给智能设备。
1-2区块链平台为所有的用户初始化***公共参数
2用户和应用服务器分别向IFTTT服务器注册用户和应用服务器均事先向IFTTT服务器注册并获得IS-认证密钥方可进行下一步。
2-1用户Ui通过IFTTT网关HGig向IFTTT服务器IS注册并获取IS-认证密钥注册完成后,IS并不存储认证密钥及任何用户相关信息;IFTTT网关HGig备份存储信息,用以预防用户智能手机丢失时的恢复;用户Ui则存储其中EIDi为用户注册时预留的恢复用的扩展信息生成的伪名,user_secret是存储认证相关的随机数对,VL是为了实现本地用户密码验证的校验值。
2-2应用服务器Sj向IFTTT服务器IS注册并获取IS-认证密钥注册完成后,Sj存储其中noncej=(r1j,r2j)是注册时产生的随机数对,即r1j和r2j均为随机数,SIDj为对用户公开的身份;而IFTTT服务器IS并不存储仅仅存储Sj的伪名及相关信息{rSIDj,mr2j},其中rSIDj=h(SIDj||r1j),为方便理解,将应用服务器的公钥和私钥r2j分别用PKAS和SKAS表示。
智能设备向用户注册:智能设备SDt向用户U注册
3-2 SDt向用户U注册:
(1)智能设备发起请求,从用户U处获得公钥PKU,参数{Epu(au,bu),pu,Pu}以及公共参数pp。
(3)U收到RM1后,利用自己的私钥进行解密获得用户根据智能设备的tID,重新计算其H1运算的结果与比对是否一致,来验证该智能设备是否属于自己的智能设备。如果一致,用户U首先保存好SDt的公钥信息pk;并生成随机数μ1,μ2∈{0,1}*,将要传输的IS-认证密钥以及用户的身份rIDi,做如下计算:
回送{RM2,RM3}给智能设备SDt,为方便后面描述简记RM2和RM3如下:RM2={RM2L,RM2R},RM3={RM3L,RM3R}。
接着,SDt使用然后再计算r′1P1是否等于RM2L(即r1P1),如果相等,则保存否则终止。SDt用上面第(3)(4)步相同的计算,从RM3中取出rIDi并存储。至此,智能设备存储自己的公钥信息pk,秘密保存存储
智能设备代表用户访问应用服务器实现匿名双向认证:智能设备SDt代表用户向应用服务器AS访问时,每一次应用业务访问均生成伪公钥(FPK):例如购买行为中的一个订单交易对应一个FPK;智能设备SDt与应用服务器AS的匿名认证流程如表1所示。
表1 SDt与AS匿名认证流程
4-1智能设备SDt生成一次性业务公钥FPK向服务器AS发起认证请求
再者,计算mM2=PXor(M2,Qt),mFPK=PXor(FPK,Qt),mPpub=PXor(Ppub,Qt),Vu=h(M1||SIDj||FPK||Ppub||T1),V=h(mM2,M3,mFPK,mPpub,Vu,T1)。
最后,SDt发送{mM2,M3,mFPK,mPpub,Vu,T1,V}给应用服务器;需要说明的是当一次业务需要多次不同时间登录进行操作时,需要多次认证的话,Qt是每次登录认证时随机生成的,其他的对应一次业务不变。
4-2应用服务器AS认证智能设备SDt
应用服务器收到后,首先检查Tnow-T1≤ΔT是否符合?其中Tnow指AS收到信息的时刻,T1指SDt发送信息的时刻,ΔT指***设置的阈值;如果符合,则计算h(mM2,M3,mFPK,mPpub,Vu,T1)并验证是否与收到V一致?若不一致,则终止认证;否则应用服务器首先用自己的私钥SKAS从M3中解密出计算FPK*=PXor(mFPK,Qt *),以及 验证如果相等,应用服务器认为该SDt代表的用户为合法用户;接着,应用服务器计算HQt *=(h(x*),h(y*)),最后将{M4,T2,h(M4,T2)}返回给智能设备SDt。
4-3智能设备SDt认证应用服务器AS并确认会话密钥
SDt收到后,检查T′now-T2≤ΔT是否符合,其中T′now指SDt收到信息的时刻,T2指AS发送信息的时刻,ΔT指***设置的阈值,若不符合终止认证,否则计算HQt′=PXor(M4,M1)=(x′,y′),同时计算HQt=(h(x),h(y)),并判断HQt′=HQt是否成立?如果成立则说明该应用服务器为IFTTT服务器认证的合法应用服务器,同时将h(M1)作为本次通话的会话密钥。
接着,SDt随机生成r,计算出 因为 同时,计算M5=PXor(HQt,Qt),M6=PXor(r,Qt),mSignFSK(FPK)=PXor(SignFSK(FPK),Qt),V=h(M5,M6,mSignFSK(FPK),T3)。
最后,向应用服务器回送{M5,M6,mSignFSK(FPK),T3,V}。
4-4应用服务器AS确认会话密钥
应用服务器收到后,检查T″now-T3≤ΔT是否符合,其中T″now指AS收到信息的时刻,T3指SDt发送信息的时刻,ΔT指***设置的阈值;并验证h(M5,M6,mSignFSK(FPK),T3)是否与V符合,若不符合终止认证,否则计算PXor(HQt *,Qt *)是否与M5相等?如果相等则说明智能设备SDt已经认证完毕并已确定了本次会话密钥同时认为Qt *=Qt,然后计算r=PXor(M6,Qt *),SignFSK(FPK)=PXor(mSignFSK(FPK),Qt *),执行上链操作,详见权力要求5;上链操作完毕,应用服务器也将作为本次通话的会话密钥,后续的业务流程将使用该密钥完成。
认证结果上链保存:SAA-DAES协议中用户可监管的认证交易格式Tx,描述如下所示:
Tid是交易标识;Ttype表示本交易的类型,为了实现用户全程监管,交易可以分为{Auth,Merch}两种类型,其中Auth表示Tcontent为认证结果,Merch表示Tcontent为交互业务记录;Tin表示交易的输入项,即交易成立前验证所需参数和智能合约(脚本);Tout表示交易的输出项,即交易传递给下一交易生成验证时所需参数和智能合约(脚本)。为更清晰阐述,Tx格式可表示为表2。
表2认证交易Tx
其中,Tpre表示前一次交易;是一个输入脚本,用于验证本交易有效性;ω是一个输出脚本,给出获取交易Tx中内容所需条件;PKi,PKj是交易发起者和交易接收者的公钥(地址);对应的,SKi是交易发起者的私钥。body包括Tpre,Ttype,Tcontent,PKi,PKj;σ表示交易发起者对该交易的签名;如果该交易是一个初始交易,那么它的输入前一交易和脚本为空,可用表示。
认证结束时,应用服务器将身份认证结果写入到区块链中。区块链的交易是以应用服务器的公钥作为地址发出的交易,除了含有应用服务器的签名、身份SIDj外,必须包含智能设备SDt的FPK,r,SignFSK(FPK),Ppub,Time1,其中Time1为交易生成时间,其与SignFSK(FPK)中隐含的T3之间的距离必须小于ΔT,矿工验证才能通过,确认其为新鲜的真实认证交易;
5-1认证结果交易上链
为了完成有效的业务监管,智能设备和应用服务器完成双向认证后,应用服务器发起Type为Auth的交易,即
其中Tcontent为:
{SIDj,FPK,r,SignFSK(FPK),Ppub,Time1,
矿工收到该交易后,确认该交易是Auth类型,判断Tin中的前一交易Tpre和输入脚本是否均为如果不是就终止;否则首先使用FPK,r,Ppub,计算然后再计算矿工首先判断FPK*是否等于FPK,接着判断Time1-T3≤ΔT(其中ΔT是预留的传输时延的阈值,防止重放攻击);如果均满足,则验证签名是否正确;如果三项验证均满足,矿工将该交易打包上链。上链完成后,应用服务器才确认此次认证成功,并确定此次业务的密钥为
5-2认证后业务交易上链
当应用服务器和智能设备SDt后续进行业务交互产生需要监管的数据时,其产生Type为Merch的交易,Tin是中的前一交易Tpre必须是Type为Auth的交易或者一个可以追溯到Auth交易的一个Merch交易。
如果该交易由应用服务器发起,可表示为:
其中Tcontent为:
{SIDj,FPK,r,Ppub,M,SignFSK(M),Time1,
如果该交易由智能设备SDt发起,可表示为
其中Tcontent为:
需要说明的是,此时的M为应用服务器和智能设备SDt的使用会话密钥加密的业务数据,其可以随时供应用服务器和智能设备查阅,同时方便用户U监管自己的智能设备。
矿工收到应用服务器发起的业务交易后,首先根据Tin找到初始的Auth交易,如果没找到则退出,否则使用FPK,r,Ppub,计算 然后再计算矿工首先判断M*是否等于M,接着判断Time1-Time≤ΔT(其中ΔT是预留的传输时延的阈值,防止重放攻击);最后验证签名是否正确;如果三项验证均满足,矿工将该交易打包上链。
矿工收到智能设备SDt发起的交易验证过程如上,不做赘述。
Claims (6)
1.一种面向智能家居的用户可监管匿名身份认证方法,其特征在于包括IFTTT服务器、用户、智能设备、应用服务器和区块链组件,各个组件交互步骤如下:
(1)***初始化;IFTTT服务器、用户和区块链分别初始化,生成***所需参数;
(2)用户和应用服务器分别向IFTTT服务器注册;获取各自的IS-认证密钥用以证明自己的真实性和合法性;
(3)智能设备向用户注册;智能设备在进行外网访问前,需要向用户进行注册,以获得用户的IS-认证密钥以及用户的身份ID;而用户端通过管理授权智能设备的ID和对应的公钥实现后续监管;
(4)智能设备代表用户访问应用服务器实现匿名双向认证;智能设备生成可供用户监管的公钥,并使用用户的IS-认证密钥和身份ID,向应用服务器发起认证请求,实现匿名的双向认证;
(5)认证结果上链;双向认证完毕后,应用服务器向区块链写入认证结果,将本次认证的智能设备的公钥和对所认证公钥的签名等信息以区块链业务交易的形式存储到区块链中;
2.根据权利要求1所述的一种面向智能家居的用户可监管匿名身份认证方法,其特征在于步骤(1)所述的初始化,具体如下:
IFTTT服务器初始化:为应用服务器和用户提供可信IS-认证密钥准备好参数;用户初始化:为内部的智能设备安全通信准备好参数;区块链初始化:基于双线性映射加密方案的参数,为所有用户和智能设备的监管准备好参数;具体实现如下:
1-1.用户U单独为家居网内智能设备初始化参数和公私钥对:
用户U首先选择一个大素数pu,并在有限域下选择一条椭圆曲线接着,用户U选择一个阶为nu的椭圆曲线上的一个基点Pu,以及一个随机数xu,计算Qu=xu·Pu;然后,用户U秘密保存自己的私钥SKU=xu;当智能设备注册时,用户将其公钥PKU=Qu和参数发给智能设备;
1-2.区块链平台为所有的用户初始化***公共参数
3.根据权利要求2所述的一种面向智能家居的用户可监管匿名身份认证方法,其特征在于步骤(2)和步骤(3)所述的注册其具体实现如下:
2-1.用户Ui通过IFTTT网关HGig向IFTTT服务器IS注册并获取IS-认证密钥注册完成后,IS并不存储认证密钥及任何用户相关信息;IFTTT网关HGig备份存储信息,用以预防用户的智能手机丢失后的恢复;用户Ui则存储其中EIDi为用户注册时预留的恢复用的扩展信息生成的伪名,user_secret是存储认证相关的随机数对,VL是为了实现本地用户密码验证的校验值;
所述的智能手机是指控制智能设备的客户端;
2-2.应用服务器Sj向IFTTT服务器IS注册并获取IS-认证密钥注册完成后,应用服务器Sj存储其中noncej=(r1j,r2j)是注册时产生的随机数对,即r1j和r2j均为随机数,SIDj为对用户公开的身份;而IFTTT服务器IS并不存储仅仅存储Sj的伪名及相关信息{rSIDj,mr2j},其中rSIDj=h(SIDj||r1j),同时将应用服务器的公钥和私钥r2j分别用PKAS和SKAS表示;
2-3.智能设备SDt向用户U注册:
SDt向用户U注册:
③用户U收到RM1后,利用自己的私钥进行解密获得用户根据智能设备的tID,重新计算其H1运算的结果与比对是否一致,来验证该智能设备是否属于自己的智能设备;如果一致,用户U首先保存好SDt的公钥信息pk;并生成随机数μ1,μ2∈{0,1}*,将要传输的IS-认证密钥以及用户的身份rIDi,做如下计算:
回送{RM2,RM3}给智能设备SDt,为方便后面描述简记RM2和RM3如下:RM2={RM2L,RM2R},RM3={RM3L,RM3R};
SDt用上面第③④步相同的计算,从RM3中取出rIDi并存储:
接着,SDt使用H3(rID′i||μ′2)=r′2,然后再计算r′2P1是否等于RM3L(即r2P1),如果相等,则保存rIDi,否则终止;
4.根据权利要求3所述的一种面向智能家居的用户可监管匿名身份认证方法,其特征在于步骤(4)所述的匿名双向认证,智能设备SDt代表用户U向应用服务器AS访问时,每一次应用业务访问均生成一次性伪公钥(FPK):
3-1智能设备SDt生成一次性伪公钥FPK向服务器AS发起认证请求:
再者,计算mM2=PXor(M2,Qt),mFPK=PXor(FPK,Qt),mPpub=PXor(Ppub,Qt),Vu=h(M1||SIDj||FPK||Ppub||T1),V=h(mM2,M3,mFPK,mPpub,Vu,T1);
所述的PXor操作,具体如下:
最后,SDt发送{mM2,M3,mFPK,mPpub,Vu,T1,V}给应用服务器;需要说明的是当一次业务需要多次不同时间登录进行操作时,需要多次认证的话,Qt是每次登录认证时随机生成的,其他的对应一次业务不变;
3-2.应用服务器AS认证智能设备SDt
应用服务器收到后,首先检查Tnow-T1≤ΔT是否符合?其中Tnow指AS收到信息的时刻,T1指SDt发送信息的时刻,ΔT指***设置的阈值;如果上述表达式结果符合条件,则计算h(mM2,M3,mFPK,mPpub,Vu,T1)并验证是否与收到V一致?若不一致,则终止认证;否则应用服务器首先用自己的私钥SKAS从M3中解密出计算 以及验证如果相等,应用服务器认为该SDt代表的用户为合法用户;接着,应用服务器计算HQt *=(h(x*),h(y*)),最后将{M4,T2,h(M4,T2)}返回给智能设备SDt;
3-3智能设备SDt认证应用服务器AS并确认会话密钥
SDt收到后,检查T′now-T2≤ΔT是否符合,其中T′now指SDt收到信息的时刻,T2指AS发送信息的时刻,ΔT指***设置的阈值,若不符合终止认证,否则计算HQt′=PXor(M4,M1)=(x′,y′),同时计算HQt=(h(x),h(y)),并判断HQt′=HQt是否成立?如果成立则说明该应用服务器为IFTTT服务器认证的合法应用服务器,同时将h(M1)作为本次通话的会话密钥;
接着,SDt随机生成r,计算出 因为 同时,计算M5=PXor(HQt,Qt),M6=PXor(r,Qt),mSignFSK(FPK)=PXor(SignFSK(FPK),Qt),V=h(M5,M6,mSignFSK(FPK),T3);
最后,向应用服务器回送{M5,M6,mSignFSK(FPK),T3,V};
3-4应用服务器AS确认会话密钥
应用服务器收到后,检查T″now-T3≤ΔT是否符合,其中T″now指AS收到信息的时刻,T3指SDt发送信息的时刻,ΔT指***设置的阈值;如果上述表达式结果符合条件,接着验证h(M5,M6,mSignFSK(FPK),T3)是否与V符合,若不符合终止认证,否则计算PXor(HQt *,Qt *)是否与M5相等?如果相等则说明智能设备SDt已经认证完毕并已确定了本次会话密钥同时认为Qt *=Qt,然后计算r=PXor(M6,Qt *),SignFSK(FPK)=PXor(mSignFSK(FPK),Qt *),执行上链操作,详见权力要求5;上链操作完毕,应用服务器也将作为本次通话的会话密钥,后续的业务流程将使用该密钥完成。
5.根据权利要求4所述的一种面向智能家居的用户可监管匿名身份认证方法,其特征在于认证结果上链保存特征实现如下:
认证结束时,应用服务器将身份认证结果写入到区块链中;区块链的交易是以应用服务器的公钥作为地址发出的交易,除了含有应用服务器的签名、身份SIDj外,必须包含智能设备SDt的FPK,r,SignFSK(FPK),Ppub,Time1,其中Time1为交易生成时间,其与SignFSK(FPK)中隐含的T3之间的距离必须小于ΔT,矿工验证才能通过,确认其为新鲜的真实认证交易;
4-1.认证结果交易上链
为了完成有效的业务监管,智能设备和应用服务器完成双向认证后,应用服务器发起Type为Auth的交易,即
其中Tcontent为:
矿工收到该交易后,确认该交易是Auth类型,判断Tin中的前一交易Tpre和输入脚本是否均为如果不是就终止;否则首先使用FPK,r,Ppub,计算然后再计算矿工首先判断FPK*是否等于FPK,接着判断Time1-T3≤ΔT,其中ΔT是预留的传输时延的阈值;如果均满足,则验证签名是否正确;如果三项验证均满足,矿工将该交易打包上链;上链完成后,应用服务器才确认此次认证成功,并确定此次业务的密钥为
4-2.认证后业务交易上链
当应用服务器和智能设备SDt后续进行业务交互产生需要监管的数据时,其产生Type为Merch的交易,Tin是中的前一交易Tpre必须是Type为Auth的交易或者一个可以追溯到Auth交易的一个Merch交易;
如果该交易由应用服务器发起,可表示为:
其中Tcontent为:
其中,M为应用服务器和智能设备SDt的使用会话密钥加密的业务数据,其可以随时供应用服务器和智能设备查阅,同时方便用户U监管自己的智能设备; 为基于椭圆曲线算法的签名过程;Time为智能设备SDt对业务内容进行签名的时间,Time1为交易生成时间。
如果该交易由智能设备SDt发起,可表示为
其中Tcontent为:
矿工收到应用服务器发起的业务交易后,首先根据Tin找到初始的Auth交易,如果没找到则退出,否则使用FPK,r,Ppub,计算 然后再计算矿工首先判断M*是否等于M,如果相等则进一步判断Time1-Time≤ΔT;其中ΔT是预留的传输时延的阈值;最后验证签名是否正确;如果三项验证均满足,矿工将该交易打包上链;
矿工收到智能设备SDt发起的交易验证过程同上,具体为:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010511958.2A CN111884991B (zh) | 2020-06-08 | 2020-06-08 | 一种面向智能家居的用户可监管匿名身份认证方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010511958.2A CN111884991B (zh) | 2020-06-08 | 2020-06-08 | 一种面向智能家居的用户可监管匿名身份认证方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111884991A true CN111884991A (zh) | 2020-11-03 |
CN111884991B CN111884991B (zh) | 2022-04-19 |
Family
ID=73153863
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010511958.2A Active CN111884991B (zh) | 2020-06-08 | 2020-06-08 | 一种面向智能家居的用户可监管匿名身份认证方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111884991B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114567640A (zh) * | 2022-03-09 | 2022-05-31 | 杭州电子科技大学 | 一种兼具隐私保护和监管的nft确权与流通方法 |
CN116074119A (zh) * | 2023-03-07 | 2023-05-05 | 天津电力工程监理有限公司 | 基于区块链的研究型审计双向认证方法、装置及可读介质 |
CN116909161A (zh) * | 2023-09-11 | 2023-10-20 | 南昌理工学院 | 基于可穿戴设备的智能家居控制方法、*** |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107342859A (zh) * | 2017-07-07 | 2017-11-10 | 安徽大学 | 一种匿名认证方法及其应用 |
CN107743066A (zh) * | 2017-11-07 | 2018-02-27 | 中证技术股份有限公司 | 一种可监管的匿名签名方法及*** |
CN107851284A (zh) * | 2015-04-06 | 2018-03-27 | 比特记号公司 | 用于分散式所有权记录和鉴定的***和方法 |
CN108768933A (zh) * | 2018-04-11 | 2018-11-06 | 深圳技术大学(筹) | 一种区块链平台上自主可监管数字身份认证*** |
CN108809953A (zh) * | 2018-05-22 | 2018-11-13 | 飞天诚信科技股份有限公司 | 一种基于区块链的匿名身份认证的方法及装置 |
EP3518188A1 (en) * | 2018-01-29 | 2019-07-31 | Accenture Global Solutions Limited | Blockchain-based anonymized cryptologic voting |
-
2020
- 2020-06-08 CN CN202010511958.2A patent/CN111884991B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107851284A (zh) * | 2015-04-06 | 2018-03-27 | 比特记号公司 | 用于分散式所有权记录和鉴定的***和方法 |
CN107342859A (zh) * | 2017-07-07 | 2017-11-10 | 安徽大学 | 一种匿名认证方法及其应用 |
CN107743066A (zh) * | 2017-11-07 | 2018-02-27 | 中证技术股份有限公司 | 一种可监管的匿名签名方法及*** |
EP3518188A1 (en) * | 2018-01-29 | 2019-07-31 | Accenture Global Solutions Limited | Blockchain-based anonymized cryptologic voting |
CN108768933A (zh) * | 2018-04-11 | 2018-11-06 | 深圳技术大学(筹) | 一种区块链平台上自主可监管数字身份认证*** |
CN108809953A (zh) * | 2018-05-22 | 2018-11-13 | 飞天诚信科技股份有限公司 | 一种基于区块链的匿名身份认证的方法及装置 |
Non-Patent Citations (2)
Title |
---|
QIUYUN LYU: "Remotely Access "My" Smart Home in Private: An Anti-Tracking Authentication and Key Agreement Scheme.", 《IEEE ACCESS》 * |
王震等: "可监管匿名认证方案", 《软件学报》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114567640A (zh) * | 2022-03-09 | 2022-05-31 | 杭州电子科技大学 | 一种兼具隐私保护和监管的nft确权与流通方法 |
CN114567640B (zh) * | 2022-03-09 | 2024-02-13 | 杭州电子科技大学 | 一种兼具隐私保护和监管的nft确权与流通方法 |
CN116074119A (zh) * | 2023-03-07 | 2023-05-05 | 天津电力工程监理有限公司 | 基于区块链的研究型审计双向认证方法、装置及可读介质 |
CN116909161A (zh) * | 2023-09-11 | 2023-10-20 | 南昌理工学院 | 基于可穿戴设备的智能家居控制方法、*** |
CN116909161B (zh) * | 2023-09-11 | 2023-12-12 | 南昌理工学院 | 基于可穿戴设备的智能家居控制方法、*** |
Also Published As
Publication number | Publication date |
---|---|
CN111884991B (zh) | 2022-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109347809B (zh) | 一种面向自主可控环境下的应用虚拟化安全通信方法 | |
CN104506534B (zh) | 安全通信密钥协商交互方案 | |
EP3005608B1 (en) | Authentication | |
CN111884991B (zh) | 一种面向智能家居的用户可监管匿名身份认证方法 | |
CN102026195B (zh) | 基于一次性口令的移动终端身份认证方法和*** | |
CN111682938B (zh) | 面向中心化移动定位***的三方可认证密钥协商方法 | |
CN101902476B (zh) | 移动p2p用户身份认证方法 | |
US8971540B2 (en) | Authentication | |
CN113612605A (zh) | 使用对称密码技术增强mqtt协议身份认证方法、***和设备 | |
CN112989426B (zh) | 授权认证方法及装置、资源访问令牌的获取方法 | |
CN112351037B (zh) | 用于安全通信的信息处理方法及装置 | |
CN110380859B (zh) | 基于非对称密钥池对和dh协议的量子通信服务站身份认证方法和*** | |
CN114049121B (zh) | 基于区块链的账户重置方法和设备 | |
CN106789032A (zh) | 服务器与移动设备间秘密共享的单一口令三方认证方法 | |
CN111277583B (zh) | 一种移动云计算的监控***身份认证方法 | |
CN116527279A (zh) | 工控网络中安全数据聚合的可验证联邦学习装置及方法 | |
CN116388995A (zh) | 一种基于puf的轻量级智能电网认证方法 | |
CN110866754A (zh) | 一种基于动态口令的纯软件dpva身份认证方法 | |
Ma et al. | A robust authentication scheme for remote diagnosis and maintenance in 5G V2N | |
CN112733129B (zh) | 一种服务器带外管理的可信接入方法 | |
CN110784305B (zh) | 基于不经意伪随机函数和签密的单点登录认证方法 | |
CN111062029A (zh) | 一种基于标识密码的多因子认证协议 | |
CN115955320A (zh) | 一种视频会议身份认证方法 | |
CN116484426A (zh) | 一种基于可信执行环境的医疗数据联邦学习方法及*** | |
Srinivas et al. | An authentication framework for roaming service in global mobility networks |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230825 Address after: Room 2002, Zone A, Huazhou Business Center, No. 1038 Jiangnan Avenue, Changhe Street, Binjiang District, Hangzhou City, Zhejiang Province, 310051 Patentee after: Zhejiang Qiangua Information Technology Co.,Ltd. Address before: 310018 No. 2 street, Xiasha Higher Education Zone, Hangzhou, Zhejiang Patentee before: HANGZHOU DIANZI University |