数据授权方法及装置、计算机可读存储介质、计算机设备

文档序号:1963935 发布日期:2021-12-14 浏览:31次 >En<

阅读说明:本技术 数据授权方法及装置、计算机可读存储介质、计算机设备 (Data authorization method and device, computer readable storage medium and computer equipment ) 是由 汤奇峰 龙文明 于 2021-09-18 设计创作,主要内容包括:一种数据授权方法及装置、计算机可读存储介质、计算机设备,其中,所述方法包括:在接收到使用主体对目标共享数据的授权请求时,向提供所述目标共享数据的归属主体转发所述授权请求;获取所述归属主体针对所述授权请求的反馈,若所述反馈为同意授权,则确定用于获取所述目标共享数据的数据令牌;将所述数据令牌发送给所述使用主体,以使得所述使用主体基于所述数据令牌从去中心化的存储系统中获取所述目标共享数据。由此,能够提供一种有效的数据授权方法,以实现数据在拥有者和使用者之间的安全流转。(A data authorization method and device, a computer readable storage medium and a computer device are provided, wherein the method comprises the following steps: upon receiving an authorization request for target shared data using a principal, forwarding the authorization request to a home principal that provides the target shared data; obtaining feedback of the attribution main body aiming at the authorization request, and if the feedback is authorization approval, determining a data token for obtaining the target shared data; sending the data token to the usage principal such that the usage principal retrieves the target shared data from a decentralized storage system based on the data token. Therefore, an effective data authorization method can be provided to realize the safe circulation of data between the owner and the user.)

数据授权方法及装置、计算机可读存储介质、计算机设备

技术领域

本发明涉及计算机技术领域,尤其涉及一种数据授权方法及装置、计算机可读存储介质、计算机设备。

背景技术

在数据与土地、劳动力、资本、技术一同成为生产要素的大背景下,数据共享、交换、流通的需求越来越大;但随着网络和大数据技术的发展,数据安全、个人隐私成为数字经济不可逾越的难题;数据的权属与权益转让等数据使用边界模糊甚至混乱。因此,理清数据(包括个人数据、团体数据和机构数据等)的权属,形成良好的数据授权模式才能发挥数据市场的激励机制,释放数据的价值效应,促进数字化经济的蓬勃发展。

然而,当前不存在一种有效的数据授权方法,以实现数据在拥有者和使用者之间的安全流转。

发明内容

本发明解决的技术问题是如何提供一种有效的数据授权方法,以实现数据在拥有者和使用者之间的安全流转。

为解决上述问题,本发明实施例提供了一种数据授权方法,包括:在接收到使用主体对目标共享数据的授权请求时,向提供所述目标共享数据的归属主体转发所述授权请求;获取所述归属主体针对所述授权请求的反馈,若所述反馈为同意授权,则确定用于获取所述目标共享数据的数据令牌;将所述数据令牌发送给所述使用主体,以使得所述使用主体基于所述数据令牌从去中心化的存储系统中获取所述目标共享数据。

可选的,向所述归属主体发送的授权请求包括所述使用主体的身份信息、所述目标共享数据的信息、所述归属主体的身份信息中的一种或多种。

可选的,向所述归属主体发送的授权请求还包括约束规则,所述约束规则用于限制所述目标共享数据的使用范围。

可选的,所述目标共享数据的信息包括所述目标共享数据的数据类型,所述目标共享数据包括所述归属主体的身份数据、设备数据、账户数据、社会关系数据、网络行为数据中的一种或多种数据类型。

可选的,所述方法还包括:将所述使用主体的身份信息、所述归属主体的身份信息、所述授权请求和所述反馈中的一种或多种存储到区块链中。

可选的,所述方法还包括:获取所述归属主体提供的共享数据,所述共享数据包括所述目标共享数据;将所述共享数据存储到所述去中心化的存储系统中。

可选的,所述获取所述归属主体提供的共享数据之后,还包括:确定所述归属主体的公钥,基于所述归属主体的公钥对所述共享数据进行非对称加密,得到原始数据;所述将所述共享数据存储到所述去中心化的存储系统中,包括:将所述原始数据存储到所述去中心化的存储系统中;所述方法还包括:在要对所述原始数据进行处理时,通过所述归属主体的私钥对所述原始数据解密以得到所述共享数据。

可选的,所述方法还包括:基于所述归属主体的公钥生成所述原始数据的数据指纹,所述数据指纹用于识别所述原始数据的归属主体。

可选的,所述将所述共享数据存储到所述去中心化的存储系统中之后,还包括:接收所述去中心化的存储系统基于所述共享数据返回的存储标识,所述存储标识用于获取所述共享数据。

可选的,所述方法还包括:将所述归属主体的身份信息、所述共享数据的内容信息、所述原始数据的数据指纹、所述共享数据对应的存储标识中的一种或多种存储到区块链中。

可选的,在所述反馈为同意授权之后,所述方法还包括:根据所述存储标识和所述授权请求从所述去中心化的存储系统中存储的共享数据中复制所述目标共享数据;使用所述使用主体的公钥对所述复制的目标共享数据进行加密,并将加密后的目标共享数据存储到所述去中心化的存储系统中,以使得所述使用主体在获取所述加密后的目标共享数据后,通过所述使用主体的私钥对所述加密后的目标共享数据解密以得到所述目标共享数据。

可选的,所述方法还包括:将使用主体的身份信息、所述归属主体的身份信息、复制的目标共享数据的相关信息中的一种或多种信息存入区块链中。

可选的,所述方法还包括:接收主体的注册请求,所述注册请求中包括所述主体的注册信息,所述主体包括归属主体和/或使用主体;根据所述注册信息验证所述主体的身份,在所述主体身份验证通过时,所述主体注册成功,允许注册成功的主体执行所述数据授权方法。

可选的,所述方法还包括:所述主体注册成功之后,确定所述主体的公钥和私钥;将所述主体的公钥和私钥发送给所述主体。

可选的,所述方法还包括:将所述注册信息通过所述主体的公钥加密,并将加密后的注册信息和所述主体的标识对应存储到区块链上;其中,所述注册主体的公钥根据所述主体的标识生成。

本发明实施例还提供一种数据授权装置,包括:授权请求接收模块,用于在接收到使用主体对目标共享数据的授权请求时,向提供所述目标共享数据的归属主体转发所述授权请求;授权模块,用于获取所述归属主体针对所述授权请求的反馈,若所述反馈为同意授权,则确定用于获取所述目标共享数据的数据令牌;令牌发送模块,用于将所述数据令牌发送给所述使用主体,以使得所述使用主体基于所述数据令牌从去中心化的存储系统中获取所述目标共享数据。

本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时,实现任一项所述方法的步骤。

本发明实施例还提供一种计算机设备,包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时,执行任一项所述方法的步骤

与现有技术相比,本申请实施例的技术方案具有以下有益效果:

本发明实施例提供的数据授权方法,包括:在接收到使用主体对目标共享数据的授权请求时,向提供所述目标共享数据的归属主体转发所述授权请求;获取所述归属主体针对所述授权请求的反馈,若所述反馈为同意授权,则确定所述使用主体获取所述目标共享数据的数据令牌,以使得所述使用主体基于所述数据令牌从去中心化的存储系统中获取所述目标共享数据;将所述数据令牌发送给所述使用主体。相较于现有技术,本发明的方案提供了一个去中心化的数据授权方案,为个人或机构、团体的数据存取提供统一的存储系统。且在使用主体需要使用其他主体的数据时,也为其提供了一套完整的授权机制,实现了不同主体(包括数据拥有者对应的归属主体和数据使用者对应的使用主体)之间数据的安全流转,并能够保证数据归属主体对自己的共享数据被使用的情况的知情权。由此,既满足了海量数据的统一存储,也满足了不同数据之间点对点的访问需求。

进一步,归属主体能够将数据存储到在去中心化的存储系统中,使用主体能够向归属主体提交授权请求,归属主体结合授权请求的使用主体的身份、本次要求授权数据的数据类型以及使用范围、报酬量等,最终决定是否给予使用主体授权。使用主体在使用个人数据前,需向去中心化的存储系统发起数据获取请求,当去中心化的存储系统对用于获取数据的数据令牌验证通过时,准许使用主体获取数据。否则,使用主体需要重新计算机设备提交授权请求以获取归属主体的授权。使用主体在获取数据使用授权后,可以向归属主体支付一定的报酬,以此激励归属主体共享数据、完善数据的积极性。

进一步,能够将归属主体的共享数据存储到数据平台中,数据平台给主体的共享数据提供了存储空间,也提供了安全共享数据的机制。存储于本数据平台的数据仅在经过其归属主体授权之后才能够被使用,便于数据的维护和管理。进一步,本方案将每一次授权请求和反馈的信息存储到区块链中,能够进行数据的授权追溯。如果存在一主体未经过归属主体的授权而使用了归属主体的共享数据、或者一主体在授权已经由于过期等原因无效的情况下继续使用归属主体的共享数据等情况,能够追溯该主体的责任。

附图说明

图1为本发明实施例的一种数据授权方法的应用场景图;

图2为本发明实施例的第一种数据授权方法的示意图;

图3为本发明实施例的第二种数据授权方法的示意图;

图4为本发明实施例的一种数据登记步骤的示意图;

图5为本发明实施例的一种数据复制的步骤的示意图;

图6为本发明实施例的一种主体注册的步骤的示意图;

图7为本发明实施例的一种数据平台的结构示意图;

图8为本发明实施例的一种数据授权装置的结构示意图。

具体实施方式

如背景技术所言,当前不存在一种有效的数据授权方法,以实现数据在拥有者和使用者之间的安全流转。

对于当前的数据的类型来看,个人数据和政务数据的权属问题相对清晰,而机构或团体(如企业)数据的权属比较模糊,有待进一步归纳明晰。然而,即使对于权属相对明细的个人数据,目前也普遍存在违法收集,违反最小必要原则,第三方使用数据时本人不知情等等乱象。

为解决上述问题,本发明实施例提供了一种数据授权方法,包括:在接收到使用主体对目标共享数据的授权请求时,向提供所述目标共享数据的归属主体转发所述授权请求;获取所述归属主体针对所述授权请求的反馈,若所述反馈为同意授权,则确定用于获取所述目标共享数据的数据令牌;将所述数据令牌发送给所述使用主体,以使得所述使用主体基于所述数据令牌从去中心化的存储系统中获取所述目标共享数据。

上述方法能够提供一个去中心化的数据授权方案,为个人或机构或团体的数据存取提供统一的存储系统。且在使用主体需要使用其他主体的数据时,也为其提供了一套完整的授权机制,实现了不同主体之间数据使用的交互授权,并能够保证数据归属主体对自己的共享数据被使用的情况的知情权。由此,既满足了海量数据的统一存储,也满足了不同数据之间点对点的访问需求。

为了使得本申请更加的清楚,首先对本申请涉及到的部分名词或内容作简单介绍。

1、去中心化的存储系统。本发明实施例中,去中心化的存储系统是将数据分散存储在多台独立的设备上的存储系统。传统的网络存储系统采用集中的存储服务器存放所有数据,此时存储服务器的性能将会影响系统性能,不能满足大规模存储应用的需要。去中心化存储系统技术上不同于分布式存储,其采用了可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,它不但提高了系统的可靠性、可用性和存取效率。去中心化的存储系统能够在一个更加分散、更加不可信的网络环境中,满足更加安全、更加可信、更加可控的存储的需求。

可选的,采用星际文件系统(Inter Planetary File System,IPFS)作为去中心化的存储系统,考虑到IPFS具有永久的去中心化和共享文件、点对点、内容可寻址、版本化等特点。星际文件系统是一个旨在创建持久且分布式存储和共享文件的网络传输协议。IPFS是一种内容可寻址的对等超媒体分发协议。在IPFS网络中的节点将构成分布式文件系统,IPFS为开放源代码项目,自2014年开始由协议实验室(Protocol Labs)在开源社区的帮助下发展。

需要说明的是,去中心化的存储系统102也可以使用其他满足去中心存储需求的系统。

2、区块链。本发明实施例中区块链是一个分布式的共享账本和数据库,具有去中心化、不可篡改、全程留痕、可以追溯、集体维护、公开透明等特点。区块链可以基于以太坊等公有链,考虑到数据代币的发行与智能合约的编写方便,选择以太坊。任何个人、团体、组织均可成为区块链的完整节点,规模越大,可靠性就越接近100%。

3、以太坊(Ethereum)。本发明实施例中,以太坊是一个开源的有智能合约功能的公共区块链平台。通过其专用加密货币以太币(Ether,又称“以太币”)提供去中心化的以太虚拟机(Ethereum Virtual Machine,也可以简称虚拟机)来处理点对点合约。

4、基于身份标识的密码系统(Identity-Based Cryptograph,IBC)。本发明实施例中,IBC是一种非对称的公钥密码体系,其概念在1984年由Shamir提出,标识密码系统与传统公钥密码系统(Public Key Infrastructure,PKI)一样,每个用户有一对相关联的公钥和私钥,IBC最主要的特点是系统中不需要生成和管理PKI体系中的公钥证书,而是把用户公开的标识如姓名、身份证号码、IP地址、电子邮箱地址、手机号码等作为公钥,公钥不需要额外生成和存储,只需通过某种方式公开发布。

5、非对称加密算法。本发明实施例中,非对称加密算法需要两个密钥:公开密钥(publickey,简称公钥)和私有密钥(privatekey,简称私钥)。公钥与私钥是一对,如果用公钥对数据进行加密,只有用对应的私钥才能解密。可选的,非对称加密算法可以包括公开密钥密码算法(也称为RSA算法)、椭圆加密算法(Elliptic curve cryptography,ECC)、椭圆曲线公钥密码算法(也称为SM2算法)等等。

为使本发明的上述目的、特征和有益效果能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。

请参见图1,图1为本发明实施例的一种数据授权方法的应用场景图,数据平台10可以包括计算机设备101、去中心化的存储系统102,数据平台用于实现不同主体(包括归属主体和使用主体)之间的数据共享。目标共享数据的归属主体(在图1中以终端11表示)可以将目标共享数据上传到计算机设备101,由计算机设备101将目标共享数据存储到去中心化的存储系统102中。在某个使用主体(在图1中以终端12表示)需要获取目标共享数据的时候,可以向计算机设备101发送授权请求,计算机设备101接收授权请求后,将用于获取目标共享数据的数据令牌提供给使用主体(即终端12),终端12可以通过数据令牌从去中心化的存储系统102中获取目标共享数据。

图1中的计算机设备可以是电脑、服务器或者服务器集群、云平台等具备通信以及数据处理能力的设备。图1中的终端11和终端12可以是手机、电脑、智能手表等能够发起数据获取请求的设备。

请参见图2和图3,图2和图3为本发明实施例的两种数据授权方法的示意图,图2和图3中的方法可以被应用在图1的场景中,图2的方法可以包括如下步骤S201至S203,图3的方法可以包括步骤S301至S307,具体内容如下:

步骤S201,在接收到使用主体对目标共享数据的授权请求时,向提供所述目标共享数据的归属主体转发所述授权请求。

其中,主体,也可以称为用户或者对象。每一主体对应一个标识(Identify,ID),主体的标识用于识别该主体。主体的标识可以包括用户名、用户编号、手机号码、电子邮箱(E-mail)地址等。

目标共享数据的使用主体指的是要使用目标共享数据的主体,使用主体在经过归属主体的授权之后,能够对目标共享数据进行加工、使用。

目标共享数据的归属主体指的是提供目标共享数据的主体,归属主体能对其提供的数据的传输、加工、存储、使用、销毁等拥有决定权力。

目标共享数据是指授权请求针对的数据,该数据一般由除使用主体之外的其他主体提供到数据平台中。每个归属主体提供共享数据到数据平台中,单个授权请求可以请求使用共享数据中的全部或者部分数据,作为该授权请求针对的目标共享数据。

授权请求是使用主体的终端(例如,图1中的终端11)向计算机设备(例如,图1中的计算机设备101)发送的、用于获取目标共享数据的请求。可选的,使用主体的终端上可以安装图1中数据平台10对应的客户端。在使用主体需要获取其他主体分享的数据时,要获取的数据为目标共享数据,使用主体可以执行图3中的步骤S301,向数据平台中的计算机设备发送授权请求。可选的,该授权请求可以通过客户端发送。

可选的,归属主体的终端上也安装有数据平台对应的客户端,归属主体可以在终端上打开客户端查看授权请求的具体内容。

可选的,计算机设备可以通过邮件、网络消息、手机短信等方式向归属主体的终端发送授权请求。

在一个具体实施例中,计算机设备向所述归属主体发送的授权请求至少包括以下内容中的一种或多种:(1)使用主体的身份信息;(2)目标共享数据的信息;(3)归属主体的身份信息。以下对这些内容进行解释:

(1)使用主体的身份信息,为用于识别使用主体身份的信息。使用主体的身份信息具体可以包括:使用主体的账户名(User ID)、IP地址等等;使用主体为个人时,其身份信息可以包括姓名、身份证号等等;若主体为团体,其身份信息可以包括团体登记号、团体名称等;若主体为机构,其身份信息可以包括统一社会信用代码、机构名称等。

(2)目标共享数据的信息,为用于确定目标共享数据的信息。目标共享数据的信息可以包括要获取数据的数据类型、关键词等等。

其中,数据类型可以根据归属主体的特性划分。例如,若归属主体为个人,归属主体提供的共享数据可以包括以下几种数据类型:

1)身份数据。为了完成大部分网络行为,个人用户会根据服务商要求提交包括姓名、性别、年龄、身份证号码、电话号码、电子邮件地址及家庭住址等在内的个人基本信息,可以将这些内容作为身份数据。进一步,有时身份数据还可以包括婚姻、信仰、职业、工作单位、收入等相对隐私的个人基本信息。

2)设备数据。主要是指消费者所使用的各种计算机终端设备(包括移动和固定终端)的基本信息,如位置信息、无线网络通信技术(Wifi)列表信息、媒体接入控制(MediaAccess Control,MAC)地址、中央处理器(central processing unit,CPU)信息、内存信息、安全数据记忆卡(Secure Digital Memory Card,SD)信息、操作系统版本等。

3)账户数据。主要包括网银帐号、第三方支付帐号、社交帐号和重要邮箱帐号等。

4)社会关系数据。这主要包括好友关系、家庭成员信息、工作单位信息等。

5)网络行为数据。主要是指上网行为记录的数据,如消费者在网络上的各种活动行为,如上网时间、上网地点、输入记录、聊天交友、网站访问行为、网络游戏行为等个人信息。

数据类型还可以进一步包括:5)隐私数据。主要包括通讯录信息、通话记录、短信记录、即时通讯(Instant Message,IM)软件的聊天记录、个人视频、照片等。

可选的,归属主体在提供共享数据时,可以按照数据类型逐个类型录入共享数据,授权请求中可以包括目标共享数据的数据类型,以使得计算机设备或者归属主体确定使用主体具体需要获取共享数据中的哪些数据。再例如,计算机设备或归属主体可以根据授权请求中携带的关键词(如身份证号码、联系地址、手机号等)确定使用主体具体需要获取共享数据中的哪些数据。

(3)归属主体的身份信息,为用于识别归属主体身份的信息。归属主体的身份信息的具体解释参考如上使用主体的身份信息的相关描述,这里不再赘述。

在另一个具体实施例中,计算机设备向所述归属主体发送的授权请求除了包括如上(1)~(3)的内容之外,还可以包括(4)约束规则,以下对其进行解释:

(4)约束规则,为用于限制限制所述目标共享数据的使用范围的规则。约束规则可以包括目标共享数据被使用主体使用的期限、使用主体获取目标共享数据之后使用这些数据的范围,例如,将目标共享数据使用在某一个或几个企业或组织内,或者将目标共享数据用于研究、市场调查等一个或多个方面。

在另一个具体实施例中,本发明中提及的数据平台能够提供一个通过数据共享转化为报酬的平台,约束规则还可以包括使用主体愿意为使用目标共享数据付出的报酬量。

可选的,约束规则可以由数据平台统一设定,例如,当某一数据类型的数据使用期限确定时,其对应的报酬量是确定的。请参见表1,表1提供了本发明实施例的一种具体的约束规则。

表1

其中,将共享数据进行分级管理,不同级别对应的报酬量区间以及数据的使用期限不同,的基本信息、设备信息属于敏感一级;社会关系、网络行为信息属于敏感二级;隐私信息、账户信息为敏感三级;这种分类将影响信息的定价及第三方使用限制,等级越高,价格越高,约束越严格。

由此,归属主体能够通过数据平台将自己的共享数据转化为报酬,使用主体有偿使用其他主体的共享数据,能够促进个人或企业私有数据的合法有序使用,发挥数据要素的能动性,大力发展数字经济。并且通过数据有偿使用机制能够激励各个归属主体完善私有数据、提高数据质量。

步骤S202,获取所述归属主体针对所述授权请求的反馈,若所述反馈为同意授权,则确定所述使用主体获取所述目标共享数据的数据令牌。

具体地,计算机设备接收到授权请求之后,根据授权请求识别归属主体,并执行图3中的步骤S302,向归属主体的终端(即图1中的终端12)转发授权请求,以使得归属主体确定是否同意使用主体使用目标共享数据。

归属主体可以执行图3中的步骤S303,向计算机设备发送反馈。若归属主体同意使用主体使用目标共享数据,则归属主体通过其终端向计算机设备返回同意授权的反馈;若不同意,则归属主体通过其终端向计算机设备返回拒绝授权的反馈。

可选的,计算机设备接收到该反馈之后,可以执行图3中的步骤S304,将反馈转发至使用主体的终端,以通知使用主体其授权请求是否被同意。

数据令牌(token)为使用主体从去中心化的存储系统中获取数据的凭证。可选的,去中心化的存储系统可以为每一次数据获取分配一次性使用的数据令牌,并将该数据令牌发送给计算机设备。可选的,数据令牌也可以由计算机设备生成,并发送给去中心化的存储系统。

步骤S203,将所述数据令牌发送给所述使用主体,以使得所述使用主体基于所述数据令牌从去中心化的存储系统中获取所述目标共享数据。

计算机设备在生成数据令牌或者从去中心化的存储系统获取数据令牌之后,将该数据令牌发送给使用主体(或称为使用主体的终端)。可选的,计算机设备可以通过邮件、网络消息、手机短信等方式向使用主体的终端发送数据令牌。可选的,计算机设备可以在向使用主体转发上述反馈的同时发送该数据令牌(如图3中的步骤S304)。

使用主体的终端在接收到数据令牌之后,可以打开客户端,继续执行步骤S305,基于该数据令牌向去中心化的存储系统发送数据获取请求。

去中心化的存储系统接收到数据获取请求,执行步骤S306,对该数据令牌的合法性进行验证。可选的,去中心化的存储系统可以通过数据令牌确定本次数据获取是否经过归属主体的授权,若确定结果为是,则验证通过。需要说明的是,去中心化的存储系统还可以结合目标共享数据的约束规则对该数据令牌的合法性进行验证,例如,在约束规则中限定了使用主体对目标共享数据的使用期限为从A年开始之后的一年内,若当前的时间在该使用期限以内,则验证通过,反之则验证不通过。

去中心化的存储系统在对令牌的合法性验证通过之后,执行步骤S307,向使用主体的终端发送目标共享数据。

通过如上的数据授权方法,归属主体能够将数据存储到在去中心化的存储系统中,使用主体能够向归属主体提交授权请求,归属主体结合授权请求的使用主体的身份、本次要求授权数据的数据类型以及使用范围、报酬量等,最终决定是否给予使用主体授权。使用主体在使用个人数据前,需向去中心化的存储系统发起数据获取请求,当去中心化的存储系统对用于获取数据的数据令牌验证通过时,准许使用主体获取数据。否则,使用主体需要重新计算机设备提交授权请求以获取归属主体的授权。使用主体在获取数据使用授权后,可以向归属主体支付一定的报酬,以此激励归属主体共享数据、完善数据的积极性。

在一个实施例中,请参见图1和图3,图1中的数据平台10还可以包括区块链103。区块链103用于存储数据授权方法中每次的数据存储、授权与使用的记录,区块链103还可以用于存储各个主体的信息。图2的方法还可以包括:计算机设备将所述使用主体的身份信息、所述归属主体的身份信息、所述授权请求和所述反馈中的一种或多种存储到区块链中。由此,计算机设备将本次使用主体申请授权的交互过程和授权结果(也即反馈)存储到了区块链中。

进一步,由于使用了区块链技术,前述的报酬可以为数字代币(如比特币等),单位报酬量可以为一个数字代币。主体可通过货币兑换、挖矿等手段获取数字代币,当使用主体申请了某个归属主体的目标共享数据后,需支付一定的数字代币作为报酬,另外,挖矿采用权益证明(Proof of Stake,PoS)共识机制。区块链与去中心化存储系统可以使用相同代币,采用相同共识机制进行区块扩展。

在一个实施例中,本发明实施例的数据授权方法还可以数据登记步骤,该数据登记的步骤可以具体包括:获取所述归属主体提供的共享数据,所述共享数据包括所述目标共享数据;将所述共享数据存储到所述去中心化的存储系统中。

可选的,归属主体可以基于不同的数据类型(如归属主体的身份数据、设备数据、账户数据、社会关系数据、网络行为数据等)在客户端录入共享数据。或者,归属主体可以录入共享数据之后上传至数据平台,数据平台根据共享数据的关键字等特征识别共享数据的数据类型,以得到一种或多种数据类型。可选的,在数据平台识别到共享数据的数据类型之后,可以将识别结果返回至归属主体的客户端,让归属主体对识别结果进行确认。

具体地,数据登记步骤具体可以包括图3的步骤S30a、S30b和S30c,其中:计算机设备执行步骤S30a,从归属主体获取共享数据;计算机设备执行步骤S30b,将共享数据发送给去中心化的存储系统;去中心化的存储系统接收后,执行步骤S30c,存储共享数据。

可选的,计算机设备从归属主体获取共享数据之前,还可以包括:归属主体向计算机设备发送数据登记请求,该登记请求中携带归属主体的身份信息,计算机设备对归属主体的身份信息验证通过之后,允许归属主体的本次数据存储。

在一个具体实施例中,请参见图3和图4,图4为本发明实施例的另一种数据登记步骤的示意图,在图3中的步骤S30a,计算机设备获取所述归属主体提供的共享数据之后,还可以包括步骤S401至S403,其中:

S401,计算机设备确定归属主体的公钥,基于归属主体的公钥对共享数据进行非对称加密,得到原始数据。

公钥也即非对称加密算法中的公钥,每一主体的公钥可以基于该主体的标识(如用户名)或身份信息(如证件号等)生成。归属主体的公钥可以记作ownerPubKey,使用主体的公钥可以记作userPubKey。可选的,计算机设备通过基于身份标识的密码系统((Identity-Based Cryptograph,IBC)生成各个主体的公钥。

在一个具体实施例中,计算机设备从区块链中获取归属主体的公钥。也即,在计算机设备需要对某一个归属主体的共享数据进行加密时,需要从区块链中获取该归属主体的公钥。

具体地,计算机设备使用SM2算法对共享数据进行非对称加密,得到原始数据,非对称加密过程可以表示为:cData=sm2.encryption(ownerPubKey,data),其中,cData为原始数据,sm2.Encryption()表示对括号内数据加密,data为共享数据。

在再一个具体实施例中,所述数据授权方法还可以包括:基于所述归属主体的公钥生成所述原始数据的数据指纹,所述数据指纹用于识别所述原始数据的归属主体。

具体地,计算机设备在得到原始数据之后,还可以生成原始数据的数据指纹,记作fp;可以通过哈希算法(如哈希值为256位的哈希算法等)等方式生成数据指纹。生成数据指纹的过程可以表示为:fp=sha256(cData,ownerPriKey),其中,sha256()为对括号内的数据进行256位的哈希计算,本次哈希计算结合了归属主体的公钥,由此,数据平台能够根据数据指纹确定原始数据的归属主体,从而进行身份识别;也可以根据数据指纹确定原始数据在存储到去中心化的存储系统中之后是否被篡改,从而保证数据安全。

S402,计算机设备将原始数据发送至去中心化的存储系统。

S403,去中心化的存储系统存储原始数据(相当于步骤S30c的存储步骤)。

在步骤S403的一个具体实施例中,共享数据存储到所述去中心化的存储系统中之后,还包括:计算机设备接收所述去中心化的存储系统基于所述共享数据返回的存储标识,所述存储标识用于获取所述共享数据。

以IPFS为例,计算机设备将原始数据存储到IPFS中,IPFS会返回一个本次存储的数据(即原始数据)的唯一标记,记作ipfsHash,其生成过程可以表示为:ipfsHash=ipfs.save(cData,innerToken),其中,ipfs.save()表示对括号内数据进行存储,innerToken为区块链与IPFS通信的令牌,可以通过ipfsHash访问IPFS获取原始数据。

可选的,可以将归属主体提供的原始数据存储到原始数据区,原始数据区为去中心化的存储系统中的预设存储区域。从而将原始数据与其他数据(如目标共享数据、目标共享数据等)区分开,避免其他存储区域出现问题,会影响原始数据区中的数据。

通过图4的步骤,能够将归属主体的共享数据存储到数据平台中,数据平台给主体的共享数据提供了存储空间,也提供了安全共享数据的机制。存储于本数据平台的数据仅在经过其归属主体授权之后才能够被使用,便于数据的维护和管理。进一步,本方案将每一次授权请求和反馈的信息存储到区块链中,能够进行数据的授权追溯。如果存在一主体未经过归属主体的授权而使用了归属主体的共享数据、或者一主体在授权已经由于过期等原因无效的情况下继续使用归属主体的共享数据等情况,能够追溯该主体的责任。

在一个实施例中,针对如上步骤S401至S403生成并存储的原始数据,若后续计算机设备或使用主体或者其他设备要对所述原始数据进行处理,需要通过归属主体的私钥对原始数据解密以得到共享数据,才能够使用所述共享数据。

由于目标共享数据可以为共享数据的全部或者部分内容,故在图2的步骤S202中,使用主体从去中心化的存储系统中获取目标共享数据时,需要由计算机设备先解析加密后的共享数据(也即原始数据),从共享数据中提取目标共享数据,并将目标共享数据存储到去中心化的存储系统中,使用主体再从去中心化的存储系统中获取目标共享数据。

可选的,在归属主体登录数据平台后,能够对授权请求进行审核,并向计算机设备发送授权请求的反馈。进一步,在归属主体登录数据平台时,可以向计算机设备提供归属主体的私钥,例如,归属主体登录的时候需要根据归属主体的身份信息/标识以及归属主体的私钥验证归属主体的身份。或者,在归属主体向计算机设备发送同意授权的反馈时,可以将归属主体的私钥提供给计算机设备。计算机设备缓存该私钥,并使用私钥对归属主体的原始数据解密,在解密原始数据之后销毁缓存的归属主体的私钥。

在一个实施例中,在图2中步骤S202的反馈为同意授权之后,数据授权方法还可以包括数据复制的步骤:根据所述存储标识和所述授权请求从所述去中心化的存储系统中存储的共享数据中复制所述目标共享数据;使用所述使用主体的公钥对所述复制的目标共享数据进行加密,并将加密后的目标共享数据存储到所述去中心化的存储系统中,以使得所述使用主体在获取所述加密后的目标共享数据后,通过所述使用主体的私钥对所述加密后的目标共享数据解密以得到所述目标共享数据。请参见图5,图5为本发明实施例的一种数据复制的步骤的示意图,包括:

计算机设备执行步骤S501,根据授权请求生成目标共享数据的数据获取标识。进一步,根据授权请求中目标共享数据的数据类型和目标共享数据的归属主体的身份信息(如用户ID等)生成目标共享数据的数据获取标识。例如,以IPFS为例,生成数据获取标识的过程可以表示为:ipfsHash1=getIpfsHash(ownerId,type);其中,ipfsHash1为数据获取标识,getIpfsHash()表示根据括号内的数据生成数据获取标识,ownerId为归属主体的用户ID,type为目标共享数据的数据类型。

计算机设备确定归属主体的存储标识,并根据确定的存储标识从去中心化的存储系统获取原始数据。可选的,计算机设备可以执行步骤S502,向去中心化的存储系统发送原始数据的获取请求,数据获取请求中包括存储标识。去中心化的存储系统接收到原始数据获取请求之后,执行步骤S503,将原始数据发送给计算机设备。

计算机设备接收到原始数据之后,执行步骤S504,使用归属主体的私钥对原始数据解密,得到共享数据,并从共享数据中获取目标共享数据。若原始数据是基于SM2算法加密得到的,则对原始数据解密的过程可以表示为:data=sm2.Decryption(cData,ownerPriKey);其中,data为共享数据,sm2.Decryption()表示使用SM2加密算法对括号中的数据进行解密,ownerPriKey为归属主体的私钥。

计算机设备执行步骤S505,基于使用主体的身份信息(如使用主体的公钥,记作userPubKey)对目标共享数据进行加密。以使用SM2加密算法为例,本次加密可以表示为:cDataUser=sm2.encryption(userPubKey,data),其中,cDataUser为加密后的目标共享数据。

计算机设备执行步骤S506,将加密后的目标共享数据发送至去中心化的存储系统中。由去中心化的存储系统执行步骤S507,存储加密后的目标共享数据。可选的,加密后的目标共享数据存储在去中心化的存储系统中的另一个数据区:已授权的数据区。

以IPFS为例,本次存储后IPFS会返回一个加密后的目标共享数据的唯一标记,记作ipfsHash1,其生成过程可以表示为:ipfsHash1=ipfs.save(cDataUser,innerToken),其中,ipfs.save()表示对括号内数据进行存储,innerToken为与IPFS通信的令牌(也即图2中的数据令牌),可以通过ipfsHash1访问IPFS获取加密后的目标共享数据。进一步,使用主体获取目标加密数据包括:使用主体通过数据令牌从IPFS获取加密后的目标共享数据cDataUser,该获取步骤可以表示为:cDataUser=ipfs.getData(ipfsHash1,innerToken),ipfs.getData()表示根据括号内的内容从IPFS获取数据。获取到加密后的目标共享数据之后,使用主体通过使用主体的私钥userPriKey对cDataUser解密,得到目标共享数据。

可选的,参考上述的图5,图5还可以包括步骤S508,计算机设备可以将图5中数据复制的步骤的相关信息发送给区块链,以将其存储到区块链中(即图5中的S509),以保存本次数据复制过程的痕迹。其中,数据复制的步骤的相关信息具体可以包括:使用主体的身份信息、所述归属主体的身份信息、复制的目标共享数据的相关信息中的一种或多种。进一步,使用主体的身份信息可以包括使用主体的标识(userID)等,归属主体的身份信息可以包括归属主体的标识(ownerID),复制的目标共享数据的相关信息可以包括加密后的目标共享数据的唯一标记(ipfsHash1)目标共享数据的数据类型(type)、约束规则(ruleMap)和数据令牌(innerToken)等。

进一步,数据令牌可以根据使用主体的身份信息、所述归属主体的身份信息、复制的目标共享数据的相关信息生成,例如,innerToken=sha256(ownerID,userID,ipfsHash,type,ruleMap),其中,sha256()为对括号内的数据进行256位的哈希计算,得到的哈希值作为数据令牌。

进一步,步骤S506中IPFS向计算机设备返回数据令牌,由此执行图2中步骤S202中计算机设备确定用于获取所述目标共享数据的数据令牌,并执行步骤S203,将数据令牌发送给使用主体。

在一个实施例中,本发明实施例的数据授权方法还可以包括主体注册的步骤,以接收各个主体(包括归属主体或使用主体)的注册请求,仅允许经过注册的主体通过授权请求获取数据平台内的共享数据,也仅允许经过注册的主体向数据平台上传共享数据。请参见图6,图6为一种主体注册的步骤的示意图,主体注册的步骤可以包括S601:

S601,计算机设备接收主体的注册请求。其中,注册请求中包括所述主体的注册信息,所述主体包括归属主体和/或使用主体。

其中,注册请求为主体通过终端(或者终端上安装的APP)向计算机设备发送的请求。在一个具体示例中,主体通过APP上传自己的身份信息并向计算机设备发送注册请求。计算机设备接收到注册请求之后,根据主体的身份信息对注册请求进行审核。

注册信息可以包括主体的身份信息,例如,若主体为个人,其身份信息可以包括姓名、身份证号、手机号码、通讯地址、电子邮箱地址、驾驶证、社保编号等;若主体为团体,其身份信息可以包括团体登记号、团体名称等;若主体为机构,其身份信息可以包括统一社会信用代码、机构名称等。注册信息还可以包括发送注册信息的设备信息(如设备型号、设备的标识号、IP地址等)、主体的类型信息(如个人、团体、机构等)。进一步,在主体注册的过程中,不区分归属主体及使用主体,仅从群体分类来区分,群体可以包括:个人、团体、机构等。

S602,计算机设备根据注册信息验证主体的身份,并在验证通过时,确定该主体注册成功。计算机设备允许注册成功的主体执行本发明实施例前述的数据授权方法。

可选的,本发明实施例的数据平台可以设置追溯功能,在主体注册时根据主体的身份信息定位到社会上具体的对象,具体的对象指的是具体的某个人、某个团体或某个机构。

在一个具体实例中,计算机设备可以根据主体的身份信息,向第三方机构验证主体的身份,以确定主体是否能够定位到具体的对象,且该对象符合要求,若能够定位到符合要求的对象,则对该主体验证身份通过。进一步,若第三方机构在核对身份的过程产生了费用,可由本次注册的主体线上支付。

在另一个具体实例中,计算机设备在接收到使用主体的授权请求之后,若检测到使用主体为注册成功的主体时,允许该使用主体获取对应的目标共享数据。若检测到使用主体为未注册成功的主体,则向使用主体返回注册提示,令其在注册成功后再发起授权请求。

在另一个具体实例中,计算机设备在接收到归属主体上传共享数据的请求之后,若检测到归属主体为注册成功的主体时,允许该归属主体上传共享数据。若检测到归属主体为未注册成功的主体,则向归属主体返回注册提示,令其在注册成功后再上传共享数据。

可选的,计算机设备在确定主体注册成功后,为该主体分配唯一的标识号,记作主体的标识。

在另一个具体实例中,请继续参见图6,计算机设备在确定主体注册成功之后,生成该主体的公钥和私钥,并通过步骤S603,将该主体的公钥和私钥发送给该主体,由主体自己保存。主体的公钥和私钥可被用于前述的数据授权方案中。可选的,主体的私钥由KGC根据IBC系统公共参数、主密钥和该主体的标识计算得出。私钥由用户秘密保存。用户的公钥由用户的标识或者用户的身份信息确定,从而不再需要公正的第三方(例如CA中心)来保证用户公钥的真实性。

在另一个具体实例中,请继续参见图6,还可以包括,步骤S604,计算机设备将注册信息通过主体的公钥加密;并执行步骤S605,将加密后的注册信息和主体的标识对应存储到区块链上;其中,所述注册主体的公钥根据所述主体的标识生成,主体的标识用于识别加密后的注册信息属于的主体。为了保证信息安全,公钥和私钥不上传到区块链上。

本发明实施例中的区块链主要用于存储主体注册、数据授权、数据登记等步骤中的一些数据量较小的信息,以记录将主体的公钥和身份信息、数据的变动痕迹等。

请参见图7,图7为一种数据平台的结构示意图,数据平台中计算机设备的各个操作可以由区块链701的功能模块执行,主体(包括使用主体和归属主体)可以通过数据平台实现数据共享和数据授权、使用。其中,区块链701的功能模块至少可以包括数据登记合约模块7011、主体注册合约区块模块7012、授权合约模块7013,区块链701还可以包括区块内容7014等。数据登记合约模块7011主要为归属主体提供数据登记的功能,为共享数据的录入提供入口,共享数据登记后,会将加密后的共享数据存储在去中心化存储的原始数据区。主体注册合约模块7012主要是为主体提供注册的功能,主体成功注册后会生成公私钥对及主体的标识号。授权合约模块7013主要为使用主体发起授权请求时提供授权申请的转发、审批等服务;区块内容7014主要包括主体注册、数据授权、数据登记等步骤,另外区块内容还可以包括各个主体的账户信息,该账户用于统计主体所拥有的数据代币,以及每次通过数据代币进行交易的记录等。数据平台还可以包括去中心化的存储系统702,其可以包括原始数据区7021和已授权的数据区7022。

请参见图8,本发明实施例还提供一种数据授权装置80,包括:授权请求接收模块801,用于在接收到使用主体对目标共享数据的授权请求时,向提供所述目标共享数据的归属主体转发所述授权请求;授权模块802,用于获取所述归属主体针对所述授权请求的反馈,若所述反馈为同意授权,则确定用于获取所述目标共享数据的数据令牌;令牌发送模块803,用于将所述数据令牌发送给所述使用主体,以使得所述使用主体基于所述数据令牌从去中心化的存储系统中获取所述目标共享数据。

可选的,向所述归属主体发送的授权请求包括所述使用主体的身份信息、所述目标共享数据的信息、所述归属主体的身份信息中的一种或多种。

可选的,向所述归属主体发送的授权请求还包括约束规则,所述约束规则用于限制所述目标共享数据的使用范围。

可选的,所述目标共享数据的信息包括所述目标共享数据的数据类型,所述目标共享数据包括所述归属主体的身份数据、设备数据、账户数据、社会关系数据、网络行为数据中的一种或多种数据类型。

可选的,所述数据授权装置80还可以包括:第一存储模块,用于将所述使用主体的身份信息、所述归属主体的身份信息、所述授权请求和所述反馈中的一种或多种存储到区块链中。

可选的,数据授权装置80还可以包括:共享数据获取模块,用于获取所述归属主体提供的共享数据,所述共享数据包括所述目标共享数据;共享数据上传模块,用于将所述共享数据存储到所述去中心化的存储系统中。

可选的,所述获取所述归属主体提供的共享数据之后,数据授权装置80还可以包括:加密模块,用于确定所述归属主体的公钥,基于所述归属主体的公钥对所述共享数据进行非对称加密,得到原始数据;所述共享数据上传模块,还用于将所述原始数据存储到所述去中心化的存储系统中;其中,在要对所述原始数据进行处理时,通过所述归属主体的私钥对所述原始数据解密以得到所述共享数据。

可选的,数据授权装置80还可以包括:数据指纹生成模块,用于基于所述归属主体的公钥生成所述原始数据的数据指纹,所述数据指纹用于识别所述原始数据的归属主体。

可选的,所述将所述共享数据存储到所述去中心化的存储系统中之后,数据授权装置80还可以包括:存储标识接收模块,用于接收所述去中心化的存储系统基于所述共享数据返回的存储标识,所述存储标识用于获取所述共享数据。

可选的,数据授权装置80还可以包括:第二存储模块,用于将所述归属主体的身份信息、所述共享数据的内容信息、所述原始数据的数据指纹、所述共享数据对应的存储标识中的一种或多种存储到区块链中。

可选的,在所述反馈为同意授权之后,数据授权装置80还可以包括:数据复制模块,用于根据所述存储标识和所述授权请求从所述去中心化的存储系统中存储的共享数据中复制所述目标共享数据;复制后加密模块,用于使用所述使用主体的公钥对所述复制的目标共享数据进行加密,并将加密后的目标共享数据存储到所述去中心化的存储系统中,以使得所述使用主体在获取所述加密后的目标共享数据后,通过所述使用主体的私钥对所述加密后的目标共享数据解密以得到所述目标共享数据。

可选的,数据授权装置80还可以包括:第三存储模块,用于将使用主体的身份信息、所述归属主体的身份信息、复制的目标共享数据的相关信息中的一种或多种信息存入区块链中。

可选的,数据授权装置80还可以包括:注册请求接收模块,用于接收主体的注册请求,所述注册请求中包括所述主体的注册信息,所述主体包括归属主体和/或使用主体;注册成功模块,用于根据所述注册信息验证所述主体的身份,在所述主体身份验证通过时,所述主体注册成功,允许注册成功的主体执行所述数据授权方法。

可选的,数据授权装置80还可以包括:公私钥确定模块,用于所述主体注册成功之后,确定所述主体的公钥和私钥;公私钥发送模块,用于将所述主体的公钥和私钥发送给所述主体。

可选的,数据授权装置80还可以包括:第四存储模块,用于将所述注册信息通过所述主体的公钥加密,并将加密后的注册信息和所述主体的标识对应存储到区块链上;其中,所述注册主体的公钥根据所述主体的标识生成。

关于数据授权装置80的工作原理、工作方式的更多内容,可以参照图2至图6关于数据授权方法的相关描述,这里不再赘述。

本发明实施例还提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时执行图2或图6任一所述数据授权方法的步骤。所述存储介质可以是计算机可读存储介质,例如可以包括非挥发性存储器(non-volatile)或者非瞬态(non-transitory)存储器,还可以包括光盘、机械硬盘、固态硬盘等。

本发明实施例还提供一种计算机设备,包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时,执行图2或图6任一所述数据授权方法的步骤。

应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/“,表示前后关联对象是一种“或”的关系。

本申请实施例中出现的“多个”是指两个或两个以上。

本申请实施例中出现的第一、第二等描述,仅作示意与区分描述对象之用,没有次序之分,也不表示本申请实施例中对设备个数的特别限定,不能构成对本申请实施例的任何限制。

本申请实施例中出现的“连接”是指直接连接或者间接连接等各种连接方式,以实现设备间的通信,本申请实施例对此不做任何限定。

应理解,本申请实施例中,所述处理器可以为中央处理单元(central processingunit,简称CPU),该处理器还可以是其他通用处理器、数字信号处理器(digital signalprocessor,简称DSP)、专用集成电路(application specific integrated circuit,简称ASIC)、现成可编程门阵列(field programmable gate array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

上述实施例,可以全部或部分地通过软件、硬件、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令或计算机程序。在计算机上加载或执行所述计算机指令或计算机程序时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线或无线方式向另一个网站站点、计算机、服务器或数据中心进行传输。应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。

在本申请所提供的几个实施例中,应该理解到,所揭露的方法、装置和系统,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的;例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式;例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理包括,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的部分步骤。

虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。

23页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:文件加密方法、文件加密访问方法及计算设备

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类