使用智能合约及区块链数据库通过基于PKI的认证代理用户的登录的方法及利用其的服务器技术

技术编号:22174762 阅读:65 留言:0更新日期:2019-09-21 15:24
本发明专利技术提供使用智能合约及区块链数据库对用户的登录请求通过基于PKI的认证代理登录的方法。根据本发明专利技术的方法,若从所述用户终端的服务提供应用程序获取到请求通过认证应用程序代理登录的信息的情况下,服务提供服务器将认证请求响应信息传递给所述服务提供应用程序,其认证重定向请求传递至所述认证应用程序之后若获取到服务器挑战请求信息,则将服务器挑战请求响应信息传递给所述认证应用程序以支持判定服务器及应用程序认证书是否有效,从所述认证服务器获取包括所述是否有效的认证结果消息,并且将规定的访问令牌传递给所述服务提供应用程序以支持使得能够利用所述服务,以此处理所述登录。

Using Intelligent Contract and Block Chain Database to Authenticate Proxy User's Logon Based on PKI and Using Its Server

【技术实现步骤摘要】
【国外来华专利技术】使用智能合约及区块链数据库通过基于PKI的认证代理用户的登录的方法及利用其的服务器
本专利技术涉及使用智能合约(smartcontract)及区块链数据库(blockchaindatabase),针对用于利用由服务提供服务器提供的服务的用户的登录请求,通过基于公钥基础设施(publickeyinfrastructure,PKI)的认证代理登录的方法、执行其的服务提供服务器及认证服务器。
技术介绍
OAuth2.0作为现有的用于代理登录用户个人账户的服务,是一种在网页、移动设备及桌面应用程序等中标准化的认证方式,是一种使用可以进行安全认证的开放式协议的方式。由于在使用所述OAuth之前没有认证方式的标准,因此使用作为现有的基本认证的ID和密码的组合,这种方式缺乏安全性。在非基本认证的情况下,各个应用程序按照开发公司各自的方法确认用户,这些方法例如有:谷歌的AuthSub、AOL的OpenAuth、雅虎的BBAuth、亚马逊的网页服务API等。OAuth作为对这些各不相同的认证方式进行标准化的认证方式,若使用OAuth,共享该认证的应用程序之间无需单独认证。因此,可以整合使用多个应用程序,OAuth2.0为所述OAuth的最新版本。下面简要说明OAuth2.0的方式。当用户欲利用由服务提供服务器提供的服务时,首先,根据用户的操作,用于登录的认证请求从作为该用户的终端的用户终端传递到所述服务提供服务器。接收到认证请求的服务提供服务器将登录信息发送给认证服务器,认证服务器验证该登录信息,若验证成功完成,则向服务提供服务器返回授权信息。根据该授权信息,服务提供服务器将规定的授权传递信息传递给用户终端,接收到其的用户终端将访问令牌(accesstoken)请求信息传递给认证服务器,从而获取由认证服务器发放的访问令牌。由此,用户终端可通过该访问令牌向服务提供服务器请求服务相关资源,因此登录代理步骤完成。另外,为了确认从用户终端获取的访问令牌是否有效,服务提供服务器可以向认证服务器请求对访问令牌的验证请求,认证服务器可响应于此返回用户的属性信息。如上所述的现有OAuth的认证步骤也只是通过确认用户ID(用户标识信息)及密码是否一致来执行,因此用户ID与密码被盗时,仍然存在安全不足的问题。为了提高安全性而可导入的认证书例如现有的公认认证书通常需要高额的发放费用,且伴有使用上的制约性,因此,优选使用安全性与使用性强且全新代替现有公认认证书等的基于区块链的认证书。对此,本专利技术人不限于现有的OAuth2.0协议,而是使用区块链技术,目的在于提供一种比现有OAuth2.0协议具有更高的安全性且可以代理多种结构的个人或服务器等的认证的方法。
技术实现思路
技术问题本专利技术旨在提供用于强化如上所述的现有的OAuth的安全性与使用性的方法及服务器,本专利技术的目的是提供安全性与使用性强且能够以低费用代替现有方式的技术方案。具体地,本专利技术的目的在于提供一种参照记录于虚拟货币的私有/公有区块链数据库的认证书相关信息且将关于认证结果的信息记录在这些区块链数据库,以最终使得无法伪变造的方案。而且,本专利技术的目的在于并非利用多重签名仅验证关于用户个人的认证书,而是还验证成为服务请求对象的服务提供服务器的认证书以提高安全性。另外,本专利技术可以提供临时ID,因此目的在于还可以向没有用户ID的用户提供服务且强化安全。并且,本专利技术的另一目的在于通过如上利用记录于区块链数据库的交易验证相关信息,以使得能够保障数据库的完整性。本专利技术的又一目的在于提供一种具有可以对多种结构的个人或服务器进行认证代理的技术方案的基于区块链的登录代理服务提供体系。技术方案用于达到如上所述的本专利技术的目的且实现下述本专利技术的特征性效果的本专利技术的技术特征如下。根据本专利技术的一实施方式,提供一种使用智能合约(smartcontract)及区块链数据库对用于利用服务提供服务器提供的服务的用户的登录请求,通过基于公钥基础设施(publickeyinfrastructure,PKI)的认证代理登录的方法,其特征在于:所述智能合约为能够编译成可运行的字节码并在认证服务器或包括与所述认证服务器联动的其他装置的多个计算装置上运行的源代码,构成为所述运行时满足特定条件的情况下执行预定的步骤,作为所述运行的结果的运行结果值的完整性(integrity)通过关于所述多个计算装置算出的所述运行结果值的一致性(consensus)得到验证,基于所述智能合约的认证书的信息包括:(i)通过基于所述公钥基础设施(publickeyinfrastructure,PKI)的加密方式生成的公钥(publickey)PubA;(ii)作为对用于标识所述认证书的利用主体的标识信息进行哈希运算的结果值的标识信息哈希值IdhashA;以及(iii)作为对应于所述认证书的有效条件VcertA的智能合约SC(VcertA)编译(compile)得到的结果的字节码BC(SC(VcertA)),作为所述服务提供服务器的认证书的服务器认证书及作为通过用户终端运行的认证应用程序的认证书的应用程序认证书是基于所述智能合约的认证书,所述方法包括:步骤(a),在所述服务器认证书的信息或作为对其加工的值的服务器认证书注册交易或所述应用程序认证书的信息或作为对其加工的值的应用程序认证书注册交易记录于所述区块链数据库,并且作为所述服务器认证书及所述应用程序认证书的所述智能合约SC(VcertA)的运行参数的状态(S(SC(VcertA))注册于状态数据库(statedatabase)SDB的状态下,当从通过所述用户终端运行的服务提供应用程序获取到作为请求通过所述认证应用程序代理登录的信息的认证请求信息的情况下,所述服务提供服务器将作为判定是否能够代理所述登录的结果的认证请求响应信息传递给所述服务提供应用程序或者支持其他装置传递;步骤(b),所述服务提供应用程序的认证重定向请求(authenticationredirectionrequest)传递到所述认证应用程序之后,从所述认证应用程序获取到包括由所述认证服务器生成的可变认证值的服务器挑战请求信息的情况下,所述服务提供服务器将对应于所述服务器挑战请求信息的服务器挑战请求响应信息传递给所述认证应用程序或者支持其他装置传递,以支持所述认证服务器参照所述区块链数据库及所述状态数据库判定所述服务器认证书及所述应用程序认证书是否有效;以及步骤(c),从所述认证服务器获取到包括所述服务器认证书及所述应用程序认证书是否有效的认证结果消息,并且所述认证结果消息为表示所述服务器认证书及所述应用程序认证书有效的认证成功消息的情况下,所述服务提供服务器将规定的访问令牌(accesstoken)传递给所述服务提供应用程序或者支持其他装置传递,以支持所述服务提供应用程序能够通过所述访问令牌利用所述服务,以此处理所述登录。根据本专利技术的另一方面,提供一种使用智能合约(smartcontract)及区块链数据库对用于利用服务提供服务器提供的服务的用户的登录请求,通过基于公钥基础设施(publickeyinfrastructure,PKI)的认证代理登录的方法,其特征在于:所述智能合约为能够编译成可运行的字节码并在认证服务器或包括与所述认本文档来自技高网
...

【技术保护点】
1.一种使用智能合约(smart contract)及区块链数据库对用于利用服务提供服务器提供的服务的用户的登录请求,通过基于公钥基础设施PKI(public key infrastructure)的认证代理登录的方法,其特征在于:所述智能合约为能够编译成可运行的字节码并在认证服务器或包括与所述认证服务器联动的其他装置的多个计算装置上运行的源代码,构成为所述运行时满足特定条件的情况下执行预定的步骤,作为所述运行的结果的运行结果值的完整性(integrity)通过关于所述多个计算装置算出的所述运行结果值的一致性(consensus)得到验证,基于所述智能合约的认证书的信息包括:(i)通过基于所述公钥基础设施PKI(public key infrastructure)的加密方式生成的公钥(public key)PubA;(ii)作为对用于标识所述认证书的利用主体的标识信息进行哈希运算的结果值的标识信息哈希值IdhashA;以及(iii)作为对应于所述认证书的有效条件VcertA的智能合约SC(VcertA)编译(compile)得到的结果的字节码BC(SC(VcertA)),作为所述服务提供服务器的认证书的服务器认证书及作为通过用户终端运行的认证应用程序的认证书的应用程序认证书是基于所述智能合约的认证书,所述方法包括:步骤(a),在所述服务器认证书的信息或作为对其加工的值的服务器认证书注册交易或所述应用程序认证书的信息或作为对其加工的值的应用程序认证书注册交易记录于所述区块链数据库,并且作为所述服务器认证书及所述应用程序认证书的所述智能合约SC(VcertA)的运行参数的状态(S(SC(VcertA))注册于状态数据库(state database)SDB的状态下,当从通过所述用户终端运行的服务提供应用程序获取到作为请求通过所述认证应用程序代理登录的信息的认证请求信息的情况下,所述服务提供服务器将作为判定是否能够代理所述登录的结果的认证请求响应信息传递给所述服务提供应用程序或者支持其他装置传递;步骤(b),所述服务提供应用程序的认证重定向请求(authentication redirection request)传递到所述认证应用程序之后,从所述认证应用程序获取到包括由所述认证服务器生成的可变认证值的服务器挑战请求信息的情况下,所述服务提供服务器将对应于所述服务器挑战请求信息的服务器挑战请求响应信息传递给所述认证应用程序或者支持其他装置传递,以支持所述认证服务器参照所述区块链数据库及所述状态数据库判定所述服务器认证书及所述应用程序认证书是否有效;以及步骤(c),从所述认证服务器获取到包括所述服务器认证书及所述应用程序认证书是否有效的认证结果消息,并且所述认证结果消息为表示所述服务器认证书及所述应用程序认证书有效的认证成功消息的情况下,所述服务提供服务器将规定的访问令牌(access token)传递给所述服务提供应用程序或者支持其他装置传递,以支持所述服务提供应用程序能够通过所述访问令牌利用所述服务,以此处理所述登录。...

【技术特征摘要】
【国外来华专利技术】2017.02.14 KR 10-2017-00197721.一种使用智能合约(smartcontract)及区块链数据库对用于利用服务提供服务器提供的服务的用户的登录请求,通过基于公钥基础设施PKI(publickeyinfrastructure)的认证代理登录的方法,其特征在于:所述智能合约为能够编译成可运行的字节码并在认证服务器或包括与所述认证服务器联动的其他装置的多个计算装置上运行的源代码,构成为所述运行时满足特定条件的情况下执行预定的步骤,作为所述运行的结果的运行结果值的完整性(integrity)通过关于所述多个计算装置算出的所述运行结果值的一致性(consensus)得到验证,基于所述智能合约的认证书的信息包括:(i)通过基于所述公钥基础设施PKI(publickeyinfrastructure)的加密方式生成的公钥(publickey)PubA;(ii)作为对用于标识所述认证书的利用主体的标识信息进行哈希运算的结果值的标识信息哈希值IdhashA;以及(iii)作为对应于所述认证书的有效条件VcertA的智能合约SC(VcertA)编译(compile)得到的结果的字节码BC(SC(VcertA)),作为所述服务提供服务器的认证书的服务器认证书及作为通过用户终端运行的认证应用程序的认证书的应用程序认证书是基于所述智能合约的认证书,所述方法包括:步骤(a),在所述服务器认证书的信息或作为对其加工的值的服务器认证书注册交易或所述应用程序认证书的信息或作为对其加工的值的应用程序认证书注册交易记录于所述区块链数据库,并且作为所述服务器认证书及所述应用程序认证书的所述智能合约SC(VcertA)的运行参数的状态(S(SC(VcertA))注册于状态数据库(statedatabase)SDB的状态下,当从通过所述用户终端运行的服务提供应用程序获取到作为请求通过所述认证应用程序代理登录的信息的认证请求信息的情况下,所述服务提供服务器将作为判定是否能够代理所述登录的结果的认证请求响应信息传递给所述服务提供应用程序或者支持其他装置传递;步骤(b),所述服务提供应用程序的认证重定向请求(authenticationredirectionrequest)传递到所述认证应用程序之后,从所述认证应用程序获取到包括由所述认证服务器生成的可变认证值的服务器挑战请求信息的情况下,所述服务提供服务器将对应于所述服务器挑战请求信息的服务器挑战请求响应信息传递给所述认证应用程序或者支持其他装置传递,以支持所述认证服务器参照所述区块链数据库及所述状态数据库判定所述服务器认证书及所述应用程序认证书是否有效;以及步骤(c),从所述认证服务器获取到包括所述服务器认证书及所述应用程序认证书是否有效的认证结果消息,并且所述认证结果消息为表示所述服务器认证书及所述应用程序认证书有效的认证成功消息的情况下,所述服务提供服务器将规定的访问令牌(accesstoken)传递给所述服务提供应用程序或者支持其他装置传递,以支持所述服务提供应用程序能够通过所述访问令牌利用所述服务,以此处理所述登录。2.根据权利要求1所述的方法,其特征在于:在所述步骤(b)中,所述服务器挑战请求信息包括通过所述服务器认证书的公钥(publickey)编码的所述可变认证值,所述服务提供服务器利用所述服务器认证书的私钥(privatekey)从所述服务器挑战请求信息获取所述可变认证值,并且将包括利用所述服务器认证书的私钥对所述可变认证值进行签名的值的所述服务器挑战请求响应信息传递给所述认证应用程序。3.根据权利要求1所述的方法,其特征在于:所述认证书的有效条件VcertA为基于(i)关于所述利用主体的特征的信息;(ii)使用所述认证书时的天气信息;(iii)使用所述认证书时的日期信息;(v)所获取的允许特定他人使用的信息;以及(iv)关于预定的所述认证书的使用次数限制的信息中的至少一个的条件。4.根据权利要求1所述的方法,其特征在于,所述区块链数据库为私有区块链数据库或公有区块链数据库。5.一种使用智能合约(smartcontract)及区块链数据库对用于利用服务提供服务器提供的服务的用户的登录请求,通过基于公钥基础设施PKI(publickeyinfrastructure)的认证代理登录的方法,其特征在于:所述智能合约为能够编译成可运行的字节码并在认证服务器或包括与所述认证服务器联动的其他装置的多个计算装置上运行的源代码,构成为所述运行时满足特定条件的情况下执行预定的步骤,通过关于所述多个计算装置算出的所述运行结果值的一致性(consensus)验证作为所述运行的结果的运行结果值的完整性(integrity),基于所述智能合约的认证书的信息包括:(i)通过基于所述公钥基础设施PKI(publickeyinfrastructure)的加密方式生成的公钥(publickey)PubA;(ii)作为对用于标识所述认证书的利用主体的标识信息进行哈希运算的结果值的标识信息哈希值IdhashA;以及(iii)作为对应于所述认证书的有效条件VcertA的智能合约SC(VcertA)编译(compile)得到的结果的字节码BC(SC(VcertA)),作为所述服务提供服务器的认证书的服务器认证书及作为通过用户终端运行的认证应用程序的认证书的应用程序认证书是基于所述智能合约的认证书,所述方法包括:步骤(a),在所述服务器认证书的信息或作为对其加工的值的服务器认证书注册交易或所述应用程序认证书的信息或作为对其加工的值的应用程序认证书注册交易记录于所述区块链数据库,并且作为所述服务器认证书及所述应用程序认证书的所述智能合约SC(VcertA)的运行参数的状态(S(SC(VcertA))注册于状态数据库(statedatabase)SDB的状态下,响应于对应于作为请求通过所述认证应用程序代理登录的信息的认证请求信息的认证重定向请求(authenticationredirectionrequest),从通过所述用户终端运行的认证应用程序获取到挑战开始请求信息的情况下,所述认证服务器生成对应于所述挑战开始请求信息的可变认证值,并将包括所述可变认证值的挑战开始请求响应信息传递给所述认证应用程序或者支持其他装置传递,以支持所述认证应用程序从所述服务提供服务器获取对应于用于判定所述服务器认证书是否有效的服务器挑战请求信息的服务器挑战请求响应信息;步骤(b),从所述认证应用程序获取到包括作为利用所述应用程序认证书的私钥(privatekey)对所述服务器挑战请求响应信息签名的值的多重签名值的响应请求信息的情况下,所述认证服务器参照所述请求响应信息、所述区块链数据库及所述状态数据库判定所述服务器认证书及所述应用程序认证书是否有效或者支持其他装置进行判定;以及步骤(c),所述认证服务器将包括所述服务器认证书是否有效的认证结果消息传递给所述认证应用程序及所述服务提供服务器中的至少一个或者支持其他装置传递,所述认证结果消息为表示所述服务器认证书有效的认证成功消息的情况下,支持所述服务提供服务器将规定的访问令牌(accesstoken)传递给通过所述用户终端运行的服务提供应用程序,以支持所述服务提供应用程序能够通过所述访问令牌利用所述服务,以此处理所述登录。6.根据权利要求5所述的方法,其特征在于:所述认证服务器管理对所述服务提供服务器的访问级别(accesslevel)的信息或者支持其他装置进行管理,并且参照所述访问级别确定授权级别(authorizationlevel),所述认证结果消息包括关于所述授权级别的信息,参照所述授权级别判定所述服务器认证书是否有效。7.根据权利要求5所述的方法,其特征在于,所述步骤(b)通过包括如下步骤判定所述服务器认证书及所述应用程序认证书是否有效,步骤(bl),所述认证服务器利用所述服务器认证书的公钥及所述应用程序认证书的公钥验证所述多重签名值的签名;以及步骤(b2),验证结果为所述多重签名值的签名有效的情况下,所述认证服务器执行:过程(i),将作为包含于所述服务器认证书的所述智能合约的服务器认证书智能合约的状态S1作为运行参数,运行所述服务器认证书智能合约的字节码BC1或者支持与所述认证服务器联动的其他装置运行以获取所述服务器认证书智能合约的运行结果值,并参照所述服务器认证书智能合约的运行结果值判定所述服务器认证书是否有效;以及过程(ii),将作为包含于所述应用程序认证书的所述智能合约的应用程序认证书智能合约的状态S2作为运行参数,运行所述应用程序认证书智能合约的字节码BC2或者支持与所述认证服务器联动的其他装置运行以获取所述应用程序认证书智能合约的运行结果值,并参照所述应用程序认证书智能合约的运行结果值判定所述应用程序认证书是否有效。8.根据权利要求7所述的方法,其特征在于,在所述步骤(b)之后还包括:步骤(c0),所述认证服务器执行:过程(i),将所述认证结果消息或对其加工的值作为认证结果交易记录在所述区块链数据库或者支持与所述认证服务器联动的其他装置记录;以及过程(ii),将作为所述运行的结果获取的所述运行结果值作为新的状态S'(SC(VcertA))注册在状态数据库或者支持使得注册。9.根据权利要求5所述的方法,其特征在于,还包括:步骤(e),所述认证服务器周期性(periodically)或响应于完整性验证请求,参照记录于所述区块链数据库的(i)特定服务器认证书的信息或作为对其加工的值的特定服务器认证书注册交易、(ii)特定应用程序认证书的信息或作为对其加工的值的特定应用程序认证书注册交易以及(iii)特定认证结果消息或作为对其加工的值的特定认证结果交易中的至少一个信息验证所述(i)、(ii)、(iii)的信息的完整性或者支持与所述认证服务器联动的其他装置进行验证。10.根据权利要求5所述的方法,其特征在于,还包括:步骤(f),所述认证服务器周期性(periodically)或响应于完整性验证请求,参照记录于所述状态数据库的个别智能合约的运行结果值验证所述运行结果值的完整性或者支持与所述认证服务器联动的其他装置进行验证。11.一种使用智能合约(smartcontract)及区块链数据库对用于利用服务提供服务器提供的服务的用户的登录请求,通过基于公钥基础设施PKI(publickeyinfrastructure)的认证代理登录的方法,其特征在于:所述智能合约为能够编译成可运行的字节码并在认证服务器或包括与所述认证服务器联动的其他装置的多个计算装置上运行的源代码,构成为所述运行时满足特定条件的情况下执行预定的步骤,作为所述运行的结果的运行结果值的完整性(integrity)通过关于所述多个计算装置算出的所述运行结果值的一致性(consensus)得到验证,基于所述智能合约的认证书的信息包括:(i)通过基于所述公钥基础设施PKI(publickeyinfrastructure)的加密方式生成的公钥(publickey)PubA;(ii)作为对用于标识所述认证书的利用主体的标识信息进行哈希运算的结果值的标识信息哈希值IdhashA;以及(iii)作为对应于所述认证书的有效条件VcertA的智能合约SC(VcertA)编译(compile)得到的结果的字节码BC(SC(VcertA)),作为通过用户终端运行的第二应用程序的认证书的应用程序认证书为基于所述智能合约的认证书,所述方法包括:步骤(a),在所述应用程序认证书的信息或作为对其加工的值的应用程序认证书注册交易记录于所述区块链数据库,并且作为所述应用程序认证书的所述智能合约SC(VcertA)的运行参数的状态(S(SC(VcertA))注册于状态数据库(statedatabase)SDB的状态下,从所述第二应用程序获取到包括用于标识所述用户的用户标识信息的认证请求信息的情况下,所述服务提供服务器将包括所述用户标识信息的挑战开始请求信息传递给所述认证服务器,其中,所述第二应用程序从通过所述用户终端运行的第一应用程序接收到请求通过所述第二应用程序代理登录的认证重定向请求(authenticationredirectionrequest);步骤(b),获取到所述认证服务器响应于所述挑战开始请求信息生成的包括可变认证值的挑战开始请求响应信息的情况下,所述服务提供服务器将包括所述可变认证值的应用程序挑战请求信息传递给所述第二应用程序或者支持其他装置传递,以支持所述第二应用程序生成利用所述应用程序认证书的私钥(privatekey)对所述可变认证值进行签名的值;步骤(c),获取到包括利用所述应用程序认证书的私钥(privatekey)签名的值的应用程序挑战请求响应信息的情况下,所述服务提供服务器将所述应用程序挑战请求响应信息传递给所述认证服务器或者支持其他装置传递,以支持所述认证服务器参照所述区块链数据库及所述状态数据库判定所述应用程序认证是否有效;以及步骤(d),从所述认证服务器获取到包括所述应用程序认证书是否有效的认证结果消息,并且所述认证结果消息为表示所述应用程序认证书有效的认证成功消息的情况下,所述服务提供服务器将临时ID(temporaryID)传递给所述第二应用程序或者支持其他装置传递,支持所述第一应用程序能够通过从所述第二应用程序传递到所述第一应用程序的(i)所述临时ID以及(ii)包含于所述认证成功消息的访问令牌利用所述服务,以此处理所述登录。12.根据权利要求11所述的方法,其特征在于,所述挑战开始请求信息还包括作为所述服务提供服务器的认证书的服务器认证书的公钥,所述服务器认证书为基于智能合约的认证书,所述挑战开始请求响应信息包括通过所述服务器认证书的公钥编码的所述可变认证值,在所述步骤(b)中,所述服务提供服务器利用所述服务器认证书的私钥(privatekey)从所述挑战开始请求响应信息获取所述可变认证值,并且将包括利用所述应用程序认证书的公钥对所述可变认证值进行签名的值的所述应用程序挑战请求信息传递给所述第二应用程序。13.根据权利要求12所述的方法,其特征在于,在所述步骤(a)中,所述服务器认证书的信息或作为对其加工的值的服务器认证书注册交易附加记录于所述区块链数据库的状态下执行。14.根据权利要求11所述的方法,其特征在于,参照关于包含于所述认证成功消息的访问令牌(accesstoken)及授权级别的信息确定所述临时ID。15.一种使用智能合约(smartcontract)及区块链数据库对用于利用服务提供服务器提供的服务的用户的登录请求,通过基于公钥基础设施PKI(publickeyinfrastructure)的认证代理登录的方法,其特征在于:所述智能合约为能够编译成可运行的字节码并在认证服务器或包括与所述认证服务器联动的其他装置的多个计算装置上运行的源代码,构成为所述运行时满足特定条件的情况下执行预定的步骤,作为所述运行的结果的运行结果值的完整性(integrity)通过关于所述多个计算装置算出的所述运行结果值的一致性(consensus)得到验证,基于所述智能合约的认证书的信息包括:(i)通过基于所述公钥基础设施PKI(publickeyinfrastructure)的加密方式生成的公钥(publickey)PubA;(ii)作为对用于标识所述认证书的利用主体的标识信息进行哈希运算的结果值的标识信息哈希值IdhashA;以及(iii)作为对应于所述认证书的有效条件VcertA的智能合约SC(VcertA)编译(compile)得到的结果的字节码BC(SC(VcertA)),作为通过用户终端运行的第二应用程序的认证书的应用程序认证书为基于所述智能合约的认证书,所述方法包括:步骤(a),所述应用程序认证书的信息或作为对其加工的值的应用程序认证书注册交易记录于所述区块链数据库,并且作为所述应用程序认证书的所述智能合约SC(VcertA)的运行参数的状态(S(SC(VcertA))注册于状态数据库(statedatabase)SDB的状态下,从所述服务提供服务器获取到包括所述用户标识信息的挑战开始请求信息的情况下,所述认证服务器响应于所述挑战开始请求信息生成可变认证值或者支持其他装置生成,其中,所述服务提供服务器从所述第二应用程序获取到包括用于标识所述用户的用户标识信息的认证请求信息,所述第二应用程序从通过所述用户终端运行的第一应用程序接收到作为请求通过所述第二应用程序代理登录的信息的认证重定向请求(authenticationredirectionrequest);步骤(b),所述认证服务器将包括生成的所述可变认证值的挑战开始请求响应信息传递给所述服务提供服务器或者支持其他装置传递,以支持所述服务提供服务器将包括所述可变认证值的应用程序挑战请求信息传递给所述第二应用程序,进而支持所述第二应用程序生成利用所述应用程序认证书的私钥(privatekey)对所述可变认证值进行签名的值;步骤(c),获取到包括通过所述应用程序认证书的私钥(privatekey)签名的值的应用程序挑战请求响应信息的情况下,所述认证服务器参照所述应用程序挑战请求响应信息、所述区块链数据库及所述状态数据库判定所述应用程序认证书是否有效或者支持其他装置进行判定;以及步骤(d),所述认证服务器将包括所述应用程序认证书是否有效的认证结果消息传递给所述服务提供服务器及所述第二应用程序或者支持其他装置传递,以支持所述服务提供服务器在所述认证结果消息为表示所述应用程序认证书有效的认证成功消息的情况下支持将临时ID(temporaryID)传递给所述第二应用程序,支持所述第一应用程序能够通过从所述第二应用程序传递到所述第一应用程序的(i)所述临时ID及(ii)包含于所述认证成功消息的访问令牌(accesstoken)利用所述服务,以此处理所述登录。16.根据权利要求15所述的方法,其特征在于,在所述步骤(c)之后还包括:步骤(d0),所述认证服务器执行:过程(i),将所述认证结果消息或对其加工的值作为认证结果交易记录于所述区块链数据库或者支持与所述认证服务器联动的其他装置记录;以及过程(ii),将作为所述运行的结果获取的所述运行结果值作为新的状态S'(SC(VcertA))注册到状态数据库或者支持使得注册。17.根据权利要求15所述的方法,其特征在于,还包括:步骤(e),所述认证服务器周期性(periodically)或响应于完整性验证请求,参照记录于所述区块链数据库的(i)特定服务器认证书的信息或作为对其加工的值的特定服务器认证书注册交易、(ii)特定应用程序认证书的信息或作为对其加工的值的特定应用程序认证书注册交易以及(iii)特定认证结果消息或作为对其加工的值的特定认证结果交易中的至少一个信息验证所述(i)、(ii)、(iii)的信息的完整性或者支持与所述认证服务器联动的其他装置进行验证。18.根据权利要求15所述的方法,其特征在于,还包括:步骤(...

【专利技术属性】
技术研发人员:罗承一金熙淳洪载佑鱼浚善
申请(专利权)人:科因普拉格株式会社
类型:发明
国别省市:韩国,KR

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1