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

基于区块链的文件处理方法、文件访问方法、装置及系统与流程

2021-10-24 10:21:00 来源:中国专利 TAG:区块 文件 方法 装置 访问


1.本发明涉及区块链技术领域,具体涉及一种基于区块链的文件处理方法、文件访问方法、装置及系统。


背景技术:

2.网络文件存储技术主要采用传统的基于分布式中心化的云存证技术,该存储技术依赖于云存储平台,当云存储平台故障时,无法有效对文件进行存储和访问操作,且,存在数据被攻击篡改的风险。
3.目前,业界提出基于区块链提供的去中心化的文件存储服务,一定程度上解决了数据存储和安全问题,但是,基于多机构多用户文件共享存储和访问的精准控制方面,还有待提出进一步优化方案。


技术实现要素:

4.有鉴于此,本发明提供一种基于区块链的文件处理方法、文件访问方法、装置及系统,以解决上述提及的至少一个问题。
5.根据本发明的第一方面,提供一种基于区块链的文件处理方法,所述方法包括:
6.接收来自合作机构的共享文件授权请求,所述共享文件授权请求包括:共享文件和授权机构信息,所述共享文件包括:文件存储地址;
7.根据所述授权机构信息生成访问授权信息,并将所述访问授权信息发送至所述合作机构,以便于合作机构转发给授权机构;
8.基于随机秘钥对所述共享文件进行加密操作生成文件密文,并将所述访问授权信息、文件密文、授权机构信息上链存储;
9.接收来自授权机构的文件访问请求,所述文件访问请求包括:所述访问授权信息;
10.响应于对接收的访问授权信息验证成功,将文件密文和授权秘钥发送给授权机构,其中,所述授权秘钥基于授权机构公钥和随机秘钥生成。
11.根据本发明的第二方面,提供一种基于区块链的文件访问方法,所述方法包括:
12.接收来自合作机构的访问授权信息,并将该访问授权信息发送至区块链,所述访问授权信息用于获取相应的共享文件;
13.接收来自所述区块链的文件密文和授权秘钥,其中,所述授权秘钥基于授权机构公钥和随机秘钥生成,所述文件密文基于所述随机秘钥和共享文件生成;
14.基于授权机构私钥对所述授权秘钥进行解密操作,生成所述随机秘钥;
15.根据生成的随机秘钥对所述文件密文进行解密操作,生成所述共享文件;
16.根据所述共享文件执行文件访问操作。
17.根据本发明的第三方面,提供一种基于区块链的文件处理装置,所述装置包括:
18.授权请求接收单元,用于接收来自合作机构的共享文件授权请求,所述共享文件授权请求包括:共享文件和授权机构信息,所述共享文件包括:文件存储地址;
19.授权信息生成单元,用于根据所述授权机构信息生成访问授权信息;
20.授权信息发送单元,用于将所述访问授权信息发送至所述合作机构,以便于合作机构转发给授权机构;
21.文件加密单元,用于基于随机秘钥对所述共享文件进行加密操作生成文件密文;
22.存储单元,用于将所述访问授权信息、文件密文、授权机构信息上链存储;
23.访问请求接收单元,用于接收来自授权机构的文件访问请求,所述文件访问请求包括:所述访问授权信息;
24.文件发送单元,用于响应于对接收的访问授权信息验证成功,将文件密文和授权秘钥发送给授权机构,其中,所述授权秘钥基于授权机构公钥和随机秘钥生成。
25.根据本发明的第四方面,提供一种基于区块链的文件访问装置,所述装置包括:
26.授权信息接收单元,用于接收来自合作机构的访问授权信息,并将该访问授权信息发送至区块链,所述访问授权信息用于获取相应的共享文件;
27.文件接收单元,用于接收来自所述区块链的文件密文和授权秘钥,其中,所述授权秘钥基于授权机构公钥和随机秘钥生成,所述文件密文基于所述随机秘钥和共享文件生成;
28.授权秘钥解密单元,用于基于授权机构私钥对所述授权秘钥进行解密操作,生成所述随机秘钥;
29.文件解密单元,用于根据生成的随机秘钥对所述文件密文进行解密操作,生成所述共享文件;
30.访问单元,用于根据所述共享文件执行文件访问操作。
31.根据本发明的第五方面,提供一种基于区块链的文件访问系统,所述系统包括:合作机构、位于区块链端的基于区块链的文件处理装置、以及位于授权机构的基于区块链的文件访问装置,所述合作机构提供共享文件至所述文件处理装置,所述授权机构通过所述文件访问装置接收所述文件处理装置发送的共享文件、并访问所述共享文件。
32.根据本发明的第六方面,提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述方法的步骤。
33.根据本发明的第七方面,提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述方法的步骤。
34.由上述技术方案可知,通过根据接收的来自合作机构的共享文件授权请求生成访问授权信息,并将该访问授权信息发送至合作机构,以便于合作机构转发给授权机构,当接收到来自授权机构的文件访问请求时,对访问请求中的访问授权信息进行验证,当验证成功时,将文件密文和授权秘钥发送给授权机构,以便于授权机构解密文件后进行文件访问操作,本技术方案基于区块链技术提供文件存储和共享服务,对多个机构多用户提供共享文件的存储和访问服务,提高了对共享文件和访问的精准度。
附图说明
35.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据
这些附图获得其他的附图。
36.图1是根据本发明实施例的基于区块链的文件访问系统的结构框图;
37.图2是根据本发明实施例的文件处理装置21的结构框图;
38.图3是根据本发明实施例的文件访问装置31的结构框图;
39.图4是根据本发明实施例的基于区块链的多机构文件存储、共享系统的结构示例图;
40.图5是根据本发明实施例的合作机构a系统100的示例结构框图;
41.图6是根据本发明实施例的合作机构应用服务器102的示例结构框图;
42.图7是根据本发明实施例的区块链验证节点401的示例结构框图;
43.图8是根据本发明实施例的基于图4示例系统的共享文件加密处理流程示意图;
44.图9是根据本发明实施例的基于图4示例系统的共享文件交易授权处理流程示意图;
45.图10是根据本发明实施例的基于图4示例系统的共享文件交易解密处理流程示意图;
46.图11是根据本发明实施例的基于区块链的文件处理方法的流程图;
47.图12是根据本发明实施例的基于区块链的文件访问方法的流程图;
48.图13为本发明实施例的电子设备600的系统构成的示意框图。
具体实施方式
49.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
50.鉴于目前的基于区块链的多机构多用户文件存储技术存在存储和访问的精准度较低的问题,本发明实施例提供一种基于区块链的文件处理和访问方案,该方案基于区块链技术提供文件存储和共享服务,支持多个机构多用户对共享文件提供统一存储和访问服务,提高了对共享文件存储和访问的精准度。以下结合附图来详细描述本发明实施例。
51.图1是根据本发明实施例的基于区块链的文件访问系统的结构框图,如图1所示,该系统包括:合作机构1、位于区块链2端的基于区块链的文件处理装置21、以及位于授权机构3的基于区块链的文件访问装置31,其中,合作机构1提供共享文件(可以是文件存储地址)至所述文件处理装置21,所述授权机构3通过所述文件访问装置31接收所述文件处理装置21发送的共享文件、并访问所述共享文件。以下分别详细描述文件处理装置21和文件访问装置31。
52.(一)文件处理装置21
53.图2是文件处理装置21的结构框图,如图2所示,该文件处理装置21包括:授权请求接收单元211、授权信息生成单元212、授权信息发送单元213、文件加密单元214、存储单元215、访问请求接收单元216和文件发送单元217,其中:
54.授权请求接收单元211,用于接收来自合作机构的共享文件授权请求,所述共享文件授权请求包括:共享文件和授权机构信息,所述共享文件包括:文件存储地址。这里的授
权机构信息是指有权限访问共享文件的机构信息。
55.在一个实施例中,合作机构发送共享文件授权请求之前,可以基于合作机构私钥对共享文件授权请求进行签名操作。
56.相应地,文件处理装置21可以包括:验签单元,用于基于合作机构公钥对所述共享文件授权请求进行验签操作。
57.授权信息生成单元212,用于根据所述授权机构信息生成访问授权信息,该访问授权信息可以是授权码。
58.授权信息发送单元213,用于将所述访问授权信息发送至所述合作机构,以便于合作机构转发给授权机构。
59.文件加密单元214,用于基于随机秘钥对所述共享文件进行加密操作生成文件密文。
60.存储单元215,用于将所述访问授权信息、文件密文、授权机构信息上链存储。
61.访问请求接收单元216,用于接收来自授权机构的文件访问请求,所述文件访问请求包括:所述访问授权信息。
62.文件发送单元217,用于响应于对接收的访问授权信息验证成功,将文件密文和授权秘钥发送给授权机构,其中,所述授权秘钥基于授权机构公钥和随机秘钥生成。
63.在一个实施例中,该装置还包括:验证单元,用于对接收的访问授权信息进行验证。具体地,该验证单元包括:查询模块和验证模块,其中:
64.查询模块,用于根据接收的访问授权信息查询链上存储的授权机构信息和访问授权信息;
65.验证模块,用于根据查询结果对接收的访问授权信息进行验证。
66.通过授权信息生成单元212根据授权请求接收单元211接收的来自合作机构的共享文件授权请求生成访问授权信息,授权信息发送单元213将该访问授权信息发送至合作机构,以便于合作机构转发给授权机构,当访问请求接收单元216接收到来自授权机构的文件访问请求时,对访问请求中的访问授权信息进行验证,当验证成功时,文件发送单元217将文件密文和授权秘钥发送给授权机构,以便于授权机构解密文件后进行文件访问操作,本发明实施例基于区块链技术提供文件存储、共享服务,对多个机构多用户提供共享文件的存储和访问服务,提高了对共享文件和访问的精准度。
67.在一个实施例中,上述装置21还可以包括:秘钥加密单元和秘钥存储单元,其中:
68.秘钥加密单元,用于基于自有秘钥对所述随机秘钥进行加密操作,生成秘钥密文;
69.秘钥存储单元,用于将所述秘钥密文上链存储。
70.通过秘钥加密单元,可以增加随机秘钥的安全性,从而可以增加共享文件的安全性。
71.相应地,上述装置21还包括:秘钥解密单元和授权秘钥生成单元,其中:
72.秘钥解密单元,用于基于所述自有秘钥对所述秘钥密文进行解密操作,生成所述随机秘钥;
73.授权秘钥生成单元,用于基于所述授权机构公钥对生成的随机秘钥进行加密操作,生成所述授权秘钥。
74.之后,由文件发送单元217将文件密文和授权秘钥发送给授权机构,以便于授权机
构的文件访问装置31对授权秘钥和文件密文进行解密后,访问共享文件。
75.(二)文件访问装置31
76.图3是文件访问装置31的结构框图,如图3所示,该文件访问装置31包括:授权信息接收单元311、文件接收单元312、授权秘钥解密单元313、文件解密单元314和访问单元315,其中:
77.授权信息接收单元311,用于接收来自合作机构的访问授权信息,并将该访问授权信息发送至区块链,所述访问授权信息用于获取相应的共享文件;
78.文件接收单元312,用于接收来自所述区块链的文件密文和授权秘钥,其中,所述授权秘钥基于授权机构公钥和随机秘钥生成,所述文件密文基于所述随机秘钥和共享文件生成;
79.授权秘钥解密单元313,用于基于授权机构私钥对所述授权秘钥进行解密操作,生成所述随机秘钥;
80.文件解密单元314,用于根据生成的随机秘钥对所述文件密文进行解密操作,生成所述共享文件;
81.访问单元315,用于根据所述共享文件执行文件访问操作。
82.由以上描述可知,合作机构将可以共享的文件发送至文件处理装置21,并将授权机构信息发送至文件处理装置21,文件处理装置21根据授权机构信息生成访问授权信息(例如,可以是授权码),随后将访问授权信息发送至合作机构,合作机构再将访问授权信息转发给有共享权限的授权机构,便于授权机构在文件处理装置21获取共享文件。在该过程中,文件处理装置21提供了用户管理、密钥管理、权限管理、存储和文件管理等服务,通过对合作机构的共享电子文件进行加密、授权、解密处理,支持多机构用户级授权访问权限控制,提高了对共享文件和访问的精准度。
83.在实际操作中,合作机构可以具有授权机构的功能,通过文件处理装置21共享其他合作机构的文件;授权机构也可以具有合作机构的功能,通过文件处理装置21发送共享文件,便于其他机构访问。
84.为了更好地理解本发明,以下结合图4所示的示例系统来详细描述本发明实施例。
85.图4是根据本发明实施例的基于区块链的多机构文件存储、共享系统的结构示例图,如图4所示,该示例系统包括:多个合作机构系统(图中举例示意合作机构a系统100、合作机构b系统200、合作机构c系统300)、区块链400、监管机构系统500。
86.其中,合作机构系统100/200/300(分别具有上述合作机构的功能和上述文件访问装置31的功能)、监管机构系统500通过网络(为运营商提供有线通讯网络或无线通讯网络)分别接入区块链400中的一个验证节点(具有上述文件处理装置21的功能)。区块链400可支持多个合作机构系统、监管机构系统。多个合作机构系统可对应区块链400中的同一个或独立验证节点,同样地,多个监管机构系统也可对应同一个或独立验证节点。
87.合作机构a系统100负责提供pc(personal computer,个人计算机)终端或移动终端,接受终端操作人员提供的共享电子文件上传、授权、加密、解密、查询等指令,并调用区块链400提供的接口完成信息上链或查询处理。图示合作机构系统200/300以及每个合作机构具有如上相同的处理功能。
88.区块链400包括多个验证节点(需要四个验证节点或以上节点,满足区块链拜占庭
共识算法容错要求)。区块链400各验证节点之间建立连接,每个接入的合作机构系统100、200、300,以及各监管机构(如政府、金融机构等)等外部系统可以对接访问一个验证节点。所有验证节点负责接收、转发信息,并对接收信息进行验证,若满足存在2n 1台验证节点接收信息相同条件,则认为信息验证通过,区块链400各验证节点完成共识。各个验证节点执行按预定规则部署的智能合约,完成规则判断并执行相应处理。
89.图5是合作机构a系统100的示例结构框图,如图5所示,该合作机构a系统100包括:合作机构终端101、合作机构应用服务器102、合作机构文件存储设备103,其中:
90.所述合作机构终端101包含pc终端或移动终端,用于展示录入界面,接受终端操作人员提交的待共享电子文件上传、授权、加密、解密、查询等指令并传输至所述合作机构应用服务器102。
91.所述合作机构应用服务器102,用于将所述指令转换为区块链接口要求的输入格式,以完成与所述指令对应的处理功能。应用服务器将相关业务交易信息和关联文件、文件存储地址、文件hash(哈希)值、文件授权信息、合作机构授权码(对应于上述的访问授权信息)、操作、日志等数据存储至合作机构存储设备103。
92.图6是合作机构应用服务器102的示例结构框图,如图6所示,合作机构应用服务器102包括:密钥管理模块1021、权限管理模块1022、用户管理模块1023、文件管理模块1024、业务处理模块1025,其中:
93.其中,所述密钥管理模块1021,用于管理合作机构和监管机构系统公钥和私钥。合作机构在共享文件交易加密阶段对上传业务数据、文件存储地址(链内区块链文件存储地址、链外本地系统文件存储地址)、文件hash值、文件和交易授权信息进行签名,调用区块链提供的交易签名服务,交易发送至区块链验证节点完成共识并存证。
94.所述权限管理模块1022,用于管理当前合作机构共享文件和交易信息授权范围,并提供授权码接收服务。合作机构在共享文件交易授权阶段提交授权信息(当前合作机构将本次文件和交易信息授权给其他合作机构及机构内用户访问权限,该授权信息对应于上述的访问授权信息)请求,调用区块链提供的交易授权服务,交易发送至区块链验证节点完成共识并存证,同时接收区块链返回的授权码,并调用被授权合作机构授权码接收服务,将授权码通知给被授权合作机构。
95.所述用户管理模块1023,用于向所述终端101提供录入界面、录入界面输入的用户信息,调用区块链提供的用户信息登记服务将用户身份唯一标识、用户姓名、用户类别,系统约定的用户统一机构编号、统一身份编号信息发送至区块链验证节点进行共识并存证。此外,该模块在共享文件交易授权阶段通过调用区块链提供的用户信息查询服务,在终端界面展现其他合作机构用户统一机构编号、统一身份编号等,支持当前合作机构用户选择其他合作机构具体用户范围、用于完成其他合作机构授权访问本机构共享电子文件范围设置处理。
96.所述文件管理模块1024,用于管理当前合作机构本地文件信息,支持链内链外两种存储模式,合作机构可在共享文件上传阶段调用区块链提供文件上传服务,交易发送至区块链验证节点完成共识并存证。对于链内存储模式,该模块将待共享本地文件上传至区块链完成链内文件存储,接受区块链返回的链内文件存储地址,同步存储至合作机构存储设备103。对于链外存储模式,该模块将合作机构待共享本地系统文件存储地址直接上传至
区块链,共享本地系统文件保持当前合作机构本地存储。
97.所述业务处理模块1025,用于支持实现合作机构系统业务功能,同步生成待共享电子文件和交易信息,同步存储至合作机构存储设备103。同时,对于共享文件交易解密阶段,对于被授权合作机构(参考下文合作机构a将共享文件和交易密文授权给合作机构b举例描述),使用其私钥privatekeyb对当前共享文件和交易授权密文secretb进行解密,得到当前随机对称密钥key1,再使用key1对当前文件和交易密文cryptoa进行解密,得到合作机构a原始业务数据、文件hash值、文件存储地址(链内区块链文件存储地址、链外本地系统文件存储地址)。对于链外文件存储模式,被授权合作机构通过该模块根据链外本地系统文件存储地址访问获取实际文件;对于链内文件存储模式,被授权合作机构通过该模块调用区块链400提供的文件访问服务,基于链内区块链文件存储地址从区块链文件存储设备获取被共享文件。
98.图7是区块链验证节点401的示例结构框图,如图7所示,该区块链验证节点401包括:交易共识模块4011、文件存储模块4012、用户管理模块4013、权限管理模块4014、密钥管理模块4015、验签管理模块4016、交易加密模块4017、交易授权模块4018、交易解密模块4019、文件查询模块4020,其中:
99.所述交易共识模块4011,用于确保所有验证节点上的上链交易和文件信息一致。当某个验证节点的交易共识模块接收到入链交易和文件信息时,此时该信息将广播到所有验证节点,所有验证节点的交易共识模块检查请求交易是否重复,如果重复则抛弃,否则存储在内存中,将请求封装为共识区块,并生成该区块的哈希值(假设为h0),每个验证节点都需要接收到其他至少2台验证节点的信息,并在每个信息中验证哈希值h0与自己接收到的请求校验的摘要一致,并完成入链交易和文件信息共识。
100.所述文件存储模块4012,用于接收共享文件上传阶段当前合作机构传送的待共享本地存储文件数据存储请求,通过验签管理模块4016完成交易验签,调用交易共识模块4011完成共识,执行智能合约,将所述上链交易和文件信息通过预设合约规则登记到各个验证节点和区块链文件存储设备,确保所有验证节点上信息一致。对于共享文件上传阶段,对于链内存储模式,该模块向合作机构返回链内文件存储地址,对于链外存储模式,该模式直接存储合作机构本地系统文件存储地址。
101.所述用户管理模块4013,用于管理各合作机构和监管机构唯一机构标识信息,并向各合作机构和监管机构提供用户信息登记服务,接收各机构用户身份唯一标识、用户姓名、用户类别,系统约定的用户统一机构编号、统一身份编号信息登记请求,通过验签管理模块4016完成交易验签,调用交易共识模块4011完成共识,执行智能合约,将所述信息通过预设合约规则登记到各个验证节点中。在共享文件交易授权阶段,该模块向合作机构提供用户信息查询服务,用于支持发起交易请求的合作机构完成其他合作机构对应用户授权访问其本机构共享电子文件范围设置。
102.所述权限管理模块4014,向各合作机构提供交易授权服务,接收合作机构在共享文件交易授权阶段提交授权信息(当前合作机构将本次文件和交易信息授权给其他合作机构及机构内用户访问)请求,通过验签管理模块4016完成交易验签,调用交易共识模块4011完成共识,执行智能合约,将所述信息通过预设合约规则登记到各个验证节点中,统一管理各机构之间待共享文件访问权限。
103.所述密钥管理模块4015,用于区块链400各验证节点管理各合作机构和监管机构公钥信息。同时,对于合作机构共享文件上传阶段、共享文件交易加密阶段、共享文件交易授权阶段,当合作机构和监管机构共享文件访问时,通过验签管理模块4016基于对应机构公钥信息完成交易签名验证。
104.所述验签管理模块4016,通过密钥管理模块4015获取各合作机构和监管机构公钥信息,用于向各合作机构和监管机构提供电子文件共享相关交易请求验签服务。
105.所述交易加密模块4017,对于某合作机构(下文以合作机构a系统100将文件共享给合作机构b系统200为例)上传发起的某笔共享文件和交易加密请求,通过验签管理模块4016完成交易验签,随机生成对称密钥key1,并对合作机构a上送的业务数据、文件hash值、文件存储地址(链内区块链文件存储地址、链外本地系统文件存储地址)进行对称加密,形成文件和交易密文cryptoa。随后,该模块使用区块链400自有对称密码key2对当前随机对称密钥key1进行加密,形成随机对称密钥加密密文cryptokey。
106.所述交易授权模块4018,对于合作机构a发起的共享文件和交易授权请求,通过验签管理模块4016完成交易验签,并对合作机构a上送的共享文件和交易授权信息auth_ab(以合作机构a授权合作机构b及其机构内用户访问文件权限),生成合作机构b交易访问授权码codeb、并将文件和交易密文cryptoa、授权信息auth_ab、加密密文cryptokey、授权码codeb上链存储,调用交易共识模块4011完成共识,执行智能合约,将上述信息通过预设合约规则登记到各个验证节点完成存证,并将授权码codeb返回给合作机构a,并由合作机构a将授权码codeb通知给合作机构b。此外,该模块接收合作机构b发起的共享文件和交易信息查询请求,通过验签管理模块4016完成交易验签,根据授权信息auth_ab判断合作机构b是否有权访问并校验授权码codeb存在性。若授权码codeb不存在,区块链验证节点返回处理失败信息并返回给合作机构b处理终端展现错误信息。
107.所述交易解密模块4019,该模块使用区块链400自有对称密码key2对上述加密密文cryptokey解密,得到随机对称密钥key1,并使用合作机构b的公钥publickeyb对称密钥key1进行加密,生成该笔交易授权密文secretb,并将文件和交易密文cryptoa、secretb返回给合作机构b。同样地,该模块同步使用合作机构a和监管机构的公钥publickeya和publickey_sup对前述对称密钥key1进行加密,生成授权密文secreta和secret_sup,同样上链存储。同样地,对于合作机构a同时授权给多个合作机构的情况,区块链400生成相同合作机构授权密文。此外,区块链400支持对某笔交易进行授权调整,支持合作机构a上送多笔交易后,统一进行授权。
108.所述文件查询模块4020,对于链内文件存储模式,为合作机构b(或者其他需要访问共享文件的合作机构)提供的文件访问服务,合作机构b基于链内区块链文件存储地址从区块链文件存储设备获取共享文件。对于合作机构a和监管机构,无需授权码即可查看合作机构a共享的文件和交易信息。同样地,监管机构可以有权查看其他合作作机构共享的文件和交易信息。
109.图8为基于图4示例系统的共享文件加密处理流程示意图,如图8所示,该流程包括以下步骤:
110.s101:合作机构a上传业务数据、文件hash值、文件存储地址(链内区块链文件存储地址、链外本地系统文件存储地址),使用其私钥进行交易签名,发起共享文件和交易加密
请求。
111.s102:区块链400使用合作机构a公钥进行验签后,随机生成对称密钥key1,并对合作机构a上送的业务数据、文件hash值、文件存储地址(链内区块链文件存储地址、链外本地系统文件存储地址)进行对称加密,形成文件和交易密文cryptoa。
112.s103:区块链400使用自有对称密码key2对当前随机对称密钥key1进行加密,形成随机对称密钥加密密文cryptokey。
113.图9为基于图4示例系统的共享文件交易授权处理流程示意图,如图9所示,该流程包括以下步骤:
114.s201:区块链400对于合作机构a上传发起的共享文件和交易授权请求,通过验签管理模块4016完成交易验签。
115.s202:区块链400对合作机构a上送的共享文件和交易授权信息auth_ab(以合作机构a授权合作机构b及其机构内用户访问文件权限),生成合作机构b交易访问授权码codeb、并将文件和交易密文cryptoa、授权信息auth_ab、加密密文cryptokey、授权码codeb上链存储。
116.s203:区块链400将授权码codeb返回给合作机构a,并由合作机构a通知合作机构b。
117.s204:合作机构b上传授权码codeb,使用其私钥进行交易签名,发起共享文件和交易信息查询请求。
118.s205:区块链400使用合作机构b公钥进行验签后,根据授权信息auth_ab判断合作机构b是否有权访问并校验授权码codeb存在性。若授权码codeb不存在,区块链验证节点返回处理失败信息并返回给合作机构b处理终端展现错误信息。
119.图10为基于图4示例系统的共享文件交易解密处理流程示意图,如图10所示,该流程包括以下步骤:
120.s301:区块链400通过自有对称密码key2对加密密文cryptokey解密,得到随机对称密钥key1。
121.s302:区块链400使用合作机构b的公钥publickeyb对对称密钥key1进行加密,生成该笔交易授权密文secretb。
122.s303:区块链400将文件和交易密文cryptoa、secretb返回给合作机构b。
123.s304:合作机构b使用其私钥privatekeyb对当前共享文件和交易授权密文secretb进行解密,得到当前随机对称密钥key1,再使用key1对当前文件和交易密文cryptoa进行解密,得到合作机构a原始业务数据、文件hash值、文件存储地址(链内区块链文件存储地址、链外本地系统文件存储地址)。
124.由以上描述可知,基于区块链技术,利用区块链分布式存储技术及对称和非对称加密算法,构建了数据访问”授权和加密“机制,在保证文件存储系统安全性要求基础上,进一步满足了多机构不同用户的数据隐私保护和可见范围控制需求。本发明实施例可以支持多机构用户级授权访问权限控制,支持权限实时调整修改,关键信息交互、密钥生成、文件访问存储过程基于区块链进行共识存储,能够提升文件存储系统安全性要求。并且,链内链外文件协同共享存储模式,可以缓解区块链文件存储系统资源压力。
125.基于相似的发明构思,本发明实施例还提供一种基于区块链的文件处理方法,该
方法优选地可应用于上述文件处理装置21。
126.图11是该基于区块链的文件处理方法的流程图,如图11所示,该流程包括:
127.步骤1101,接收来自合作机构的共享文件授权请求,所述共享文件授权请求包括:共享文件和授权机构信息,所述共享文件包括:文件存储地址。
128.在一个实施例中,共享文件授权请求基于所述合作机构私钥签名,因而,在接收来自合作机构的共享文件授权请求之后,需要基于合作机构公钥对所述共享文件授权请求进行验签操作。
129.步骤1102,根据所述授权机构信息生成访问授权信息(例如,上述codeb),并将所述访问授权信息发送至所述合作机构,以便于合作机构转发给授权机构。
130.步骤1103,基于随机秘钥(例如,上述的key1)对所述共享文件进行加密操作生成文件密文(例如,上述cryptoa),并将所述访问授权信息、文件密文cryptoa、授权机构信息上链存储。
131.步骤1104,接收来自授权机构的文件访问请求,所述文件访问请求包括:所述访问授权信息codeb。
132.步骤1105,响应于对接收的访问授权信息codeb验证成功,将文件密文cryptoa和授权秘钥(例如,secretb)发送给授权机构,其中,所述授权秘钥基于授权机构公钥和随机秘钥生成。
133.对接收的访问授权信息codeb验证包括:先根据接收的访问授权信息codeb查询链上存储的授权机构信息和访问授权信息codeb;之后根据查询结果对接收的访问授权信息codeb进行验证。
134.通过根据接收的来自合作机构的共享文件授权请求生成访问授权信息,并将该访问授权信息发送至合作机构,以便于合作机构转发给授权机构,当接收到来自授权机构的文件访问请求时,对访问请求中的访问授权信息进行验证,当验证成功时,将文件密文和授权秘钥发送给授权机构,以便于授权机构解密文件后进行文件访问操作,本发明实施例基于区块链技术提供文件存储和共享服务,对多个机构多用户提供共享文件的存储和访问服务,提高了对共享文件和访问的精准度。
135.在一个实施例中,可以基于区块链的自有秘钥(例如,上述的key2)对所述随机秘钥进行加密操作,生成秘钥密文(例如,上述的cryptokey);之后将所述秘钥密文上链存储。
136.相应地,在将文件密文cryptoa和授权秘钥发送给授权机构之前,所述方法还包括:先基于所述自有秘钥对所述秘钥密文进行解密操作,生成所述随机秘钥;之后基于所述授权机构公钥(例如,上述的publickeyb)对生成的随机秘钥进行加密操作,生成所述授权秘钥secretb。
137.本发明实施例还提供一种基于区块链的文件访问方法,该方法优选地可应用于上述的文件访问装置31。
138.图12是该基于区块链的文件访问方法的流程图,如图12所示,所述方法包括:
139.步骤1201,接收来自合作机构的访问授权信息,并将该访问授权信息发送至区块链,所述访问授权信息用于获取相应的共享文件;
140.步骤1202,接收来自所述区块链的文件密文cryptoa和授权秘钥secretb,其中,所述授权秘钥基于授权机构公钥和随机秘钥生成,所述文件密文基于所述随机秘钥和共享文
件生成;
141.步骤1203,基于授权机构私钥(例如,上述的privatekeyb)对所述授权秘钥进行解密操作,生成所述随机秘钥;
142.步骤1204,根据生成的随机秘钥对所述文件密文进行解密操作,生成所述共享文件;
143.步骤1205,根据所述共享文件执行文件访问操作。
144.上述各步骤的具体执行过程,可以参见上述系统实施例中的描述,此处不再赘述。
145.本实施例还提供一种电子设备,该电子设备可以是台式计算机、平板电脑及移动终端等,本实施例不限于此。在本实施例中,该电子设备可以参照上述方法实施例进行实施及基于区块链的文件访问系统的实施例进行实施,其内容被合并于此,重复之处不再赘述。
146.图13为本发明实施例的电子设备600的系统构成的示意框图。如图13所示,该电子设备600可以包括中央处理器100和存储器140;存储器140耦合到中央处理器100。值得注意的是,该图是示例性的;还可以使用其他类型的结构,来补充或代替该结构,以实现电信功能或其他功能。
147.一实施例中,基于区块链的文件处理功能可以被集成到中央处理器100中。
148.其中,中央处理器100可以被配置为进行如下控制:
149.接收来自合作机构的共享文件授权请求,所述共享文件授权请求包括:共享文件和授权机构信息,所述共享文件包括:文件存储地址;
150.根据所述授权机构信息生成访问授权信息,并将所述访问授权信息发送至所述合作机构,以便于合作机构转发给授权机构;
151.基于随机秘钥对所述共享文件进行加密操作生成文件密文,并将所述访问授权信息、文件密文、授权机构信息上链存储;
152.接收来自授权机构的文件访问请求,所述文件访问请求包括:所述访问授权信息;
153.响应于对接收的访问授权信息验证成功,将文件密文和授权秘钥发送给授权机构,其中,所述授权秘钥基于授权机构公钥和随机秘钥生成。
154.从上述描述可知,本技术实施例提供的电子设备,通过根据接收的来自合作机构的共享文件授权请求生成访问授权信息,并将该访问授权信息发送至合作机构,以便于合作机构转发给授权机构,当接收到来自授权机构的文件访问请求时,对访问请求中的访问授权信息进行验证,当验证成功时,将文件密文和授权秘钥发送给授权机构,以便于授权机构解密文件后进行文件访问操作,本发明实施例基于区块链技术提供文件存储、共享服务,对多个机构多用户提供共享文件的存储和访问服务,提高了对共享文件和访问的精准度。
155.在另一个实施方式中,基于区块链的文件访问系统可以与中央处理器100分开配置,例如可以将基于区块链的文件访问系统配置为与中央处理器100连接的芯片,通过中央处理器的控制来实现基于区块链的文件处理和访问功能。
156.如图13所示,该电子设备600还可以包括:通信模块110、输入单元120、音频处理单元130、显示器160、电源170。值得注意的是,电子设备600也并不是必须要包括图13中所示的所有部件;此外,电子设备600还可以包括图13中没有示出的部件,可以参考现有技术。
157.如图13所示,中央处理器100有时也称为控制器或操作控件,可以包括微处理器或其他处理器装置和/或逻辑装置,该中央处理器100接收输入并控制电子设备600的各个部
件的操作。
158.其中,存储器140,例如可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种。可储存上述与失败有关的信息,此外还可存储执行有关信息的程序。并且中央处理器100可执行该存储器140存储的该程序,以实现信息存储或处理等。
159.输入单元120向中央处理器100提供输入。该输入单元120例如为按键或触摸输入装置。电源170用于向电子设备600提供电力。显示器160用于进行图像和文字等显示对象的显示。该显示器例如可为lcd显示器,但并不限于此。
160.该存储器140可以是固态存储器,例如,只读存储器(rom)、随机存取存储器(ram)、sim卡等。还可以是这样的存储器,其即使在断电时也保存信息,可被选择性地擦除且设有更多数据,该存储器的示例有时被称为eprom等。存储器140还可以是某种其它类型的装置。存储器140包括缓冲存储器141(有时被称为缓冲器)。存储器140可以包括应用/功能存储部142,该应用/功能存储部142用于存储应用程序和功能程序或用于通过中央处理器100执行电子设备600的操作的流程。
161.存储器140还可以包括数据存储部143,该数据存储部143用于存储数据,例如联系人、数字数据、图片、声音和/或任何其他由电子设备使用的数据。存储器140的驱动程序存储部144可以包括电子设备的用于通信功能和/或用于执行电子设备的其他功能(如消息传送应用、通讯录应用等)的各种驱动程序。
162.通信模块110即为经由天线111发送和接收信号的发送机/接收机110。通信模块(发送机/接收机)110耦合到中央处理器100,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。
163.基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块110,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)110还经由音频处理器130耦合到扬声器131和麦克风132,以经由扬声器131提供音频输出,并接收来自麦克风132的音频输入,从而实现通常的电信功能。音频处理器130可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器130还耦合到中央处理器100,从而使得可以通过麦克风132能够在本机上录音,且使得可以通过扬声器131来播放本机上存储的声音。
164.本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时以实现上述基于区块链的文件处理和访问方法的步骤。
165.综上所述,通过基于区块链技术提供了文件存储和共享服务,支持多个机构多用户对共享电子文件的统一存储和访问服务。区块链通过提供用户管理、密钥管理、权限管理、存储和文件管理等服务,基于系统数据共享机制打通多机构用户体系,通过对不同机构的共享电子文件进行加密、授权、解密处理,可以支持多机构用户级授权访问权限控制,支持权限实时调整修改,关键信息交互、密钥生成、文件访问存储过程基于区块链进行共识存储,进一步提升了文件存储系统的安全性要求。同时,通过链内和链外文件存储,构建了链内链外文件协同共享存储模式,支持非关键信息链外存储,缓解了区块链文件存储系统资源压力问题。
166.以上参照附图描述了本发明的优选实施方式。这些实施方式的许多特征和优点根据该详细的说明书是清楚的,因此权利要求旨在覆盖这些实施方式的落入其真实精神和范
围内的所有这些特征和优点。此外,由于本领域的技术人员容易想到很多修改和改变,因此不是要将本发明的实施方式限于所例示和描述的精确结构和操作,而是可以涵盖落入其范围内的所有合适修改和等同物。
167.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
168.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
169.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
170.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
171.本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
再多了解一些

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

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

相关文献

  • 日榜
  • 周榜
  • 月榜