CN113242246A - 一种基于区块链的身份认证方法 - Google Patents

一种基于区块链的身份认证方法 Download PDF

Info

Publication number
CN113242246A
CN113242246A CN202110531146.9A CN202110531146A CN113242246A CN 113242246 A CN113242246 A CN 113242246A CN 202110531146 A CN202110531146 A CN 202110531146A CN 113242246 A CN113242246 A CN 113242246A
Authority
CN
China
Prior art keywords
information
intelligent contract
identity authentication
identity
request
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
CN202110531146.9A
Other languages
English (en)
Other versions
CN113242246B (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.)
Northwestern Polytechnical University
Original Assignee
Northwestern Polytechnical University
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 Northwestern Polytechnical University filed Critical Northwestern Polytechnical University
Priority to CN202110531146.9A priority Critical patent/CN113242246B/zh
Publication of CN113242246A publication Critical patent/CN113242246A/zh
Application granted granted Critical
Publication of CN113242246B publication Critical patent/CN113242246B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/0861Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • 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/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/166Detection; Localisation; Normalisation using acquisition arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/40Spoof detection, e.g. liveness detection
    • G06V40/45Detection of the body part being alive
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Abstract

本发明公开了一种基于区块链的身份认证方法,该方法包含了一种针对身份认证过程生物识别预言机网络,预言机网络的作用是对比生物识别采集的活体人脸信息和身份认证头像的小图信息,将对比将结果通过区块链智能合约调用的形式写入到区块链上,完成链下数据到链上数据的映射。区块链智能合约通过这种方式可以获取到身份信息对比结果,从而可以根据对比结果判断身份认证是否成功。本发明解决了传统基于区块链的身份认证方案严重依赖第三方身份验证服务的问题,也保证了存储在区块链上的身份信息的真实性,提升了基于区块链的身份认证系统的安全性和可靠性。

Description

一种基于区块链的身份认证方法
技术领域
本发明属于区块链技术领域,具体涉及一种身份认证方法。
背景技术
目前,区块链技术和身份认证的结合处于初级研究阶段,市面上逐步出现一些商业应用,比较知名的便是W3C基金会组织提出的一种去中心化身份标识符协议(DID协议),该协议定义了一种基于去中心化的自我主权身份标识符,该标识符可以由用户直接创建和注册,这对于用户来说意义重大,因为标识符是任何身份和通讯系统的基础,没有标识符,实体之间无法建立直接的联系、传递消息或数据共享。基于W3C的DID开源标准,2019年5月,微软开发了一套去中心化身份标识系统,该系统在比特币主网络中运行。微软是首个研发去中心化身份工作的大型互联网公司,该系统旨在通过区块链技术更好地证明用户的身份。但是W3C的DID协议与规范都还在制定与更新的过程中,微软公司开发的DID系统也处在非常早期的阶段。
在这些基于DID的系统中,都是通过用户填写信息注册的方式将用户在现实世界的身份信息存储到区块链上,从而保证身份信息的不可篡改性。用户身份信息存储在区块链上后,也往往需要依赖于第三方的身份信息服务中心实现身份认证。
目前传统的身份认证方案存下面的缺陷:集中大型身份信息数据库是很容易遭到各种各样的网络攻击,这样用户的隐私数据就会泄露,不法分子窃取到用户的敏感信息就会操纵数据做一些恶性事件,用户对自己的信息完全失去了自主控制权。
目前基于区块链的身份认证方案也会存在下面两个严重缺陷:
(1)不能够保证上链前用户身份信息的真实可靠性。目前的方案大多是用户需要自己填写身份信息,或者通过输入获取用户的身份信息然后校验其真实性。这些方案都不能保证用户输入信息的真实性以及这些身份信息的真实性。
(2)有些方案依赖第三方的身份信息KYC系统,很难实现真正的去中心化,存在单点故障的风险,当第三方KYC系统被攻击或者数据库被故意删库时,身份认证系统的安全性将会荡然无存。
发明内容
为了克服现有技术的不足,本发明提供了一种基于区块链的身份认证方法,该方法包含了一种针对身份认证过程生物识别预言机网络,预言机网络的作用是对比生物识别采集的活体人脸信息和身份认证头像的小图信息,将对比将结果通过区块链智能合约调用的形式写入到区块链上,完成链下数据到链上数据的映射。区块链智能合约通过这种方式可以获取到身份信息对比结果,从而可以根据对比结果判断身份认证是否成功。本发明解决了传统基于区块链的身份认证方案严重依赖第三方身份验证服务的问题,也保证了存储在区块链上的身份信息的真实性,提升了基于区块链的身份认证系统的安全性和可靠性。
本发明解决其技术问题所采用的技术方案包括如下步骤:
步骤1:用户信息注册;
用户在前端模块提交身份证正反面照片,前端模块将获取到的身份证照片信息解析为用户身份信息;
前端模块将用户身份信息进行压缩编码,再调用身份认证智能合约信息注册接口将用户身份信息存储到身份认证智能合约;此时存储的用户身份信息属于未认证状态,注册过程完成;
步骤2:用户认证过程;
步骤2-1:前端模块利用摄像头获取用户的生物活体人脸信息,前端模块提交获取到的生物活体人脸信息和用户身份证头像信息并调用身份认证智能合约认证请求接口进行认证请求;
步骤2-2:身份认证智能合约处理用户的认证请求,执行身份认证智能合约认证函数;身份认证智能合约认证函数将认证请求信息进行编码,编码完成后,通过跨合约调用预言机智能合约;
步骤2-3:预言机智能合约收到调用请求后,执行请求接收函数,将请求信息封装为区块链事件,存储到区块链中,区块链中的所有节点会同步该区块链事件,从而形成数据的一致性;
区块链事件的内容包含请求信息封装后的具体信息和根据该信息通过sha3算法生成的事件索引;通过生成的事件索引,预言机网络中的节点能够快速监听检索到该区块链事件;
步骤2-4:当预言机网络检索到区块链事件后将区块链事件解码;解码完成之后得到身份认证智能合约地址、身份认证智能合约回调函数、回调函数参数、base64编码的身份证头像信息、base64编码的活体人脸信息;
步骤2-5:预言机网络节点利用人脸对比模型对比解码后得到的用户身份证头像信息和生物体人脸信息的相似度;如果相似度超过设定阈值,则认为对比成功;
步骤2-6:预言机网络中的每个节点都执行步骤2-5,将身份认证请求的对比结果在全网共识,如果预言机网络中有一半以上的节点对比成功,则认为此次认证成功;认证成功之后预言机网络随机选出一个节点作为主节点调用预言机智能合约请求响应函数,请求内容包括身份认证结果、身份认证智能合约地址、身份认证智能合约回调函数、回调函数参数;
步骤2-7:预言机智能合约请求响应函数接收到预言机网络的调用后,利用身份认证智能合约地址和身份认证智能合约回调函数、回调参数、认证请求对比结果信息发送回调请求到身份认证智能合约;
步骤2-8:身份认证智能合约收到身份认证结果后,如果为认证成功,则向区块链提交一笔交易更改用户身份信息为认证状态。
进一步地,所述请求接收函数执行过程如下:
请求接收函数对请求信息进行判断,首先判断请求信息包含的交易所携带的手续费是否大于等于合约要求的最低手续费;如果大于等于,执行下一步;如果小于,则直接结束;
接着判断请求信息包含的交易的数据大小是否大于0字节,如果小于等于0字节,说明此次调用非法,结束函数执行流程;如果大于0字节,则正常执行下一步;
再判断请求回调函数是否大于0字节,如果小于等于0字节,说明函数签名为非法函数调用;如果大于0字节,则正常执行下一步;
最后将请求信息封装为区块链事件,存储到区块链中,函数执行结束。
进一步地,所述请求响应函数执行过程如下:
请求响应函数首先判断此次交易发起地址是否为合约创建者地址,如果不是合约创建者地址,则结束执行流程,否则继续执行判断预言机账户余额是否满足Gas要求,如果不满足要求,则结束流程,否则继续执行回调身份认证智能合约的回调函数;调用身份认证智能合约函数的过程通过跨合约调用实现。
进一步地,所述预言机网络节点执行对比过程如下:
步骤2-5-1:当预言机网络节点启动后查找本地配置文件并解析配置文件中的每一个配置项;配置项包括预言机智能合约地址、预言机智能合约管理员地址私钥、区块链节点地址和端口信息;
步骤2-5-2:解析配置文件完成之后,得到区块链节点的ip地址和端口信息;
步骤2-5-3:预言机网络节点解析预言机智能合约ABI json文件,将智能合约事件的结构信息从ABI文件中提取出来;
步骤2-5-4:预言机网络节点通过预言机智能合约地址和事件结构信息中携带的各项信息订阅区块链对应的智能合约事件,预言机网络节点采用循环的方式一直等待订阅事件到达;
步骤2-5-5:如果区块链节点收到预言机智能合约的请求事件,则会在区块链数据库中记录该信息,并且将该事件通知给订阅它的预言机网络节点;预言机网络节点收到该事件后从事件中解析出此次身份认证所需要的身份证人脸信息和生物活体人脸信息;
步骤2-5-6:预言机网络节点采用人脸对比库进行人脸信息的对比,如果对比阈值超过80%,则认为请求用户为真实用户,对比成功;随后预言机网络中的每个节点都会将这一次身份认证请求的结果在全网共识,每次只要网络中有一半以上的节点投票通过一个认证结果,则认为此次认证成功;
步骤2-5-7:认证成功之后预言机网络会随机选出一个节点作为主节点来组装响应请求交易,交易中携带此次对比成功与否的信息,利用之前从配置文件中解析出来的预言机智能合约管理员地址私钥对交易签名,然后发送交易到预言机智能合约;预言机智能合约会回调身份认证智能合约,将结果返回给身份认证智能合约。
进一步地,所述用户身份信息包括文字和图片,所述文字包括用户的姓名、出生日期、身份证号码和民族信息;所述图片为身份证base64编码头像小图信息。
进一步地,所述身份认证智能合约认证函数对认证的请求信息进行编码,编码的数据包括:请求ID、跨合约调用地址、身份认证智能合约地址、身份认证智能合约回调函数、回调函数参数、base64编码的身份证头像信息、base64编码的生物活体人脸信息;编码的规则为:所有的数据按照32字节长度设定,依次进行字符拼接,不足32字节的需要补充到32字节,超过32字节的需要分割成多段后编码。
进一步地,所述预言机网络将区块链事件解码时,首先获取每个数据段的长度,再从事件内容中读取对应长度的数据,不足32字节的数据只获取实际长度的内容,超过32字节的会将多个段合并进行解码。
本发明的有益效果如下:
本发明设计的基于区块链的身份认证使得身份认证系统既能够去中心化的运行,将区块链与预言机服务相结合,在身份认证的过程中融入去中心化的用户生物特征识别,又能够保证身份认证这一环节的去中心化以及上链信息的可靠性,从而增加了身份认证系统的可靠性和安全性。
附图说明
图1为本发明认证方法流程图。
图2为本发明请求接收函数流程图。
图3为本发明请求响应函数流程图。
图4为本发明预言机网络节点处理流程图。
具体实施方式
下面结合附图和实施例对本发明进一步说明。
一种基于区块链的身份认证方法,包括以下步骤:
步骤1:用户信息注册;
用户在前端模块提交身份证正反面照片,前端模块将获取到的身份证照片信息解析为用户身份信息;用户身份信息包括文字和图片,文字包括用户的姓名、出生日期、身份证号码和民族信息;图片为身份证base64编码头像小图信息。
前端模块将用户身份信息进行压缩编码,再调用身份认证智能合约信息注册接口将用户身份信息存储到身份认证智能合约;此时存储的用户身份信息属于未认证状态,注册过程完成;
步骤2:如图1所示,用户认证过程;
步骤2-1:前端模块利用摄像头获取用户的生物活体人脸信息,前端模块提交获取到的生物活体人脸信息和用户身份证头像信息并调用身份认证智能合约认证请求接口进行认证请求;
步骤2-2:身份认证智能合约处理用户的认证请求,执行身份认证智能合约认证函数;身份认证智能合约认证函数将认证请求信息进行编码,编码的数据包括:请求ID、跨合约调用地址、身份认证智能合约地址(设置身份认证地址的意义在于可以预言机智能合约回调身份认证智能合约)、身份认证智能合约回调函数、回调函数参数、base64编码的身份证头像信息、base64编码的生物活体人脸信息;编码的规则为:所有的数据按照32字节长度设定,依次进行字符拼接,不足32字节的需要补充到32字节,超过32字节的需要分割成多段后编码;编码完成后,通过跨合约调用预言机智能合约;
步骤2-3:预言机智能合约收到调用请求后,执行请求接收函数,将请求信息封装为区块链事件,存储到区块链中,区块链中的所有节点会同步该区块链事件,从而形成数据的一致性;
区块链事件的内容包含请求信息封装后的具体信息和根据该信息通过sha3算法生成的事件索引;通过生成的事件索引,预言机网络中的节点能够快速监听检索到该区块链事件;
预言机网络在启动的时候需要和区块链节点建立长连接,这样可以持续不断地监听区块链中的所有事件;通过上述生成的事件索引可以快速过滤掉于身份认证无关的事件,从而使得预言机网络只服务于身份认证功能,提升了系统运行效率;
步骤2-4:当预言机网络检索到区块链事件后将区块链事件解码;解码的跟上述编码的规则相反,首先获取每个数据段的长度,再从事件内容中读取对应长度的数据;不足32字节的数据只获取实际长度的内容,超过32字节的会将多个段合并进行解码;解码完成之后得到身份认证智能合约地址、身份认证智能合约回调函数、回调函数参数、base64编码的身份证头像信息、base64编码的活体人脸信息;
步骤2-5:预言机网络节点利用人脸对比模型对比解码后得到的用户身份证头像信息和生物体人脸信息的相似度;该模型判断相似的原理为图像信息上面的所有信息点位对比,如果相似度超过设定阈值,则认为对比成功;
步骤2-6:预言机网络中的每个节点都执行步骤2-5,将身份认证请求的对比结果在全网共识,如果预言机网络中有一半以上的节点对比成功,则认为此次认证成功;认证成功之后预言机网络随机选出一个节点作为主节点调用预言机智能合约请求响应函数,请求内容包括身份认证结果、身份认证智能合约地址、身份认证智能合约回调函数、回调函数参数;
步骤2-7:预言机智能合约请求响应函数接收到预言机网络的调用后,利用身份认证智能合约地址和身份认证智能合约回调函数、回调参数、认证请求对比结果信息发送回调请求到身份认证智能合约;
步骤2-8:身份认证智能合约收到身份认证结果后,如果为认证成功,则向区块链提交一笔交易更改用户身份信息为认证状态。
进一步地,如图2所示,所述请求接收函数执行过程如下:
请求接收函数对请求信息进行判断,首先判断请求信息包含的交易所携带的手续费是否大于等于合约要求的最低手续费;如果大于等于,执行下一步;如果小于,则直接结束;
接着判断请求信息包含的交易的数据大小是否大于0字节,如果小于等于0字节,说明此次调用非法,结束函数执行流程;如果大于0字节,则正常执行下一步;
再判断请求回调函数是否大于0字节,如果小于等于0字节,说明函数签名为非法函数调用;如果大于0字节,则正常执行下一步;
最后将请求信息封装为区块链事件,存储到区块链中,函数执行结束。
进一步地,如图3所示,所述请求响应函数执行过程如下:
请求响应函数首先判断此次交易发起地址是否为合约创建者地址,如果不是合约创建者地址,则结束执行流程,否则继续执行判断预言机账户余额是否满足Gas要求,如果不满足要求,则结束流程,否则继续执行回调身份认证智能合约的回调函数;调用身份认证智能合约函数的过程通过跨合约调用实现。
进一步地,如图4所示,所述预言机网络节点执行对比过程如下:
步骤2-5-1:当预言机网络节点启动后查找本地配置文件并解析配置文件中的每一个配置项;配置项包括预言机智能合约地址、预言机智能合约管理员地址私钥、区块链节点地址和端口信息;
步骤2-5-2:解析配置文件完成之后,得到区块链节点的ip地址和端口信息;
步骤2-5-3:预言机网络节点解析预言机智能合约ABI json文件,将智能合约事件的结构信息从ABI文件中提取出来;
步骤2-5-4:预言机网络节点通过预言机智能合约地址和事件结构信息中携带的各项信息订阅区块链对应的智能合约事件,预言机网络节点采用循环的方式一直等待订阅事件到达;
步骤2-5-5:如果区块链节点收到预言机智能合约的请求事件,则会在区块链数据库中记录该信息,并且将该事件通知给订阅它的预言机网络节点;预言机网络节点收到该事件后从事件中解析出此次身份认证所需要的身份证人脸信息和生物活体人脸信息;
步骤2-5-6:预言机网络节点采用人脸对比库进行人脸信息的对比,如果对比阈值超过80%,则认为请求用户为真实用户,对比成功;随后预言机网络中的每个节点都会将这一次身份认证请求的结果在全网共识,每次只要网络中有一半以上的节点投票通过一个认证结果,则认为此次认证成功;请求认证结果共识的目的是为了防止预言机网络存在节点宕机或者节点作恶的情况,从而可以保证人脸信息对比结果的可靠性以及权威性;
步骤2-5-7:认证成功之后预言机网络会随机选出一个节点作为主节点来组装响应请求交易,交易中携带此次对比成功与否的信息,利用之前从配置文件中解析出来的预言机智能合约管理员地址私钥对交易签名,然后发送交易到预言机智能合约;预言机智能合约会回调身份认证智能合约,将结果返回给身份认证智能合约。

Claims (7)

1.一种基于区块链的身份认证方法,其特征在于,包括以下步骤:
步骤1:用户信息注册;
用户在前端模块提交身份证正反面照片,前端模块将获取到的身份证照片信息解析为用户身份信息;
前端模块将用户身份信息进行压缩编码,再调用身份认证智能合约信息注册接口将用户身份信息存储到身份认证智能合约;此时存储的用户身份信息属于未认证状态,注册过程完成;
步骤2:用户认证过程;
步骤2-1:前端模块利用摄像头获取用户的生物活体人脸信息,前端模块提交获取到的生物活体人脸信息和用户身份证头像信息并调用身份认证智能合约认证请求接口进行认证请求;
步骤2-2:身份认证智能合约处理用户的认证请求,执行身份认证智能合约认证函数;身份认证智能合约认证函数将认证请求信息进行编码,编码完成后,通过跨合约调用预言机智能合约;
步骤2-3:预言机智能合约收到调用请求后,执行请求接收函数,将请求信息封装为区块链事件,存储到区块链中,区块链中的所有节点会同步该区块链事件,从而形成数据的一致性;
区块链事件的内容包含请求信息封装后的具体信息和根据该信息通过sha3算法生成的事件索引;通过生成的事件索引,预言机网络中的节点能够快速监听检索到该区块链事件;
步骤2-4:当预言机网络检索到区块链事件后将区块链事件解码;解码完成之后得到身份认证智能合约地址、身份认证智能合约回调函数、回调函数参数、base64编码的身份证头像信息、base64编码的活体人脸信息;
步骤2-5:预言机网络节点利用人脸对比模型对比解码后得到的用户身份证头像信息和生物体人脸信息的相似度;如果相似度超过设定阈值,则认为对比成功;
步骤2-6:预言机网络中的每个节点都执行步骤2-5,将身份认证请求的对比结果在全网共识,如果预言机网络中有一半以上的节点对比成功,则认为此次认证成功;认证成功之后预言机网络随机选出一个节点作为主节点调用预言机智能合约请求响应函数,请求内容包括身份认证结果、身份认证智能合约地址、身份认证智能合约回调函数、回调函数参数;
步骤2-7:预言机智能合约请求响应函数接收到预言机网络的调用后,利用身份认证智能合约地址和身份认证智能合约回调函数、回调参数、认证请求对比结果信息发送回调请求到身份认证智能合约;
步骤2-8:身份认证智能合约收到身份认证结果后,如果为认证成功,则向区块链提交一笔交易更改用户身份信息为认证状态。
2.根据权利要求1所述的一种基于区块链的身份认证方法,其特征在于,所述请求接收函数执行过程如下:
请求接收函数对请求信息进行判断,首先判断请求信息包含的交易所携带的手续费是否大于等于合约要求的最低手续费;如果大于等于,执行下一步;如果小于,则直接结束;
接着判断请求信息包含的交易的数据大小是否大于0字节,如果小于等于0字节,说明此次调用非法,结束函数执行流程;如果大于0字节,则正常执行下一步;
再判断请求回调函数是否大于0字节,如果小于等于0字节,说明函数签名为非法函数调用;如果大于0字节,则正常执行下一步;
最后将请求信息封装为区块链事件,存储到区块链中,函数执行结束。
3.根据权利要求1所述的一种基于区块链的身份认证方法,其特征在于,所述请求响应函数执行过程如下:
请求响应函数首先判断此次交易发起地址是否为合约创建者地址,如果不是合约创建者地址,则结束执行流程,否则继续执行判断预言机账户余额是否满足Gas要求,如果不满足要求,则结束流程,否则继续执行回调身份认证智能合约的回调函数;调用身份认证智能合约函数的过程通过跨合约调用实现。
4.根据权利要求1所述的一种基于区块链的身份认证方法,其特征在于,所述预言机网络节点执行对比过程如下:
步骤2-5-1:当预言机网络节点启动后查找本地配置文件并解析配置文件中的每一个配置项;配置项包括预言机智能合约地址、预言机智能合约管理员地址私钥、区块链节点地址和端口信息;
步骤2-5-2:解析配置文件完成之后,得到区块链节点的ip地址和端口信息;
步骤2-5-3:预言机网络节点解析预言机智能合约ABI json文件,将智能合约事件的结构信息从ABI文件中提取出来;
步骤2-5-4:预言机网络节点通过预言机智能合约地址和事件结构信息中携带的各项信息订阅区块链对应的智能合约事件,预言机网络节点采用循环的方式一直等待订阅事件到达;
步骤2-5-5:如果区块链节点收到预言机智能合约的请求事件,则会在区块链数据库中记录该信息,并且将该事件通知给订阅它的预言机网络节点;预言机网络节点收到该事件后从事件中解析出此次身份认证所需要的身份证人脸信息和生物活体人脸信息;
步骤2-5-6:预言机网络节点采用人脸对比库进行人脸信息的对比,如果对比阈值超过80%,则认为请求用户为真实用户,对比成功;随后预言机网络中的每个节点都会将这一次身份认证请求的结果在全网共识,每次只要网络中有一半以上的节点投票通过一个认证结果,则认为此次认证成功;
步骤2-5-7:认证成功之后预言机网络会随机选出一个节点作为主节点来组装响应请求交易,交易中携带此次对比成功与否的信息,利用之前从配置文件中解析出来的预言机智能合约管理员地址私钥对交易签名,然后发送交易到预言机智能合约;预言机智能合约会回调身份认证智能合约,将结果返回给身份认证智能合约。
5.根据权利要求1所述的一种基于区块链的身份认证方法,其特征在于,所述用户身份信息包括文字和图片,所述文字包括用户的姓名、出生日期、身份证号码和民族信息;所述图片为身份证base64编码头像小图信息。
6.根据权利要求1所述的一种基于区块链的身份认证方法,其特征在于,所述身份认证智能合约认证函数对认证的请求信息进行编码,编码的数据包括:请求ID、跨合约调用地址、身份认证智能合约地址、身份认证智能合约回调函数、回调函数参数、base64编码的身份证头像信息、base64编码的生物活体人脸信息;编码的规则为:所有的数据按照32字节长度设定,依次进行字符拼接,不足32字节的需要补充到32字节,超过32字节的需要分割成多段后编码。
7.根据权利要求1所述的一种基于区块链的身份认证方法,其特征在于,所述预言机网络将区块链事件解码时,首先获取每个数据段的长度,再从事件内容中读取对应长度的数据,不足32字节的数据只获取实际长度的内容,超过32字节的会将多个段合并进行解码。
CN202110531146.9A 2021-05-16 2021-05-16 一种基于区块链的身份认证方法 Active CN113242246B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110531146.9A CN113242246B (zh) 2021-05-16 2021-05-16 一种基于区块链的身份认证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110531146.9A CN113242246B (zh) 2021-05-16 2021-05-16 一种基于区块链的身份认证方法

Publications (2)

Publication Number Publication Date
CN113242246A true CN113242246A (zh) 2021-08-10
CN113242246B CN113242246B (zh) 2022-09-20

Family

ID=77134640

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110531146.9A Active CN113242246B (zh) 2021-05-16 2021-05-16 一种基于区块链的身份认证方法

Country Status (1)

Country Link
CN (1) CN113242246B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114170689A (zh) * 2021-09-06 2022-03-11 北京天德科技有限公司 一种区块链预言机中伪造人脸图像的检测方法和系统
CN116468214A (zh) * 2023-03-07 2023-07-21 德联易控科技(北京)有限公司 一种基于故障事件处理过程的证据电子化方法及电子设备
CN116667993A (zh) * 2023-04-28 2023-08-29 江苏芯信电子科技有限公司 一种基于大数据的区块链身份确认系统及其使用装置

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106533696A (zh) * 2016-11-18 2017-03-22 江苏通付盾科技有限公司 基于区块链的身份认证方法、认证服务器及用户终端
CN107682331A (zh) * 2017-09-28 2018-02-09 复旦大学 基于区块链的物联网身份认证方法
US20200053081A1 (en) * 2018-08-13 2020-02-13 Postech Academy - Industry Foundation Method and apparatus for user authentication based on block chain
CN110992020A (zh) * 2019-11-19 2020-04-10 腾讯科技(深圳)有限公司 基于智能合约的数据处理方法、相关节点及存储介质
CN111145023A (zh) * 2019-12-17 2020-05-12 上海交通大学 基于可信预言机的跨链交换方法、系统及介质
CN111159681A (zh) * 2019-12-31 2020-05-15 马上游科技股份有限公司 基于区块链的数字身份的实现方法及系统
CN111324672A (zh) * 2020-03-25 2020-06-23 中国工商银行股份有限公司 区块链安全处理系统及方法
EP3716526A1 (en) * 2019-03-26 2020-09-30 Acer Incorporated Method of identity authentication for voice over internet protocol call and related device
CN111885128A (zh) * 2020-07-08 2020-11-03 佛山市海协科技有限公司 基于区块链的身份管理方法
CN111930852A (zh) * 2020-09-29 2020-11-13 北京百度网讯科技有限公司 基于区块链的数据处理方法、装置、设备以及存储介质
CN112055023A (zh) * 2020-09-09 2020-12-08 工银科技有限公司 基于预言机的访问请求处理方法、装置、设备和介质
CN112329041A (zh) * 2020-03-18 2021-02-05 支付宝(杭州)信息技术有限公司 部署合约的方法及装置
CN112364311A (zh) * 2020-11-10 2021-02-12 上海保险交易所股份有限公司 区块链上身份管理方法和装置

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106533696A (zh) * 2016-11-18 2017-03-22 江苏通付盾科技有限公司 基于区块链的身份认证方法、认证服务器及用户终端
CN107682331A (zh) * 2017-09-28 2018-02-09 复旦大学 基于区块链的物联网身份认证方法
US20200053081A1 (en) * 2018-08-13 2020-02-13 Postech Academy - Industry Foundation Method and apparatus for user authentication based on block chain
EP3716526A1 (en) * 2019-03-26 2020-09-30 Acer Incorporated Method of identity authentication for voice over internet protocol call and related device
CN110992020A (zh) * 2019-11-19 2020-04-10 腾讯科技(深圳)有限公司 基于智能合约的数据处理方法、相关节点及存储介质
CN111145023A (zh) * 2019-12-17 2020-05-12 上海交通大学 基于可信预言机的跨链交换方法、系统及介质
CN111159681A (zh) * 2019-12-31 2020-05-15 马上游科技股份有限公司 基于区块链的数字身份的实现方法及系统
CN112329041A (zh) * 2020-03-18 2021-02-05 支付宝(杭州)信息技术有限公司 部署合约的方法及装置
CN111324672A (zh) * 2020-03-25 2020-06-23 中国工商银行股份有限公司 区块链安全处理系统及方法
CN111885128A (zh) * 2020-07-08 2020-11-03 佛山市海协科技有限公司 基于区块链的身份管理方法
CN112055023A (zh) * 2020-09-09 2020-12-08 工银科技有限公司 基于预言机的访问请求处理方法、装置、设备和介质
CN111930852A (zh) * 2020-09-29 2020-11-13 北京百度网讯科技有限公司 基于区块链的数据处理方法、装置、设备以及存储介质
CN112364311A (zh) * 2020-11-10 2021-02-12 上海保险交易所股份有限公司 区块链上身份管理方法和装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
李?等: "一种去中心化的身份认证模型的设计与实现", 《辽东学院学报(自然科学版)》 *
范锦锋: "智能合约和预言机初探", 《信息通信技术与政策》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114170689A (zh) * 2021-09-06 2022-03-11 北京天德科技有限公司 一种区块链预言机中伪造人脸图像的检测方法和系统
CN116468214A (zh) * 2023-03-07 2023-07-21 德联易控科技(北京)有限公司 一种基于故障事件处理过程的证据电子化方法及电子设备
CN116468214B (zh) * 2023-03-07 2023-12-15 德联易控科技(北京)有限公司 一种基于故障事件处理过程的证据电子化方法及电子设备
CN116667993A (zh) * 2023-04-28 2023-08-29 江苏芯信电子科技有限公司 一种基于大数据的区块链身份确认系统及其使用装置

Also Published As

Publication number Publication date
CN113242246B (zh) 2022-09-20

Similar Documents

Publication Publication Date Title
CN113242246B (zh) 一种基于区块链的身份认证方法
CN107093228B (zh) 应用于电子锁具的授权方法、装置及系统
CN105814535A (zh) 呼叫中的虚拟助理
CN109389727A (zh) 开锁方法、系统及计算机可读存储介质
CN101740031B (zh) 一种基于网络动态负载均衡的声纹识别系统及其识别方法
RU2685693C1 (ru) Способ и устройство для обеспечения сигнала, указывающего потерю терминала
CN111865895B (zh) 一种基于云平台的数据保密传输方法及系统
WO2022095518A1 (zh) 接口自动化测试方法、装置、计算机设备及存储介质
CN104540035B (zh) 一种无障碍视频手语呼叫系统及方法
CN110620820A (zh) 一种泛在电力物联网智能管理系统
JP2006260461A (ja) アクセス制御システム及びこれを用いた情報処理システム
WO2021233474A1 (zh) 基于内网连接的外网身份认证方法、系统、设备和存储介质
CN113190858B (zh) 一种基于隐私保护的图像处理方法、系统、介质和设备
CN112469034B (zh) 能安全认证物理感知设备的物联网网关装置及其接入方法
CN111916086B (zh) 语音交互控制方法、装置、计算机设备和存储介质
CN111756721B (zh) 一种关联认证方法、装置、iam服务器及可读存储介质
CN114171172A (zh) 一种医疗信息匹配与分发的系统和方法
CN111367573B (zh) 设备登陆方法、装置、存储介质和计算机设备
CN114360129A (zh) 一种门禁管理方法、系统及设备、存储介质
JP6349062B2 (ja) 認証システム、クライアント端末、認証サーバー、端末プログラム及びサーバープログラム
CN112911207A (zh) 呼叫方法以及智能对讲系统
CN111581609A (zh) 一种基于应用程序登录的用户身份认证系统
WO2022017097A1 (zh) 通话身份认证方法、终端及计算机可读存储介质
CN113271590B (zh) 无线办公网络用的安全接入系统
CN112115446B (zh) 一种基于Skyline查询生物特征的身份认证方法及系统

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