一种基于区块链的身份认证方法、设备及介质与流程

文档序号:21635710发布日期:2020-07-29 02:46阅读:141来源:国知局
一种基于区块链的身份认证方法、设备及介质与流程

本申请涉及身份认证领域,具体涉及一种基于区块链的身份认证方法、设备及介质。



背景技术:

随着科技的发展,区块链技术的应用也越发的成熟,应用在各个领域之中,例如,比特币、以太坊等。

现有技术中,针对区块链中的加密算法,采用的是非对称的加密方式,每个区块链中的节点都需要拥有自己的私钥。但是,由于现实生活中,大多数人的技术水平并没有达到相应的要求,不懂如何使用保管自己的私钥,这也就不利于区块链技术的推广。



技术实现要素:

为了解决上述问题,本申请提出了一种基于区块链的身份认证方法,应用在身份认证系统中,所述方法包括:在所述身份认证系统中确定预先基于区块链框架创建的区块链平台;在所述身份认证系统中确定在所述区块链平台外搭建的管理中心;接收用户发送的私钥和账户密码,并通过所述账户密码将所述私钥加密后存储在所述管理中心中,其中,所述管理中心不存储所述账户密码;接收所述用户发送的交易请求,并通过所述交易请求中包括的账户密码,在所述区块链平台中进行交易。

在一个示例中,通过所述账户密码将所述私钥加密后存储在所述管理中心中,包括:将所述私钥进行碎片化处理,得到多个子秘钥;通过所述账户密码将所述多个子秘钥分别加密后,存储在所述管理中心中。

在一个示例中,所述方法还包括:接收所述用户发送的身份信息,并将所述身份信息存储在所述管理中心中,其中,所述身份信息与所述私钥相关联;接收所述用户发送的重置请求,并根据所述重置请求中所包含的身份信息,重置所述私钥。

在一个示例中,所述身份信息为实名认证信息。

在一个示例中,所述身份认证系统中还包括监管机构,所述监管机构用于监管所述管理中心,防止所述用户的隐私泄露。

在一个示例中,通过所述交易请求中包括的账户密码,在所述区块链平台中进行交易,包括:确定所述用户在所述管理中心中对应的加密后的私钥;根据所述交易请求中所包含的账户密码,对所述加密后的私钥进行解密,来获取所述私钥;通过所述私钥,在所述区块链平台中进行交易。

在一个示例中,所述方法还包括:生成相应的智能合约,并部署在所述身份认证系统中中,其中,所述智能合约包括所述账户密码、所述私钥中的至少一种。

在一个示例中,所述智能合约用于:确定所述用户在所述管理中心中对应的加密后的私钥;或根据所述交易请求中所包含的所述账户密码,对所述加密后的私钥进行解密,来获取所述私钥;或通过所述私钥,在所述区块链平台中进行交易。

另一方面,本申请还提出了一种基于区块链的身份认证设备,应用在身份认证系统中,所述设备包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:在所述身份认证系统中确定预先基于区块链框架创建的区块链平台;在所述身份认证系统中确定在所述区块链平台外搭建的管理中心;接收用户发送的私钥和账户密码,并通过所述账户密码将所述私钥加密后存储在所述管理中心中,其中,所述管理中心不存储所述账户密码;接收所述用户发送的交易请求,并通过所述交易请求中包括的账户密码,在所述区块链平台中进行交易。

另一方面,本申请还提出了一种基于区块链的身份认证的非易失性计算机存储介质,存储有计算机可执行指令,应用在身份认证系统中,所述计算机可执行指令设置为:在所述身份认证系统中确定预先基于区块链框架创建的区块链平台;在所述身份认证系统中确定在所述区块链平台外搭建的管理中心;接收用户发送的私钥和账户密码,并通过所述账户密码将所述私钥加密后存储在所述管理中心中,其中,所述管理中心不存储所述账户密码;接收所述用户发送的交易请求,并通过所述交易请求中包括的账户密码,在所述区块链平台中进行交易。

通过本申请提出基于区块链的身份认证方法能够带来如下有益效果:

由于在身份认证系统中,设置有管理中心,管理中心可以将用户的私钥都存储在自身中,可以使得用户即使不懂如何保管私钥,也可以在使用的时候能获取到自身的私钥。并且私钥通过账户密码进行加密,管理中心不存储账户密码,也就无法窃取用户的私钥,保障了用户的隐私。

附图说明

此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1为本申请实施例中基于区块链的身份认证方法的流程示意图;

图2为本申请实施例中基于区块链的身份认证设备的示意图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

以下结合附图,详细说明本申请各实施例提供的技术方案。

如图1所示,本申请实施例提供一种基于区块链的身份认证方法,应用在身份认证系统中,身份认证系统具有身份认证的功能,当然也可以包括其他功能,例如交易功能、登陆功能等,在此不做限定。身份认证方法包括:

s101、在所述身份认证系统中确定预先基于区块链框架创建的区块链平台。

区块链(blockchain)是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式,本质上是一个去中心化的数据库。

首先可以确定基于区块链框架创建的区块链平台。其中,区块链框架可以是能够实现本申请实施例相应功能的任意区块链框架,例如,比特币、以太坊、fabric、corda等。区块链平台可以指的是存储区块链的平台,例如,可以是分布式系统等。当然,区块链平台也可以直接代表区块链本身,在此不做限定。

而本申请中的基于区块链框架创建的区块链平台,是建立在身份认证系统中的。当然,身份认证系统除了区块链平台外,还可以包括其他多个设备、平台、模块等。

s102、在所述身份认证系统中确定在所述区块链平台外搭建的管理中心。

在身份认证系统中确定了区块链平台后,还可以在其中确定在区块链平台所搭建的管理中心。管理中心用于存储用户的私钥。如果用户自己保管私钥,不仅容易丢失,而且可能还会由于技术操作上的限制,使得用户不会保存。而将私钥存储在管理中心中,用户只需要信任管理中心,即可完成私钥的存储。

s103、接收用户发送的私钥和账户密码,并通过所述账户密码将所述私钥加密后存储在所述管理中心中,其中,所述管理中心不存储所述账户密码。

当然,如果直接将私钥存储在管理中心中,仍然无法解决隐私泄露的问题。而通常情况下,除了私钥外,用户都会拥有自己的账户id以及账户密码,用于登录自身的账户。因此,可以在发送私钥时,一起发送自身所对应的账户密码。然后在身份验证系统接收到用户的账户密码后,可以通过账户密码对私钥进行加密,然后将加密后的私钥存储在管理中心中。而管理中心则不存储账户密码,则管理中心无法根据根据账户密码对已加密过的私钥进行解密,从而也保证了用户的隐私。

具体地,如果只是将私钥加密后存储在管理中心中,仍然会存在着被盗取的风险。因此,可以首先将私钥进行碎片化处理,即将私钥分成多个部分,得到多个子秘钥。然后将这多个子秘钥分别通过私钥加密后存储在区块链平台中。其中,在存储时,可以将这多个加密后的子秘钥分别存储在不同的地方。例如,管理中心包括多个存储设备时,可以存储在不同的存储设备。管理中心中存在多个管理员时,可以由多个管理员分别管理部分的子秘钥。

s104、接收所述用户发送的交易请求,并通过所述交易请求中包括的账户密码,在所述区块链平台中进行交易。

在接收到用户发送的交易请求后,即可通过交易请求中包括的账户密码,对存储在管理中心中的加密后的私钥进行解密,即可获取用户的私钥。然后用户即可用该私钥在区块链平台中进行交易,或进行相应的操作。由于在身份认证系统中,设置有管理中心,管理中心可以将用户的私钥都存储在自身中,可以使得用户即使不懂如何保管私钥,也可以在使用的时候能获取到自身的私钥。并且私钥通过账户密码进行加密,管理中心不存储账户密码,也就无法窃取用户的私钥,保障了用户的隐私。

其中,还可以预先生成相应的智能合约,并部署在身份认证系统中。智能合约包括账户密码、私钥中的至少一种。智能合约用于确定用户在管理中心中对应的加密后的私钥;或根据交易请求中所包含的账户密码,对加密后的私钥进行解密,来获取私钥;或通过私钥,在区块链平台中进行交易。由于智能合约是公开的,每个节点都可以审验该智能合约是否符合预先的约定,并将其部署在自己的节点上。而用户也可以通过相应的途径去查询该智能合约,在提高了交易自动化程度的同时,也进一步增加了用户的信任程度。而智能合约只能通过升级的方式进行更改,需要各个节点同步部署,并且一旦部署,便只能通过程序执行,没有人为因素的干扰,加强了数据的可信度。

在一个实施例中,如果用户忘记了自身所拥有的账户密码,则就无法通过账户密码来获取私钥。因此可以先由用户发送自身所对应的身份信息,然后将身份信息与私钥相关联后,存储在管理中心。当用户忘记账户密码,并且也忘记了私钥后,可以发送携带有自身的身份信息的重置请求,身份认证系统在接收到重置请求后,可以对比其包含的身份信息,如果一致,则可以将私钥进行重置,以使用户可以根据重置后的私钥在区块链平台中进行交易。其中,身份信息可以是实名认证信息,通过实名认证信息,可以保证用户的身份信息难以被篡改,保证了用户的身份信息的真实性。实名认证信息可以是身份证、驾照、学生证等可以进行实名认证的信息。

在一个实施例中,身份认证系统中还包括监管机构。监管机构用于监管管理中心,防止用户的隐私泄露。监管机构可以包括政府、监管部门,通过监管部门对管理中心进行监管,可以进一步地增加人们对于管理机构的信任程度,也可以进一步减少隐私泄露的情况发生。

如图2所示,本申请实施例还提供了一种基于区块链的身份认证设备,应用在身份认证系统中,所述设备包括:

至少一个处理器;以及,

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:

在所述身份认证系统中确定预先基于区块链框架创建的区块链平台;

在所述身份认证系统中确定在所述区块链平台外搭建的管理中心;

接收用户发送的私钥和账户密码,并通过所述账户密码将所述私钥加密后存储在所述管理中心中,其中,所述管理中心不存储所述账户密码;

接收所述用户发送的交易请求,并通过所述交易请求中包括的账户密码,在所述区块链平台中进行交易。

本申请实施例还提供了一种基于区块链的身份认证的非易失性计算机存储介质,存储有计算机可执行指令,应用在身份认证系统中,所述计算机可执行指令设置为:

在所述身份认证系统中确定预先基于区块链框架创建的区块链平台;

在所述身份认证系统中确定在所述区块链平台外搭建的管理中心;

接收用户发送的私钥和账户密码,并通过所述账户密码将所述私钥加密后存储在所述管理中心中,其中,所述管理中心不存储所述账户密码;

接收所述用户发送的交易请求,并通过所述交易请求中包括的账户密码,在所述区块链平台中进行交易。

本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备和介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本申请实施例提供的设备和介质与方法是一一对应的,因此,设备和介质也具有与其对应的方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述设备和介质的有益技术效果。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1