CN110708162B - 资源的获取方法、装置、计算机可读介质及电子设备 - Google Patents
资源的获取方法、装置、计算机可读介质及电子设备 Download PDFInfo
- Publication number
- CN110708162B CN110708162B CN201910823216.0A CN201910823216A CN110708162B CN 110708162 B CN110708162 B CN 110708162B CN 201910823216 A CN201910823216 A CN 201910823216A CN 110708162 B CN110708162 B CN 110708162B
- Authority
- CN
- China
- Prior art keywords
- information
- resource
- verification
- application
- application object
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3218—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
- H04L9/3221—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs interactive zero-knowledge proofs
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Databases & Information Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Storage Device Security (AREA)
Abstract
本发明实施例提供了一种资源的获取方法、资源的获取装置、计算机可读介质及电子设备,涉及区块链技术领域。该资源的获取方法包括:接收针对申请对象的资源申请请求;根据所述资源申请请求确定对于所述申请对象的加密信息;通过零知识证明验证所述加密信息是否包含所述资源申请请求对应的资源获取权限的信息,获得验证参数;基于所述验证参数确定所述申请对象的资源获取权限。本发明实施例的技术方案能够提高资源的有效利用率。
Description
技术领域
本发明涉及区块链技术领域,具体而言,涉及一种资源的获取方法、资源的获取装置、计算机可读介质及电子设备。
背景技术
随着通信网络技术的发展,信息的采集、传播速度以及信息量增长都达到了空前水平,实现了全球的信息共享与交互。因此,可用的信息或者其他资源越来越多,权限管理则成为提高安全性的有效手段。
在各种资源平台上获取资源时,都需要申请相应的权限,例如浏览、下载、上传等等。具有权限的用户才可以从平台获取相应的资源,进而防止资源滥用,有利于资源的有效利用。由于对于一些比较珍贵或者稀少的资源来说,资源的分配显得尤为重要。出于用户隐私保护的角度,各资源平台会对自己的用户的信息进行保密,但是同类型的资源平台其资源存在很大一部分重复的地方。那么其他平台在无法获知用户是否已经获取同类型资源的情况下,很容易再次向用户开放权限,以供用户获取资源。从而很容易造成用户在多个平台重复获取资源,导致资源分配失衡。
因此,在避免泄露用户隐私的前提下确认用户是否重复获取资源成为亟待解决的问题。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本发明的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本发明实施例的目的在于提供一种资源的获取方法、资源的获取装置、计算机可读介质及电子设备,进而至少在一定程度上克服资源分配失衡的问题。
本发明的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本发明的实践而习得。
根据本发明实施例的第一方面,提供了一种资源的获取方法,包括:
接收针对申请对象的资源申请请求;
根据所述资源申请请求确定对于所述申请对象的加密信息;
通过零知识证明验证所述加密信息是否包含所述资源申请请求对应的资源获取权限的信息,获得验证参数;
基于所述验证参数确定所述申请对象的资源获取权限。
在本发明的一种示例性实施例中,所述根据所述资源申请请求确定对于申请对象的加密信息包括:
解析出所述资源申请请求中包含的所述申请对象的身份信息;
基于所述身份信息从区块链网络中查询所述申请对象的加密信息。
在本发明的一种示例性实施例中,基于所述申请对象的身份信息从区块链网络中查询所述申请对象的加密信息之前,还包括:
将历史资源申请信息上传至所述区块链网络中,所述历史资源申请信息中包含多个申请对象的资源申请结果;
对区块链网络中的历史资源申请信息进行加密保存,得到加密信息。
在本发明的一种示例性实施例中,所述通过零知识证明验证所述加密信息是否包含所述资源申请请求对应的资源获取权限的信息,获得验证参数包括:
解析出所述资源申请请求中包含的权限类型;
通过零知识证明验证所述加密信息中是否包含所述权限类型对应的资源获取权限的信息,以获得验证参数。
在本发明的一种示例性实施例中,所述通过零知识证明验证所述加密信息是否包含所述资源申请请求对应的资源获取权限的信息,获得验证参数包括:
对所述加密信息进行加密后发送至区块链网络中的验证节点,以通过所述验证节点验证所述加密信息是否包含所述资源申请请求对应的资源获取权限的信息,获得验证结果,其中,所述零知识证明的算法部署于所述验证节点;
从所述区块链网络中获取收到所述验证结果后,对所述验证结果进行解密,获得验证参数,其中所述验证结果由所述验证节点进行加密后广播至所述区块链网络中。
在本发明的一种示例性实施例中,所述通过零知识证明验证所述加密信息是否包含所述资源申请请求对应的资源获取权限的信息,获得验证参数包括:
根据所述权限类型确定所述资源获取权限的多个预设信息;
分别将所述加密信息与多个所述预设信息进行对比,若所述加密信息与所述预设信息不匹配,则确定所述验证参数为预设值。
在本发明的一种示例性实施例中,基于所述验证参数确定所述申请对象的权限包括:
若所述验证参数为所述预设值,则为所述申请对象开放所述资源获取权限;
若所述验证参数不为所述预设值,则向所述申请对象发送警示信息,提醒所述申请对象已重复申请权限导致申请失败。
根据本发明实施例的第二方面,提供了一种资源的获取装置,包括:
请求接收单元,用于接收针对申请对象的资源申请请求;
信息获取单元,用于根据所述资源申请请求确定对于所述申请对象的加密信息;
验证单元,用于通过零知识证明验证所述加密信息是否包含所述资源申请请求对应的资源获取权限的信息,获得验证参数;
权限确定单元,用于基于所述验证参数确定所述申请对象的资源获取权限。
根据本发明实施例的第三方面,提供了一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述实施例中第一方面所述的资源的获取方法。
根据本发明实施例的第四方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述实施例中第一方面所述的资源的获取方法。
本发明实施例提供的技术方案可以包括以下有益效果:
在本发明的一些实施例所提供的技术方案中,一方面,根据资源申请请求确定对于申请对象的加密信息,能够有效地防止申请对象的信息被泄露,保护用户隐私,提高信息安全性。另一方面,通过零知识证明验证加密信息确定申请对象的资源获取权限,能够实现在不暴露用户隐私信息的前提下,确定用户的权限,进而避免同一申请对象多次获得同类型权限,提高了资源的利用率;并且能够实现对资源的平衡化分配,避免资源被不合理占用而导致资源浪费的问题。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示意性示出了根据本发明的实施例的资源的获取方法的第一流程图;
图2示意性示出了根据本发明的实施例的资源的获取方法的第二流程图;
图3示意性示出了根据本发明的实施例的资源的获取方法的第三流程图;
图4示意性示出了根据本发明的实施例的资源的获取方法的第四流程图;
图5示意性示出了根据本发明的实施例的资源的获取方法的第五流程图;
图6示意性示出了根据本发明的实施例的资源的获取方法的第六流程图;
图7示意性示出了根据本发明的实施例的资源的获取装置的框图;
图8示意性示出一种用于实现本发明实施例的资源的获取方法的计算机可读介质;
图9示意性示出一种用于实现本发明实施例的资源的获取方法的电子设备示例框图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本发明将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本发明的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本发明的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本发明的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
在分配资源的过程中,可以通过权限管理来避免资源被不合理占用的情况。用户可以向资源平台提交申请,资源平台根据用户的信息对该用户进行审核,通过审核后向该用户开放相应的权限。获得权限的用户能够在资源平台获取资源。然而,由于用户在一个资源平台获取了资源后,还可以在另一个同类型的资源平台获取相同或者相似的资源,导致资源被不合理占用。
举例来说:多个学习平台,每个平台都不会公开用户的信息。假设某一学习网站只提供100份免费的学习资料供学生们下载,而另有一学习网站只提供50份免费的学习资料。这两种学习资料都是大学数学工具书,但是出版社与作者不同,内容相似。而获取了第一个学习网站的学习资料的同学,极有可能也获取了第二个学习网站提供的学习资源,导致资源被重复获取。
再例如:多个金融平台,各平台对自己的用户信息进行保密。用户在一个平台上申请了信用卡,假设额度为20000,在另一个平台上可以再次申请信用卡,假设额度为20000。对于该用户来说,可得到的消费额度为40000,很容易造成负债压力越来越大的情况。对金融平台来说,用户的授信信息不同共享,授信风险无法确定。
基于此,本申请的示例实施例中首先提出一种资源的获取方法。其中,本实施例提供的资源的获取方法的执行主体可以是具有计算处理功能的设备,例如服务器等。
如图1所示,该方法可以包括步骤S110、步骤S120、步骤S130以及步骤S140。其中:
步骤S110,接收针对申请对象的资源申请请求;
步骤S120,根据所述资源申请请求确定对于所述申请对象的加密信息;
步骤S130,通过零知识证明验证所述加密信息是否包含所述资源申请请求对应的资源获取权限的信息,获得验证参数,
步骤S140,基于所述验证参数确定所述申请对象的资源获取权限。
在本示例实施例所提供的技术方案中,一方面,根据资源申请请求确定对于申请对象的加密信息,能够有效地防止申请对象的信息被泄露,保护用户隐私,提高信息安全性。另一方面,通过零知识证明验证加密信息确定申请对象的资源获取权限,能够实现在不暴露用户隐私信息的前提下,确定用户的权限,进而避免同一申请对象多次获得同类型权限,提高了资源的利用率;并且能够实现对资源的平衡化分配,避免资源被不合理占用而导致资源浪费的问题。
下面对本示例实施例中的各个步骤进行更加详细的说明。
如图1所示,在步骤S110中,可以接收针对申请对象的资源申请请求。
申请对象可以是在资源申请请求通过后能够获取对应资源的对象。例如,在多个学习平台的场景中,申请对象可以是申请学习资料的学生用户;在金融平台的场景中,申请对象可以是申请信贷额度的企业用户或者个人用户等。
资源申请请求可以包括该申请对象的基本信息,例如账号、名称等;也可以包括该申请对象需要申请的资源的信息,例如申请项目名称、数量等;还可以包括接收该资源申请请求的区块链节点的信息,例如节点IP地址等。此外,资源申请请求也可以包括其他信息,例如该资源申请请求生成的时间、资源申请请求的大小等等。
区块链是一个分布式账本,一种通过去中心化、去信任的方式集体维护数据库的技术方案。在区块链网络中,数据以区块为单位保存,各个区块之间有序相连形成数据库,每个节点都能够获取该数据库,因此区块链具有公开透明、可追溯、不易篡改等特点。每一台设备可以作为一个区块链节点,该区块链节点可以获得数据库拷贝,或者往数据库中写入数据。区块链节点与节点间基于一套共识机制共同维护整个区块链。并且,节点之间的数据交换可以通过数字签名技术进行验证,无需相互信任。
终端设备可以通过下载运行区块链程序来加入区块链网络中,加入区块链网络中设备可以是一个区块链节点。因此,本示例实施例中,接收针对申请对象的资源申请请求的可以是区块链节点。例如,登陆到该区块链节点的管理员可以通过前端页面提交申请对象的资源申请请求。
在步骤S120中,根据资源申请请求能够确定对于申请对象的加密信息。
本示例实施例中,加密信息可以包括区块链网络中保存的数据;也可以包括区块链中的存储节点中保存的数据。各终端设备可以将本地保存的历史资源申请信息上传区块链网络中,区块链网络利用加密技术对该历史资源申请信息进行加密后保存,以保证各节点的信息不会被泄露。例如,各分支机构作为各个区块链节点,可以将员工信息上传至区块链网络中,通过加密保存后,虽然该员工信息在公有的存储区域保存,各分支机构可以获取到加密后的信息,但是并不能清楚知道加密过的信息所表示的具体内容。
根据资源申请请求确定对于申请对象的加密信息还可以包括步骤S201以及步骤S202,如图2所示。
步骤S201,解析出所述资源申请请求中包含的所述申请对象的身份信息;
步骤S202,基于所述身份信息从区块链网络中查询所述申请对象的加密信息。
在步骤S201中,通过解析资源申请请求能够得到申请对象的身份信息。举例而言,申请对象或者资源平台的管理人员可以在前端页面填写资源申请请求表,通过将该资源申请请求表进行提交来发出资源申请请求。不同的资源申请请求可以通过申请对象的身份信息进行标识。因此在相应的终端设备上接收到该资源申请请求表之后,可以获取到该表中的各个字段,进而确定申请对象的身份信息。
在步骤S202中,通过申请对象的身份信息可以从区块链网络保存的数据中查询该身份信息对应的加密信息。每个申请对象的加密信息也可以通过申请对象的身份信息进行标识。身份信息可以对应地址信息,该地址中可以保存该身份信息对应的加密信息。因此通过身份信息能够查询到对应的加密信息。
示例性的,在区块链网络的数据库中可以通过哈希表来保存加密信息。在该表中每一身份信息可以映射到一地址信息,进而通过身份信息查询该哈希表可以获取到该地址信息上保存的加密信息。
示例性实施例中,根据资源申请请求确定对于申请对象的加密信息之前,本实施例还可以包括步骤S201以及步骤S202,如图3所示。
其中,步骤S301,将历史资源申请信息上传至所述区块链网络中,所述历史资源申请信息中包含多个申请对象的资源申请结果;
步骤S302,对区块链网络中的历史资源申请信息进行加密保存,得到加密信息。
具体的,在步骤S301中,在终端设备连接到区块链网络中成为区块链节点时,可以将本地保存的历史资源申请信息上传至区块链网络中。历史资源申请信息可以包括多个资源申请结果。其中,一个申请对象可以对应多个资源申请结果,也就是说,同一个申请对象可以进行多次申请,多次申请的资源可以不同。该历史资源申请信息可以包括多个申请对象的资源申请结果;也可以包括各申请对象的资源申请请求,以及各资源申请请求对应的资源申请结果。
示例的,每个申请对象申请资源时,对应的资源平台将会保存该申请对象的基本信息、资源申请请求、该资源申请请求对应的申请结果等信息,这些信息可以保存在资源平台的数据库中。进而,可以将数据库中保存的信息复制至区块链网络的数据中。
在步骤S302中,区块链节点将历史资源申请信息上传至区块链网络中后,该区块链网络将会对该历史资源申请信息进行加密。具体的,各个区块链节点可以运行同样的加密机制,进而在各区块链节点上传历史资源申请信息时,可以采用加密算法将历史资源申请信息进行转换,转换成无意义的密文。或者,各区块链节点将历史资源申请信息上传至区块链网络中的加密节点,由该加密节点通过加密算法对历史资源申请信息进行加密。其中,加密算法可以包括采用IDEA加密算法、DES加密算法等,也可以采用加密算法,例如通过自定义加密函数进行加密等。
在步骤S130中,通过零知识证明能够验证加密信息中是否包含资源申请请求对应的资源获取权限的信息,从而获取验证参数。
零知识证明是一种密码学技术,是一种在无需泄露数据本身情况下证明结论的正确性的安全协议,允许各方(证明者和验证者)来证明某个结论是真实的,而且无需泄露除了它是真实的之外的任何信息。示例性实施例中,通过验证加密信息是否包含资源申请请求对应的资源获取权限的信息可以得到验证参数。资源获取权限的信息可以指申请对象历史的授权信息。在该授权信息中可以包括权限申请成功的信息,或者是权限申请失败的信息。如果该加密信息中已经包含了对应的资源获取权限的信息,则可以表示该申请对象已经取得了资源获取权限,那么可以获取到标识加密信息中包含资源获取权限的信息的验证参数。例如,若1表示加密信息中包含资源申请请求对应的资源获取权限的信息,则验证结果为加密信息中包含了对应的资源获取权限的信息,则验证参数为1,若不包含,则验证参数可以为0。示例性地,假设要证明加密信息中包含“A平台下载文档”对应的资源获取权限的信息,那么先对“A平台下载文档”以某种加密算法进行加密,得到加密后的信息M1。然后通过M1与加密信息进行匹配,如果能够匹配上,那么可以证明M1包含该权限类型的资源获取权限信息。对证明信息进行验证后可以获得验证参数,验证参数即为零知识证明的结论。例如“加密信息中包含A平台下载文档的权限”。
区块链网络中的各个节点均可以运行零知识证明协议,进而各节点都可以验证加密信息。此外,还可以将零知识证明算法部署于验证节点,只通过验证节点验证加密信息,可以减少节点的部署难度,节省构建区块链网络的时间。因此,步骤S130还具体包括以下步骤:将加密信息发送至区块链网络中的验证节点,以通过验证节点验证加密信息是否包含资源申请请求对应的资源获取权限的信息,获得验证结果,其中,零知识证明的算法部署于验证节点;以及,从区块链网络中获取到验证结果后,对验证结果进行解密,获得验证参数,其中验证结果由验证节点进行加密后广播至区块链网络中。
区块链网络中的每个节点都可以具有公有密钥和私有密钥,发送节点在发送报文时可以利用私有密钥对报文进行加密,接收该报文的接收节点相应地用该发送节点的公有密钥能够对该报文进行解密。验证节点上部署了零知识证明算法,能够对加密信息中是否包含资源申请请求对应的资源获取权限的信息进行验证,得到验证结果。该验证节点可以对该验证结果进行加密,并将加密后的验证结果广播至区块链网络中。
在接收到验证节点广播的加密过的验证结果后,可以用验证节点的公有密钥对验证结果进行解密,确定该验证参数的真实性。然后通过该验证参数确定申请对象的资源获取权限。如果验证参数表示申请对象已获得相应的权限时,则确定申请对象申请权限失败。
示例性的,在历史资源申请信息被加密时,不同的区块链节点上传的历史资源申请信息可以通过不同的加密算法进行加密。预先定义多种加密算法,在对资源申请信息进行加密时,随机选择一种加密算法进行加密,以使得不同节点上传的历史资源申请信息满足不同的加密规则。在验证申请对象的加密信息时,可以采用与该加密信息相同的加密算法对预定的信息进行加密,将加密后的预定信息与该加密信息进行对比。然后判断该加密后的预定信息是否与该加密信息相匹配,若匹配,则该加密信息满足预定规则;若不匹配,则该加密信息不满足预定规则;从而获取验证参数,验证参数可以包括匹配的结果。
示例性实施例中,通过零知识证明验证加密信息是否包含资源申请请求对应的资源获取权限的信息,得到验证参数可以具体包括步骤S401和步骤S402,如图4所示。其中:
步骤S401,解析出所述资源申请请求中包含的权限类型;
步骤S402,通过零知识证明验证所述加密信息中是否包含所述权限类型对应的资源获取权限的信息,以获得验证参数。
参考图4,在步骤S401中,资源申请请求中可以包含的权限类型。通过解析权限类型对应的字段值,可以确定资源申请请求的权限类型。例如,权限类型可以是“信用卡”、“短期贷款”等。
在步骤S402中,通过零知识证明验证该加密信息中是否包含该权限类型对应的资源获取权限,因此验证参数可以表示该加密信息包含该权限类型对应的资源获取权限,也可以表示该加密信息不包含该权限类型对应的资源获取权限。
基于此,获取验证参数还可以通过以下步骤:
步骤S501,根据权限类型确定资源获取权限的多个预设信息;
步骤S502,将加密信息与多个预设信息分别进行对比,若加密信息与预设信息不匹配,则确定验证参数为预设值;
步骤S503,若所述加密信息与所述预设信息匹配,则确定所述验证参数不为预设值。
预设信息可以是与资源申请请求对应的信息,即,预设信息可以包括申请对象的历史资源申请信息中的字段,该字段可以表示资源获取权限申请成功。例如,预设信息可以是“建设银行信用卡授信成功”、“下载资源权限获取成功”等。或者,预设信息也可以包括能够标识权限授予成功或失败的其他信息,例如开发下载权限、下载权限开通失败等。
不同权限类型对应的预设信息可以不同,例如信用卡权限对应的预设信息可以包括信用卡申请通过、信用卡申请失败等。在实际情况中,若申请对象取得了某一资源申请权限,则需要对该申请对象的资源申请结果进行标识,或者将资源申请结果通知给该申请对象。因此,预设信息可以根据对应的权限类型而定。例如,资源申请请求的权限类型为“建设银行信用卡”,则预设信息可以是“建设银行信用卡申请成功”。
预设信息可以包括多个,可以将多个预设信息一一与加密信息进行对比,如果互相匹配则验证参数不为预设值,若所有预设信息对比完成后没有确定与加密信息匹配,则验证参数为预设值。可选地,如果加密信息与预设信息不匹配,则验证参数可以为预设值。该预设值可以包括数字、字符等,例如0、true等;也可以包括其他值,例如文字“正确”、“命中”等,本示例实施例对此不做特殊限定。
在步骤S140中,可以基于验证参数确定申请对象的资源获取权限。
具体的,根据验证参数确定申请对象的资源获取权限可以包括步骤S601和步骤S602,如图6所示。其中:
步骤S601,若所述验证参数为所述预设值,则为所述申请对象开放所述资源获取权限;
步骤S602,若所述验证参数不为所述预设值,则向所述申请对象发送警示信息,提醒所述申请对象重复申请同类型权限导致申请失败。
本示例实施例中,可以将加密信息与预设信息进行对比,从而确定验证参数。在步骤S601中,如果验证预设规则成立,则验证参数可以为预设值。例如,验证加密信息中包含权限申请失败的信息时,验证参数可以为“0”,或者验证加密信息中包含权限申请成功的信息时,验证参数可以为“0”。若验证参数为预设值,则可以确定申请对象权限申请成功,可以为申请对象开放与权限申请请求中的权限类型对应的资源获取权限。
在步骤S602中,若验证参数不为预设值,那么可以确定申请对象权限申请失败,则向申请对象发送警示信息,提醒该申请对象重复申请权限导致权限申请失败。
以下介绍本发明的装置实施例,可以用于执行本发明上述的资源的获取方法。如图7所示,该资源的获取装置700可以包括请求接收单元710、信息获取单元720以及权限确定单元730。具体的:
请求接收单元710,用于接收针对申请对象的资源申请请求;
信息获取单元720,用于根据所述资源申请请求确定对于所述申请对象的加密信息;
验证单元,730,用于通过零知识证明验证所述加密信息是否包含所述资源申请请求对应的资源获取权限的信息,获得验证参数;
权限确定单元740,用于基于所述验证参数确定所述申请对象的资源获取权限。
示例性实施例中,基于前述方案,信息获取单元720可以包括:
身份解析单元,用于解析出所述资源申请请求中包含的所述申请对象的身份信息;
信息查询单元,用于基于所述身份信息从区块链网络中查询所述申请对象的加密信息。
示例性实施例中,基于前述方案,该资源的获取装置700还可以包括:
信息上传单元,用于将历史资源申请信息上传至所述区块链网络中,所述历史资源申请信息中包含多个申请对象的资源申请结果;
数据加密单元,用于对区块链网络中的历史资源申请信息进行加密保存,得到加密信息。
示例性实施例中,基于前述方案,验证单元730可以包括:
权限解析单元,用于解析出所述资源申请请求中包含的权限类型;
零知识证明单元,用于通过零知识证明验证所述加密信息是否包含所述权限类型对应的资源获取权限的信息,以获得验证参数。
示例性实施例中,基于前述方案,验证单元730还可以包括:
验证节点单元,用于对所述加密信息进行加密后发送至区块链网络中的验证节点,以使所述验证节点验证所述加密信息是否包含所述资源申请请求对应的资源获取权限的信息,获得验证结果,其中,所述零知识证明的算法部署于所述验证节点;
验证参数获取单元,用于从所述区块链网络中获取收到所述验证结果后,对所述验证结果进行解密,获得验证参数,其中所述验证结果由所述验证节点进行加密后广播至所述区块链网络中。
示例性实施例中,基于前述方案,验证单元730还可以用于:
信息确定单元,用于根据所述权限类型确定所述资源获取权限的多个预设信息;
对比单元,用于将所述加密信息与多个所述预设信息分别进行对比,若所述加密信息与所述预设信息不匹配,则确定所述验证参数为预设值。
示例性实施例中,基于前述方案,该资源的获取装置700还可以包括:
第一结果确定单元,用于若所述验证参数为所述预设值,则为所述申请对象开放资源获取权限;
第二结果确定单元,用于若所述验证参数不为所述预设值,则向所述申请对象发送警示信息,提醒所述申请对象重复申请权限导致申请失败。
由于本发明的示例实施例的资源的获取装置的各个功能模块与上述资源的获取方法的示例实施例的步骤对应,因此对于本发明装置实施例中未披露的细节,请参照本发明上述的资源的获取方法的实施例。
此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施方式的资源的获取方法。
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。
参考图8所示,描述了根据本公开的实施方式的用于实现上述方法的程序产品800,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
在本公开的示例性实施例中,还提供了一种能够实现上述方法的电子设备。
下面参照图9来描述根据本公开的这种实施方式的电子设备900。图9显示的电子设备900仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图9所示,电子设备900以通用计算设备的形式表现。电子设备900的组件可以包括但不限于:上述至少一个处理单元910、上述至少一个存储单元920、连接不同系统组件(包括存储单元920和处理单元910)的总线930。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元910执行,使得所述处理单元910执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。例如,所述处理单元910可以执行如图1中所示的:步骤S110,接收针对申请对象的资源申请请求;步骤S120,根据所述资源申请请求确定对于所述申请对象的加密信息;步骤S130,通过零知识证明验证所述加密信息是否包含所述资源申请请求对应的资源获取权限的信息,获得验证参数;步骤S140,基于所述验证参数确定所述申请对象的资源获取权限。
存储单元920可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)9201和/或高速缓存存储单元9202,还可以进一步包括只读存储单元(ROM)9203。
存储单元920还可以包括具有一组(至少一个)程序模块9205的程序/实用工具9204,这样的程序模块9205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线930可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备900也可以与一个或多个外部设备1000(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备900交互的设备通信,和/或与使得该电子设备900能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口950进行。并且,电子设备900还可以通过网络适配器960与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器960通过总线930与电子设备900的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备900使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。
此外,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
Claims (9)
1.一种资源的获取方法,其特征在于,包括:
接收针对申请对象的资源申请请求;
根据所述资源申请请求确定对于所述申请对象的加密信息;
通过零知识证明验证所述加密信息是否包含所述资源申请请求对应的资源获取权限的信息,获得验证参数,包括:将所述加密信息发送至区块链网络中的验证节点,以通过所述验证节点验证所述加密信息是否包含所述资源申请请求对应的资源获取权限的信息,获得验证结果,其中,所述零知识证明的算法部署于所述验证节点;从所述区块链网络中获取到所述验证结果后,对所述验证结果进行解密,获得验证参数,其中所述验证结果由所述验证节点进行加密后广播至所述区块链网络中;
基于所述验证参数确定所述申请对象的资源获取权限。
2.根据权利要求1所述的资源的获取方法,其特征在于,所述根据所述资源申请请求确定对于所述申请对象的加密信息,包括:
解析出所述资源申请请求中包含的所述申请对象的身份信息;
基于所述身份信息从区块链网络中查询所述申请对象的加密信息。
3.根据权利要求2所述的资源的获取方法,其特征在于,基于所述申请对象的身份信息从区块链网络中查询所述申请对象的加密信息之前,还包括:
将历史资源申请信息上传至所述区块链网络中,所述历史资源申请信息中包含多个申请对象的资源申请结果;
对区块链网络中的历史资源申请信息进行加密保存,得到加密信息。
4.根据权利要求1所述的资源的获取方法,其特征在于,所述通过零知识证明验证所述加密信息是否包含所述资源申请请求对应的资源获取权限的信息,获得验证参数,还包括:
解析出所述资源申请请求中包含的权限类型;
通过零知识证明验证所述加密信息是否包含所述权限类型对应的资源获取权限的信息,以获得验证参数。
5.根据权利要求4所述的资源的获取方法,其特征在于,所述通过零知识证明验证所述加密信息是否包含所述资源申请请求对应的资源获取权限的信息,获得验证参数,包括:
根据所述权限类型确定所述资源获取权限的多个预设信息;
将所述加密信息与多个所述预设信息分别进行对比,若所述加密信息与所述预设信息不匹配,则确定所述验证参数为预设值;
若所述加密信息与所述预设信息匹配,则确定所述验证参数不为预设值。
6.根据权利要求5所述的资源的获取方法,其特征在于,所述基于所述验证参数确定所述申请对象的资源获取权限,包括:
若所述验证参数为所述预设值,则为所述申请对象开放资源获取权限;
若所述验证参数不为所述预设值,则向所述申请对象发送警示信息,提醒所述申请对象重复申请权限导致申请失败。
7.一种资源的获取装置,其特征在于,包括:
请求接收单元,用于接收针对申请对象的资源申请请求;
信息获取单元,用于根据所述资源申请请求确定对于所述申请对象的加密信息;
验证单元,用于通过零知识证明验证所述加密信息是否包含所述资源申请请求对应的资源获取权限的信息,获得验证参数;
权限确定单元,用于基于所述验证参数确定所述申请对象的资源获取权限;
所述验证单元包括:
验证节点单元,用于对所述加密信息进行加密后发送至区块链网络中的验证节点,以使所述验证节点验证所述加密信息是否包含所述资源申请请求对应的资源获取权限的信息,获得验证结果,其中,所述零知识证明的算法部署于所述验证节点;
验证参数获取单元,用于从所述区块链网络中获取收到所述验证结果后,对所述验证结果进行解密,获得验证参数,其中所述验证结果由所述验证节点进行加密后广播至所述区块链网络中。
8.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1至6中任一项所述的资源的获取方法。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1至6中任一项所述的资源的获取方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910823216.0A CN110708162B (zh) | 2019-09-02 | 2019-09-02 | 资源的获取方法、装置、计算机可读介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910823216.0A CN110708162B (zh) | 2019-09-02 | 2019-09-02 | 资源的获取方法、装置、计算机可读介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110708162A CN110708162A (zh) | 2020-01-17 |
CN110708162B true CN110708162B (zh) | 2023-06-09 |
Family
ID=69194159
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910823216.0A Active CN110708162B (zh) | 2019-09-02 | 2019-09-02 | 资源的获取方法、装置、计算机可读介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110708162B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111949419A (zh) * | 2020-07-17 | 2020-11-17 | 上海淇馥信息技术有限公司 | 一种跨环境资源获取方法、装置和电子设备 |
CN112464194A (zh) * | 2020-11-25 | 2021-03-09 | 数字广东网络建设有限公司 | 资源获取方法、装置、计算机设备和存储介质 |
CN113472807B (zh) * | 2021-02-22 | 2023-03-21 | 支付宝(杭州)信息技术有限公司 | 用户间的隐私通信方法和装置 |
CN113112252B (zh) * | 2021-04-28 | 2023-03-10 | 深圳壹账通智能科技有限公司 | 基于区块链的资源转移方法、装置、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9215076B1 (en) * | 2012-03-27 | 2015-12-15 | Amazon Technologies, Inc. | Key generation for hierarchical data access |
CN107918916A (zh) * | 2017-09-13 | 2018-04-17 | 平安科技(深圳)有限公司 | 自助理赔申请处理方法、装置、计算机设备及存储介质 |
CN108805565A (zh) * | 2018-05-17 | 2018-11-13 | 深圳前海微众银行股份有限公司 | 基于区块链的承诺存在性证明方法、设备及可读存储介质 |
CN109413039A (zh) * | 2018-09-21 | 2019-03-01 | 华南理工大学 | 一种基于区块链零知识证明的安全单点登录方法 |
CN109858852A (zh) * | 2018-12-26 | 2019-06-07 | 上海源庐加佳信息科技有限公司 | 一种基于区块链与零知识证明的仓单验证方法 |
-
2019
- 2019-09-02 CN CN201910823216.0A patent/CN110708162B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9215076B1 (en) * | 2012-03-27 | 2015-12-15 | Amazon Technologies, Inc. | Key generation for hierarchical data access |
CN107918916A (zh) * | 2017-09-13 | 2018-04-17 | 平安科技(深圳)有限公司 | 自助理赔申请处理方法、装置、计算机设备及存储介质 |
CN108805565A (zh) * | 2018-05-17 | 2018-11-13 | 深圳前海微众银行股份有限公司 | 基于区块链的承诺存在性证明方法、设备及可读存储介质 |
CN109413039A (zh) * | 2018-09-21 | 2019-03-01 | 华南理工大学 | 一种基于区块链零知识证明的安全单点登录方法 |
CN109858852A (zh) * | 2018-12-26 | 2019-06-07 | 上海源庐加佳信息科技有限公司 | 一种基于区块链与零知识证明的仓单验证方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110708162A (zh) | 2020-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12093419B2 (en) | Methods and devices for managing user identity authentication data | |
CN114586315B (zh) | 用于去中心化的数据认证的系统、方法和计算机可读介质 | |
US20200213283A1 (en) | Key rotation techniques | |
US10721075B2 (en) | Web of trust management in a distributed system | |
CN110708162B (zh) | 资源的获取方法、装置、计算机可读介质及电子设备 | |
US9819654B2 (en) | Resource locators with keys | |
EP2957063B1 (en) | Policy enforcement with associated data | |
EP2956852B1 (en) | Data security service | |
CN112131316B (zh) | 应用于区块链系统的数据处理方法及装置 | |
US9798888B2 (en) | Data management | |
US9300639B1 (en) | Device coordination | |
CN109818965B (zh) | 个人身份验证装置及方法 | |
CN115409511B (zh) | 一种基于区块链的个人信息保护系统 | |
CN114553557A (zh) | 密钥调用方法、装置、计算机设备和存储介质 | |
CN114826616B (zh) | 数据处理方法、装置、电子设备和介质 | |
CN114567444B (zh) | 数字签名验证方法、装置、计算机设备和存储介质 | |
Walker | Provable data possession (PDP) and proofs of retrievability (POR) of current big user data: Cryptographic schemes in cloud storage | |
Thakur et al. | Data Security: Vital Demand in Cloud Computing | |
CN116301890A (zh) | 业务处理方法及装置、计算机可读存储介质、电子设备 | |
Chandio et al. | Secure Architecture for Electronic Commerce Applications Running over the Cloud | |
Padmanaban et al. | A Secure Data Dynamics and Public Auditing Scheme for Cloud Storage | |
CN116226932A (zh) | 业务数据校验方法、装置、计算机介质及电子设备 | |
CN117874830A (zh) | 基于应用服务的许可证处理方法、装置及电子设备 | |
Saranya et al. | Providing Security for Public Data Auditability in Regeneration based Cloud Storage | |
Kumar | Imperative Requirements for Data Security in Cloud Computing |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |