一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于区块链的管理系统、方法、设备及存储介质与流程

2021-11-06 07:31:00 来源:中国专利 TAG:


1.本发明实施例涉及区块链技术领域,尤其涉及基于区块链的管理系统、方法、设备及存储介质。


背景技术:

2.在数据传输过程中,为保证链上数据的安全性,一般基于区块链对数据进行存储与验证,在验证过程中通常使用公私钥签名的方式实现对数据的访问操作。
3.在使用公私钥签名的方式实现数据的访问操作时,现有技术提供的基于区块链的管理系统包括:管理员客户端、普通用户客户端、数据存证智能合约和区块链账本。当普通用户对数据进行读写操作时,首先用户需要使用私钥对数据访问请求进行签名,数据存证智能合约通过对应的公钥进行身份验证,验证通过后,进一步通过权限控制策略信息验证公钥对应的编号或公钥对应的哈希地址,从而根据公钥对应的编号或公钥对应的哈希地址在区块链账本对应的用户公钥列表中查询是否记录有当前用户对应的公钥,若存在当前用户对应的公钥,则验证通过,用户可对要访问的数据进行相应权限的访问操作;反之,则验证不通过,拒绝用户的数据访问请求。
4.用户公钥列表中每个用户的公钥需要依赖管理员客户端使用自己的私钥对用户公钥列表中的用户公钥进行管理,当用户的私钥被窃取或者丢失时,用户需要生成新的公钥私钥对,从而也需要依靠管理员客户端将新的公钥添加到用户公钥列表中。
5.将现有方案应用于金融场景时,有时需要用户定期更换私钥,同时需要依靠管理员将更换后的私钥对应的公钥发布在用户公钥列表中,将用户公钥列表进行更新,该实现过程较为繁琐,不便于管理。


技术实现要素:

6.本发明实施例提供了基于区块链的管理系统、方法、设备及存储介质,可以优化现有的区块链的管理方案。
7.第一方面,本发明实施例提供了一种基于区块链的管理系统,包括:
8.用户业务系统、分布式数字身份标识did智能合约、数据存证智能合约和区块链账本,所述用户业务系统配置有用户did;
9.所述区块链账本用于存储所述用户业务系统对应的用户did文档,以及数据对应的权限控制策略信息,其中,所述权限控制策略信息中包含具备相应权限的did信息;
10.所述用户业务系统用于基于所述用户did通过所述did智能合约在所述区块链账本中维护所述用户did文档,以及基于所述用户did通过所述数据存证智能合约对所述区块链账本中的数据进行访问;
11.所述did智能合约用于根据所述用户did文档对所述用户业务系统发起的针对用户did文档的维护请求进行身份验证;
12.所述数据存证智能合约用于根据所述用户did文档对所述用户业务系统发起的数
据访问请求进行身份验证,在验证通过的情况下根据对应的权限控制策略信息进行相应的访问控制操作。
13.第二方面,本发明实施例提供了一种基于区块链的管理方法,该管理方法应用于本发明实施例提供的管理系统,该方法包括:
14.用户业务系统基于用户did向did智能合约发送针对用户did文档的维护请求;
15.did智能合约根据所述用户did文档对所述用户业务系统发起的维护请求进行身份验证,在验证通过的情况下,允许用户业务系统对所述用户did文档进行维护;
16.用户业务系统基于所述用户did向数据存证智能合约发送针对区块链账本中数据的数据访问请求;
17.数据存证智能合约根据所述用户did文档对所述数据访问请求进行身份验证,在验证通过的情况下根据对应的权限控制策略信息进行相应的访问控制操作。
18.第三方面,本发明实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如本发明实施例提供的管理系统中的相应功能。
19.第四方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例提供的管理系统中的相应功能。
20.本发明实施例中提供的基于区块链的管理系统方案,首先通过用户业务系统基于用户did在did智能合约中发起对区块链账本中用户did文档的维护请求,并基于用户did通过数据存证智能合约发起对区块链账本中的数据进行访问请求,其中,区块链账本中存储有用户业务系统对应的用户did文档,以及数据对应的权限控制策略信息,权限控制策略信息中包含具备相应权限的did信息。然后did智能合约根据用户did文档对用户业务系统发起的针对用户did文档的维护请求进行身份验证;数据存证智能合约根据用户did文档对用户业务系统发起的数据访问请求进行身份验证,在验证通过的情况下根据对应的权限控制策略信息进行相应的访问控制操作。采用上述技术方案,通过验证权限控制策略信息中包含的did信息,可获得相应的访问权限,从而实现对区块链账本中数据的管理,无需通过验证权限控制策略信息中公钥对应的编号或哈希地址,实现数据访问,达到了在保证数据安全的前提下,灵活更换公钥私钥对的技术效果。
附图说明
21.图1为本发明实施例一提供的一种基于区块链的管理系统的结构框图;
22.图2为本发明实施例二提供的一种基于区块链的管理系统的结构框图;
23.图3为本发明实施例二提供的另一种基于区块链的管理系统的结构框图;
24.图4为本发明实施例二提供的又一种基于区块链的管理系统的结构框图;
25.图5为本发明实施例三提供的一种基于区块链的管理方法流程示意图;
26.图6为本发明实施例提供的一种计算机设备的结构框图。
具体实施方式
27.下面结合附图并通过具体实施方式来进一步说明本发明的技术方案。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明
的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
28.在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各步骤描述成顺序的处理,但是其中的许多步骤可以被并行地、并发地或者同时实施。此外,各步骤的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
29.实施例一
30.图1为本发明实施例一提供的一种基于区块链的管理系统的结构框图。本实施例适用于区块链技术领域中用户需要灵活更换公钥私钥对的情况,如图1所示,该系统包括:用户业务系统10、分布式数字身份标识did智能合约20、数据存证智能合约30和区块链账本40,在用户业务系统配置有用户did110。
31.其中,用户业务系统表征能够被用户访问的系统,例如可以为:银行工作人员内部访问的银行安保系统、用户访问的银行业务系统以及用户访问的购物平台系统等,在此不作限制。
32.分布式数字身份标识(decentralized identity,简称did),为一种全局唯一的持久标识符,通常由用户自主通过加密的方式生成,和/或注册后生成,一个did对应有一个用户did文档(decentralized identity document)。可以通过验证did的方式实现在区块链中用户自主进行身份认证的机制,无需依靠于原先的中心化权威机构,即无需通过管理员进行认证。
33.区块链账本(ledgerium)是一种分布式数字分类账本,其以可验证的方式高效地记录着数据的交易信息。在区块链中区块链账本负责区块链系统的信息存储,包括收集交易数据,生成数据区块,以及将校验通过的数据区块加到链上。区块链账本将上一个区块的签名嵌入到下一个区块组成的链式数据结构中,使数据的完整性和真实性得到保障。
34.在本发明实施例中,区块链账本用于存储用户业务系统对应的,以及数据430对应的权限控制策略信息420。
35.其中,用户did文档中描述了关于did的一组数据,该数据可以用来被第三方验证当前用户是否为当前did的实际持有者,其验证方法可以为基于密码学进行验证,例如非对称加密算法。若使用非对称加密算法进行验证时,did文档中包括用户所拥有的私钥个数以及每个私钥对应的公钥,通过使用对应的私钥进行签名对每个对应的公钥进行验证,若均验证通过,即可表明当前用户为该did的实际拥有者,否则,则验证不通过。其中,所述私钥个数不局限于一个,私钥由用户自己保存,具体个数根据用户在用户业务系统中的需求而定,公钥个数与私钥个数一一对应,公钥发布在did文档中,可以被注册did的相应用户所获知。
36.在区块链账本中存储有用户业务对应的用户did文档,以及数据对应的权限控制策略信息,其中,权限控制策略信息中包含具备相应权限的did信息421。
37.可以理解为链上每个用户均有一个对应的用户did文档,当前用户did文档在区块链中生成后,可将该用户did文档以计算机描述符协议的方式存储在区块链中,供链上其余用户查看,其余用户可通过获取did信息的方式获得对应的用户did文档。
38.权限控制策略信息可以理解为,在权限控制策略信息中记录有当前数据拥有者对
应的did信息,以及可以对当前数据进行读(readers)操作和/或写(writers)操作的用户对应的did信息。例如,该did信息可以为:一串长度不限的字符串信息,或者为根据用户注册获得did的先后顺序进行排序的序号信息,在此不作限制。
39.其中,权限控制策略信息中包括:可以对数据进行读(readers)操作的did信息和可以对当前数据进行写(writers)操作的用户对应的did信息,两者对应的did信息内容不一定相同,数量也不一定相等,即表明拥有读操作权限的用户不一定拥有写操作权限,相应地,拥有写操作权限的用户也不一定拥有读权限操作。
40.需要知道的是,在区块链账本中可以包含有多种数据,本发明实施例图1中仅示出了一种数据的情况,若包含有多种数据时,例如,包含数据#1以及数据#2,其中,在数据#1中有对应的权限控制策略信息1以及权限控制策略信息1中包含的可以对数据#1进行读操作和写操作权限的对应的did信息。相应地,数据#2有对应的权限控制策略信息2以及权限控制策略信息2中包含的可以对数据#2进行读操作和写操作权限的对应的did信息。
41.用户业务系统用于基于用户did通过did智能合约在区块链账本中维护用户did文档,以及基于用户did通过数据存证智能合约对区块链账本中的数据进行访问。
42.did智能合约用于根据用户did文档对用户业务系统发起的针对用户did文档的维护请求进行身份验证。
43.数据存证智能合约用于根据用户did文档对用户业务系统发起的数据访问请求进行身份验证,在验证通过的情况下根据对应的权限控制策略信息进行相应的访问控制操作。
44.在本发明实施例中,在通过用户业务系统发起针对用户did文档的维护请求时,所述维护请求可以包括待维护用户did文档对应的did信息,以及待维护用户did文档对应的公钥,使用用户did文档对应的私钥进行签名,将该维护请求发送至did智能合约,did智能合约使用待维护用户did文档对应的公钥进行身份验证,若验证通过,可以通过did智能合约对待维护的用户did文档进行相应维护操作。
45.进一步地,当用户业务系统用于基于用户did通过数据存证智能合约对区块链账本中的数据进行访问时,可根据用户did文档中记录的did信息,获得对应did的公钥,用户业务系统发起针对数据的数据访问请求,该访问请求可包含数据标识(identity document,简称id)以及did信息。其中,数据id用来指示需要访问的具体数据,did信息用来指示权限控制策略中需要进行相应访问控制操作是否包含当前did,并使用did的密钥信息在数据存证智能合约中进行身份验证,在验证通过的情况下,可表明当前用户为did信息的持有者,进一步还需验证当前did信息的持有者是否有对数据进行相应访问权限,也即可根据对应的权限控制策略信息包含的多个did信息进行查找,若在权限控制策略信息中查找到当前did信息,则当前用户可进行相应的访问,此时的访问控制操作例如可包括允许当前用户对数据进行访问,若在权限控制策略信息中未查找到当前did信息,则当前用户不能进行相应的访问,此时的访问控制操作例如可包括拒绝当前用户对数据进行访问。
46.在本发明实施例中,通过预先在权限控制策略信息中存储可对相应数据进行访问的did信息,用did信息验证当前用户是否具备相应的访问权限,即使原本存储在区块链账本中的密钥信息发生改变,但每个用户对应的did信息不会改变,因此,可以通过管理did信息对应的用户did文档的方式,达到基于区块链对系统进行管理的目的。
47.其中,上述维护用户did文档的操作可以为:对用户did文档中包含的公钥进行相应操作,例如可以为添加、删除或替换等操作。基于用户did通过数据存证智能合约对区块链账本中的数据进行访问操作可以为:对数据进行对应的读操作和/或写操作等。
48.本发明实施例通过的基于区块链的管理系统,首先通过用户业务系统基于用户did在did智能合约中发起对区块链账本中用户did文档的维护请求,并基于用户did通过数据存证智能合约发起对区块链账本中的数据进行访问请求,其中,区块链账本中存储有用户业务系统对应的用户did文档,以及数据对应的权限控制策略信息,权限控制策略信息中包含具备相应权限的did信息。然后did智能合约根据用户did文档对用户业务系统发起的针对用户did文档的维护请求进行身份验证;数据存证智能合约根据用户did文档对用户业务系统发起的数据访问请求进行身份验证,在验证通过的情况下根据对应的权限控制策略信息进行相应的访问控制操作。采用上述技术方案,通过验证权限控制策略信息中包含的did信息,可获得相应的访问权限,从而实现对区块链账本中数据的管理,无需通过验证权限控制策略信息中公钥对应的编号或哈希地址,实现数据访问,达到了在保证数据安全的前提下,灵活更换公钥私钥对的技术效果。
49.实施例二
50.图2为本发明实施例二提供的一种基于区块链的管理系统的结构框图,如图2所示,在上述实施例的基础上,本技术实施例进行了进一步优化,本发明实施例所提供的基于区块链的管理系统,用户业务系统10用于基于用户did110通过did智能合约20在区块链账本40中维护用户did文档410,以及基于用户did110通过数据存证智能合约30对区块链账本40中的数据进行访问,其中:
51.用户did110包括控制did111和数据访问did112,用户did文档410包括控制did文档411和数据访问did文档412,用户业务系统10中包括密钥管理模块11和业务模块12,密钥管理模块11配置有控制did111,业务模块12配置有数据访问did112。
52.其中,控制did也属于did身份标识的一种,用来控制哪个用户可以修改当前的用户did文档。控制did可以与当前用户did文档的did主题内容相同,也可以不同,即表明控制did有自己的did文档。数据访问did用来指定具体的访问数据。本发明实施例提供的基于区块链管理系统,每一个用户都拥有一个控制did和一个数据访问did。通过控制did和数据访问did所具备的不同功能,实现对基于区块链的管理系统的分离管理。
53.密钥管理模块用于基于用户did通过did智能合约在区块链账本中维护用户业务系统对应的控制did文档和数据访问did文档。
54.业务模块用于基于数据访问did通过数据存证智能合约对区块链账本中的数据进行访问。
55.did智能合约用于对密钥管理模块发起的针对用户did文档的维护请求进行身份验证。
56.数据存证智能合约用于根据数据访问did文档对业务模块发起的数据访问请求进行身份验证,在验证通过的情况下根据对应的权限控制策略信息进行相应的访问控制操作。
57.区块链账本用于存储用户业务系统对应的用户did文档,以及数据对应的权限控制策略信息420,其中,所述权限控制策略信息420中包含具备相应权限的did信息421。
58.在本发明实施例中,通过密钥管理模块基于用户did通过did智能合约在区块链账本中维护用户业务系统对应的控制did文档时,所述维护请求可以包括待维护控制did文档对应的did信息,以及待维护控制did文档对应的公钥,使用控制did文档对应的私钥进行签名,将该维护请求发送至did智能合约,did智能合约使用待维护控制did文档对应的公钥进行身份验证,在验证通过的情况下,可以对控制did文档进行相应的维护操作。其中,所述维护操作可以为当公钥信息发生添加、删除或替换等操作时,需要对控制did文档进行维护更新。
59.在本发明实施例中,当通过密钥管理模块基于用户did通过did智能合约在区块链账本中维护用户业务系统对应的数据访问did文档时,该维护请求中包含待维护数据访问did文档对应的did信息以及数据访问did文档对应的公钥,并使用数据访问did文档对应的私钥在业务模块进行签名,将该维护请求发送至数据存证智能合约,数据存证智能合约使用数据访问did文档对应的公钥进行身份验证,在验证通过的情况下,根据对应的权限控制策略信息对数据访问did文档进行相应的访问控制操作。
60.进一步地,本发明实施例进行了进一步优化,优化了控制did对应于主密钥的公私钥对,数据访问did对应于从密钥的公私钥对。
61.本发明实施例提供的基于区块链的管理系统,采用主密钥和从密钥实现密钥控制和数据访问控制的分离,且每一个用户都拥有一个控制did对应的一个主密钥的公私钥对和一个数据访问did对应的有一个或多个从密钥的公私钥对。
62.需要说明的是,主密钥用来维护控制did文档和数据访问did文档,当需要对用户did文档中的did信息进行维护时才会被使用,当维护完成后,对用户did文档进行更新。从密钥在基于数据存证智能合约的读写访问请求进行验证时使用,例如,用于在业务模块进行数据访问请求的验证以及在数据存在智能合约30根据数据访问did文档对业务模块发起的数据访问请求进行身份验证等场合。
63.密钥管理模块用于:向did智能合约发送以主密钥的私钥进行签名的针对控制did文档的维护请求;以及,向did智能合约发送以主密钥的私钥进行签名的针对数据访问did文档的维护请求;其中,维护请求中包含相应的did。
64.did智能合约用于:在接收到针对控制did文档的维护请求的情况下,根据相应的did从区块链账本中获取控制did文档中的主密钥的公钥,并利用主密钥的公钥进行相应的签名验证,若验证通过,则允许进行相应的文档维护;以及,在接收到针对数据访问did文档的维护请求的情况下,根据相应的did从区块链账本中获取控制did文档中的主密钥的公钥,并利用主密钥的公钥进行相应的签名验证,若验证通过,则允许进行相应的文档维护。
65.在本发明实施例中,在针对控制did文档以及数据访问did文档的维护请求,均是通过使用主密钥的私钥进行签名的方式进行维护的,在did智能合约接收到对应的维护请求后,均需要使用主密钥的公钥进行认证,这样做的目的是,确保数据传输的安全性。
66.若为针对控制did文档的维护请求,该维护请求包括:控制did文档对应的did信息以及控制did文档所需的主密钥的公钥,首先通过主密钥的私钥对密钥管理模块进行签名,签名完成后将该维护请求发送至did智能合约,在did智能合约中使用主密钥的公钥进行签名认证,若认证通过,则通过控制did文档接口,对控制did文档进行相应维护。
67.若为针对数据访问did文档的维护请求,该维护请求包括:数据访问did文档对应
的did信息,以及数据访问did文档主密钥的公钥,其中,数据访问did文档主密钥的公钥从已发布在区块链账本中did信息对应的控制did文档中获得,并利用主密钥的公钥对待维护的数据访问did文档在did智能合约中进行签名验证,若验证通过,即可对数据访问did文档进行相应维护操作。此处,使用控制did文档主密钥的公钥进行签名的目的为:防止非对应did信息的实际拥有者对数据访问did文档进行篡改,通过控制did文档主密钥的公钥进行验证,可加强数据的保密性。
68.进一步地,密钥管理模块还用于:向did智能合约发送以主密钥的私钥进行签名的针对数据访问did文档的创建请求,其中,创建请求中包括数据访问did和待写入的从密钥的公钥。
69.did智能合约用于:在接收到针对数据访问did文档的创建请求的情况下,在区块链账本中生成对应的数据访问did文档,并在所生成的数据访问did文档中写入待写入的从密钥的公钥。
70.在本发明实施例中,当为针对数据访问did文档的数据创建请求时,即在区块链账本中创建一个数据访问did文档。首先在密钥管理模块中发起创建请求,该创建请求包括,数据访问did和待写入的从密钥的公钥,并向did智能合约发送关于数据访问did文档的创建请求,当did智能合约接收到创建请求后,使用主密钥对应的公钥进行基于did的身份验证,在验证通过的情况下,在区块链账本中创建数据访问did文档,并在数据访问did文档中写入待写入的从密钥的公钥,从而完成了从密钥的公钥在区块链账本上的发布。
71.更进一步地,业务模块还用于:向数据存证智能合约发送以从密钥的私钥进行签名的数据访问请求,其中,数据访问请求中包含数据标识和数据访问did。
72.数据存证智能合约还用于在接收到数据访问请求的情况下,根据数据访问请求中包含的数据访问did通过did智能合约从区块链账本中获取相应的数据访问did文档,并从所获取的数据访问did文档中获取从密钥的公钥,并利用从密钥的公钥进行相应的签名验证,若验证通过,则在区块链账本中查询与数据标识对应的权限控制策略信息,在所查询的权限控制策略信息中包含数据访问请求中的数据访问did的情况下,允许进行相应的数据访问。
73.在本发明实施例中,在实现数据访问时,首先在业务模块生成数据访问请求,其中,数据访问请求包括:数据标识和数据访问did,使用已发布的从密钥对应的私钥进行签名后,并将该数据访问请求发送至数据存证智能合约,数据存证智能合约在接收到数据访问请求后,首先在区块链账本中获取数据访问did对应的数据访问did文档,并在数据访问did文档中获取从密钥的公钥,使用该从密钥的公钥进行签名认证,若认证通过,则证明当前用户为当前数据访问did文档的持有者,进一步进行基于did的数据权限验证,即根据数据访问请求中的数据标识验证当前用户能否对区块链账本中的当前数据进行读操作和/或写操作。
74.进一步地验证方式可以为:数据存证智能合约基于接收到的数据标识,查询数据标识对应的权限控制策略信息,并在权限控制策略信息所包含的相应操作中查询是否包含数据访问请求中的数据访问的did,其中,权限控制策略信息所包含的相应操作可以为读操作和写操作,并在每个项目中预置了具备相应访问权限的did信息,若在对应操作中包含数据访问请求中的did信息,则可进行对应的访问操作。
75.一种可选实施例,请参照图3,图3为本发明实施例二提供的另一种基于区块链的管理系统的结构框图。本发明实施例提供的维护请求包括从密钥的公钥替换请求,公钥替换请求中包括待删除的从密钥的公钥和待添加的从密钥的公钥。
76.该种情况适用于当用户用于数据访问时私钥发生丢失,或者根据业务系统的需求需要定期更换私钥时,当私钥进行更换,对应记录在用户did文档中的主密钥也需要进行更换,此时,用户可以通过主密钥来更新数据访问did文档中的公钥。
77.did智能合约用于:在接收到针对数据访问did文档的公钥替换请求的情况下,根据相应的did从区块链账本中查找对应的数据访问did文档,将所查找到的数据访问did文档中的待删除的从密钥的公钥删除,并写入待添加的从密钥的公钥。
78.请参照图3,将所查找到的数据访问did文档中的待删除的从密钥的公钥删除,并写入待添加的从密钥的公钥的过程可以理解为:删除从密钥#1的公钥,添加从密钥#2的公钥,其中从密钥#2的公钥添加的过程,与添加初始从密钥的公钥的过程相同,即为将从密钥写到数据访问did文档中,在此不再赘述。当后续用户对数据访问请求进行签名时,需要采用从密钥#2的私钥进行签名认证,并且请求中的数据访问did仍旧使用原数据访问did,即为从密钥#1对应的数据访问did。
79.同时,在历史数据的权限控制策略信息中,仍然记录的是原数据访问did,因此采用从密钥#2的私钥进行签名的针对历史数据的读写请求,仍旧可以通过权限控制策略的验证逻辑。采用已经被废除的从密钥#1的私钥签名的数据访问请求时,由于已经不存在于数据访问did中,因此无法通过数据存证智能合约基于did进行身份认证。
80.又一种可选实施例,请参照图4,图4为本发明实施例二提供的又一种基于区块链的管理系统的结构框图。用户业务系统中包括多个业务模块,每个业务模块配置的数据访问did相同,不同业务模块对应的从密钥的公私钥对不同。
81.本发明实施例提供的基于区块链的管理系统,当同一个用户有多个业务模块都需要访问区块链,例如业务模块01以及业务模块02,但由于安全隔离的需要,每个系统都配置了不同的公私钥对来对区块链的数据进行读写访问。同时要求多个公钥私钥对,都指向同一个用户。此时,用户可以通过主密钥来更新数据访问did文档,添加多个业务模块所采用的从密钥的公钥(如图4中从密钥#1、#2)。
82.当各业务模块对数据访问请求进行签名时,需采用各自的从密钥的私钥,并且请求中的数据访问did仍旧使用统一的代表该用户的数据访问did。
83.数据存证智能合约中的基于did进行身份认证,将根据数据访问did信息从链上获取数据访问did文档,然后使用从密钥的公钥对数据访问did进行签名验证。此时did文档中包含多个公钥,将用于验证来自于各个业务模块的数据访问请求的签名。
84.本发明实施例二提供的基于区块链的管理系统,通过采用主从密钥实现密钥控制和数据访问控制的分离,使用主密钥实现维护控制did文档和数据访问did文档,使用从密钥实现数据访问时的签名认证,在维护控制did文档和数据访问did文档时,在did智能合约中进行基于did的身份验证,当验证通过后,允许对控制did文档和数据访问did文档进行相应的维护操作,并将维护后的数据访问did文档发布在区块链上。当需要对数据进行访问时,根据did信息从区块链上获取对应的数据访问did文档,通过从密钥对应的公钥进行认证,在认证通过后,可通过权限控制策略信息中包含的did信息进行进一步验证,若验证通
过,则可进行对应的访问操作。通过此方案,可以基于验证用户did的方式,实现对数据的访问控制操作,不需要通过公私钥对的方式进行验证,过程相对简单。
85.实施例三
86.图5为本发明实施例三提供的一种基于区块链的管理方法流程示意图,该方法可以由区块链的管理系统执行,其中该系统可由软件和/或硬件实现,一般可集成在服务器等计算机设备中。如图5所示,该方法包括:
87.s510、用户业务系统基于用户did向did智能合约发送针对用户did文档的维护请求。
88.在发起对用户did文档进行维护的请求时,首先使用业务系统对应的私钥进行签名,该签名的目的为,使得接收到维护请求时能够使用私钥对应的公钥进行解密验证,以确保维护请求发送给正确的用户。
89.维护请求可以包括:待维护的did信息,以及待维护did对应的公钥信息,并将该维护请求发送至did智能合约。其中,实现该维护请求的方式可以通过jwt(json web token)实现,其中,jwt为java编程的一种。
90.s520、did智能合约根据用户did文档对用户业务系统发起的维护请求进行身份验证,在验证通过的情况下,允许用户业务系统对用户did文档进行维护。
91.did智能合约在接收到维护请求后,根据待维护did对应的公钥信息进行身份认证,若认证通过,则允许户业务系统对用户did文档进行维护。
92.其中,户业务系统对用户did文档进行维护可以为:对用户did文档中包含的公钥进行添加、删除或替换等操作,每进行一次相应操作,需对用户did文档进行一次维护更新。
93.s530、用户业务系统基于用户did向数据存证智能合约发送针对区块链账本中数据的数据访问请求。
94.当对区块链中用户did文档进行维护操作后,可进一步发起针对区块链中数据的数据访问请求,该数据访问请求可以包括:数据id以及did信息,其中,该did信息根据对用户did文档维护后获得的。数据id用来指示需要访问的具体数据,did信息用来指示权限控制策略中需要进行相应访问控制操作中是否包含该did信息,并向数据存证智能合约发送数据访问请求。
95.s540、数据存证智能合约根据用户did文档对数据访问请求进行身份验证,在验证通过的情况下根据对应的权限控制策略信息进行相应的访问控制操作。
96.在数据存证智能合约接收到数据访问请求后,使用did的公钥信息在数据存证智能合约中进行身份验证,在验证通过的情况下,可表明当前用户为did信息的持有者,进一步还需验证当前did信息的持有者是否有对数据进行相应访问的权限,从而可根据对应的权限控制策略信息中包含的did信息内容进行查找,若在权限控制策略信息中具备当前did信息,则当前用户可进行相应的访问控制操作。
97.本发明实施例提供的基于区块链的管理方法,首先使用用户业务系统基于用户did向did智能合约发送针对用户did文档的维护请求,然后did智能合约根据用户did文档对用户业务系统发起的维护请求进行身份验证,在验证通过的情况下,允许用户业务系统对用户did文档进行维护;用户业务系统基于用户did向数据存证智能合约发送针对区块链账本中数据的数据访问请求;数据存证智能合约根据用户did文档对数据访问请求进行身
份验证,在验证通过的情况下根据对应的权限控制策略信息进行相应的访问控制操作。采用上述技术方案,通过验证权限控制策略信息中包含的did信息,可获得相应的访问权限,从而实现对区块链账本中数据的管理,无需通过验证权限控制策略信息中公钥对应的编号或哈希地址,实现数据访问,达到了在保证数据安全的前提下,灵活更换公钥私钥对的技术效果。
98.实施例四
99.本发明实施例提供了一种计算机设备,该计算机设备中可集成本发明实施例提供的基于区块链的管理系统中的相应功能。图6为本发明实施例提供的一种计算机设备的结构框图。计算机设备600可以包括:存储器601,处理器602及存储在存储器601上并可在处理器运行的计算机程序,所述处理器602执行所述计算机程序时实现如本发明实施例所述的基于区块链的管理系统中的相应功能。
100.本发明实施例提供的计算机设备,可执行本发明任意实施例所提供的基于区块链的管理系统,具备执行该系统相应的功能和有益效果。
101.实施例五
102.本发明实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行管理系统中的相应功能,该系统包括:用户业务系统、分布式数字身份标识did智能合约、数据存证智能合约和区块链账本,所述用户业务系统配置有用户did;
103.所述区块链账本用于存储所述用户业务系统对应的用户did文档,以及数据对应的权限控制策略信息,其中,所述权限控制策略信息中包含具备相应权限的did信息;
104.所述用户业务系统用于基于所述用户did通过所述did智能合约在所述区块链账本中维护所述用户did文档,以及基于所述用户did通过所述数据存证智能合约对所述区块链账本中的数据进行访问;
105.所述did智能合约用于根据所述用户did文档对所述用户业务系统发起的针对用户did文档的维护请求进行身份验证;
106.所述数据存证智能合约用于根据所述用户did文档对所述用户业务系统发起的数据访问请求进行身份验证,在验证通过的情况下根据对应的权限控制策略信息进行相应的访问控制操作。
107.存储介质——任何的各种类型的存储器设备或存储设备。术语“存储介质”旨在包括:安装介质,例如cd

rom、软盘或磁带装置;计算机系统存储器或随机存取存储器,诸如dram、ddrram、sram、edoram,兰巴斯(rambus)ram等;非易失性存储器,诸如闪存、磁介质(例如硬盘或光存储);寄存器或其它相似类型的存储器元件等。存储介质可以还包括其它类型的存储器或其组合。另外,存储介质可以位于程序在其中被执行的第一计算机系统中,或者可以位于不同的第二计算机系统中,第二计算机系统通过网络(诸如因特网)连接到第一计算机系统。第二计算机系统可以提供程序指令给第一计算机用于执行。术语“存储介质”可以包括可以驻留在不同位置中(例如在通过网络连接的不同计算机系统中)的两个或更多存储介质。存储介质可以存储可由一个或多个处理器执行的程序指令(例如具体实现为计算机程序)。
108.当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机
可执行指令不限于如上所述的基于区块链的管理系统中的相应功能的操作,还可以执行本发明任意实施例所提供的基于区块链的管理系统中的相应功能中的相关操作。
109.上述实施例中提供的基于区块链的管理系统、方法、设备及存储介质可执行本发明任意实施例所提供的基于区块链的管理系统的相应功能,具备执行该系统相应的有益效果。未在上述实施例中详尽描述的技术细节,可参见本发明任意实施例所提供的基于区块链的管理系统。
110.注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献