CN116074126A - 一种基于智能合约的身份管理方法和装置 - Google Patents
一种基于智能合约的身份管理方法和装置 Download PDFInfo
- Publication number
- CN116074126A CN116074126A CN202310335435.0A CN202310335435A CN116074126A CN 116074126 A CN116074126 A CN 116074126A CN 202310335435 A CN202310335435 A CN 202310335435A CN 116074126 A CN116074126 A CN 116074126A
- Authority
- CN
- China
- Prior art keywords
- request
- identity
- contract
- rule
- management
- 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
- 238000007726 management method Methods 0.000 title claims abstract description 149
- 238000000034 method Methods 0.000 claims abstract description 58
- 230000004044 response Effects 0.000 claims abstract description 13
- 230000006870 function Effects 0.000 claims description 72
- 238000012795 verification Methods 0.000 claims description 38
- 230000004048 modification Effects 0.000 claims description 24
- 238000012986 modification Methods 0.000 claims description 24
- 238000012423 maintenance Methods 0.000 claims description 12
- 238000012545 processing Methods 0.000 claims description 8
- 238000012544 monitoring process Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 10
- 238000013475 authorization Methods 0.000 description 7
- 238000012550 audit Methods 0.000 description 6
- 230000006399 behavior Effects 0.000 description 5
- 238000012790 confirmation Methods 0.000 description 5
- 238000012546 transfer Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000000670 limiting effect Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000003542 behavioural effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 206010000117 Abnormal behaviour Diseases 0.000 description 1
- 206010061619 Deformity Diseases 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000011022 operating instruction Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000000284 resting effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/36—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
- G06Q20/367—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
- G06Q20/3674—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes involving authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- General Business, Economics & Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本说明书实施例公开了一种基于智能合约的身份管理方法及装置,其中所述方法适用于基于智能合约的身份管理系统;在区块链中部署并运行第一合约,第一合约为用于身份管理的智能合约且配置至少一个包括多个账户的账户池和至少一个包括多条规则的规则池;包括:响应于用户组中至少一个用户发送的第一请求,调用并执行第一合约中配置的与第一请求相对应的函数;第一请求至少包括规则管理请求、账户管理请求、身份创建请求中的一种;响应于至少一个待验证方发送的第二请求,调用并执行第一合约中配置的与第二请求相对应的函数;第二请求至少包括身份验证请求。本发明方案可实现多用户对虚拟身份的管理,有效降低私钥丢失或泄露对系统安全性造成的影响。
Description
技术领域
本说明书涉及计算机软件技术领域,尤其涉及一种基于智能合约的身份管理方法、装置、电子设备和存储介质。
背景技术
身份管理是一种说明和验证用户身份及其行为权限的方式,用于确保正确的用户能够适当地访问技术资源。传统的中心化身份管理系统或联邦制身份管理系统,面临中心节点易受攻击和单点故障的挑战;基于区块链的身份管理系统在私钥丢失时用户失去身份的控制权且难以找回且难以支持多个用户对一个身份进行共同管理。
因此,如何克服上述问题,在区块链架构基础上提出一种支持链上多方参与的身份管理方案,是亟待解决的技术问题。
发明内容
本说明书实施例的目的是针对上述问题,提供一种基于智能合约的身份管理方法、装置、电子设备和存储介质。
为解决上述技术问题,本说明书实施例是这样实现的:
第一方面,提出了一种基于智能合约的身份管理方法,适用于基于智能合约的身份管理系统;在区块链中部署并运行第一合约,所述第一合约为用于身份管理的智能合约且配置至少一个包括多个账户的账户池和至少一个包括多条规则的规则池;所述方法包括:
响应于用户组中至少一个用户发送的第一请求,调用并执行所述第一合约中配置的与所述第一请求相对应的函数;所述第一请求至少包括规则管理请求、账户管理请求、身份创建请求中的一种;
响应于至少一个待验证方发送的第二请求,调用并执行所述第一合约中配置的与所述第二请求相对应的函数;所述第二请求至少包括身份验证请求。
进一步地,当所述第一请求为所述身份创建请求时,调用并执行所述第一合约中配置的身份创建函数;所述身份创建函数用于创建分布式身份。
进一步地,一个所述分布式身份与一个所述账户池及一个所述规则池相对应。
进一步地,所述规则池至少包括规则池修改规则和账户池修改规则。
进一步地,当所述第一请求为所述规则管理请求时,调用并执行所述第一合约中配置的规则管理函数;所述规则管理函数用于依据所述规则池修改规则对所述规则池进行维护操作,对所述规则池进行维护操作包括对所述规则的新增、修改、删除中的至少一种。
进一步地,所述规则的组成包括:适用于所述规则的对象或范围,和/或执行所述规则对应的操作时所需确认账户数目或特定账户,和/或所述规则的具体限定内容。
进一步地,当所述第一请求为所述账户管理请求时,调用并执行所述第一合约中配置的账户管理函数;所述账户管理函数用于依据所述账户池修改规则对所述账户池进行维护操作,对所述账户池进行维护操作包括对所述账户的新增、删除中的至少一种。
进一步地,一个所述用户与所述账户池中的一个或多个所述账户相对应,且一个所述账户与一个所述用户相对应。
进一步地,当所述第二请求为所述身份验证请求时,调用并执行所述第一合约的身份验证函数;所述身份验证函数用于进行身份验证并将身份验证结果发送至所述待验证方。
进一步地,调用并执行所述第一合约时,依据相应的所述规则,由一个或多个所述用户通过指定验证方式进行签名确认,所述指定验证方式包括私钥验证方式。
进一步地,还包括:响应于监管方发送的第三请求,调用并执行所述第一合约中配置的与所述第三请求相对应的函数;所述第三请求至少包括身份监管请求。
进一步地,当所述第三请求为所述身份监管请求时,调用并执行所述第一合约中配置的身份监管函数;所述身份监管函数用于对调用所述第一合约的执行结果进行监控和审计,并依据监控和审计结果对相应身份所拥有的权限进行处理。
第二方面,提出一种基于智能合约的身份管理装置,适用于基于智能合约的身份管理系统;在区块链中部署并运行第一合约,所述第一合约为用于身份管理的智能合约且配置有至少一个账户池和至少一个规则池;所述装置包括:
第一模块,能够响应于用户组中至少一个用户发送的第一请求,调用并执行所述第一合约中配置的与所述第一请求相对应的函数;所述第一请求至少包括规则管理请求、账户管理请求、身份创建请求中的一种;
第二模块,能够响应于至少一个待验证方发送的第二请求,调用并执行所述第一合约中配置的与所述第二请求相对应的函数;所述第二请求至少包括身份验证请求。
进一步地,还包括:第三模块,能够响应于监管方发送的第三请求,调用并执行所述第一合约中配置的与所述第三请求相对应的函数;所述第三请求至少包括身份监管请求。
第三方面,提出了一种电子设备,包括:处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行第一方面所述的方法。
第四方面,提出了一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行第一方面所述的方法。
本说明书可以达到至少以下技术效果:
本发明在区块链基础上采用智能合约构建身份管理方案,支持用户组、待验证方和监管方等多方同时调用所述智能合约对账号管理、规则管理、授权管理、审计管理和应用管控,实现多个用户对一个虚拟身份的管理,可满足不同应用场景下的复杂需求;同时,通过调用执行智能合约进行账户增减和修改验证逻辑,可有效降低私钥丢失或泄露对系统安全性造成的影响。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书实施例提供的基于智能合约的身份管理方法示意图之一。
图2为本说明书实施例提供的基于智能合约的身份管理方法示意图之二。
图3为本说明书实施例提供的基于智能合约的身份管理方法示意图之三。
图4为本说明书实施例提供的基于智能合约的身份管理方法示意图之四。
图5为本说明书实施例提供的基于智能合约的身份管理方法示意图之五。
图6为本说明书实施例提供的基于智能合约的身份管理方法示意图之六。
图7为本说明书实施例提供的基于智能合约的身份管理装置示意图之一。
图8为本说明书实施例提供的基于智能合约的身份管理装置示意图之二。
图9为本说明书的一个实施例提供的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
下面通过具体的实例对本说明书所涉及的一种基于智能合约的身份管理方案进行详述。
关键术语
身份管理IDM:也称为身份和访问管理IAM。可确保授权人员并且只有授权人员能够访问他们所需的资源,需要满足账号管理、认证管理、授权管理、审计管理和应用管控5个方面的需求。IAM由允许IT管理员为每个实体分配单一数字身份,在登录时对其进行身份验证,授权他们访问指定资源以及在其整个生命周期中监控和管理这些身份的系统和流程组成。特别是随着数字化转型,身份也被分配给物联网设备、机器人和代码片段,例如API或微服务。因为它介于用户和关键企业资产之间,所以身份和访问管理是任何企业安全计划的关键组成部分。
区块链:是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算范式。从本质上讲,它是一个共享数据库,存储于其中的数据或信息,具有不可伪造、全程留痕、可以追溯、公开透明、集体维护等特征。基于这些特征,区块链技术奠定了坚实的信任基础,创造了可靠的合作机制,具有广阔的运用前景。按照准入机制分类,区块链分为公有链、联盟链和私有链。
智能合约:从技术角度来讲智能合约被认为是架设在区块链上,可以在其上面运行特定的合约程序。由于智能合约的代码和状态都在区块链上,任何能访问该区块链的用户都可以看到智能合约。智能合约不依赖某个特定的硬件设备,其代码由所有参与挖矿的设备来执行,这也意味着进入单个合约的算力是有限的。智能合约是编程在区块链上的汇编语言。通常人们不会自己写字节码,但是会从更高级的语言来编译它,例如用Solidity,与Javascript类似的专用语言。代码的执行是自动的,要么成功执行,要么所有的状态变化都撤销,可避免合约部分执行的情况。因此,智能合约可以说是运行在可复制、共享的账本上的计算机程序,可以处理信息,接收、储存和发送价值。
由于身份管理是一种说明和验证用户身份及其行为权限的方式,用于确保正确的用户能够连接到企业或在企业内的生态系统的一部分,并且能够适当地访问技术资源。发明人掌握的已公开披露的身份管理技术方案包括:中心化身份验证系统、联邦式身份验证系统和基于区块链的分布式身份验证系统。其中,中心化身份验证系统常使用单点登录来实现,用账户和密码实现用户身份的区分和认证。用户只需要认证一次,即可用一个身份访问所有在当前可信环境中的所有应用。联邦式身份管理系统用标准协议来打通不同安全域之间的用户身份,在跨域、跨产品、跨公司的场景中实现身份信息共享,可以在IT 架构中将身份与权限管理层完整抽离出来,并统一到一个安全平台进行管理。需要一个身份和权限访问的中央处理机制,负责统筹所有应用的访问服务。基于区块链的分布式身份验证系统采用基于非对称密码体制的公私钥对来进行用户的身份标识和认证,利用区块链保障系统休息的透明、公开和可追溯。常见的如ENS等。但是,发现尚存在如下问题:一是传统的中心化身份管理系统或联邦制身份管理系统,如OAuth2,在技术方面面临中心节点易受攻击和单点故障的挑战,在实际应用过程中,面临着中心节点不可信及作恶的威胁。二是基于区块链的身份管理系统常以公钥代表用户身份,使用非对称加密算法实现用户身份的验证,当私钥丢失时导致用户失去账户的控制权且难以找回。三是在实际应用中虚拟身份与真实的用户并非一一对应,常出现多个用户共同管理一个虚拟身份的场景,如数据流通过程中常需要多个用户作为共同所有者对数据访问进行授权。区块链当前账户与私钥一一对应,较难支持多个用户对一个身份进行共同管理。
实施例一
本发明关注的是如何克服传统的中心化身份管理系统或联邦制身份管理系统,在技术方面面临中心节点易受攻击和单点故障的挑战,在实际应用过程中,面临着中心节点不可信及作恶的威胁,以及基于区块链的身份管理系统在私钥丢失时用户失去身份的控制权且难以找回,且难以支持多个用户对一个身份进行共同管理的技术问题。为此,本发明利用智能合约和哈希算法,实现在不泄露用户隐私前提下提供链上可信的身份验证。
本发明实施例的基于智能合约的身份管理方法适用于基于智能合约的身份管理系统。如图1所示,在一个实施例中的基于智能合约的身份管理系统结构共分为用户层、接入层、合约层和存储层。其中:
所述用户层包括用户和监管方,其中用户是身份管理服务的使用方,监管方用于审计和监管用户在身份管理中的行为,对出现的异常行为实时进行干预。
所述接入层包括客户端、插件钱包和硬件钱包等多种接入方式,用于管理用户的私钥,用户通过接入层中的私钥调用身份管理合约。
所述合约层包括身份管理合约和应用合约,其中身份管理合约为用户提供身份管理服务并接收监管方的审计与监管;应用合约为用户提供所需服务,当需要身份验证、授权等服务时通过存储层的区块链账本获取身份管理合约提供的相应服务。
所述存储层为区块链账本,用于记录合约层各智能合约的数据交互与记录等。
因此,对应于图1所示的基于智能合约的身份管理系统,本发明实施例的基于智能合约的身份管理方法,在区块链中部署并运行第一合约,所述第一合约为用于身份管理的智能合约且配置至少一个包括多个账户的账户池和至少一个包括多条规则的规则池。具体地,所述第一合约至少包括身份创建函数、账户管理函数、规则管理函数、身份监管函数和身份验证函数。上述函数与所述第一合约接收到的相应请求相对应,所述第一请求至少包括规则管理请求、账户管理请求、身份创建请求中的一种。所述规则池至少包括规则池修改规则和账户池修改规则。
为此,本发明实施例的方法基于智能合约的身份管理系统的工作流程,如图2所示,包括:用户首先调用身份创建函数,创建一个新的分布式身份,该身份会对应一个账户池和一个规则池;当用户组需要修改身份对应的账户时调用账户管理函数进行相应账户的增加和删除,账户的管理需要用户组中多个用户分别签名同意;当权限验证通过后,账户池根据用户组需求相应增加和删除账户;当用户组需要修改规则时调用规则维护函数对规则池中相应的规则提出修改治理,规则池的维护需要用户组中多个用户分别签名同意;当权限验证通过后,规则池根据用户组需求新增相应规则或对已有规则进行修改或删除;当应用合约需要与身份验证合约交互时,获取身份验证合约提供的身份验证服务,相应服务的提供需要用户签名确认并遵循规则池中的规则;监管方在线监管分布式身份的账户管理及规则池维护等行为,当发现恶意行为,可对出现恶意行为的身份进行权限限制。
在一个实施例中,调用并执行所述第一合约时,依据相应的所述规则,由一个或多个所述用户通过指定验证方式进行签名确认,所述指定验证方式包括私钥验证方式。
因此,如图3所示,所述方法包括:
S1:响应于用户组中至少一个用户发送的第一请求,调用并执行所述第一合约中配置的与所述第一请求相对应的函数;所述第一请求至少包括规则管理请求、账户管理请求、身份创建请求中的一种。
在一个实施例中,当所述第一请求为所述身份创建请求时,调用并执行所述第一合约中配置的身份创建函数;所述身份创建函数用于创建分布式身份。
在一个实施例中,一个所述分布式身份与一个所述账户池及一个所述规则池相对应。
具体地,用户通过调用身份创建函数即可创建一个新的分布式身份,该身份对应一个账户池和一个规则池。新身份的创建需要初始账户池中所有账户对应的用户通过接入层签名确认。账户池中包含若干个账户,每个账户对应一个用户,账户由非对称加密生成公私钥对中的公钥转换生成,用户通过私钥签名实施授权、确认、否决等行为。规则池中包含若干条规则,每条规则用于限制对某行为、资源或对象的授权和确认。规则池中默认包含账户池修改规则和规则池修改规则,分别规定了修改账户池所需的账户数量和修改规则池所需的账户数量。
在一个实施例中,当所述第一请求为所述规则管理请求时,调用并执行所述第一合约中配置的规则管理函数;所述规则管理函数用于依据所述规则池修改规则对所述规则池进行维护操作,对所述规则池进行维护操作包括对所述规则的新增、修改、删除中的至少一种。
在一个实施例中,所述规则的组成包括:适用于所述规则的对象或范围,和/或执行所述规则对应的操作时所需确认账户数目或特定账户,和/或所述规则的具体限定内容。
具体地,用户通过调用规则维护函数进行规则池的管理,包括规则的新增和对已有规则的修改或删除。规则池的修改需要指定数量的用户签名确认,该数量由规则池中的规则池修改规则确认。每条规则包括规则对象、管理账户组和规则限制3个部分内容。在一个实施例中,可定义为:
所述规则对象,描述了本条规则适用的对象或范围,如账户池修改规则限定本条规则在对账户修改时生效,转账限制规则在该身份进行转账操作时生效。
所述管理账户组,描述了在执行本规则对于的授权或确认时需要的验证的账户数目或特定账户对象。如身份账户池中包含A、B、C三个账户,通过规则限定在进行转账操作时必须有A账户的同意且至少有2个账户同意,此情况下仅当A、B账户签名同意或A、C账户签名同意时可进行转账;
所述规则限制,描述了规则限定的具体内容,如限制单次转账的数量,限制每次操作的时间等。
通过上述字段,实现了用户在身份管理过程中的规则化,便利了多方协作情境下的复杂身份管理,避免多个用户共同管理一个身份时,用户组中出现恶意用户进行恶意操作带来的危害。
在一个实施例中,当所述第一请求为所述账户管理请求时,调用并执行所述第一合约中配置的账户管理函数;所述账户管理函数用于依据所述账户池修改规则对所述账户池进行维护操作,对所述账户池进行维护操作包括对所述账户的新增、删除中的至少一种。
在一个实施例中,一个所述用户与所述账户池中的一个或多个所述账户相对应,且一个所述账户与一个所述用户相对应。
具体地,用户通过调用账户管理函数进行账户池的管理,包括对账户的新增、删除。账户池的修改需要指定数量的用户签名确认,该数量由规则池中的账户池修改规则确认。为减少密钥丢失或泄露带来的影响,可通过配置冗余账户来进行身份管理。如对于单人拥有的身份,可在账户池中配置3个账户,3个账户的私钥均由用户本人保管。账户池修改规则设定为2个账户可以修改账户池,用户平时使用一个账户的密钥进行确认或授权等操作。当出现密钥丢失或泄露时,用户可以使用剩余的两份密钥通过账户管理函数删除丢失密钥的账户,并新增一个新生成的账户,保持账户池中的账户数量不变。通过上述方法可以避免密钥丢失造成用户失去对身份的管控,也可以及时消除密钥泄露造成的身份盗用的影响。
S2:响应于至少一个待验证方发送的第二请求,调用并执行所述第一合约中配置的与所述第二请求相对应的函数;所述第二请求至少包括身份验证请求。
在一个实施例中,当所述第二请求为所述身份验证请求时,调用并执行所述第一合约的身份验证函数;所述身份验证函数用于进行身份验证并将身份验证结果发送至所述待验证方。
具体地,身份验证合约通过身份验证服务函数与应用合约交互提供身份验证服务,相应服务的提供需要用户组中用户通过接入层进行签名确认并遵循规则池中的规则。在如图4所示的验证过程中,应用合约即为待验证方,其发送所述身份验证请求至所述第一合约即身份管理合约。所述身份验证请求中包括验证信息和校验信息。其中,如图5所示,由待验证方的外部合约账户以及用户随机生成的256位随机数,经过哈希函数计算得到验证信息,所述验证信息对应于身份验证函数。而校验信息对应于身份创建函数,用于在分布式身份创建时置入新的身份中,并在后续验证过程中进行校验,所述校验信息包括待验证方的外部合约账户、验证信息列表和已验证次数。验证信息结合校验信息对用户身份进行验证,并将验证结果反馈至待验证方即应用合约。
如图6所示,本发明实施例的,所述方法还包括:
S3:响应于监管方发送的第三请求,调用并执行所述第一合约中配置的与所述第三请求相对应的函数;所述第三请求至少包括身份监管请求。
在一个实施例中,当所述第三请求为所述身份监管请求时,调用并执行所述第一合约中配置的身份监管函数;所述身份监管函数用于对调用所述第一合约的执行结果进行监控和审计,并依据监控和审计结果对相应身份所拥有的权限进行处理。
具体地,监管方在基于智能合约的链上多方身份管理系统运行过程中实施全流程的审计,包括异常操作行为等。监管方对身份验证合约中分布式身份的账户管理、规则修改和身份验证服务进行在线监控与审计,对于明显实施恶意行为的节点可通过身份监管函数控制相应身份的权限,例如账户管理权限、规则维护权限等,或禁止该身份为应用合约提供身份验证服务。
本发明实施例在区块链基础上采用智能合约构建身份管理方案,支持用户组、待验证方和监管方等多方同时调用所述智能合约对账号管理、规则管理、授权管理、审计管理和应用管控,实现多个用户对一个虚拟身份的管理,可满足不同应用场景下的复杂需求;同时,通过调用执行智能合约进行账户增减和修改验证逻辑,可有效降低私钥丢失或泄露对系统安全性造成的影响。
实施例二
图7为本说明书的一个实施例提供的基于智能合约的身份管理装置700的结构示意图。请参考图7,在一种实施方式中的基于智能合约的身份管理装置700,适用于基于智能合约的身份管理系统;在区块链中部署并运行第一合约,所述第一合约为用于身份管理的智能合约且配置有至少一个账户池和至少一个规则池;所述装置700包括:
第一模块701,能够响应于用户组中至少一个用户发送的第一请求,调用并执行所述第一合约中配置的与所述第一请求相对应的函数;所述第一请求至少包括规则管理请求、账户管理请求、身份创建请求中的一种;
第二模块702,能够响应于至少一个待验证方发送的第二请求,调用并执行所述第一合约中配置的与所述第二请求相对应的函数;所述第二请求至少包括身份验证请求。
如图8所示,为本说明书的一个实施例提供的基于智能合约的身份管理装置700的另一种实现方式,还包括:
第三模块703,能够响应于监管方发送的第三请求,调用并执行所述第一合约中配置的与所述第三请求相对应的函数;所述第三请求至少包括身份监管请求。
应理解,本说明书实施例的一种基于智能合约的身份管理装置还可执行图1至图6中基于智能合约的身份管理装置(或设备)执行的方法,并实现基于智能合约的身份管理装置(或设备)在图1至图6所示实例的功能,在此不再赘述。
实施例三
图9是本说明书的一个实施例电子设备的结构示意图。请参考图9,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatilememory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是ISA(Industry Standard Architecture,工业标准体系结构)总线、PCI(PeripheralComponent Interconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。
处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成共享资源访问控制装置。处理器,执行存储器所存放的程序,并具体用于执行以下操作:
适用于基于智能合约的身份管理系统;在区块链中部署并运行第一合约,所述第一合约为用于身份管理的智能合约且配置至少一个包括多个账户的账户池和至少一个包括多条规则的规则池;所述方法包括:
响应于用户组中至少一个用户发送的第一请求,调用并执行所述第一合约中配置的与所述第一请求相对应的函数;所述第一请求至少包括规则管理请求、账户管理请求、身份创建请求中的一种;
响应于至少一个待验证方发送的第二请求,调用并执行所述第一合约中配置的与所述第二请求相对应的函数;所述第二请求至少包括身份验证请求。
上述如本说明书图1至图6所示实施例揭示的基于智能合约的身份管理方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(Central ProcessingUnit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本说明书实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本说明书实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
当然,除了软件实现方式之外,本说明书实施例的电子设备并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
实施例四
本说明书实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的便携式电子设备执行时,能够使该便携式电子设备执行图1至图6所示实施例的基于智能合约的身份管理方法,并具体用于执行以下方法:
适用于基于智能合约的身份管理系统;在区块链中部署并运行第一合约,所述第一合约为用于身份管理的智能合约且配置至少一个包括多个账户的账户池和至少一个包括多条规则的规则池;所述方法包括:
响应于用户组中至少一个用户发送的第一请求,调用并执行所述第一合约中配置的与所述第一请求相对应的函数;所述第一请求至少包括规则管理请求、账户管理请求、身份创建请求中的一种;
响应于至少一个待验证方发送的第二请求,调用并执行所述第一合约中配置的与所述第二请求相对应的函数;所述第二请求至少包括身份验证请求。
总之,以上所述仅为本说明书的较佳实施例而已,并非用于限定本说明书的保护范围。凡在本说明书的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本说明书的保护范围之内。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
Claims (16)
1.一种基于智能合约的身份管理方法,其特征在于,适用于基于智能合约的身份管理系统;在区块链中部署并运行第一合约,所述第一合约为用于身份管理的智能合约且配置至少一个包括多个账户的账户池和至少一个包括多条规则的规则池;所述方法包括:
响应于用户组中至少一个用户发送的第一请求,调用并执行所述第一合约中配置的与所述第一请求相对应的函数;所述第一请求至少包括规则管理请求、账户管理请求、身份创建请求中的一种;
响应于至少一个待验证方发送的第二请求,调用并执行所述第一合约中配置的与所述第二请求相对应的函数;所述第二请求至少包括身份验证请求。
2.根据权利要求1所述的方法,其特征在于,当所述第一请求为所述身份创建请求时,调用并执行所述第一合约中配置的身份创建函数;所述身份创建函数用于创建分布式身份。
3.根据权利要求2所述的方法,其特征在于,一个所述分布式身份与一个所述账户池及一个所述规则池相对应。
4.根据权利要求1所述的方法,其特征在于,所述规则池至少包括规则池修改规则和账户池修改规则。
5.根据权利要求4所述的方法,其特征在于,当所述第一请求为所述规则管理请求时,调用并执行所述第一合约中配置的规则管理函数;所述规则管理函数用于依据所述规则池修改规则对所述规则池进行维护操作,对所述规则池进行维护操作包括对所述规则的新增、修改、删除中的至少一种。
6.根据权利要求5所述的方法,其特征在于,所述规则的组成包括:适用于所述规则的对象或范围,和/或执行所述规则对应的操作时所需确认账户数目或特定账户,和/或所述规则的具体限定内容。
7.根据权利要求4所述的方法,其特征在于,当所述第一请求为所述账户管理请求时,调用并执行所述第一合约中配置的账户管理函数;所述账户管理函数用于依据所述账户池修改规则对所述账户池进行维护操作,对所述账户池进行维护操作包括对所述账户的新增、删除中的至少一种。
8.根据权利要求7所述的方法,其特征在于,一个所述用户与所述账户池中的一个或多个所述账户相对应,且一个所述账户与一个所述用户相对应。
9.根据权利要求1所述的方法,其特征在于,当所述第二请求为所述身份验证请求时,调用并执行所述第一合约的身份验证函数;所述身份验证函数用于进行身份验证并将身份验证结果发送至所述待验证方。
10.根据权利要求1至9任一项所述的方法,其特征在于,调用并执行所述第一合约时,依据相应的所述规则,由一个或多个所述用户通过指定验证方式进行签名确认,所述指定验证方式包括私钥验证方式。
11.根据权利要求1所述的方法,其特征在于,还包括:响应于监管方发送的第三请求,调用并执行所述第一合约中配置的与所述第三请求相对应的函数;所述第三请求至少包括身份监管请求。
12.根据权利要求11所述的方法,其特征在于,当所述第三请求为所述身份监管请求时,调用并执行所述第一合约中配置的身份监管函数;所述身份监管函数用于对调用所述第一合约的执行结果进行监控和审计,并依据监控和审计结果对相应身份所拥有的权限进行处理。
13.一种基于智能合约的身份管理装置,其特征在于,适用于基于智能合约的身份管理系统;在区块链中部署并运行第一合约,所述第一合约为用于身份管理的智能合约且配置有至少一个账户池和至少一个规则池;所述装置包括:
第一模块,能够响应于用户组中至少一个用户发送的第一请求,调用并执行所述第一合约中配置的与所述第一请求相对应的函数;所述第一请求至少包括规则管理请求、账户管理请求、身份创建请求中的一种;
第二模块,能够响应于至少一个待验证方发送的第二请求,调用并执行所述第一合约中配置的与所述第二请求相对应的函数;所述第二请求至少包括身份验证请求。
14.根据权利要求13所述的装置,其特征在于,还包括:
第三模块,能够响应于监管方发送的第三请求,调用并执行所述第一合约中配置的与所述第三请求相对应的函数;所述第三请求至少包括身份监管请求。
15.一种电子设备,其特征在于,包括:处理器;以及被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使得所述处理器执行权利要求1至12任一项所述的方法。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行权利要求1至12任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310335435.0A CN116074126A (zh) | 2023-03-31 | 2023-03-31 | 一种基于智能合约的身份管理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310335435.0A CN116074126A (zh) | 2023-03-31 | 2023-03-31 | 一种基于智能合约的身份管理方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116074126A true CN116074126A (zh) | 2023-05-05 |
Family
ID=86170107
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310335435.0A Pending CN116074126A (zh) | 2023-03-31 | 2023-03-31 | 一种基于智能合约的身份管理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116074126A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200204557A1 (en) * | 2018-12-19 | 2020-06-25 | International Business Machines Corporation | Decentralized database identity management system |
CN111598574A (zh) * | 2020-05-12 | 2020-08-28 | 江苏大学 | 面向智能服务交易的监管方法及监管接口 |
CN114844629A (zh) * | 2022-03-31 | 2022-08-02 | 网易(杭州)网络有限公司 | 区块链账户的验证方法、装置、计算机设备及存储介质 |
-
2023
- 2023-03-31 CN CN202310335435.0A patent/CN116074126A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200204557A1 (en) * | 2018-12-19 | 2020-06-25 | International Business Machines Corporation | Decentralized database identity management system |
CN111598574A (zh) * | 2020-05-12 | 2020-08-28 | 江苏大学 | 面向智能服务交易的监管方法及监管接口 |
CN114844629A (zh) * | 2022-03-31 | 2022-08-02 | 网易(杭州)网络有限公司 | 区块链账户的验证方法、装置、计算机设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111475849B (zh) | 基于区块链账户的隐私数据查询方法及装置 | |
US12010228B2 (en) | Systems, methods, and devices for secure blockchain transaction and subnetworks | |
US11444779B2 (en) | Techniques for securing application programming interface requests using multi-party digital signatures | |
WO2021184963A1 (zh) | 调用合约的方法及装置 | |
CN110580413B (zh) | 基于链下授权的隐私数据查询方法及装置 | |
CN110580262B (zh) | 基于智能合约的隐私数据查询方法及装置 | |
CN111523110B (zh) | 基于链代码的权限查询配置方法及装置 | |
CN110580245B (zh) | 隐私数据的共享方法及装置 | |
CN111475850B (zh) | 基于智能合约的隐私数据查询方法及装置 | |
CN110580411B (zh) | 基于智能合约的权限查询配置方法及装置 | |
Dahiya et al. | A comprehensive analysis of blockchain and its applications in intelligent systems based on IoT, cloud and social media | |
Gupta | Hands-On Cybersecurity with Blockchain: Implement DDoS protection, PKI-based identity, 2FA, and DNS security using Blockchain | |
Alnahari et al. | Authentication of IoT device and IoT server using security key | |
Ghaffari et al. | Identity and access management using distributed ledger technology: A survey | |
Musonda et al. | Security, Privacy and Integrity in Internet of Things–A Review | |
US11507945B2 (en) | Method and system for usage of cryptocurrency, preventing financial crime | |
Wilusz et al. | Secure protocols for smart contract based insurance services | |
Raje | Security and Microservice Architecture on AWS | |
CN115048672A (zh) | 基于区块链的数据审计方法和装置、处理器及电子设备 | |
Rastogi et al. | Secured identity management system for preserving data privacy and transmission in cloud computing | |
CN116074126A (zh) | 一种基于智能合约的身份管理方法和装置 | |
Geetha et al. | Blockchain based Mechanism for Cloud Security | |
Kolhar et al. | Cloud Computing Data Auditing Algorithm | |
Ghosh | The State‐of‐the‐Art in Zero‐Knowledge Authentication Proof for Cloud | |
Waizenegger | Data security in multi-tenant environments in the cloud |
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 |
Application publication date: 20230505 |
|
RJ01 | Rejection of invention patent application after publication |