CN113010872A - 一种身份认证方法、装置、计算机设备及存储介质 - Google Patents
一种身份认证方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN113010872A CN113010872A CN202110381772.4A CN202110381772A CN113010872A CN 113010872 A CN113010872 A CN 113010872A CN 202110381772 A CN202110381772 A CN 202110381772A CN 113010872 A CN113010872 A CN 113010872A
- Authority
- CN
- China
- Prior art keywords
- node
- accounting
- accounting node
- identity authentication
- main
- 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
- 238000000034 method Methods 0.000 title claims abstract description 69
- 238000012795 verification Methods 0.000 claims abstract description 56
- 230000008569 process Effects 0.000 claims description 8
- 238000004891 communication Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 4
- 230000007246 mechanism Effects 0.000 abstract description 22
- 230000001960 triggered effect Effects 0.000 description 14
- 238000001514 detection method Methods 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 6
- 230000008520 organization Effects 0.000 description 5
- 230000006399 behavior Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000009825 accumulation Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/33—User authentication using certificates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请提供一种身份认证方法、装置、计算机设备及存储介质,应用于基于区块链平台构建的身份认证应用系统中的智能合约,身份认证应用系统由至少一个记账节点和至少一个用户节点构成。智能合约可以接收目标用户节点发送的身份校验请求;获取当前至少一个记账节点的主节点;主节点依赖于至少一个记账节点之间的信任投票确定;触发主节点对根据身份校验请求对目标用户节点进行身份校验。本申请提供的身份认证方法依赖于区块链平台中记账节点之间的投票实现对当前区块链平台中当前主节点的确定,不需要依赖于权威第三方CA机构的单点认证,解决了权威第三方CA机构的单点信任问题。
Description
技术领域
本发明涉及区块链技术领域,更具体地说,涉及一种身份认证方法、装置、计算机设备及存储介质。
背景技术
目前的数字身份认证体系(PKI体系)严重依赖证书颁发机构,即CA机构。现有的PKI体系主要由一个权威的证书颁发机构负责公钥的认证和分发,它维护一个身份-公钥数据对的数据库,该权威的证书颁发机构是PKI核心,通过执行检查和颁发证书来支持服务器的验证。
因为现有的数字身份认证体系,都需要用权威的第三方CA机构,CA机构本身可能因为漏洞、配置不当等因素给攻击者留下可乘之机,如果CA机构特别是根CA机构出现问题,就给数字身份认证出现较大的漏洞;并且,CA机构的信誉度也是个问题,可能出现中间人攻击等漏洞。
发明内容
有鉴于此,为解决上述问题,本发明提供一种身份认证方法、装置、计算机设备及存储介质,不需要集中认证,解决了权威第三方CA机构的单点信任问题,技术方案如下:
一种身份认证方法,应用于基于区块链平台构建的身份认证应用系统中的智能合约,所述身份认证应用系统由至少一个记账节点和至少一个用户节点构成,该方法包括:
接收目标用户节点发送的身份校验请求;
获取当前所述至少一个记账节点的主节点;所述主节点依赖于所述至少一个记账节点之间的信任投票确定;
触发所述主节点根据所述身份校验请求对所述目标用户节点进行身份校验。
优选的,还包括主节点确定过程,该过程包括:
判断当前时间是否满足主节点确定条件;
如果当前时间满足所述主节点确定条件,触发所述至少一个记账节点互相投票;
根据所述记账节点的投票信息确定所述记账节点的信任信息,记账节点的投票信息表征所述至少一个记账节点中每个记账节点分别对所述记账节点的投票结果,所述记账节点的信任信息表征所述记账节点的被信任度;
比较各个所述记账节点的信任信息,从所述至少一个记账节点中确定主节点;所述主节点为所述至少一个记账节点中被信任度最高的记账节点。
优选的,所述触发所述至少一个记账节点互相投票,包括:
判断所述至少一个记账节点中是否存在历史最近被确定为主节点的目标记账节点;
如果所述至少一个记账节点中存在历史最近被确定为主节点的目标记账节点,获取所述目标记账节点被确定为主节点的连续时长;
判断所述连续时长是否超过预先设置的目标时长;
如果所述连续时长未超过所述目标时长,将所述目标记账节点从所述至少一个记账节点中删除得到更新后的至少一个记账节点,并触发更新后的至少一个记账节点互相投票。
优选的,所述根据所述记账节点的投票信息确定所述记账节点的信任信息,包括:
获取所述记账节点的投票信息,所述记账节点的投票信息包括所述至少一个记账节点中每个记账节点分别对所述记账节点的投票结果;
根据所述记账节点的投票信息和当前至少一个记账节点的权重,计算所述记账节点的信任信息;所述至少一个记账节点的权重包括所述至少一个记账节点中各记账节点的权重。
优选的,在根据所述记账节点的投票信息确定所述记账节点的信任信息之后,该方法还包括:
根据所述至少一个记账节点中各记账节点的信任信息,调整所述至少一个记账节点的权重。
优选的,所述获取当前所述至少一个记账节点的主节点,包括:
按照被信任度从高到低的顺序从当前所述至少一个记账节点中获取预设数量个候选记账节点;
从各个所述候选记账节点中随机选取一个候选记账节点作为主节点。
优选的,若检测到所述主节点根据所述身份校验请求对所述目标用户节点进行身份校验失败,该方法还包括:
将所述主节点加入黑名单并确定当前时间满足所述主节点确定条件,加入黑名单后的主节点不能参与投票;
触发当前确定的主节点根据所述身份校验请求对所述目标用户节点进行身份校验。
一种身份认证装置,应用于基于区块链平台构建的身份认证应用系统中的智能合约,所述身份认证应用系统由至少一个记账节点和用户节点构成,该装置包括:
请求接收单元,用于接收目标用户节点发送的身份校验请求;
主节点获取单元,用于获取当前所述至少一个记账节点的主节点;所述主节点依赖于所述至少一个记账节点之间的信任投票确定;
身份校验单元,用于触发所述主节点根据所述身份校验请求对所述目标用户节点进行身份校验。
一种计算机设备,包括:处理器以及存储器,所述处理器以及存储器通过通信总线相连;其中,所述处理器,用于调用并执行所述存储器中存储的程序;所述存储器,用于存储程序,所述程序用于实现所述身份认证方法。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器加载并执行,实现所述身份认证方法的各步骤。
本申请提供一种身份认证方法、装置、计算机设备及存储介质,应用于基于区块链平台构建的身份认证应用系统中的智能合约,身份认证应用系统由至少一个记账节点和至少一个用户节点构成。智能合约可以接收目标用户节点发送的身份校验请求;获取当前至少一个记账节点的主节点;主节点依赖于至少一个记账节点之间的信任投票确定;触发主节点对根据身份校验请求对目标用户节点进行身份校验。本申请提供的身份认证方法依赖于区块链平台中记账节点之间的投票实现对当前区块链平台中当前主节点的确定,不需要依赖于权威第三方CA机构的单点认证,解决了权威第三方CA机构的单点信任问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种身份认证方法流程图;
图2为本申请实施例提供的一种主节点确定方法流程图;
图3为本申请实施例提供的一种触发至少一个记账节点互相投票的方法流程图;
图4为本申请实施例提供的一种身份认证装置的结构示意图;
图5为本申请实施例提供的一种身份认证方法所适用于的计算机设备的硬件结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前的数字身份认证体系严重依赖证书颁发机构,即CA中心,而整个世界PKI体系依赖数量庞大的根证书颁发机构和各级CA中心,当CA作恶或者被攻击时会导致严重的信任问题。
具体的,现有的身份认证主要是PKI体系,由一个权威机构负责公钥的认证和分发,它维护一个身份-公钥数据对的数据库。证书颁发机构是PKI核心,通过执行检查和颁发证书来支持服务器的验证。在我们日常使用的操作系统和浏览器中,通常预置大量的根CA证书,客户端通过TLS握手会话接收使用CA的密钥签名的数字证书后使用公钥进行验证,只要有一个在信任链的CA对申请者公钥进行认证就认为可信。
因为传统的身份验证系统,都需要用权威的第三方CA机构,CA机构本身可能因为漏洞、配置不当等因素给攻击者留下可乘之机,如果CA机构特别是根CA机构出现问题,就给数字身份认证出现较大的漏洞。而CA机构的信誉度也是个问题,可能出现中间人攻击等漏洞。
为了解决上述问题,本申请基于区块链不可篡改的特性,提出一种身份认证方法,该身份认证方法可以认为是基于信任传播机制的分布式身份验证方案,不需要集中认证,减少了单独节点的作恶行为,在信任传递、容错性等方面有很大的优势。
本申请构建了一个基于区块链的分布式的身份认证系统,网络中的关键节点充当身份认证的主要节点,关键节点通过信任传递机制在有限范围内建立一个信任网络,此网络中高信誉节点集体充当权威认证中心,节点间通过共识达成一致来实现CA的管理功能并实现证书颁发过程的透明化。
为了便于对本申请实施例提供的一种身份认证方法的理解,现先对本申请实施例提供的一种身份认证方法所涉及到技术术语进行详细说明。
区块链:为一个数据不可篡改的分布式数据库,其数据结构是由以时间顺序排列的数据块组成,每个数据块都包含了一段时间内的交易信息,并加盖时间戳和指向上一个区块的指针,一旦数据上链则不可被篡改。
区块链技术基于分布式存储、P2P网络、共识算法、加密机制等技术综合而成的综合性技术。通过P2P对等网络实现分布式节点之间的数据交互,通过共识机制可不同的节点之间达成一致,通过链式结构和加密机制实现数据的分布式存储、共享、一致以及不可篡改,从而建立起去中心化的环境中节点之间的信任关系,最终形成整个区块链系统。
因具备透明、公开、不可篡改的特性,我们可通过区块链技术打造一种分布式的PKI体系,实现用户身份的管理和认证,提升证书相关的操作的透明度和可靠性,有效处理诸如密钥丢失或泄漏之类的安全事件。
区块链技术本质上是一个分布式账本,一种通过去中心化形式实现所有参与主体共同维护同一可靠数据库的技术方案,可以改变传统只能依靠中心化机构转移价值的模式,增强参与方的可信度,具有数据可备份、数据安全、透明性高、不可篡改等优点。
智能合约:智能合约是指一种计算机协议,这类协议一旦制定和部署就能实现自我执行和自我验证,而且不再需要人为的干预。
PBFT:BFT是Practical Byzantine Fault Tolerance的缩写,即:实用拜占庭容错算法,解决了原始拜占庭容错算法效率不高的问题,算法的时间复杂度是O(n^2),使得在实际系统应用中可以解决拜占庭容错问题。
CA:证书颁发机构即颁发数字证书的机构。是负责发放和管理数字证书的权威机构,并作为电子商务交易中受信任的第三方,承担公钥体系中公钥的合法性检验。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1为本申请实施例提供的一种身份认证方法流程图。
如图1所示的身份认证方法应用于基于区块链平台构建的身份认证应用系统中的智能合约,身份认证应用系统由至少一个记账节点和至少一个用户节点构成。如图1所示,该身份认证方法包括:
S101、接收目标用户节点发送的身份校验请求;
本申请实施例,在每次用户需要校验数字证书时,由用户向合约地址发送身份校验请求,进而由智能合约向主节点进行检验。
示例性的,用户在需要校验数字证书时可以由用户通过区块链平台上相应的目标用户节点向智能合约发送身份校验请求,进而由智能合约确定当前区块链平台上的主节点,并向主节点进行校验。
S102、获取当前至少一个记账节点的主节点;主节点依赖于至少一个记账节点之间的信任投票确定;
本申请实施例,可以每隔预设时间间隔重新确定一次至少一个记账节点中的主节点,以实现对主节点的更新。
示例性的,预设时间间隔可以为十分钟、二十分钟等等,以上仅仅是本申请实施例提供的预设时间间隔的优选内容,有关预设时间间隔的具体内容,本领域技术人员可根据自己的需求进行设置,在此不做限定。
有关从至少一个记账节点中确定主节点的方式,请参见图2的详细描述,在此不做赘述。
S103、触发主节点对根据身份校验请求对目标用户节点进行身份校验。
本申请实施例,智能合约在接收到身份校验请求后,可以获取当前至少一个记账节点中的主节点,并触发主节点根据身份校验请求对目标用户节点进行身份校验。
本申请提供一种身份认证方法,应用于基于区块链平台构建的身份认证应用系统中的智能合约,身份认证应用系统由至少一个记账节点和至少一个用户节点构成。智能合约可以接收目标用户节点发送的身份校验请求;获取当前至少一个记账节点的主节点;主节点依赖于至少一个记账节点之间的信任投票确定;触发主节点对根据身份校验请求对目标用户节点进行身份校验。本申请提供的身份认证方法依赖于区块链平台中记账节点之间的投票实现对当前区块链平台中当前主节点的确定,不需要依赖于权威第三方CA机构的单点认证,解决了权威第三方CA机构的单点信任问题。
图2为本申请实施例提供的一种主节点确定方法流程图。
如图2所示,该方法包括:
S201、判断当前时间是否满足主节点确定条件;如果当前时间满足主节点确定条件,执行步骤S202;
本申请实施例,主节点确定条件可以为当前时间距离历史最近一次确定满足主节点确定条件的时间之间的时间间隔达到预设时间间隔。需要说明的是,可以初始化首次确定满足主节点确定条件的时间为预设时间。
示例性的,可以确定预设时间满足主节点确定条件,在预设时间之后每隔十分钟确定一次当前时间满足主节点确定条件,若当前时间满足主节点确定条件可以触发执行步骤S202。
S202、触发至少一个记账节点互相投票;
本申请实施例,区块链平台由至少一个记账节点构成,在确定当前时间满足主节点确定条件的情况下,可以先从区块链平台的至少一个记账节点中选取出需要进行投票的记账节点,选取出的各个记账节点可以认为是更新后的至少一个记账节点,并触发更新后至少一个记账节点互相投票,以从更新后的至少一个记账节点中选取出主节点。
示例性的,选取典型区块链平台,构建身份认证应用系统。本申请的记账节点,采用可信度模型进行选取。本申请的可信度模型采用自低向下的信用度累计机制。
本申请实施例中,触发至少一个记账节点互相投票的方式参见图3。如图3所示,该方法包括:
S301、判断至少一个记账节点中是否存在历史最近被确定为主节点的目标记账节点;
S302、如果至少一个记账节点中存在历史最近被确定为主节点的目标记账节点,获取目标记账节点被确定为主节点的连续时长;
本申请实施例,区块链系统中每个被选中的作为主节点的记账节点均具备2个选举周期的静默期,静默期结束后方能进行再次参与投票。记账节点在静默期内不仅不能参与投票而且不能再次被选为主节点。
目标记账节点被确定为主节点的连续时长可以认为是历史最近一次目标记账节点被确定为主节点的时长。
S303、判断连续时长是否超过预先设置的目标时长;
示例性的,目标时长可以认为是静默期时长,以上仅仅是本申请实施例提供的目标时长的优选内容,有关目标时长的具体内容,本领域技术人员可根据自己的需求进行设置,在此不做限定。
S304、如果连续时长未超过目标时长,将目标记账节点从至少一个记账节点中删除得到更新后的至少一个记账节点,并触发更新后的至少一个记账节点互相投票。
本申请实施例,若目标记账节点被确定为主节点的连续时长未超过目标时长,说明目标记账节点历史最近一次被确定为主节点还未过静默期,这种情况下,将目标记账节点从区块链系统的至少一个记账节点中删除,至少一个记账节点中删除目标记账节点后剩余的各个记账节点构成更新后的至少一个记账节点,进而触发更新后的至少一个记账节点互相投票,以从更新后的至少一个记账节点中确定主节点。
进一步的,若目标记账节点被确定为主节点的连续时长超过目标时长,说明目标记账节点历史最近一次被确定为主节点已经过了静默期,这种情况下,直接触发区块链系统中至少一个记账节点互相投票,以从至少一个记账节点中确定主节点。
S203、根据记账节点的投票信息确定记账节点的信任信息,记账节点的投票信息表征至少一个记账节点中每个记账节点分别对记账节点的投票结果,记账节点的信任信息表征记账节点的被信任度;
本申请实施例,被触发进行投票的每个记账节点可以认为是一个具备可投票权的节点。针对被触发进行投票的每个记账节点,获取该记账节点的投票信息,该记账节点的投票信息包括被触发投票的每个记账节点对该记账节点的投票结果,进而根据该记账节点的投票信息计算该记账节点的信任信息。
比如,触发记账节点1、记账节点2、记账节点3互相投票,则记账节点1的投票信息包括记账节点1、记账节点2和记账节点3分别对记账节点1的投票结果,记账节点2的投票信息包括记账节点1、记账节点2和记账节点3分别对记账节点2的投票结果,记账节点3的投票信息包括记账节点1、记账节点2和记账节点3分别对记账节点3的投票结果。
示例性的,以一个记账节点为例,该记账节点不仅会推举自己,还会推举除自己以外的三个记账节点,这种情况下,该记账节点对自己的投票结果为1,对其他三个记账节点的投票结果依据推举程度的不同而不同,但是该记账节点对其他三个记账节点中每个记账节点的投票结果都大于0小于1。相应的,该记账节点对除自己以及上述其他三个记账节点以外的其他记账节点的投票结果为0。
本申请实施例,以一个记账节点为例,根据该记账节点的投票信息确定该记账节点的信任信息,包括:获取该记账节点的投票信息,该记账节点的投票信息包括被触发进行投票的每个记账节点分别对该记账节点的投票结果;根据该记账节点的投票信息和当前被触发进行投票的每个记账节点的权重,计算该记账节点的信任信息。
示例性的,针对被触发进行投票的每个记账节点,均计算出其相应的信任信息,进而根据各个被触发进行投票的记账节点的信任信息调整被触发进行投票的各个记账节点的权重。
S204、比较各个记账节点的信任信息,从至少一个记账节点中确定主节点;主节点为至少一个记账节点中被信任度最高的记账节点。
示例性的,记账节点的信任信息越大表征记账节点被信任度越高,进而从各个记账节点中选取信任信息最大的前预设数量个记账节点,并将被选取的每个记账节点认为是一个候选记账节点,进而从各个候选记账节点中随机选取一个候选记账节点作为主节点。
进一步的,若接收目标用户节点发送的身份校验请求;获取当前主节点,触发当前主节点根据身份校验请求对目标用户节点进行身份校验时,如果检测到主节点根据身份校验请求对目标用户节点进行身份校验失败,该方法还可以将当前主节点加入黑名单并确定当前时间满足主节点确定条件,加入黑名单后的主节点不能参与投票;触发当前确定的主节点根据身份校验请求对目标用户节点进行身份校验。
示例性的,将当前主节点加入黑名单并确定当前时间满足主节点确定条件后,开启新一轮投票选举以实现对新的主节点的确定,在确定新的主节点后,触发新确定的主节点根据身份校验请求对目标用户节点进行身份校验。
下面基于上述共性对本申请实施例提供的一种身份认证方法进行详细阐述。本申请实施例提供的一种身份认证方法可以从如下步骤1-8进行说明。
步骤1.选取典型区块链平台,构建身份认证应用系统。本方案的记账节点,采用可信度模型进行选取。本方案的可信度模型采用自低向下的信用度累计机制。
步骤2:每个具备可投票权的节点推举可信任节点,每个投票权节点可推举1-3个节点,并赋予每个节点投票权重,1个典型的例子即为{1:0.8,2:0.6,3:0.4},系数越大,代表越可信,最大为1,默认为均为自己投票,系数为1。
步骤3:每十分钟(该参数可配置)由智能合约统计投票结果,如果因网络或者其他因素未收到选票,则默认只收到投自己的票。
步骤4:进行信任值计算,统计的时候采取迭代的方法计算权重,出事默认所有节点的权重为1,然后根据投票计算出新权重,具体进行循环,直到最后收敛,具体计算公式为
An=A1*e1n+A2*e2n+...+Ai*ein+...+An*enn,其中An代表第n个节点,ein代表第i个节点对第n个节点的投票信任值,转化为矩阵形式则为:
其中An的初始值为1,每次迭代后进行正则化,将A矩阵中最大的元素正则化为1,其他元素成比例调整,直到最后收敛,收敛误差可以自定义。
步骤5:选取信任节点,在A矩阵中选取信任值最高的三个元素,随机抽取一个节点作为主节点,每个选中的节点均具备2个选举周期的静默期,静默期结束后方能进行再次参与选举。
步骤6:证书注册,在每次用户需要注册证书时,由记账节点继续用户注册操作,并把记录的用户-公钥信息分发至所有的全量节点。每次证书的注册和撤销,在系统内都被视为一个交易,通过智能合约自动执行后,由主节点写入内部数据库,并分发至其他记账节点。
步骤7:证书查询,在每次用户需要校验数字证书时,由用户向合约地址发送校验请求,由智能合约向主节点进行检验。
步骤8:如果出现主节点无法响应,或者有其他恶意行为,则对主节点进行黑名单处理,一段时间内不得参加选举,由智能合约进行新的主节点选举,具体时间由配置决定。
本申请提出一种基于区块链的身份认证思路,解决第三方权威机构代理的单点信任问题;而且,该方法将用户分为记账用户和普通用户,其中记账用户参与投票,普通用户只作为数字认证的使用者,记账用户需具备存储全量数据的硬件节点,普通用户没有限制。
本申请提出一种自低向下的信任投票机制,由每个节点投出自己的信任票,最终得出整个社区的信任最高值;并且通过智能合约程序将投票过程透明化,提出了静默期策略,并采用随机化的策略防止了某节点长期作为主节点;将证书注册和证书的撤销作为一个智能合约来执行,由主节点来进行存储和查询操作;对于普通用户而言,只需要知道合约地址,不需要关心主节点的地址和身份。
本申请采用基于区块链不可篡改的特性,实现了一种分布式的PKI体系,实现用户身份的管理和认证,提升证书相关的操作的透明度和可靠性,实现了基础设施的透明可信。
图4为本申请实施例提供的一种身份认证装置的结构示意图。
如图4所示的装置应用于基于区块链平台构建的身份认证应用系统中的智能合约,身份认证应用系统由至少一个记账节点和用户节点构成,该装置包括:
请求接收单元401,用于接收目标用户节点发送的身份校验请求;
主节点获取单元402,用于获取当前至少一个记账节点的主节点;主节点依赖于至少一个记账节点之间的信任投票确定;
身份校验单元403,用于触发主节点根据身份校验请求对目标用户节点进行身份校验。
如图5所示,为本申请实施例提供的计算机设备的一种实现方式的结构图,该计算机设备包括:
存储器501,用于存储程序;
处理器502,用于执行程序,程序具体用于:
接收埋点数据检测请求,确定埋点数据检测请求指示的数据检测范围;
从当前互联网平台的埋点数据集中确定至少一条目标埋点数据,目标埋点数据为模拟用户对互联网平台的操作行为生成且位于数据检测范围内的埋点数据;
获取预生成的至少一条目标埋点数据中每条目标埋点数据的检测结果;目标埋点数据的检测结果表征目标埋点数据异常时,检测结果指示目标埋点数据的错误信息;
展示至少一条目标埋点数据中每条目标埋点数据及其检测结果,目标埋点数据用于关联展示目标埋点数据对应的静态数据,静态数据指示用户行为或检测规则中的任意一项或多项。
处理器502可能是一个中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit)。
控制设备还可以包括通信接口503以及通信总线504,其中,存储器501、处理器502以及通信接口503通过通信总线504完成相互间的通信。
本申请实施例还提供了一种可读存储介质,其上存储有计算机程序,计算机程序被处理器加载并执行,实现上述的根因确定方法的各步骤,具体实现过程可以参照上述实施例相应部分的描述,本实施例不做赘述。
本申请提供一种身份认证方法、装置、计算机设备及存储介质,应用于基于区块链平台构建的身份认证应用系统中的智能合约,身份认证应用系统由至少一个记账节点和至少一个用户节点构成。智能合约可以接收目标用户节点发送的身份校验请求;获取当前至少一个记账节点的主节点;主节点依赖于至少一个记账节点之间的信任投票确定;触发主节点对根据身份校验请求对目标用户节点进行身份校验。本申请提供的身份认证方法依赖于区块链平台中记账节点之间的投票实现对当前区块链平台中当前主节点的确定,不需要依赖于权威第三方CA机构的单点认证,解决了权威第三方CA机构的单点信任问题。
以上对本发明所提供的一种身份认证方法、装置、计算机设备及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备所固有的要素,或者是还包括为这些过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种身份认证方法,其特征在于,应用于基于区块链平台构建的身份认证应用系统中的智能合约,所述身份认证应用系统由至少一个记账节点和至少一个用户节点构成,该方法包括:
接收目标用户节点发送的身份校验请求;
获取当前所述至少一个记账节点的主节点;所述主节点依赖于所述至少一个记账节点之间的信任投票确定;
触发所述主节点根据所述身份校验请求对所述目标用户节点进行身份校验。
2.根据权利要求1所述的方法,其特征在于,还包括主节点确定过程,该过程包括:
判断当前时间是否满足主节点确定条件;
如果当前时间满足所述主节点确定条件,触发所述至少一个记账节点互相投票;
根据所述记账节点的投票信息确定所述记账节点的信任信息,记账节点的投票信息表征所述至少一个记账节点中每个记账节点分别对所述记账节点的投票结果,所述记账节点的信任信息表征所述记账节点的被信任度;
比较各个所述记账节点的信任信息,从所述至少一个记账节点中确定主节点;所述主节点为所述至少一个记账节点中被信任度最高的记账节点。
3.根据权利要求2所述的方法,其特征在于,所述触发所述至少一个记账节点互相投票,包括:
判断所述至少一个记账节点中是否存在历史最近被确定为主节点的目标记账节点;
如果所述至少一个记账节点中存在历史最近被确定为主节点的目标记账节点,获取所述目标记账节点被确定为主节点的连续时长;
判断所述连续时长是否超过预先设置的目标时长;
如果所述连续时长未超过所述目标时长,将所述目标记账节点从所述至少一个记账节点中删除得到更新后的至少一个记账节点,并触发更新后的至少一个记账节点互相投票。
4.根据权利要求3所述的方法,其特征在于,所述根据所述记账节点的投票信息确定所述记账节点的信任信息,包括:
获取所述记账节点的投票信息,所述记账节点的投票信息包括所述至少一个记账节点中每个记账节点分别对所述记账节点的投票结果;
根据所述记账节点的投票信息和当前至少一个记账节点的权重,计算所述记账节点的信任信息;所述至少一个记账节点的权重包括所述至少一个记账节点中各记账节点的权重。
5.根据权利要求4所述的方法,其特征在于,在根据所述记账节点的投票信息确定所述记账节点的信任信息之后,该方法还包括:
根据所述至少一个记账节点中各记账节点的信任信息,调整所述至少一个记账节点的权重。
6.根据权利要求1所述的方法,其特征在于,所述获取当前所述至少一个记账节点的主节点,包括:
按照被信任度从高到低的顺序从当前所述至少一个记账节点中获取预设数量个候选记账节点;
从各个所述候选记账节点中随机选取一个候选记账节点作为主节点。
7.根据权利要求2所述的方法,其特征在于,若检测到所述主节点根据所述身份校验请求对所述目标用户节点进行身份校验失败,该方法还包括:
将所述主节点加入黑名单并确定当前时间满足所述主节点确定条件,加入黑名单后的主节点不能参与投票;
触发当前确定的主节点根据所述身份校验请求对所述目标用户节点进行身份校验。
8.一种身份认证装置,其特征在于,应用于基于区块链平台构建的身份认证应用系统中的智能合约,所述身份认证应用系统由至少一个记账节点和用户节点构成,该装置包括:
请求接收单元,用于接收目标用户节点发送的身份校验请求;
主节点获取单元,用于获取当前所述至少一个记账节点的主节点;所述主节点依赖于所述至少一个记账节点之间的信任投票确定;
身份校验单元,用于触发所述主节点根据所述身份校验请求对所述目标用户节点进行身份校验。
9.一种计算机设备,其特征在于,包括:处理器以及存储器,所述处理器以及存储器通过通信总线相连;其中,所述处理器,用于调用并执行所述存储器中存储的程序;所述存储器,用于存储程序,所述程序用于实现如权利要求1-7任意一项所述的身份认证方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器加载并执行,实现如权利要求1-7任意一项所述的身份认证方法的各步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110381772.4A CN113010872A (zh) | 2021-04-09 | 2021-04-09 | 一种身份认证方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110381772.4A CN113010872A (zh) | 2021-04-09 | 2021-04-09 | 一种身份认证方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113010872A true CN113010872A (zh) | 2021-06-22 |
Family
ID=76388174
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110381772.4A Pending CN113010872A (zh) | 2021-04-09 | 2021-04-09 | 一种身份认证方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113010872A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113726758A (zh) * | 2021-08-25 | 2021-11-30 | 百保(上海)科技有限公司 | 基于区块链的数据隐私计算方法及系统 |
CN114302396A (zh) * | 2021-12-14 | 2022-04-08 | 中国联合网络通信集团有限公司 | 数据管理方法、装置、设备、存储介质及系统 |
CN114640475A (zh) * | 2022-05-19 | 2022-06-17 | 广东省绿算技术有限公司 | 去中心化的身份认证方法、装置、计算机设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108881287A (zh) * | 2018-07-18 | 2018-11-23 | 电子科技大学 | 一种基于区块链的物联网节点身份认证方法 |
CN110427433A (zh) * | 2019-08-08 | 2019-11-08 | 上海中通吉网络技术有限公司 | 一种区块链共识方法和存储介质 |
CN110457878A (zh) * | 2019-08-14 | 2019-11-15 | 北京中电普华信息技术有限公司 | 一种基于区块链的身份认证方法、装置及系统 |
CN111163109A (zh) * | 2020-02-04 | 2020-05-15 | 广州知弘科技有限公司 | 区块链去中心式节点防仿冒方法 |
CN111262692A (zh) * | 2020-01-08 | 2020-06-09 | 网络通信与安全紫金山实验室 | 基于区块链的密钥分发系统和方法 |
CN112532587A (zh) * | 2020-11-04 | 2021-03-19 | 齐鲁工业大学 | 基于PeerTrust的DPos的共识节点评估方法 |
-
2021
- 2021-04-09 CN CN202110381772.4A patent/CN113010872A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108881287A (zh) * | 2018-07-18 | 2018-11-23 | 电子科技大学 | 一种基于区块链的物联网节点身份认证方法 |
CN110427433A (zh) * | 2019-08-08 | 2019-11-08 | 上海中通吉网络技术有限公司 | 一种区块链共识方法和存储介质 |
CN110457878A (zh) * | 2019-08-14 | 2019-11-15 | 北京中电普华信息技术有限公司 | 一种基于区块链的身份认证方法、装置及系统 |
CN111262692A (zh) * | 2020-01-08 | 2020-06-09 | 网络通信与安全紫金山实验室 | 基于区块链的密钥分发系统和方法 |
CN111163109A (zh) * | 2020-02-04 | 2020-05-15 | 广州知弘科技有限公司 | 区块链去中心式节点防仿冒方法 |
CN112202809A (zh) * | 2020-02-04 | 2021-01-08 | 广州知弘科技有限公司 | 区块链节点校验方法 |
CN112532587A (zh) * | 2020-11-04 | 2021-03-19 | 齐鲁工业大学 | 基于PeerTrust的DPos的共识节点评估方法 |
Non-Patent Citations (1)
Title |
---|
付瑶瑶;李盛恩;: "授权股份证明共识机制的改进方案", 计算机工程与应用 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113726758A (zh) * | 2021-08-25 | 2021-11-30 | 百保(上海)科技有限公司 | 基于区块链的数据隐私计算方法及系统 |
CN114302396A (zh) * | 2021-12-14 | 2022-04-08 | 中国联合网络通信集团有限公司 | 数据管理方法、装置、设备、存储介质及系统 |
CN114302396B (zh) * | 2021-12-14 | 2023-11-07 | 中国联合网络通信集团有限公司 | 数据管理方法、装置、设备、存储介质及系统 |
CN114640475A (zh) * | 2022-05-19 | 2022-06-17 | 广东省绿算技术有限公司 | 去中心化的身份认证方法、装置、计算机设备及存储介质 |
CN114640475B (zh) * | 2022-05-19 | 2022-09-06 | 广东省绿算技术有限公司 | 去中心化的身份认证方法、装置、计算机设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11651109B2 (en) | Permission management method, permission verification method, and related apparatus | |
CN110958110B (zh) | 一种基于零知识证明的区块链隐私数据管理方法和系统 | |
CN113010872A (zh) | 一种身份认证方法、装置、计算机设备及存储介质 | |
CN112637189A (zh) | 物联网应用场景下的多层区块链跨域认证方法 | |
CN112583596B (zh) | 一种基于区块链技术的完全跨域身份认证方法 | |
JP2016509443A (ja) | より低いエントロピーを有する入力レコードについて追加的セキュリティをもたらす検証システム及び方法 | |
CN112600678B (zh) | 一种数据处理方法、装置、设备及存储介质 | |
Xue et al. | A distributed authentication scheme based on smart contract for roaming service in mobile vehicular networks | |
CN110930153B (zh) | 基于隐藏第三方账号的区块链隐私数据管理方法和系统 | |
CN112039837B (zh) | 一种基于区块链和秘密共享的电子证据保全方法 | |
CN115051985A (zh) | 一种基于动态节点的拜占庭容错共识协议的数据共识方法 | |
CN113676447A (zh) | 基于区块链的科技服务平台跨域身份认证方案 | |
CN113228560A (zh) | 用于发行的发行设备和方法以及用于请求数字证书的请求设备和方法 | |
CN115987697A (zh) | 基于事件订阅机制的多层级情报数据共享方法及系统 | |
JP2004104750A (ja) | ディジタル署名の検証方法 | |
CN111935067A (zh) | 一种基于云计算技术的企业用户身份认证系统 | |
Liu et al. | A blockchain-based cross-domain authentication management system for IoT devices | |
Liang et al. | LRS_PKI: A novel blockchain-based PKI framework using linkable ring signatures | |
CN110891067B (zh) | 一种可撤销的多服务器隐私保护认证方法及系统 | |
CN108173658A (zh) | 一种区块链一致性维护方法及装置 | |
CN109981288B (zh) | 一种基于聚合签名的细粒度云服务端快速对外证明方法 | |
Wang et al. | A lightweight data integrity verification with data dynamics for mobile edge computing | |
CN110943846B (zh) | 基于环签名技术的异构身份联盟用户信誉值传递方法 | |
CN113591129A (zh) | 基于区块链的网络存储服务系统及数据审计方法 | |
CN113068188A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210622 |