CN110069918A - 一种基于区块链技术的高效双因子跨域认证方法 - Google Patents

一种基于区块链技术的高效双因子跨域认证方法 Download PDF

Info

Publication number
CN110069918A
CN110069918A CN201910287332.5A CN201910287332A CN110069918A CN 110069918 A CN110069918 A CN 110069918A CN 201910287332 A CN201910287332 A CN 201910287332A CN 110069918 A CN110069918 A CN 110069918A
Authority
CN
China
Prior art keywords
domain
user
client
information
clienta
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
Application number
CN201910287332.5A
Other languages
English (en)
Other versions
CN110069918B (zh
Inventor
马小峰
徐晶晶
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wutong Chain Digital Technology Research Institute Suzhou Co ltd
Original Assignee
Suzhou Tongji Block Chain Research Institute Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Suzhou Tongji Block Chain Research Institute Co Ltd filed Critical Suzhou Tongji Block Chain Research Institute Co Ltd
Priority to CN201910287332.5A priority Critical patent/CN110069918B/zh
Publication of CN110069918A publication Critical patent/CN110069918A/zh
Application granted granted Critical
Publication of CN110069918B publication Critical patent/CN110069918B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/45Structures or tools for the administration of authentication
    • G06F21/46Structures or tools for the administration of authentication by designing passwords or checking the strength of passwords
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0645Rental transactions; Leasing transactions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords

Abstract

本发明涉及一种基于区块链技术的高效双因子跨域认证方法,其特征在于,包括以下步骤:步骤1:***整体架构设计;步骤2:***工作流程;步骤21:用户注册流程;步骤22:用户本地认证;步骤23:用户异地跨域认证。本发明的设备编号与口令双因子跨域认证方案,在提高用户跨域认证的效率的同时,保证用户跨域认证的安全性。

Description

一种基于区块链技术的高效双因子跨域认证方法
技术领域
本发明属于PKI认证跨域认证领域,尤其涉及一种基于区块链技术的高效双因子跨域认证方法。
背景技术
电动汽车分时租赁共享平台中,要求用户可以跨平台使用车辆,即A电动汽车分时租赁公司的用户可以使用联盟内所有其他B、C、D等公司营运的车辆,这样可以最大程度满足用户日常出行需求,用户不必再用多家电动汽车租赁公司的APP、交多份押金,而B、C、D等公司也不必再花高昂获客成本即可获得A公司用户的租车业务。
然而在分布式环境中,各个公司、部门为了方便管理用户,设置相应的资源访问控制***,形成相对独立的域,显然为了实现上述用户跨平台使用车辆的目的,单一公司的资源不能提供完整的应用服务,用户在访问其他公司的资源时,需要进行跨域认证。传统PKI跨域认证存在证书管理困难、认证服务器交叉认证等问题,生物认证等新技术由于采用生物特征作为密钥交易造成用户身份隐私泄露等问题,因此如何高效、安全地实现用户跨域认证是本***首先要解决的关键问题。
当一家公司的用户通过跨域认证实现多家公司可用资源的访问使用的同时,需要保护用户的交易隐私信息。尽管以比特币为代表的交易***具备“化名性”,但是由于用户反复使用公钥哈希作为交易标识,交易之间显然能建立某种关联,恶攻击者可以通过攻击***,分析交易信息、监控交易流向来猜测窃取用户隐私。目前已有一些通过密码学技术、混币机制、数据分区来保护用户隐私安全的方案,但本***的特殊之处在于用户可能存在交通违法责任需要追溯,因此针对本***设计了基于可授权的双重加密机制。
目前较为成熟的跨域认证一般是借助于PKI认证体系。PKI是基于公钥理论建立的,它具有公钥管理、认证加密、完整性检测、安全时间戳等服务功能。PKI工作过程是围绕数字证书的生命周期展开的,其职责是通过CA(Certificate Authority)认证机构,将用户的公钥信息和用户的标识信息揉合在一起,形成可验证身份的数字证书,用于证明用户是谁。通过数字签名、加密,以及密钥和证书的管理,以保证信息传输安全。
通常,比较主流的PKI认证模型有三种,分别为分级认证模型、网状结构认证模型、桥CA认证模型。
分级结构中所有用户依赖于根CA,这个唯一的信任中心。分级结构认证模型,如图1-1所示,如果根CA出现故障或安全性减弱,那么整个PKI***将受到威胁。且从联盟***中难以构建一个所有机构都信任的根CA。
网状结构认证模型,如图1-2所示,与分级结构相比灵活性更强,若单个CA发生故障不会导致整个PKI***崩溃。但这种双向认证的模型证书路径的构建过于复杂,会导致证书路径发现困难,跨域认证时验证的证书链较长。
桥CA认证模型,如图1-3所示,是在分级认证模型与网状结构认证模型基础上衍生而来,可用于连接不同的PKI体系。与分级结构认证模型的不同之处在于,桥CA不作为整个***中信任中心和证书路径的根,与网状结构的认证模型相比,证书路径发现较为容易,与分级结构的认证模型相比,证书路径的发现就比较困难。
针对传统认证***跨域身份认证流程复杂、证书路径复杂管理困难等问题,区块链具有的去中心化、防篡改、可追溯等特性可以有效解决身份认证和管理中面临的密钥管理、信任、安全和隐私等问题,为身份认证和管理提供可信、透明性、分布式存储等支持。目前已有学者对区块链在跨域认证方面进行了研究,如周致成、张昊迪等分别基于模糊提取理论并结合区块链技术,提出了生物特征双因子身份认证机制方案,并分析了方案的安全性和效率性。
但周、张等人的方案并不完全适用于本文所设计的***,其中最为主要的原因有三点,一是电动汽车分时租赁共享平台所涉及到的用户众多,用户所用设备参差不齐,没有统一的生物特征采集装备;二是生物特征与其他特征不同,对于用户个人而言与生俱来无法更改,当涉及生物特征采集时用户会有担心生物特征泄露的顾虑,不利于***的推广;三是在认证过程中需要频繁使用模糊提取技术与恢复算法,在海量用户高并发请求的情况下,效率较低。
发明内容
为解决上述技术问题,本发明的目的是提供一种基于区块链技术的高效双因子跨域认证方法。
为实现上述目的,本发明采用如下技术方案:
一种基于区块链技术的高效双因子跨域认证方法,包括以下步骤:
步骤1:***整体架构设计;
依照Diffie-Hellman算法的A,B会话密钥协商机制的步骤为:
第11步:随机选取大素数n和原始根g,两个信息公开,且A、B已经对两个信息约定好;
第12步:A随机生成一个数x,计算X=gxmodn,然后把X发送给B;
第13步:B随机生成一个数y,计算Y=gymodn,然后把Y发送给B;
第14步:A计算K=Yxmodn;
第15步:B计算K’=Xymodn;
步骤2:***工作流程;
步骤21:用户注册流程;
第1步:A域用户i在本地客户端ClientA上输入用户名ID和静态口令密码PW;
第2步:客户端ClientA提取用户设备编号DID,将设备编号与静态口令密码分别作哈希运算生成H(DID)、H(PW),删除本地缓存,通过Diffie-Hellman算法与A域认证服务器ServerA协商会话密钥K,并将ID、H(PW)、H(DID)等信息通过会话密钥加密发送给A域认证服务器ServerA;
第3步:A域认证服务器ServerA收到客户端ClientA发送来的消息,使用协商好的会话密钥进行解密,得到ID、H(PW)、H(DID),查询ID是否已经存在,是则返回用户已注册信息,否则可以注册;注册时首先对用户H(DID)使用A域节点公钥PUBA加密用户H(DID)得到EA(H(DID)),然后ServerA节点执行智能合约,发起注册交易并背书;当共识节点完成验证生成区块后,返回给客户端ClientA注册成功的信息;
第4步:客户端ClientA收到注册成功的消息,补充用户其他信息Info,通过安全信道发送给A域认证服务器ServerA;
第5步:A域认证服务器ServerA将用户补充的其他信息Info使用A域节点公钥PUBA进行加密得到EA(Info),然后ServerA节点执行智能合约,发起更新用户信息交易并背书;
步骤22:用户本地认证:
第1步:A域用户i在本地客户端ClientA上输入用户名ID和静态口令密码PW;
第2步:客户端ClientA提取用户设备编号DID,将设备编号与静态口令密码分别作哈希运算生成H(DID)、H(PW),删除本地缓存,通过Diffie-Hellman算法与A域认证服务器ServerA协商会话密钥K,并将ID、H(PW)、H(DID)等信息通过会话密钥加密发送给A域认证服务器ServerA;
第3步:A域认证服务器ServerA收到客户端ClientA发送来的消息,使用协商好的会话密钥进行解密,得到ID、H(PW)、H(DID),查询区块链公共账本中ID是否已经存在,若不存在,返回用户未注册消息,若存在则从区块链公共账本拉取ID对应的H(PW)’、EA(H(DID))’、所属域等信息;
第4步:A域认证服务器ServerA比对客户端ClientA发送来的H(PW)与从区块链拉取的H(PW)’,若相同则进一步使用A域节点公钥PUBA加密用户H(DID)得到EA(H(DID)),比对EA(H(DID))与EA(H(DID))’,若相等则返回认证成功消息;
步骤23:用户异地跨域认证;
第1步:A域注册用户i在B域客户端ClientB上输入登陆信息ID和PW;
第2步:客户端ClientB提取用户设备编号DID,作哈希运算生成H(DID)、H(PW),删除本地缓存,通过Diffie-Hellman算法与B域认证服务器ServerB协商会话密钥K,并将ID、H(PW)、H(DID)等信息通过会话密钥加密发送给B域认证服务器ServerB;
第3步:B域认证服务器ServerB收到客户端ClientB发送来的消息,使用协商好的会话密钥进行解密,得到ID、H(PW)、H(DID),查询区块链公共账本中ID是否已经存在,若不存在,返回用户未注册消息,若存在则从区块链公共账本拉取ID对应的H(PW)’、EA(H(DID))’、所属域等信息;
第4步:B域认证服务器ServerB比对客户端ClientB发送来的H(PW)与从区块链拉取的H(PW)’,若相同则进一步使用A域节点公钥PUBA加密用户H(DID)得到EA(H(DID)),比对EA(H(DID))与EA(H(DID))’,若相等则返回认证成功消息。
优选地,所述的一种基于区块链技术的高效双因子跨域认证方法,所述步骤2中还设有步骤24用户更换设备认证。
优选地,所述的一种基于区块链技术的高效双因子跨域认证方法,所述步骤24用户更换设备认证包括以下步骤:
第1步:当A域用户i更换设备后,在本地客户端ClientA上输入用户名ID和静态口令密码PW;
第2步:客户端ClientA提取用户设备编号DID,分别作哈希运算生成H(DID)、H(PW),删除本地缓存,通过Diffie-Hellman算法与A域认证服务器ServerA协商会话密钥K,并将ID、H(PW)、H(DID)等信息通过会话密钥加密发送给A域认证服务器ServerA;
第3步:A域认证服务器ServerA收到ClientA发送来的消息,使用协商好的会话密钥进行解密,得到ID、H(PW)、H(DID),查询区块链公共账本中ID是否已经存在,若不存在,返回用户未注册消息,若存在则从区块链公共账本拉取ID对应的H(PW)’、EA(H(DID))’、所属域等信息。
第4步:A域认证服务器ServerA比对客户端ClientA发送来的H(PW)与从区块链拉取的H(PW)’,若相同则进一步使用A域节点公钥PUBA加密用户H(DID)得到EA(H(DID)),比对EA(H(DID))与EA(H(DID))’,由于用户已经更换了设备,ServerA使用A域节点公钥PRIA解密用户EA(Info),得到Info,提取其中密保问题QSecrect,并通过可信信道返回给客户端ClientA。
第5步:当A域用户i回答密保问题ASecrect,客户端ClientA将密保问题答案哈希化,ID、H(PW)、H(DID)、H(ASecrect)等信息通过会话密钥加密发送给A域认证服务器ServerA;
第6步:A域认证服务器ServerA比对客户端ClientA发送来的H(ASecrect)与记录在区块链的密保答案H(ASecrect)’,若通过则执行用户信息更新智能合约,更新用户的H(DID),当共识节点完成验证生成区块后返回给用户成功更换绑定设备信息。
借由上述方案,本发明至少具有以下优点:
本发明设备ID的哈希值再经过注册域服务器的公钥进行加密,只有持有私钥才能解密设备ID哈希值,因此即使黑客盗取数据库,也无法解密出用户的第二认证因子的具体内容,且在用户和服务器交互时采用了Diffie-Hellman协商会话密钥,因此黑客难以通过窃听窃取用户用来认证的真正条件,有效保证了用户的信息安全。本发明异地跨域过程中认证域服务器主要和区块链节点交互,由于联盟区块链网络中节点众多,当一个节点响应超时时,可以迅速切换到别的节点进行信息请求,因此本文方案的可靠性较强。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,并可依照说明书的内容予以实施,以下以本发明的较佳实施例并配合附图详细说明如后。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1-1是分级结构认证模型;
图1-2是网状结构认证模型;
图1-3是桥CA认证模型的结构示意图;
图2是本发明的双因子跨域认证架构图;
图3是本发明用户注册流程流程图;
图4是本发明用户本地认证流程图;
图5是本发明用户异地跨域认证流程图;
图6是本发明的用户更换设备的流程图;
图7是周致成方案本地认证流程图;
图8是周致成方案异地跨域认证流程图;
图9是张昊迪方案本地认证流程图;
图10是张昊迪方案异地跨域认证流程图;
图11是计算开销耗时对比图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例
一种基于区块链技术的高效双因子跨域认证方法,包括以下步骤:
步骤1:***整体架构设计;
步骤2:***工作流程;
步骤21:用户注册流程;
步骤22:用户本地认证:
步骤23:用户异地跨域认证。
如图2所示,***整体架构设计,依照Diffie-Hellman算法的A,B会话密钥协商机制的步骤为:
第11步:随机选取大素数n和原始根g,两个信息公开,且A、B已经对两个信息约定好;
第12步:A随机生成一个数x,计算X=gxmodn,然后把X发送给B;
第13步:B随机生成一个数y,计算Y=gymodn,然后把Y发送给B;
第14步:A计算K=Yxmodn;
第15步:B计算K’=Xymodn;
显然K=Yxmodn=(gy)xmodn=(gx)ymodn=Xymodn=K’,即A、B协商之后得到相同的会话加密密钥,而窃听者只能听到n,g,X,Y,无法计算离散对数反推出两方的x,y,因此双方协商的会话密钥很难被计算出来。
如图3所示,步骤21:用户注册流程;
第1步:A域用户i在本地客户端ClientA上输入用户名ID和静态口令密码PW;
第2步:客户端ClientA提取用户设备编号DID,将设备编号与静态口令密码分别作哈希运算生成H(DID)、H(PW),删除本地缓存,通过Diffie-Hellman算法与A域认证服务器ServerA协商会话密钥K,并将ID、H(PW)、H(DID)等信息通过会话密钥加密发送给A域认证服务器ServerA;
第3步:A域认证服务器ServerA收到客户端ClientA发送来的消息,使用协商好的会话密钥进行解密,得到ID、H(PW)、H(DID),查询ID是否已经存在,是则返回用户已注册信息,否则可以注册;注册时首先对用户H(DID)使用A域节点公钥PUBA加密用户H(DID)得到EA(H(DID)),然后ServerA节点执行智能合约,发起注册交易并背书;当共识节点完成验证生成区块后,返回给客户端ClientA注册成功的信息;
第4步:客户端ClientA收到注册成功的消息,补充用户其他信息Info,通过安全信道发送给A域认证服务器ServerA;
第5步:A域认证服务器ServerA将用户补充的其他信息Info使用A域节点公钥PUBA进行加密得到EA(Info),然后ServerA节点执行智能合约,发起更新用户信息交易并背书;
如图4所示,步骤22:用户本地认证:
第1步:A域用户i在本地客户端ClientA上输入用户名ID和静态口令密码PW;
第2步:客户端ClientA提取用户设备编号DID,将设备编号与静态口令密码分别作哈希运算生成H(DID)、H(PW),删除本地缓存,通过Diffie-Hellman算法与A域认证服务器ServerA协商会话密钥K,并将ID、H(PW)、H(DID)等信息通过会话密钥加密发送给A域认证服务器ServerA;
第3步:A域认证服务器ServerA收到客户端ClientA发送来的消息,使用协商好的会话密钥进行解密,得到ID、H(PW)、H(DID),查询区块链公共账本中ID是否已经存在,若不存在,返回用户未注册消息,若存在则从区块链公共账本拉取ID对应的H(PW)’、EA(H(DID))’、所属域等信息;
第4步:A域认证服务器ServerA比对客户端ClientA发送来的H(PW)与从区块链拉取的H(PW)’,若相同则进一步使用A域节点公钥PUBA加密用户H(DID)得到EA(H(DID)),比对EA(H(DID))与EA(H(DID))’,若相等则返回认证成功消息;
如图5所示,步骤23:用户异地跨域认证;
第1步:A域注册用户i在B域客户端ClientB上输入登陆信息ID和PW;
第2步:客户端ClientB提取用户设备编号DID,作哈希运算生成H(DID)、H(PW),删除本地缓存,通过Diffie-Hellman算法与B域认证服务器ServerB协商会话密钥K,并将ID、H(PW)、H(DID)等信息通过会话密钥加密发送给B域认证服务器ServerB;
第3步:B域认证服务器ServerB收到客户端ClientB发送来的消息,使用协商好的会话密钥进行解密,得到ID、H(PW)、H(DID),查询区块链公共账本中ID是否已经存在,若不存在,返回用户未注册消息,若存在则从区块链公共账本拉取ID对应的H(PW)’、EA(H(DID))’、所属域等信息;
第4步:B域认证服务器ServerB比对客户端ClientB发送来的H(PW)与从区块链拉取的H(PW)’,若相同则进一步使用A域节点公钥PUBA加密用户H(DID)得到EA(H(DID)),比对EA(H(DID))与EA(H(DID))’,若相等则返回认证成功消息。
如图6所示,步骤2中还设有步骤24用户更换设备认证,包括以下步骤:
第1步:当A域用户i更换设备后,在本地客户端ClientA上输入用户名ID和静态口令密码PW;
第2步:客户端ClientA提取用户设备编号DID,分别作哈希运算生成H(DID)、H(PW),删除本地缓存,通过Diffie-Hellman算法与A域认证服务器ServerA协商会话密钥K,并将ID、H(PW)、H(DID)等信息通过会话密钥加密发送给A域认证服务器ServerA;
第3步:A域认证服务器ServerA收到ClientA发送来的消息,使用协商好的会话密钥进行解密,得到ID、H(PW)、H(DID),查询区块链公共账本中ID是否已经存在,若不存在,返回用户未注册消息,若存在则从区块链公共账本拉取ID对应的H(PW)’、EA(H(DID))’、所属域等信息。
第4步:A域认证服务器ServerA比对客户端ClientA发送来的H(PW)与从区块链拉取的H(PW)’,若相同则进一步使用A域节点公钥PUBA加密用户H(DID)得到EA(H(DID)),比对EA(H(DID))与EA(H(DID))’,由于用户已经更换了设备,ServerA使用A域节点公钥PRIA解密用户EA(Info),得到Info,提取其中密保问题QSecrect,并通过可信信道返回给客户端ClientA。
第5步:当A域用户i回答密保问题ASecrect,客户端ClientA将密保问题答案哈希化,ID、H(PW)、H(DID)、H(ASecrect)等信息通过会话密钥加密发送给A域认证服务器ServerA;
第6步:A域认证服务器ServerA比对客户端ClientA发送来的H(ASecrect)与记录在区块链的密保答案H(ASecrect)’,若通过则执行用户信息更新智能合约,更新用户的H(DID),当共识节点完成验证生成区块后返回给用户成功更换绑定设备信息。
本发明中对上述技术的安全性和效率分析如下:
安全性分析
抗重放攻击:重放攻击(Replay Attacks)主要是指通过拦截或者窃听获取***可能接收的信息包,然后高频发送该信息包使***使***忙于应答而无法响应真实的请求包。由在用户注册、认证过程中,会话密钥都通过Diffie-Hellman算法生成随机短密钥,因此每次会话中生成的密钥是不唯一的,进而实现防止重放攻击,保证密钥的前向安全性。
抗中间人攻击:中间人攻击(Man-in-the-Middle Attack,MITM)主要是指通过拦截或者窃听通信过程中的数据并对数据的真实内容进行篡改,将篡改之后的内容再发送给接收方,在数据没有加密的情况下接收方和发送方很难发现数据已经被篡改。本发明在用户注册和用户通过Diffie-Hellman协商会话密钥,中间人想进行数据篡改前必须先破译会话密钥,由于有限域上离散对数的难解性中间人难以解密会话内容。另一方面,由于用户静态口令与设备信息都是通过哈希化加密处理,且在跨域认证时设备信息通过非对称加密算法后得到的密文进行传输,因此即使攻击者能够截取信息,也不能对信息进行篡改。除非认证节点被攻破,公私钥泄露,则该所属该节点的用户信息可能被篡改。由于本发明的应用场景是商业联盟链,安全级别较高,节点间可信度高,因此不考虑此种特殊情况。
抗口令猜测攻击:口令猜测攻击即为密码猜测攻击,通常情况攻击者通过各种情况获得用户的口令密码之后攻击者便掌握该用户的所有账户信息,***很难分辨攻击者与真实的用户,因此保护用户登陆口令不被泄露极为重要。在本发明设计中,用户在输入登陆口令密钥之后,客户端完成哈希运算后便即时删除本地缓存,攻击者无法直接获取用户登陆口令。而哈希化之后的口令逆向恢复困难,即使攻击者破解会话密钥后得到用户哈希化之后的登陆口令,也难以从中恢复用户登陆口令。
隐私保护与一致性:在注册阶段,用户的绑定设备哈希化值与补充信息经过注册域公钥进行非对称加密,加密后的信息存储在区块链公共账本上,只有注册域持有对应私钥才能对信息进行解密。在跨域进行认证时,其他域无需知道设备具体哈希化值和用户的隐私信息,只需要比对用户认证时传来的值经过其注册域加公钥加密后的结果是否和链上信息一致,即可判定用户是否通过认证。这种机制既实现了用户隐私数据的保护,又保证了数据一致性,交易的公开透明性。
效率分析
如图7至图10,与背景技术中提及的周、张两人的本地认证流程图和异地跨域认证流程图的方案相比,由于本方面所采用的设备ID作为用户认证的第二个因子具有不变性且值确定,因此无需用户所属域解密成明文便可以直接通过比较公钥加密后的密文来对用户进行认证,在用户跨域认证时无需用户注册域参与验证过程,减少了用户跨域认证时的信息交互频次与通信开销,见表1(本地认证时计算开销对比)和表2(在异地跨域认证时计算开销对比)。
表1:
表.2
如下表3(典型算法运算速率比较)所示,经过在RAM为8GB、处理器为2核3.6GB的Windows***下,加密明文长度为160bytes,各运行10000次,实验可以得到各种类型计算操作的时间开销。
表3
算法 耗时/s
AES对称加密 0.027
AES对称解密 0.105
RSA非对称加密 2.25
RSA非对称解密 98.757
SHA256哈希运算 0.044
指数运算(101^500) 0.056
由上表可知,对称加密速度最快,哈希运算与指数运算运算速率较快,AES解密速度大约为哈希运算与指数运算的1/2,非对称加密速度大约为哈希运算与指数运算的1/4,而非对称解密速度则是哈希运算与指数运算的将近1/20。在不计入模糊提取操作时三种方案计算开销耗时对比如图11所示。
在以上3种方案中,由于张昊迪方案多次采用非对称加密与非对称解密计算,因此该方案耗时最多,效率最低。而本发明方案与周致成方案在本地认证时多做了一次哈希运算,少做了一次模糊提取运算;在异地跨域认证时,其他类型运算次数相同,少做了一次模糊提取运算。即使不考虑指纹的模糊提取恢复操作一般比较耗时,本发明的效率也与周致成方案相当。
但周致成方案有2个比较明显的缺点,一是其方案中的用户的静态口令哈希值y、以及用户经过指纹经过模糊提取恢复出的用户随机密钥R都直接明文存储于注册域的服务器,此时若注册域服务器被攻破,用户的静态口令哈希值y、用户的随机密钥R被黑客盗取,则黑客可以直接模拟客户端使用ID、y、R等信息来假装用户登陆,用户的信息安全将受到极大的威胁;二是在异地跨域认证过程中,客户端直接明文发送ID、y、R等信息给认证域,若在过程中被黑客监听,则用户的信息有泄露风险。而本发明案中,设备ID的哈希值再经过注册域服务器的公钥进行加密,只有持有私钥才能解密设备ID哈希值,因此即使黑客盗取数据库,也无法解密出用户的第二认证因子的具体内容,且在用户和服务器交互时采用了Diffie-Hellman协商会话密钥,因此黑客难以通过窃听窃取用户用来认证的真正条件,有效保证了用户的信息安全。此外,在异地跨域认证时,周致成方案需要注册域的认证服务器参与认证过程,因为注册域服务器可能存在繁忙、宕机、网络延迟等状况,因此实际跨域认证时间可能比较久,可靠性较弱;而本发明异地跨域过程中认证域服务器主要和区块链节点交互,由于联盟区块链网络中节点众多,当一个节点响应超时时,可以迅速切换到别的节点进行信息请求,因此本发明的可靠性较强。从以上分析可知,本发明的安全性、效率、可靠性均超出周致成方案。
以上所述仅是本发明的优选实施方式,并不用于限制本发明,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变型,这些改进和变型也应视为本发明的保护范围。

Claims (3)

1.一种基于区块链技术的高效双因子跨域认证方法,其特征在于,包括以下步骤:
步骤1:***整体架构设计;
依照Diffie-Hellman算法的A,B会话密钥协商机制的步骤为:
第11步:随机选取大素数n和原始根g,两个信息公开,且A、B已经对两个信息约定好;
第12步:A随机生成一个数x,计算X=gxmodn,然后把X发送给B;
第13步:B随机生成一个数y,计算Y=gymodn,然后把Y发送给B;
第14步:A计算K=Yxmodn;
第15步:B计算K’=Xymodn;
步骤2:***工作流程;
步骤21:用户注册流程;
第1步:A域用户i在本地客户端ClientA上输入用户名ID和静态口令密码PW;
第2步:客户端ClientA提取用户设备编号DID,将设备编号与静态口令密码分别作哈希运算生成H(DID)、H(PW),删除本地缓存,通过Diffie-Hellman算法与A域认证服务器ServerA协商会话密钥K,并将ID、H(PW)、H(DID)等信息通过会话密钥加密发送给A域认证服务器ServerA;
第3步:A域认证服务器ServerA收到客户端ClientA发送来的消息,使用协商好的会话密钥进行解密,得到ID、H(PW)、H(DID),查询ID是否已经存在,是则返回用户已注册信息,否则可以注册;注册时首先对用户H(DID)使用A域节点公钥PUBA加密用户H(DID)得到EA(H(DID)),然后ServerA节点执行智能合约,发起注册交易并背书;当共识节点完成验证生成区块后,返回给客户端ClientA注册成功的信息;
第4步:客户端ClientA收到注册成功的消息,补充用户其他信息Info,通过安全信道发送给A域认证服务器ServerA;
第5步:A域认证服务器ServerA将用户补充的其他信息Info使用A域节点公钥PUBA进行加密得到EA(Info),然后ServerA节点执行智能合约,发起更新用户信息交易并背书;
步骤22:用户本地认证;
第1步:A域用户i在本地客户端ClientA上输入用户名ID和静态口令密码PW;
第2步:客户端ClientA提取用户设备编号DID,将设备编号与静态口令密码分别作哈希运算生成H(DID)、H(PW),删除本地缓存,通过Diffie-Hellman算法与A域认证服务器ServerA协商会话密钥K,并将ID、H(PW)、H(DID)等信息通过会话密钥加密发送给A域认证服务器ServerA;
第3步:A域认证服务器ServerA收到客户端ClientA发送来的消息,使用协商好的会话密钥进行解密,得到ID、H(PW)、H(DID),查询区块链公共账本中ID是否已经存在,若不存在,返回用户未注册消息,若存在则从区块链公共账本拉取ID对应的H(PW)’、EA(H(DID))’、所属域等信息;
第4步:A域认证服务器ServerA比对客户端ClientA发送来的H(PW)与从区块链拉取的H(PW)’,若相同则进一步使用A域节点公钥PUBA加密用户H(DID)得到EA(H(DID)),比对EA(H(DID))与EA(H(DID))’,若相等则返回认证成功消息;
步骤23:用户异地跨域认证;
第1步:A域注册用户i在B域客户端ClientB上输入登陆信息ID和PW;
第2步:客户端ClientB提取用户设备编号DID,作哈希运算生成H(DID)、H(PW),删除本地缓存,通过Diffie-Hellman算法与B域认证服务器ServerB协商会话密钥K,并将ID、H(PW)、H(DID)等信息通过会话密钥加密发送给B域认证服务器ServerB;
第3步:B域认证服务器ServerB收到客户端ClientB发送来的消息,使用协商好的会话密钥进行解密,得到ID、H(PW)、H(DID),查询区块链公共账本中ID是否已经存在,若不存在,返回用户未注册消息,若存在则从区块链公共账本拉取ID对应的H(PW)’、EA(H(DID))’、所属域等信息;
第4步:B域认证服务器ServerB比对客户端ClientB发送来的H(PW)与从区块链拉取的H(PW)’,若相同则进一步使用A域节点公钥PUBA加密用户H(DID)得到EA(H(DID)),比对EA(H(DID))与EA(H(DID))’,若相等则返回认证成功消息。
2.根据权利要求1所述的一种基于区块链技术的高效双因子跨域认证方法,其特征在于:所述步骤2中还设有步骤24用户更换设备认证。
3.根据权利要求2所述的一种基于区块链技术的高效双因子跨域认证方法,其特征在于:所述步骤24用户更换设备认证包括以下步骤:
第1步:当A域用户i更换设备后,在本地客户端ClientA上输入用户名ID和静态口令密码PW;
第2步:客户端ClientA提取用户设备编号DID,分别作哈希运算生成H(DID)、H(PW),删除本地缓存,通过Diffie-Hellman算法与A域认证服务器ServerA协商会话密钥K,并将ID、H(PW)、H(DID)等信息通过会话密钥加密发送给A域认证服务器ServerA;
第3步:A域认证服务器ServerA收到ClientA发送来的消息,使用协商好的会话密钥进行解密,得到ID、H(PW)、H(DID),查询区块链公共账本中ID是否已经存在,若不存在,返回用户未注册消息,若存在则从区块链公共账本拉取ID对应的H(PW)’、EA(H(DID))’、所属域等信息。
第4步:A域认证服务器ServerA比对客户端ClientA发送来的H(PW)与从区块链拉取的H(PW)’,若相同则进一步使用A域节点公钥PUBA加密用户H(DID)得到EA(H(DID)),比对EA(H(DID))与EA(H(DID))’,由于用户已经更换了设备,ServerA使用A域节点公钥PRIA解密用户EA(Info),得到Info,提取其中密保问题QSecrect,并通过可信信道返回给客户端ClientA。
第5步:当A域用户i回答密保问题ASecrect,客户端ClientA将密保问题答案哈希化,ID、H(PW)、H(DID)、H(ASecrect)等信息通过会话密钥加密发送给A域认证服务器ServerA;
第6步:A域认证服务器ServerA比对客户端ClientA发送来的H(ASecrect)与记录在区块链的密保答案H(ASecrect)’,若通过则执行用户信息更新智能合约,更新用户的H(DID),当共识节点完成验证生成区块后返回给用户成功更换绑定设备信息。
CN201910287332.5A 2019-04-11 2019-04-11 一种基于区块链技术的高效双因子跨域认证方法 Active CN110069918B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910287332.5A CN110069918B (zh) 2019-04-11 2019-04-11 一种基于区块链技术的高效双因子跨域认证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910287332.5A CN110069918B (zh) 2019-04-11 2019-04-11 一种基于区块链技术的高效双因子跨域认证方法

Publications (2)

Publication Number Publication Date
CN110069918A true CN110069918A (zh) 2019-07-30
CN110069918B CN110069918B (zh) 2020-12-04

Family

ID=67367343

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910287332.5A Active CN110069918B (zh) 2019-04-11 2019-04-11 一种基于区块链技术的高效双因子跨域认证方法

Country Status (1)

Country Link
CN (1) CN110069918B (zh)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110413649A (zh) * 2019-08-01 2019-11-05 宁波富万信息科技有限公司 一种基于区块链的金融大数据处理方法及其***平台
CN110597883A (zh) * 2019-09-19 2019-12-20 腾讯科技(深圳)有限公司 基于区块链的车辆租赁数据处理方法、装置和存储介质
CN111083700A (zh) * 2019-12-30 2020-04-28 全链通有限公司 基于区块链的5g终端设备接入方法、设备及存储介质
CN111132166A (zh) * 2019-12-30 2020-05-08 江苏全链通信息科技有限公司 5g通信双通道接入方法、设备及存储介质
CN111464535A (zh) * 2020-03-31 2020-07-28 中国电子科技集团公司第三十研究所 一种基于区块链的跨域信任传递方法
CN111695152A (zh) * 2020-05-26 2020-09-22 东南大学 一种基于安全代理的MySQL数据库防护方法
CN112019349A (zh) * 2020-08-28 2020-12-01 南京工程学院 一种基于跨链技术的电力物联网跨域认证方法
CN112765671A (zh) * 2021-02-08 2021-05-07 上海万向区块链股份公司 本地化数据隐私加密方法及***
CN112989317A (zh) * 2021-03-24 2021-06-18 中国电子科技集团公司第三十研究所 一种统一的分布式pki证书身份管理***
CN113569210A (zh) * 2021-07-09 2021-10-29 远光软件股份有限公司 分布式身份认证方法、设备访问方法及装置
CN113972991A (zh) * 2020-07-23 2022-01-25 南京理工大学 一种基于多级联盟链的跨域身份认证方法
CN114553527A (zh) * 2022-02-22 2022-05-27 中国人民解放军78111部队 一种基于区块链的跨ca信任域的身份认证服务***
CN116112167A (zh) * 2023-04-13 2023-05-12 恒生电子股份有限公司 密钥管理***、方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107733657A (zh) * 2017-10-24 2018-02-23 沈阳师范大学 一种云端基于ptpm和无证书公钥签名双因子认证方法
WO2018201147A2 (en) * 2017-04-28 2018-11-01 Neuromesh Inc. Methods, apparatus, and systems for controlling internet-connected devices having embedded systems with dedicated functions
CN108737436A (zh) * 2018-05-31 2018-11-02 西安电子科技大学 基于信任联盟区块链的跨域服务器身份认证方法
CN108989022A (zh) * 2018-06-08 2018-12-11 中国科学院计算技术研究所 一种基于区块链的智能物件共享密钥建立方法和***
CN109327457A (zh) * 2018-11-09 2019-02-12 广州大学 一种基于区块链的物联网设备身份认证方法及***

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018201147A2 (en) * 2017-04-28 2018-11-01 Neuromesh Inc. Methods, apparatus, and systems for controlling internet-connected devices having embedded systems with dedicated functions
CN107733657A (zh) * 2017-10-24 2018-02-23 沈阳师范大学 一种云端基于ptpm和无证书公钥签名双因子认证方法
CN108737436A (zh) * 2018-05-31 2018-11-02 西安电子科技大学 基于信任联盟区块链的跨域服务器身份认证方法
CN108989022A (zh) * 2018-06-08 2018-12-11 中国科学院计算技术研究所 一种基于区块链的智能物件共享密钥建立方法和***
CN109327457A (zh) * 2018-11-09 2019-02-12 广州大学 一种基于区块链的物联网设备身份认证方法及***

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
周致成 等: ""基于区块链技术的生物特征和口令双因子跨域认证方案"", 《计算机应用》 *
张昊迪 等: ""基于区块链技术的跨域身份认证机制研究"", 《广东通信技术》 *

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110413649A (zh) * 2019-08-01 2019-11-05 宁波富万信息科技有限公司 一种基于区块链的金融大数据处理方法及其***平台
CN110597883A (zh) * 2019-09-19 2019-12-20 腾讯科技(深圳)有限公司 基于区块链的车辆租赁数据处理方法、装置和存储介质
CN110597883B (zh) * 2019-09-19 2024-05-07 腾讯科技(深圳)有限公司 基于区块链的车辆租赁数据处理方法、装置和存储介质
CN111083700A (zh) * 2019-12-30 2020-04-28 全链通有限公司 基于区块链的5g终端设备接入方法、设备及存储介质
CN111132166A (zh) * 2019-12-30 2020-05-08 江苏全链通信息科技有限公司 5g通信双通道接入方法、设备及存储介质
CN111464535A (zh) * 2020-03-31 2020-07-28 中国电子科技集团公司第三十研究所 一种基于区块链的跨域信任传递方法
CN111695152A (zh) * 2020-05-26 2020-09-22 东南大学 一种基于安全代理的MySQL数据库防护方法
CN113972991A (zh) * 2020-07-23 2022-01-25 南京理工大学 一种基于多级联盟链的跨域身份认证方法
CN112019349A (zh) * 2020-08-28 2020-12-01 南京工程学院 一种基于跨链技术的电力物联网跨域认证方法
CN112019349B (zh) * 2020-08-28 2022-12-13 南京工程学院 一种基于跨链技术的电力物联网跨域认证方法
CN112765671A (zh) * 2021-02-08 2021-05-07 上海万向区块链股份公司 本地化数据隐私加密方法及***
CN112989317A (zh) * 2021-03-24 2021-06-18 中国电子科技集团公司第三十研究所 一种统一的分布式pki证书身份管理***
CN113569210A (zh) * 2021-07-09 2021-10-29 远光软件股份有限公司 分布式身份认证方法、设备访问方法及装置
CN114553527A (zh) * 2022-02-22 2022-05-27 中国人民解放军78111部队 一种基于区块链的跨ca信任域的身份认证服务***
CN116112167A (zh) * 2023-04-13 2023-05-12 恒生电子股份有限公司 密钥管理***、方法及装置

Also Published As

Publication number Publication date
CN110069918B (zh) 2020-12-04

Similar Documents

Publication Publication Date Title
CN110069918A (zh) 一种基于区块链技术的高效双因子跨域认证方法
CN112218294B (zh) 基于5g的物联网设备的接入方法、***及存储介质
CN111046352B (zh) 一种基于区块链的身份信息安全授权***与方法
Abdullah et al. Blockchain based approach to enhance big data authentication in distributed environment
Bhatia et al. Data security in mobile cloud computing paradigm: a survey, taxonomy and open research issues
CN109687965B (zh) 一种保护网络中用户身份信息的实名认证方法
CN102647461B (zh) 基于超文本传输协议的通信方法、服务器、终端
US8533806B2 (en) Method for authenticating a trusted platform based on the tri-element peer authentication(TEPA)
CN109361668A (zh) 一种数据可信传输方法
CN106452772B (zh) 终端认证方法和装置
CN101534192B (zh) 一种提供跨域令牌的***和方法
Kumar An Enhanced Remote User Authentication Scheme with Smart Card.
CN105681470A (zh) 基于超文本传输协议的通信方法、服务器、终端
CN109981287A (zh) 一种代码签名方法及其存储介质
CN114338242B (zh) 一种基于区块链技术的跨域单点登录访问方法及***
CN105554018A (zh) 网络实名验证方法
Alzuwaini et al. An Efficient Mechanism to Prevent the Phishing Attacks.
US20190007218A1 (en) Second dynamic authentication of an electronic signature using a secure hardware module
CN110572392A (zh) 一种基于Hyperledger网络的身份认证方法
Barreto et al. An intrusion tolerant identity management infrastructure for cloud computing services
CN108390866A (zh) 基于双代理双向匿名认证的可信远程证明方法
CN114270386A (zh) 用于同意架构的认证器应用
CN106936760A (zh) 一种登录Openstack云***虚拟机的装置和方法
CN113014394A (zh) 基于联盟链的电子数据存证方法及***
CN108566274B (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
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address

Address after: 11-12 / F, Lingyu Business Plaza, 66 qinglonggang Road, high speed rail new town, Xiangcheng District, Suzhou City, Jiangsu Province, 215100

Patentee after: Suzhou Shutong Digital Technology Co.,Ltd.

Address before: 11-12 / F, Lingyu Business Plaza, 66 qinglonggang Road, high speed rail new town, Xiangcheng District, Suzhou City, Jiangsu Province

Patentee before: SUZHOU TONGJI BLOCKCHAIN RESEARCH INSTITUTE Co.,Ltd.

CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 11-12 / F, Lingyu Business Plaza, 66 qinglonggang Road, high speed rail new town, Xiangcheng District, Suzhou City, Jiangsu Province

Patentee after: Wutong Chain Digital Technology Research Institute (Suzhou) Co.,Ltd.

Address before: 11-12 / F, Lingyu Business Plaza, 66 qinglonggang Road, high speed rail new town, Xiangcheng District, Suzhou City, Jiangsu Province, 215100

Patentee before: Suzhou Shutong Digital Technology Co.,Ltd.

CP03 Change of name, title or address