欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 基于区块链的身份验证方法、系统、终端设备及存储介质独创技术21506字

基于区块链的身份验证方法、系统、终端设备及存储介质

2021-03-07 15:58:55

基于区块链的身份验证方法、系统、终端设备及存储介质

  技术领域

  本公开涉及通信技术领域,尤其涉及一种基于区块链的身份验证方法、一种基于区块链的身份验证系统、一种终端设备以及一种计算机可读存储介质。

  背景技术

  随着老龄化社会逐步形成,“老有所养,老有所依”成为热点话题,个人账户制度成为我国基本养老保险的必要性制度。目前,用户个人养老金账户信息查询很繁琐,通常需要携带本人身份证至就近区职业介绍所、就近区社保分中心或街(镇)社区事务中心申请密码,并且查询信息不全,交易信息不透明化。

  我国目前处于城镇化建设、经济转型深化期,促使人口和劳动力城乡间流动大,为了保障养老金账户安全管理,提出一种可以实现养老金账户查询高效化以及身份验证透明化,从而有效保护个人缴纳社保权益是目前亟待解决的问题。

  发明内容

  本公开提供了一种基于区块链的身份验证方法、系统、终端设备及存储介质,运用区块链解决养老金账户的身份认证、查询等透明化,从而有效保护个人缴纳社保权益。

  根据本公开实施例的一方面,提供一种基于区块链的身份验证方法,包括:

  在接收到用户的账户查询请求后,判断所述账户查询请求是否为预设的账户第一信息请求;

  若为账户第一信息请求,则验证所述账户查询请求中的账户公钥、账户第一私钥及签名信息是否分别与区块链中和所述账户第一信息对应的账户公钥、账户第一私钥及签名信息均一致;

  若均一致,则向用户提供所述账户第一信息。

  在一种实施方式中,在判断所述账户查询请求是否为账户第一信息请求之后,还包括:

  若不是账户第一信息请求,则继续判断所述账户查询请求是否为预设的账户第二信息请求;

  若为账户第二信息请求,则验证所述账户查询请求中的账户公钥、账户第一私钥、账户第二私钥及签名信息是否分别与区块链中和所述账户第二信息对应的账户公钥、账户第一私钥、账户第二私钥及签名信息均一致;

  若均一致,则向用户提供所述账户第二信息。

  在一种实施方式中,所述账户为养老金账户,所述账户第一信息包括养老金账户的用户基本信息和养老金基本信息,所述账户第二信息包括养老金账户的用户基本信息、养老金基本信息、账户金额及账户交易信息。

  在一种实施方式中,在向用户提供所述账户第二信息之后,还包括:

  修改所述账户第二私钥;以及,

  在区块链中广播修改后的账户第二私钥。

  根据本公开实施例的另一方面,提供一种基于区块链的身份验证系统,包括:

  判断模块,其设置为在接收到用户的账户查询请求后,判断所述账户查询请求是否为预设的账户第一信息请求;

  验证模块,其设置为在所述判断模块判断为账户第一信息请求时,验证所述账户查询请求中的账户公钥、账户第一私钥及签名信息是否分别与区块链中和所述账户第一信息对应的账户公钥、账户第一私钥及签名信息均一致;

  信息提供模块,其设置为在验证模块验证为所述账户公钥、账户第一私钥及签名信息均一致时,向用户提供所述账户第一信息。

  在一种实施方式中,所述判断模块还设置为,在判断为不是账户第一信息请求时,继续判断所述账户查询请求是否为预设的账户第二信息请求;

  所述验证模块还设置为,在所述判断模块判断为是账户第二信息请求时,验证用户账户查询请求中的账户公钥、账户第一私钥、账户第二私钥及签名信息是否分别与区块链中和所述账户第二信息对应的账户公钥、账户第一私钥、账户第二私钥及签名信息均一致;

  所述信息提供模块设置为,在所述验证模块验证为所述账户公钥、账户第一私钥、账户第二私钥及签名信息均一致时,向用户提供所述账户第二信息。

  在一种实施方式中,所述账户为养老金账户,所述账户第一信息包括养老金账户的用户基本信息和养老金基本信息,所述账户第二信息包括养老金账户的用户基本信息、养老金基本信息、账户金额及账户交易信息。

  在一种实施方式中,所述系统还包括:

  私钥修改模块,其设置为修改所述账户第二私钥;以及,

  广播模块,其设置为在区块链中广播修改后的账户第二私钥。

  根据本公开实施例的又一方面,提供一种终端设备,包括存储器和处理器,所述存储器中存储有计算机程序,当所述处理器运行所述存储器存储的计算机程序时,所述处理器执行所述的基于区块链的身份验证方法。

  根据本公开实施例的再一方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,所述处理器执行所述的基于区块链的身份验证方法。

  本公开的实施例提供的技术方案可以包括以下有益效果:

  本公开实施例提供的基于区块链的身份验证方法,通过在接收到用户的账户查询请求后,判断所述账户查询请求是否为预设的账户第一信息请求;若为账户第一信息请求,则验证所述账户查询请求中的账户公钥、账户第一私钥及签名信息是否分别与区块链中和所述账户第一信息对应的账户公钥、账户第一私钥及签名信息均一致,若均一致,则向用户提供所述账户第一信息。本公开实施例运用区块链技术,实现账户的身份认证、查询等透明化和高效化,至少可以解决当前养老金账户查询流程复杂、查询信息不公开透明等问题,从而有效保护个人缴纳社保权益。

  本公开的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本公开而了解。本公开的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

  附图说明

  附图用来提供对本公开技术方案的进一步理解,并且构成说明书的一部分,与本公开的实施例一起用于解释本公开的技术方案,并不构成对本公开技术方案的限制。

  图1为本公开实施例提供的一种基于区块链的身份验证方法的流程示意图;

  图2为本公开另一实施例提供的一种基于区块链的身份验证方法的流程示意图;

  图3为本公开实施例提供的一种基于区块链的身份验证系统的结构示意图;

  图4为本公开实施例一种终端设备的结构示意图。

  具体实施方式

  为使本公开实施例的目的、技术方案和优点更加清楚,以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。

  需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序;并且,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互任意组合。

  在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本公开的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。

  区块链(Blockchain)是一种将数据区块有序连接,并以密码学方式保证其不可篡改、不可伪造的分布式账本(数据库)技术。通俗的说,区块链技术可以在无需第三方背书情况下实现系统中所有数据信息的公开透明、不可篡改、不可伪造、可追溯。区块链作为一种底层协议或技术方案可以有效地解决信任问题,实现价值的自由传递,在数字货币、金融资产的交易结算、数字政务、存证防伪数据服务等领域具有广阔前景。

  为了解决目前养老金账户信息查询困难、身份认证不透明等问题,本公开实施例通过将养老金账户信息上传至区块链,并基于区块链进行查询用户的身份验证,在验证成功后向用户提供相应的养老金账户信息,以实现养老金账户查询高效化以及身份验证透明化,从而有效保护个人缴纳社保权益。

  请参照图1,图1为本公开实施例提供的一种基于区块链的身份验证方法的流程示意图,具体地,包括步骤S101-S103。

  在步骤S101中,在接收到用户的账户查询请求后,判断所述账户查询请求是否为预设的账户第一信息请求,若为账户第一信息请求,则执行步骤S102,否则,结束流程。

  其中,账户查询请求,为用户或企业通过手机或者电脑等设备查询养老金账户信息的请求,本公开实施例中,养老金账户信息可以包括账户第一信息和账户第二信息,用户可以根据其查询权限查询养老金账户的不同信息,需要说明的,本领域技术技术人员可以根据实际情况设定养老金账户信息的不同信息。本实施例中,所述账户第一信息包括养老金账户的用户基本信息和养老金基本信息,进一步的,用户基本信息包括用户手机号、姓名、性别、社会保障号码、参加工作时间、视同缴费年限、个人首次缴费时间等;养老金基本信息包括当地上年职工平均工资、个人当年缴费工资基数、当年缴费月数、当年记帐利息及个人帐户储存额情况等。需要说明的是,在本公开实施例中,账户第一信息又为养老金账户基本信息,账户第二信息又为养老金账户高级信息。

  本实施例中,在步骤S101之前,首先需要将用户养老金账户信息上传至区块链,该养老金账户信息中携带验证该信息的账户公钥、账户私钥(可以包括账户第一私钥和账户第二私钥)以及签名信息等,然后在区块链的智能合约平台对用户养老金账户信息验证通过,具体地,账户公钥和账户私钥分别为两种不同阶段的验证没密码,例如,账户公钥可以为用户注册时的密码,账户第一私钥可以为账户密码或者用户身份标识+账户密码,账户第一私钥可以为身份标识+账户密码+当前数据块哈希值+时间戳,签名信息为用户的数字签名信息。

  可以理解的是,账户查询请求中携带养老金账户以及该养老金账户的账户公钥、账户第一私钥和签名信息,当请求账户第二信息时,账户查询请求中携带养老金账户以及养老金账户的账户公钥、账户第一私钥、账户第二私钥和签名信息。

  在步骤S102中,验证所述账户查询请求中的账户公钥、账户第一私钥及签名信息是否分别与区块链中和所述账户第一信息对应的账户公钥、账户第一私钥及签名信息均一致,若均一致,则执行步骤S103,如果存在一项信息验证不一致,则结束流程并反馈给用户进行重新验证。

  具体地,通过将账户公钥、账户第一私钥及签名信息与在区块链的智能合约平台已经验证通过的用户养老金账户信息中的账户公钥、账户第一私钥及签名信息进行比对验证,完全相同说明验证通过。

  在步骤S103中,向用户提供所述账户第一信息,并结束流程。

  本实施例在完成上述验证后,说明发起账户查询请求的用户具有查询账户第一信息的权限,区块链即可向该发起账户查询请求的用户提供账户第一信息。

  请参照图2,图2为本公开另一实施例提供的一种基于区块链的身份验证方法的流程示意图,本实施例在上一实施例的基础上,还为用户提供查询养老金账户高级信息(即账户第二信息)的方案,通过设置不同的查询权限,使用户可以根据其权限查询不同的养老金账户信息内容,进一步提高养老金安全验证管理,具体地,在判断所述账户查询请求是否为账户第一信息请求(即,步骤S101)之后,还包括步骤S201-步骤S203。

  在步骤S201中,若不是账户第一请求信息,则继续判断所述账户查询请求是否为账户第二信息,若为账户第二信息请求,则执行步骤S202,否则结束流程。

  在步骤S202中,验证用户账户查询请求中的账户公钥、账户第一私钥、账户第二私钥及签名信息是否分别与区块链中和所述账户第二信息对应的账户公钥、账户第一私钥、账户第二私钥及签名信息均一致,若均一致,则执行步骤S203,否则,结束流程并反馈给用户进行重新验证。

  其中,所述账户第二信息包括养老金账户的用户基本信息、养老金基本信息、账户金额及账户交易信息。进一步地,账户第二信息除了账户第一信息所包含的所有信息之外还包括账户金额、每月账户明细等一切跟金额交易相关信息。

  在步骤S203中,向用户提供所述账户第二信息,并结束流程。

  本实施例在完成上述验证后,说明发起账户查询请求的用户具有查询账户第二信息的权限,区块链即可向该发起账户查询请求的用户提供账户第一信息。

  进一步地,在向用户提供所述账户第二信息(即,步骤S202)之后,还包括以下步骤:

  修改所述账户第二私钥;以及,

  在区块链中广播修改后的账户第二私钥。

  本实施例中,账户第二信息由于涉及到金额交易等隐私信息,为提高账户第二信息的验证安全性,本实施例对于账户第二私钥进行实时变更,在每次查询之后,区块链的智能合约平台对第二私钥进行修改,并在区块链中广播,具体地,基于当前时间戳和当前数据块哈希值对第二私钥进行修改,可以理解的是,数据块为存储养老金账户的数据块。

  本公开实施例通过将用户个人养老金放在区块链上,通过在智能合约系统上通过对账户公钥、账户第一私钥、账户第二私钥以及签名信息进行验证,根据不同权限查询账户基本信息和高级信息,并且在查询成功后对账户第二私钥进行修改并广播,保证账户安全,从而达到养老金账户的身份认证、交易记录等透明化和安全。

  基于相同的技术构思,本公开实施例相应还提供一种基于区块链的身份验证系统,如图3所示,具体地,包括判断模块31、验证模块32以及信息提供模块33,其中,

  判断模块31,其设置为在接收到用户的账户查询请求后,判断所述账户查询请求是否为预设的账户第一信息请求;

  验证模块32,其设置为在所述判断模块判断为账户第一信息请求时,验证所述账户查询请求中的账户公钥、账户第一私钥及签名信息是否分别与区块链中和所述账户第一信息对应的账户公钥、账户第一私钥及签名信息均一致;

  信息提供模块33,其设置为在验证模块验证为所述账户公钥、账户第一私钥及签名信息均一致时,向用户提供所述账户第一信息。

  在一种实施方式中,所述判断模块31还设置为,在判断为不是账户第一信息时,继续判断所述账户查询请求是否为预设的账户第二信息请求;

  所述验证模块32还设置为,在所述判断模块判断是账户第二信息请求时,验证用户账户查询请求中的账户公钥、账户第一私钥、账户第二私钥及签名信息是否分别与区块链中和所述账户第二信息对应的账户公钥、账户第一私钥、账户第二私钥及签名信息均一致;

  所述信息提供模块33还设置为,在所述验证模块验证为所述账户公钥、账户第一私钥、账户第二私钥及签名信息均一致时,向用户提供所述账户第二信息。

  在一种实施方式中,所述账户第一信息包括养老金账户的用户基本信息和养老金基本信息,所述账户第二信息包括养老金账户的用户基本信息、养老金基本信息、账户金额及账户交易信息。

  在一种实施方式中,所述系统还包括:

  私钥修改模块,其设置为修改所述账户第二私钥;

  广播模块,其设置为在区块链中广播修改后的账户第二私钥。

  需要说明的是,本实施例提供的基于区块链的身份验证系统的各个模块分别用于执行上述方法实施例中的方法,其原理已在上述方法实施例详述,此处不再赘述。

  基于相同的技术构思,本公开实施例相应还提供一种终端设备,如图4所示,所述终端设备包括存储器和处理器,所述存储器中存储有计算机程序,当所述处理器运行所述存储器存储的计算机程序时,所述处理器执行所述的基于区块链的身份验证方法。

  基于相同的技术构思,本公开实施例相应还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,所述处理器执行所述基于区块链的身份验证方法。

  本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。

  综上所述,本公开实施例提供的基于区块链的身份验证方法、系统、终端设备及存储介质,通过在接收到用户的账户查询请求后,判断所述账户查询请求是否为预设的账户第一信息请求;若为账户第一信息请求,则验证用户账户查询请求中的账户公钥、账户第一私钥及签名信息是否分别与区块链中和所述账户第一信息对应的账户公钥、账户第一私钥及签名信息均一致,若均一致,则向用户提供所述账户第一信息。本公开实施例运用区块链技术,实现账户的身份认证、查询等透明化和高效化,至少可以解决当前养老金账户查询流程复杂、查询信息不公开透明等问题,从而有效保护个人缴纳社保权益;进一步的,本实施例可以根据不同权限查询账户基本信息和高级信息,并且在查询成功后对账户第二私钥进行修改并广播,保证账户安全,从而达到养老金账户的身份认证、交易记录等透明化和安全。

  最后应说明的是:以上各实施例仅用以说明本公开的技术方案,而非对其限制;尽管参照前述各实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本公开各实施例技术方案的范围。

《基于区块链的身份验证方法、系统、终端设备及存储介质.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)