CN114726643B - 云平台上的数据存储、访问方法及装置 - Google Patents

云平台上的数据存储、访问方法及装置 Download PDF

Info

Publication number
CN114726643B
CN114726643B CN202210450745.2A CN202210450745A CN114726643B CN 114726643 B CN114726643 B CN 114726643B CN 202210450745 A CN202210450745 A CN 202210450745A CN 114726643 B CN114726643 B CN 114726643B
Authority
CN
China
Prior art keywords
data
key
client
data block
ciphertexts
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
Application number
CN202210450745.2A
Other languages
English (en)
Other versions
CN114726643A (zh
Inventor
李海林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bank of China Ltd
Original Assignee
Bank of China Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Bank of China Ltd filed Critical Bank of China Ltd
Priority to CN202210450745.2A priority Critical patent/CN114726643B/zh
Publication of CN114726643A publication Critical patent/CN114726643A/zh
Application granted granted Critical
Publication of CN114726643B publication Critical patent/CN114726643B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/045Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply hybrid encryption, i.e. combination of symmetric and asymmetric encryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices
    • G06F16/137Hash-based
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/067Network architectures or network communication protocols for network security for supporting key management in a packet data network using one-time keys

Abstract

本发明公开了一种云平台上的数据存储、访问方法及装置,涉及云计算技术领域,该云平台上的数据存储方法包括:将待存储数据文件分割为多个数据块;调用密钥生成器生成每一数据块的数据密钥;利用每一数据块的数据密钥对该数据块加密,得到多个数据块密文;利用第一客户端公钥对每一数据块对应的数据密钥明文加密,得到多个数据密钥密文;将待存储数据文件的摘要信息、多个数据密钥密文和第一客户端私钥存储在第三方授权系统中;将多个数据块密文上传至云服务器,云服务器的管理端:根据元数据和数据块密文的哈希标签,生成数据块密文的存储地址;分别将多个数据块密文存储在与存储地址对应的云服务器中。本发明可以提高云平台上数据的安全性。

Description

云平台上的数据存储、访问方法及装置
技术领域
本发明涉及云计算技术领域,尤其涉及一种云平台上的数据存储、访问方法及装置。
背景技术
本部分旨在为权利要求书中陈述的本发明实施例提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
随着云计算技术的不断发展,云平台已经广泛应用在各种领域场景。平台即服务(Platform-as-a-Service,PaaS)为程序提供了可运行的环境,可以动态划分云服务器,简化了应用的部署步骤。在PaaS云平台上,数据库、文件服务器等中间件以租户的方式存在,因此应用层不需要关注中间件的安装部署,只需要关注代码开发即可,为开发运维提供了极大的便利,但是,PaaS云平台在带来便利的同时,也带来了一些安全隐患,由于客户的数据均保存在“云上”,因此,若没有可靠的安全机制,客户的数据非常容易泄漏。
发明内容
本发明实施例提供一种云平台上的数据存储方法,用以提高云平台上数据的安全性,避免数据泄露,该方法应用于第一客户端,所述第一客户端为数据上传方,该方法包括:
将待存储数据文件分割为多个数据块;
针对每一个数据块,调用密钥生成器生成每一数据块对应的数据密钥明文;利用每一数据块对应的数据密钥明文对该数据块加密,得到多个数据块密文;
利用第一客户端公钥对每一数据块对应的数据密钥明文加密,得到多个数据密钥密文;所述第一客户端公钥是密钥生成器根据第一客户端的身份信息和待存储数据文件的摘要信息生成的密钥对中的,所述密钥对还包括第一客户端私钥;
将待存储数据文件的摘要信息、多个数据密钥密文和第一客户端私钥存储在第三方授权系统中,所述第三方授权系统用于对访问云服务器中存储的数据文件的客户端的身份信息进行验证;
将多个数据块密文上传至云服务器的管理端,以使云服务器的管理端:根据预先设置的元数据和每一个数据块密文的哈希标签,生成每一个数据块密文的存储地址;分别将多个数据块密文存储在与每一个数据块密文的存储地址对应的云服务器中。
本发明实施例还提供一种云平台上的数据存储方法,用以提高云平台上数据的安全性,避免数据泄露,该方法应用于云服务器的管理端,该方法包括:
接收第一客户端上传的多个数据块密文;其中,所述多个数据块密文是第一客户端将待存储数据文件分割为多个数据块之后,利用每一数据块对应的数据密钥明文对该数据块加密得到的;所述每一数据块对应的数据密钥明文是第一客户端调用密钥生成器生成的;
根据预先设置的元数据和每一个数据块密文的哈希标签,生成每一个数据块密文的存储地址;
分别将多个数据块密文存储在与每一个数据块密文的存储地址对应的云服务器中。
本发明实施例还提供一种云平台上的数据访问方法,用以提高云平台上数据的安全性,避免数据泄露,该方法应用于第二客户端,所述第二客户端为数据访问方,该方法包括:
向第三方授权系统发送数据访问请求,所述数据访问请求包括第二客户端身份信息和待访问数据文件摘要信息,以使第三方授权系统对第二客户端身份信息和待访问数据文件摘要信息进行验证;其中,所述第三方授权系统中预先存储有数据文件的摘要信息对应的多个数据密钥密文和数据上传方的客户端私钥;
接收第三方授权系统反馈的验证结果,所述验证结果包括待访问数据文件摘要信息对应的多个数据密钥密文和第一客户端私钥;待访问数据文件摘要信息对应的多个数据密钥密文以第一客户端公钥加密的;第一客户端公钥和第一客户端私钥是密钥生成器根据第一客户端的身份信息和待访问数据文件的摘要信息生成的密钥对中的;其中,所述第一客户端为数据上传方;
根据所述验证结果,将所述数据访问请求发送至云服务器的管理端,以使云服务器的管理端:获取待访问数据文件摘要信息对应的数据块地址索引;根据待访问数据文件摘要信息对应的数据块地址索引,从云服务器中获取多个数据块密文;将多个数据块密文和数据块连接索引发送至第二客户端;其中,每一数据块密文以每一数据块对应的数据密钥明文进行加密;数据块连接索引是第一客户端将数据文件分割为多个数据块之后,根据多个数据块之间的关联关系生成的;
接收云服务器的管理端发送的多个数据块密文和数据块连接索引;
根据待访问数据文件摘要信息对应的多个数据密钥密文和第一客户端私钥,对多个数据块密文进行解密,得到多个数据块;
根据数据块连接索引,对多个数据块进行拼接,得到数据文件。
本发明实施例还提供一种云平台上的数据存储装置,用以提高云平台上数据的安全性,避免数据泄露,该装置应用于第一客户端,所述第一客户端为数据上传方,该装置包括:
数据分割模块,用于将待存储数据文件分割为多个数据块;
数据加密模块,用于针对每一个数据块,调用密钥生成器生成每一数据块对应的数据密钥明文;利用每一数据块对应的数据密钥明文对该数据块加密,得到多个数据块密文;
密钥加密模块,用于利用第一客户端公钥对每一数据块对应的数据密钥明文加密,得到多个数据密钥密文;所述第一客户端公钥是密钥生成器根据第一客户端的身份信息和待存储数据文件的摘要信息生成的密钥对中的,所述密钥对还包括第一客户端私钥;
密钥存储模块,用于将待存储数据文件的摘要信息、多个数据密钥密文和第一客户端私钥存储在第三方授权系统中,所述第三方授权系统用于对访问云服务器中存储的数据文件的客户端的身份信息进行验证;
数据存储模块,用于将多个数据块密文上传至云服务器的管理端,以使云服务器的管理端:根据预先设置的元数据和每一个数据块密文的哈希标签,生成每一个数据块密文的存储地址;分别将多个数据块密文存储在与每一个数据块密文的存储地址对应的云服务器中。
本发明实施例还提供一种云平台上的数据存储装置,用以提高云平台上数据的安全性,避免数据泄露,该装置应用于云服务器的管理端,该装置包括:
数据接收模块,用于接收第一客户端上传的多个数据块密文;其中,所述多个数据块密文是第一客户端将待存储数据文件分割为多个数据块之后,利用每一数据块对应的数据密钥明文对该数据块加密得到的;所述每一数据块对应的数据密钥明文是第一客户端调用密钥生成器生成的;
地址生成模块,用于根据预先设置的元数据和每一个数据块密文的哈希标签,生成每一个数据块密文的存储地址;
数据存储模块,用于分别将多个数据块密文存储在与每一个数据块密文的存储地址对应的云服务器中。
本发明实施例还提供一种云平台上的数据访问装置,用以提高云平台上数据的安全性,避免数据泄露,该装置应用于第二客户端,所述第二客户端为数据访问方,该装置包括:
第一发送模块,用于向第三方授权系统发送数据访问请求,所述数据访问请求包括第二客户端身份信息和待访问数据文件摘要信息,以使第三方授权系统对第二客户端身份信息和待访问数据文件摘要信息进行验证;其中,所述第三方授权系统中预先存储有数据文件的摘要信息对应的多个数据密钥密文和数据上传方的客户端私钥;
第一接收模块,用于接收第三方授权系统反馈的验证结果,所述验证结果包括待访问数据文件摘要信息对应的多个数据密钥密文和第一客户端私钥;待访问数据文件摘要信息对应的多个数据密钥密文以第一客户端公钥加密的;第一客户端公钥和第一客户端私钥是密钥生成器根据第一客户端的身份信息和待访问数据文件的摘要信息生成的密钥对中的;其中,所述第一客户端为数据上传方;
第二发送模块,用于根据所述验证结果,将所述数据访问请求发送至云服务器的管理端,以使云服务器的管理端:获取待访问数据文件摘要信息对应的数据块地址索引;根据待访问数据文件摘要信息对应的数据块地址索引,从云服务器中获取多个数据块密文;将多个数据块密文和数据块连接索引发送至第二客户端;其中,每一数据块密文以每一数据块对应的数据密钥明文进行加密;数据块连接索引是第一客户端将数据文件分割为多个数据块之后,根据多个数据块之间的关联关系生成的;
第二接收模块,用于接收云服务器的管理端发送的多个数据块密文和数据块连接索引;
解密模块,用于根据待访问数据文件摘要信息对应的多个数据密钥密文和第一客户端私钥,对多个数据块密文进行解密,得到多个数据块;
拼接模块,用于根据数据块连接索引,对多个数据块进行拼接,得到数据文件。
本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述云平台上的数据存储、访问方法。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述云平台上的数据存储、访问方法。
本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现上述云平台上的数据存储、访问方法。
本发明实施例中,将待存储数据文件分割为多个数据块;针对每一个数据块,调用密钥生成器生成每一数据块对应的数据密钥明文;利用每一数据块对应的数据密钥明文对该数据块加密,得到多个数据块密文;利用第一客户端公钥对每一数据块对应的数据密钥明文加密,得到多个数据密钥密文;所述第一客户端公钥是密钥生成器根据第一客户端的身份信息和待存储数据文件的摘要信息生成的密钥对中的,所述密钥对还包括第一客户端私钥;将待存储数据文件的摘要信息、多个数据密钥密文和第一客户端私钥存储在第三方授权系统中,所述第三方授权系统用于对访问云服务器中存储的数据文件的客户端的身份信息进行验证;将多个数据块密文上传至云服务器的管理端,以使云服务器的管理端:根据预先设置的元数据和每一个数据块密文的哈希标签,生成每一个数据块密文的存储地址;分别将多个数据块密文存储在与每一个数据块密文的存储地址对应的云服务器中。与现有的云存储技术方案相比,数据上传方的客户端通过将数据文件进行分块并加密存储在不同的云服务器中,并对加密的密钥进行再次加密之后存储在第三方授权系统,这样,他人在未经授权的情况下,无法获取文件中各个碎片的存储位置,也无法获取解密密钥,从而无法查看收集整个文件,进而可以提高云平台上数据的安全性,避免数据泄露。
本发明实施例中,接收第一客户端上传的多个数据块密文;其中,所述多个数据块密文是第一客户端将待存储数据文件分割为多个数据块之后,利用每一数据块对应的数据密钥明文对该数据块加密得到的;所述每一数据块对应的数据密钥明文是第一客户端调用密钥生成器生成的;根据预先设置的元数据和每一个数据块密文的哈希标签,生成每一个数据块密文的存储地址;分别将多个数据块密文存储在与每一个数据块密文的存储地址对应的云服务器中。与现有的云存储技术方案相比,数据上传方的客户端通过将数据文件进行分块并加密存储在不同的云服务器,并对加密的密钥进行再次加密之后存储在第三方授权系统,这样,他人在未经授权的情况下,无法获取文件中各个碎片的存储位置,也无法获取解密密钥,从而无法查看收集整个文件,进而可以提高云平台上数据的安全性,避免数据泄露。
本发明实施例中,向第三方授权系统发送数据访问请求,所述数据访问请求包括第二客户端身份信息和待访问数据文件摘要信息,以使第三方授权系统对第二客户端身份信息和待访问数据文件摘要信息进行验证;其中,所述第三方授权系统中预先存储有数据文件的摘要信息对应的多个数据密钥密文和数据上传方的客户端私钥;接收第三方授权系统反馈的验证结果,所述验证结果包括待访问数据文件摘要信息对应的多个数据密钥密文和第一客户端私钥;待访问数据文件摘要信息对应的多个数据密钥密文以第一客户端公钥加密的;第一客户端公钥和第一客户端私钥是密钥生成器根据第一客户端的身份信息和待访问数据文件的摘要信息生成的密钥对中的;其中,所述第一客户端为数据上传方;根据所述验证结果,将所述数据访问请求发送至云服务器的管理端,以使云服务器的管理端:获取待访问数据文件摘要信息对应的数据块地址索引;根据待访问数据文件摘要信息对应的数据块地址索引,从云服务器中获取多个数据块密文;将多个数据块密文和数据块连接索引发送至第二客户端;其中,每一数据块密文以每一数据块对应的数据密钥明文进行加密;数据块连接索引是第一客户端将数据文件分割为多个数据块之后,根据多个数据块之间的关联关系生成的;接收云服务器的管理端发送的多个数据块密文和数据块连接索引;根据待访问数据文件摘要信息对应的多个数据密钥密文和第一客户端私钥,对多个数据块密文进行解密,得到多个数据块;根据数据块连接索引,对多个数据块进行拼接,得到数据文件。与现有的云存储技术方案相比,数据上传方的客户端通过将数据文件进行分块并加密存储在不同的云服务器,并对加密的密钥进行再次加密之后存储至第三方授权系统,只有被授权的数据访问方才可以获取数据文件的解密密钥,这样,他人在未经授权的情况下,无法获取文件中各个碎片的存储位置,也无法获取解密密钥,从而无法查看收集整个文件,进而可以提高云平台上数据的安全性,避免数据泄露。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1为本发明实施例中提供的云平台上的数据存储、访问方案的原理图;
图2为本发明实施例中提供的云平台上的数据存储、访问方案的数据流图;
图3为本发明实施例中提供的一种应用于第一客户端的云平台上的数据存储方法的流程图;
图4为本发明实施例中提供的一种应用于云服务器的管理端的云平台上的数据存储方法的流程图;
图5为本发明实施例中提供的一种应用于第二客户端的云平台上的数据访问方法的流程图;
图6为本发明实施例中提供的一种应用于第一客户端的云平台上的数据存储装置的示意图;
图7为本发明实施例中提供的一种应用于云服务器的管理端的云平台上的数据存储装置的示意图;
图8为本发明实施例中提供的一种应用于第二客户端的云平台上的数据访问装置的示意图;
图9为本发明实施例中的计算机设备的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
在本说明书的描述中,所使用的“包含”、“包括”、“具有”、“含有”等,均为开放性的用语,即意指包含但不限于。参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、“例如”等的描述意指结合该实施例或示例描述的具体特征、结构或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。各实施例中涉及的步骤顺序用于示意性说明本申请的实施,其中的步骤顺序不作限定,可根据需要作适当调整。
目前,在金融领域,通常是由客户经理维护金融产品数据或客户数据,将文件上传到PaaS云上。当对接第三方客户时,允许合作的第三方客户访问PaaS云上存储的金融产品数据或客户数据。但是,云平台的数据大多以明文的形式存储在云上,涉及加密的数据也并未考虑分段加密存储,存在一定的安全隐患,数据的安全问题得不到保障,数据容易被泄露。
因此,本发明提供了一种云平台上的数据存储、访问方案,用以解决云平台上的数据安全问题。图1为本发明实施例提供的云平台上的数据存储、访问方案的原理图。如图1所示,该方案主要包括三个角色:服务器管理员,数据上传方,数据请求方,还包括第三方授权模块。其中:
服务器管理员作为上传数据的验证方,验证上传数据并检查服务器空间,允许或拒绝上传请求。
数据上传方作为数据文件的拥有者,需要将文件分割成若干部分,并加密上传。
数据请求方作为数据文件的访问者,需要通过第三方授权模块的授权,获取授权之后和服务器交互获取数据文件信息。
如此,通过图1所示的云平台上的数据存储、访问方案,可以解决云平台上的数据安全问题,确保云平台上的数据不被泄露。
图2为本发明实施例提供的云平台上的数据存储、访问方案对应的数据流图,与图1所示的原理图对应。具体的,如图2所示,数据上传方的客户端将提供的数据文件分割成可多个部分,加密存放在云上不同服务器上,这样做的目的是使他人无法获取文件中各个碎片的存储位置,从而无法查看收集整个文件,另外数据为加密的,起到了保护数据的目的。同时在客户端和服务器之间增加一个额外的第三方授权过程,解决数据访问过程中潜在的安全问题,使方案更具保护性和鲁棒性。
下面对图1和图2所示的云平台上的数据存储、访问方案进行详细的说明。
如图3所示,为本发明实施例提供的应用于第一客户端的云平台上的数据存储方法的流程图,其中,该第一客户端可以为图1或图2中的数据上传方。
该方法可以包括以下步骤:
步骤301,将待存储数据文件分割为多个数据块;
步骤302,针对每一个数据块,调用密钥生成器生成每一数据块对应的数据密钥明文;利用每一数据块对应的数据密钥明文对该数据块加密,得到多个数据块密文;
步骤303,利用第一客户端公钥对每一数据块对应的数据密钥明文加密,得到多个数据密钥密文;所述第一客户端公钥是密钥生成器根据第一客户端的身份信息和待存储数据文件的摘要信息生成的密钥对中的,所述密钥对还包括第一客户端私钥;
步骤304,将待存储数据文件的摘要信息、多个数据密钥密文和第一客户端私钥存储在第三方授权系统中,所述第三方授权系统用于对访问云服务器中存储的数据文件的客户端的身份信息进行验证;
步骤305,将多个数据块密文上传至云服务器的管理端,以使云服务器的管理端:根据预先设置的元数据和每一个数据块密文的哈希标签,生成每一个数据块密文的存储地址;分别将多个数据块密文存储在与每一个数据块密文的存储地址对应的云服务器中。
本发明实施例中,数据上传方的客户端通过将数据文件进行分块并加密存储在不同的云服务器中,并对加密的密钥进行再次加密之后存储在第三方授权系统,这样,他人在未经授权的情况下,无法获取文件中各个碎片的存储位置,也无法获取解密密钥,从而无法查看收集整个文件,进而可以提高云平台上数据的安全性,避免数据泄露。
在上述步骤301中,第一客户端可以先将待存储数据文件分割为多个数据块。
具体实施时,第一客户端可以是根据待存储数据文件的文件大小,将待存储数据文件分割为大小相同的多个数据块。例如,可以按照计划分块的个数n,以及数据文件的总大小m,将该数据文件分割为大小m/n的n个数据块。
在上述步骤302中,针对每一个数据块,第一客户端可以调用密钥生成器生成每一数据块对应的数据密钥明文;并利用每一数据块对应的数据密钥明文对该数据块加密,得到多个数据块密文。
具体实施时,第一客户端可以调用密钥生成器随机生成每一数据块对应的数据密钥明文,利用每一数据块对应的数据密钥明文对该数据块加密,得到多个数据块密文。也就是说,每一个数据块对应的数据密钥明文均不相同,利用每一数据块对应的数据密钥明文对每一个数据块进行对称加密,使得数据的安全性更高。
在上述步骤302中,为了避免数据密钥被泄露,第一客户端还可以利用第一客户端公钥对每一数据块对应的数据密钥明文加密,得到多个数据密钥密文。
具体实施时,第一客户端可以将第一客户端的身份信息和待存储数据文件的摘要信息发送至密钥生成器,密钥生成器利用第一客户端的身份信息和待存储数据文件的摘要信息生成的密钥对,该密钥对包括第一客户端公钥和第一客户端私钥;其中,第一客户端公钥是用于对数据密钥进行加密;第一客户端私钥是用于对数据密钥进行解密。
如此,由于密钥对是与客户端身份信息及文件内容相互绑定的密钥,可以减少对密钥劫取的概率,增加系统的可靠性。
在上述步骤304中,第一客户端将存储数据文件的摘要信息、多个数据密钥密文和第一客户端私钥存储在第三方授权系统中。
其中,第三方授权系统可以为图1和图2所示的第三方授权模块,可以用于对数据访问方进行身份验证,并存储数据文件的摘要信息对应的多个数据密钥密文和数据上传方的客户端私钥。
在上述步骤305中,第一客户端可以将多个数据块密文上传至云服务器的管理端进行存储。
具体实施时,第一客户端将多个数据块密文上传至云服务器的管理端之后,云服务器的管理端可以根据预先设置的元数据和每一个数据块密文的哈希标签,生成每一个数据块密文的存储地址;分别将多个数据块密文存储在与每一个数据块密文的存储地址对应的云服务器中。
其中,云服务器的管理端可以为图2中的数据整合模块。用于对客户端上传的数据块进行分布式存储。
其中,上述元数据,又称中介数据、中继数据,为描述数据的数据,主要是描述数据属性的信息,用来支持如指示存储位置、历史数据、资源查找、文件记录等功能。本发明实施例中,上述元数据可以为每一个云服务器对应的元数据。
本发明实施例中,在生成每一个数据块密文的存储地址之后,云服务器的管理端还可以根据每一个数据块密文的存储地址,建立数据块地址索引,并存储在云服务器的管理端中,便于后续查找同一数据文件对应的数据块。
如此,第一客户端将待存储数据文件分割为多个数据块,并将每一个数据块使用不同的密钥加密之后存储在云上的不同位置,即不同的云服务器中,使得他人无法轻易获取到每一个数据块,同时,也无法获取到每一个数据块的接密密钥,进而无法拼接得到完成的数据文件,确保了在云平台上存储的数据文件的安全性。
本发明实施例中,为了在数据访问时,在获取到不同的数据块之后,可以拼接得到完整的数据文件,在将待存储数据文件分割为多个数据块之后,还可以包括:
根据多个数据块之间的关联关系,生成待存储数据文件的数据块连接索引,所述数据块连接索引用于指示待存储数据文件的多个数据块之间的连接顺序;
将待存储数据文件的数据块连接索引上传至云服务器的管理端进行存储。
如此,根据多个数据块之间的关联关系,可以确保数据访问时得到完整的数据文件。
本发明实施例中还提供了一种应用于云服务器的管理端的云平台上的数据存储方法,如下面的实施例所述。由于该方法解决问题的原理与应用于第一客户端的云平台上的数据存储方法相似,因此该方法的实施可以参见应用于第一客户端的云平台上的数据存储方法的实施,重复之处不再赘述。
如图4所示,为本发明实施例提供的应用于云服务器的管理端的云平台上的数据存储方法的流程图,该方法可以包括以下步骤:
步骤401,接收第一客户端上传的多个数据块密文;其中,所述多个数据块密文是第一客户端将待存储数据文件分割为多个数据块之后,利用每一数据块对应的数据密钥明文对该数据块加密得到的;所述每一数据块对应的数据密钥明文是第一客户端调用密钥生成器生成的;
步骤402,根据预先设置的元数据和每一个数据块密文的哈希标签,生成每一个数据块密文的存储地址;
步骤403,分别将多个数据块密文存储在与每一个数据块密文的存储地址对应的云服务器中。
本发明实施例中,生成每一个数据块密文的存储地址之后,还可以包括:
根据每一个数据块密文的存储地址,建立数据块地址索引。
本发明实施例中,数据上传方的客户端通过将数据文件进行分块并加密存储在不同的云服务器,并对加密的密钥进行再次加密之后存储在第三方授权系统,这样,他人在未经授权的情况下,无法获取文件中各个碎片的存储位置,也无法获取解密密钥,从而无法查看收集整个文件,进而可以提高云平台上数据的安全性,避免数据泄露。
本发明实施例中还提供了一种应用于第二客户端的云平台上的数据访问方法,如下面的实施例所述。
如图5所示,为本发明实施例提供的应用于第二客户端的云平台上的数据访问方法的流程图,该第二客户端为数据访问方,该方法可以包括以下步骤:
步骤501,向第三方授权系统发送数据访问请求,所述数据访问请求包括第二客户端身份信息和待访问数据文件摘要信息,以使第三方授权系统对第二客户端身份信息和待访问数据文件摘要信息进行验证;其中,所述第三方授权系统中预先存储有数据文件的摘要信息对应的多个数据密钥密文和数据上传方的客户端私钥;
步骤502,接收第三方授权系统反馈的验证结果,所述验证结果包括待访问数据文件摘要信息对应的多个数据密钥密文和第一客户端私钥;待访问数据文件摘要信息对应的多个数据密钥密文以第一客户端公钥加密的;第一客户端公钥和第一客户端私钥是密钥生成器根据第一客户端的身份信息和待访问数据文件的摘要信息生成的密钥对中的;其中,所述第一客户端为数据上传方;
步骤503,根据所述验证结果,将所述数据访问请求发送至云服务器的管理端,以使云服务器的管理端:获取待访问数据文件摘要信息对应的数据块地址索引;根据待访问数据文件摘要信息对应的数据块地址索引,从云服务器中获取多个数据块密文;将多个数据块密文和数据块连接索引发送至第二客户端;其中,每一数据块密文以每一数据块对应的数据密钥明文进行加密;数据块连接索引是第一客户端将数据文件分割为多个数据块之后,根据多个数据块之间的关联关系生成的;
步骤504,接收云服务器的管理端发送的多个数据块密文和数据块连接索引;
步骤505,根据待访问数据文件摘要信息对应的多个数据密钥密文和第一客户端私钥,对多个数据块密文进行解密,得到多个数据块;
步骤506,根据数据块连接索引,对多个数据块进行拼接,得到数据文件。
下面对图5所示的云平台上的数据访问方法进行详细的介绍。
在上述步骤501中,第二客户端在访问云平台上存储的数据文件时,可以先向第三方授权系统发送数据访问请求,数据访问请求可以包括第二客户端身份信息和待访问数据文件摘要信息。
其中,第三方授权系统是用于对数据访问方(即第二客户端)进行身份验证的。在第三方授权系统中,预先存储有多个第二客户端的授权信息。授权信息可以是数据上传方(即第一客户端)指定的可以访问自己上传的指定数据文件的数据访问方的信息。
另外,第三方授权系统中还存储有存储在云平台的每一个数据文件对应的多个数据密钥密文和数据上传方的客户端私钥,多个数据密钥密文和数据上传方的客户端私钥是用于对数据文件的多个数据块密文进行解密的。
具体实施时,第二客户端向第三方授权系统发送数据访问请求,第三方授权系统根据预先存储的多个第二客户端的授权信息,判断第二客户端身份信息(如第二客户端ID)是否可以访问待访问数据文件摘要信息对应的数据文件,若可以访问,第三方授权系统可以将待访问数据文件摘要信息对应的多个数据密钥密文和第一客户端私钥返回至第二客户端,以使第二客户端在获取到待访问数据文件摘要信息的多个数据块密文之后,可以利用多个数据密钥密文和第一客户端私钥来解密。
在上述步骤502中,第二客户端接收到第三方授权系统反馈的验证结果。
在上述步骤503中,第二客户端在验证结果为验证通过(即验证结果中包括待访问数据文件摘要信息对应的多个数据密钥密文和第一客户端私钥)的情况下,向云服务器的管理端发送数据访问请求。
需要说明的是,本发明实施例中,第三方授权系统在确认第二客户端身份信息可以访问待访问数据文件摘要信息对应的数据文件的情况下,还可以向云服务器的管理端发送第二客户端的授权信息,以使云服务器的管理端可以根据云服务器的管理端发送第二客户端的授权信息,对第二客户端发送的数据访问请求进行验证,在确保两者信息一致时,允许查找数据块,从而可以避免第二客户端伪造授权信息。
云服务器的管理端可以根据待访问数据文件摘要信息,获取其对应的数据块地址索引;根据待访问数据文件摘要信息对应的数据块地址索引,从云服务器中获取多个数据块密文;将多个数据块密文和数据块连接索引发送至第二客户端。
在上述步骤504中,第二客户端接收云服务器的管理端发送的多个数据块密文和数据块连接索引。
在上述步骤505中,第二客户端可以利用第一客户端私钥,对多个数据密钥密文进行解密,得到每一个数据块密文对应的数据密钥明文;利用每一个数据块密文对应的数据密钥明文,对每一个数据块密文解密,可以得到待访问数据文件摘要信息对应的多个数据块。
在上述步骤506中,第二客户端可以根据数据块连接索引,对多个数据块进行拼接,得到完整的数据文件。
本发明实施例中,数据上传方的客户端通过将数据文件进行分块并加密存储在不同的云服务器,并对加密的密钥进行再次加密之后存储至第三方授权系统,只有被授权的数据访问方才可以获取数据文件的解密密钥,这样,他人在未经授权的情况下,无法获取文件中各个碎片的存储位置,也无法获取解密密钥,从而无法查看收集整个文件,进而可以提高云平台上数据的安全性,避免数据泄露。
本发明技术方案中对数据的获取、存储、使用、处理等均符合国家法律法规的相关规定。
本发明实施例中还提供了一种云平台上的数据存储装置,如下面的实施例所述。由于该装置解决问题的原理与云平台上的数据存储方法相似,因此该装置的实施可以参见云平台上的数据存储方法的实施,重复之处不再赘述。
如图6所示,为本发明实施例提供的一种应用于第一客户端的云平台上的数据存储装置的示意图,该第一客户端为数据上传方,所述装置可以包括:
数据分割模块601,用于将待存储数据文件分割为多个数据块;
数据加密模块602,用于针对每一个数据块,调用密钥生成器生成每一数据块对应的数据密钥明文;利用每一数据块对应的数据密钥明文对该数据块加密,得到多个数据块密文;
密钥加密模块603,用于利用第一客户端公钥对每一数据块对应的数据密钥明文加密,得到多个数据密钥密文;所述第一客户端公钥是密钥生成器根据第一客户端的身份信息和待存储数据文件的摘要信息生成的密钥对中的,所述密钥对还包括第一客户端私钥;
密钥存储模块604,用于将待存储数据文件的摘要信息、多个数据密钥密文和第一客户端私钥存储在第三方授权系统中,所述第三方授权系统用于对访问云服务器中存储的数据文件的客户端的身份信息进行验证;
数据存储模块605,用于将多个数据块密文上传至云服务器的管理端,以使云服务器的管理端:根据预先设置的元数据和每一个数据块密文的哈希标签,生成每一个数据块密文的存储地址;分别将多个数据块密文存储在与每一个数据块密文的存储地址对应的云服务器中。
本发明实施例中,图6所述的装置还包括连接索引生成模块,用于在数据分割模块将待存储数据文件分割为多个数据块之后:
根据多个数据块之间的关联关系,生成待存储数据文件的数据块连接索引,所述数据块连接索引用于指示待存储数据文件的多个数据块之间的连接顺序;
将待存储数据文件的数据块连接索引上传至云服务器的管理端进行存储。
如图7所示,为本发明实施例提供的一种应用于云服务器的管理端的云平台上的数据存储装置的示意图,所述装置可以包括:
数据接收模块701,用于接收第一客户端上传的多个数据块密文;其中,所述多个数据块密文是第一客户端将待存储数据文件分割为多个数据块之后,利用每一数据块对应的数据密钥明文对该数据块加密得到的;所述每一数据块对应的数据密钥明文是第一客户端调用密钥生成器生成的;
地址生成模块702,用于根据预先设置的元数据和每一个数据块密文的哈希标签,生成每一个数据块密文的存储地址;
数据存储模块703,用于分别将多个数据块密文存储在与每一个数据块密文的存储地址对应的云服务器中。
本发明实施例中,图7所述的装置还包括地址索引建立模块,用于在地址生成模块生成每一个数据块密文的存储地址之后:
根据每一个数据块密文的存储地址,建立数据块地址索引。
本发明实施例中还提供了一种云平台上的数据访问装置,如下面的实施例所述。由于该装置解决问题的原理与云平台上的数据访问方法相似,因此该装置的实施可以参见云平台上的数据访问方法的实施,重复之处不再赘述。
如图8所示,为本发明实施例提供的一种应用于第二客户端的云平台上的数据访问装置的示意图,所述装置可以包括:
第一发送模块801,用于向第三方授权系统发送数据访问请求,所述数据访问请求包括第二客户端身份信息和待访问数据文件摘要信息,以使第三方授权系统对第二客户端身份信息和待访问数据文件摘要信息进行验证;其中,所述第三方授权系统中预先存储有数据文件的摘要信息对应的多个数据密钥密文和数据上传方的客户端私钥;
第一接收模块802,用于接收第三方授权系统反馈的验证结果,所述验证结果包括待访问数据文件摘要信息对应的多个数据密钥密文和第一客户端私钥;待访问数据文件摘要信息对应的多个数据密钥密文以第一客户端公钥加密的;第一客户端公钥和第一客户端私钥是密钥生成器根据第一客户端的身份信息和待访问数据文件的摘要信息生成的密钥对中的;其中,所述第一客户端为数据上传方;
第二发送模块803,用于根据所述验证结果,将所述数据访问请求发送至云服务器的管理端,以使云服务器的管理端:获取待访问数据文件摘要信息对应的数据块地址索引;根据待访问数据文件摘要信息对应的数据块地址索引,从云服务器中获取多个数据块密文;将多个数据块密文和数据块连接索引发送至第二客户端;其中,每一数据块密文以每一数据块对应的数据密钥明文进行加密;数据块连接索引是第一客户端将数据文件分割为多个数据块之后,根据多个数据块之间的关联关系生成的;
第二接收模块804,用于接收云服务器的管理端发送的多个数据块密文和数据块连接索引;
解密模块805,用于根据待访问数据文件摘要信息对应的多个数据密钥密文和第一客户端私钥,对多个数据块密文进行解密,得到多个数据块;
拼接模块806,用于根据数据块连接索引,对多个数据块进行拼接,得到数据文件。
本发明实施例还提供一种计算机设备,如图9所示,为本发明实施例中计算机设备的示意图,所述计算机设备900包括存储器910、处理器920及存储在存储器910上并可在处理器920上运行的计算机程序930,所述处理920执行所述计算机程序930时实现上述云平台上的数据存储、访问方法。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述云平台上的数据存储、访问方法。
本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现上述云平台上的数据存储、访问方法。
本发明实施例中,将待存储数据文件分割为多个数据块;针对每一个数据块,调用密钥生成器生成每一数据块对应的数据密钥明文;利用每一数据块对应的数据密钥明文对该数据块加密,得到多个数据块密文;利用第一客户端公钥对每一数据块对应的数据密钥明文加密,得到多个数据密钥密文;所述第一客户端公钥是密钥生成器根据第一客户端的身份信息和待存储数据文件的摘要信息生成的密钥对中的,所述密钥对还包括第一客户端私钥;将待存储数据文件的摘要信息、多个数据密钥密文和第一客户端私钥存储在第三方授权系统中,所述第三方授权系统用于对访问云服务器中存储的数据文件的客户端的身份信息进行验证;将多个数据块密文上传至云服务器的管理端,以使云服务器的管理端:根据预先设置的元数据和每一个数据块密文的哈希标签,生成每一个数据块密文的存储地址;分别将多个数据块密文存储在与每一个数据块密文的存储地址对应的云服务器中。与现有的云存储技术方案相比,数据上传方的客户端通过将数据文件进行分块并加密存储在不同的云服务器中,并对加密的密钥进行再次加密之后存储在第三方授权系统,这样,他人在未经授权的情况下,无法获取文件中各个碎片的存储位置,也无法获取解密密钥,从而无法查看收集整个文件,进而可以提高云平台上数据的安全性,避免数据泄露。
本发明实施例中,接收第一客户端上传的多个数据块密文;其中,所述多个数据块密文是第一客户端将待存储数据文件分割为多个数据块之后,利用每一数据块对应的数据密钥明文对该数据块加密得到的;所述每一数据块对应的数据密钥明文是第一客户端调用密钥生成器生成的;根据预先设置的元数据和每一个数据块密文的哈希标签,生成每一个数据块密文的存储地址;分别将多个数据块密文存储在与每一个数据块密文的存储地址对应的云服务器中。与现有的云存储技术方案相比,数据上传方的客户端通过将数据文件进行分块并加密存储在不同的云服务器,并对加密的密钥进行再次加密之后存储在第三方授权系统,这样,他人在未经授权的情况下,无法获取文件中各个碎片的存储位置,也无法获取解密密钥,从而无法查看收集整个文件,进而可以提高云平台上数据的安全性,避免数据泄露。
本发明实施例中,向第三方授权系统发送数据访问请求,所述数据访问请求包括第二客户端身份信息和待访问数据文件摘要信息,以使第三方授权系统对第二客户端身份信息和待访问数据文件摘要信息进行验证;其中,所述第三方授权系统中预先存储有数据文件的摘要信息对应的多个数据密钥密文和数据上传方的客户端私钥;接收第三方授权系统反馈的验证结果,所述验证结果包括待访问数据文件摘要信息对应的多个数据密钥密文和第一客户端私钥;待访问数据文件摘要信息对应的多个数据密钥密文以第一客户端公钥加密的;第一客户端公钥和第一客户端私钥是密钥生成器根据第一客户端的身份信息和待访问数据文件的摘要信息生成的密钥对中的;其中,所述第一客户端为数据上传方;根据所述验证结果,将所述数据访问请求发送至云服务器的管理端,以使云服务器的管理端:获取待访问数据文件摘要信息对应的数据块地址索引;根据待访问数据文件摘要信息对应的数据块地址索引,从云服务器中获取多个数据块密文;将多个数据块密文和数据块连接索引发送至第二客户端;其中,每一数据块密文以每一数据块对应的数据密钥明文进行加密;数据块连接索引是第一客户端将数据文件分割为多个数据块之后,根据多个数据块之间的关联关系生成的;接收云服务器的管理端发送的多个数据块密文和数据块连接索引;根据待访问数据文件摘要信息对应的多个数据密钥密文和第一客户端私钥,对多个数据块密文进行解密,得到多个数据块;根据数据块连接索引,对多个数据块进行拼接,得到数据文件。与现有的云存储技术方案相比,数据上传方的客户端通过将数据文件进行分块并加密存储在不同的云服务器,并对加密的密钥进行再次加密之后存储至第三方授权系统,只有被授权的数据访问方才可以获取数据文件的解密密钥,这样,他人在未经授权的情况下,无法获取文件中各个碎片的存储位置,也无法获取解密密钥,从而无法查看收集整个文件,进而可以提高云平台上数据的安全性,避免数据泄露。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (9)

1.一种云平台上的数据存储方法,其特征在于,应用于第一客户端,所述第一客户端为数据上传方,包括:
将待存储数据文件分割为多个数据块;
针对每一个数据块,调用密钥生成器生成每一数据块对应的数据密钥明文;利用每一数据块对应的数据密钥明文对该数据块加密,得到多个数据块密文;
利用第一客户端公钥对每一数据块对应的数据密钥明文加密,得到多个数据密钥密文;所述第一客户端公钥是密钥生成器根据第一客户端的身份信息和待存储数据文件的摘要信息生成的密钥对中的,所述密钥对还包括第一客户端私钥;
将待存储数据文件的摘要信息、多个数据密钥密文和第一客户端私钥存储在第三方授权系统中,所述第三方授权系统用于对访问云服务器中存储的数据文件的客户端的身份信息进行验证;
将多个数据块密文上传至云服务器的管理端,以使云服务器的管理端:根据预先设置的元数据和每一个数据块密文的哈希标签,生成每一个数据块密文的存储地址;分别将多个数据块密文存储在与每一个数据块密文的存储地址对应的云服务器中。
2.如权利要求1所述的方法,其特征在于,将待存储数据文件分割为多个数据块之后,还包括:
根据多个数据块之间的关联关系,生成待存储数据文件的数据块连接索引,所述数据块连接索引用于指示待存储数据文件的多个数据块之间的连接顺序;
将待存储数据文件的数据块连接索引上传至云服务器的管理端进行存储。
3.一种云平台上的数据访问方法,其特征在于,应用于第二客户端,所述第二客户端为数据访问方,包括:
向第三方授权系统发送数据访问请求,所述数据访问请求包括第二客户端身份信息和待访问数据文件摘要信息,以使第三方授权系统对第二客户端身份信息和待访问数据文件摘要信息进行验证;其中,所述第三方授权系统中预先存储有数据文件的摘要信息对应的多个数据密钥密文和数据上传方的客户端私钥;
接收第三方授权系统反馈的验证结果,所述验证结果包括待访问数据文件摘要信息对应的多个数据密钥密文和第一客户端私钥;待访问数据文件摘要信息对应的多个数据密钥密文以第一客户端公钥加密的;第一客户端公钥和第一客户端私钥是密钥生成器根据第一客户端的身份信息和待访问数据文件的摘要信息生成的密钥对中的;其中,所述第一客户端为数据上传方;
根据所述验证结果,将所述数据访问请求发送至云服务器的管理端,以使云服务器的管理端:获取待访问数据文件摘要信息对应的数据块地址索引;根据待访问数据文件摘要信息对应的数据块地址索引,从云服务器中获取多个数据块密文;将多个数据块密文和数据块连接索引发送至第二客户端;其中,每一数据块密文以每一数据块对应的数据密钥明文进行加密;数据块连接索引是第一客户端将数据文件分割为多个数据块之后,根据多个数据块之间的关联关系生成的;
接收云服务器的管理端发送的多个数据块密文和数据块连接索引;
根据待访问数据文件摘要信息对应的多个数据密钥密文和第一客户端私钥,对多个数据块密文进行解密,得到多个数据块;
根据数据块连接索引,对多个数据块进行拼接,得到数据文件。
4.一种云平台上的数据存储装置,其特征在于,应用于第一客户端,所述第一客户端为数据上传方,包括:
数据分割模块,用于将待存储数据文件分割为多个数据块;
数据加密模块,用于针对每一个数据块,调用密钥生成器生成每一数据块对应的数据密钥明文;利用每一数据块对应的数据密钥明文对该数据块加密,得到多个数据块密文;
密钥加密模块,用于利用第一客户端公钥对每一数据块对应的数据密钥明文加密,得到多个数据密钥密文;所述第一客户端公钥是密钥生成器根据第一客户端的身份信息和待存储数据文件的摘要信息生成的密钥对中的,所述密钥对还包括第一客户端私钥;
密钥存储模块,用于将待存储数据文件的摘要信息、多个数据密钥密文和第一客户端私钥存储在第三方授权系统中,所述第三方授权系统用于对访问云服务器中存储的数据文件的客户端的身份信息进行验证;
数据存储模块,用于将多个数据块密文上传至云服务器的管理端,以使云服务器的管理端:根据预先设置的元数据和每一个数据块密文的哈希标签,生成每一个数据块密文的存储地址;分别将多个数据块密文存储在与每一个数据块密文的存储地址对应的云服务器中。
5.如权利要求4所述的装置,其特征在于,还包括连接索引生成模块,用于在数据分割模块将待存储数据文件分割为多个数据块之后:
根据多个数据块之间的关联关系,生成待存储数据文件的数据块连接索引,所述数据块连接索引用于指示待存储数据文件的多个数据块之间的连接顺序;
将待存储数据文件的数据块连接索引上传至云服务器的管理端进行存储。
6.一种云平台上的数据访问装置,其特征在于,应用于第二客户端,所述第二客户端为数据访问方,包括:
第一发送模块,用于向第三方授权系统发送数据访问请求,所述数据访问请求包括第二客户端身份信息和待访问数据文件摘要信息,以使第三方授权系统对第二客户端身份信息和待访问数据文件摘要信息进行验证;其中,所述第三方授权系统中预先存储有数据文件的摘要信息对应的多个数据密钥密文和数据上传方的客户端私钥;
第一接收模块,用于接收第三方授权系统反馈的验证结果,所述验证结果包括待访问数据文件摘要信息对应的多个数据密钥密文和第一客户端私钥;待访问数据文件摘要信息对应的多个数据密钥密文以第一客户端公钥加密的;第一客户端公钥和第一客户端私钥是密钥生成器根据第一客户端的身份信息和待访问数据文件的摘要信息生成的密钥对中的;其中,所述第一客户端为数据上传方;
第二发送模块,用于根据所述验证结果,将所述数据访问请求发送至云服务器的管理端,以使云服务器的管理端:获取待访问数据文件摘要信息对应的数据块地址索引;根据待访问数据文件摘要信息对应的数据块地址索引,从云服务器中获取多个数据块密文;将多个数据块密文和数据块连接索引发送至第二客户端;其中,每一数据块密文以每一数据块对应的数据密钥明文进行加密;数据块连接索引是第一客户端将数据文件分割为多个数据块之后,根据多个数据块之间的关联关系生成的;
第二接收模块,用于接收云服务器的管理端发送的多个数据块密文和数据块连接索引;
解密模块,用于根据待访问数据文件摘要信息对应的多个数据密钥密文和第一客户端私钥,对多个数据块密文进行解密,得到多个数据块;
拼接模块,用于根据数据块连接索引,对多个数据块进行拼接,得到数据文件。
7.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至3任一所述方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1至3任一所述方法。
9.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现权利要求1至3任一所述方法。
CN202210450745.2A 2022-04-27 2022-04-27 云平台上的数据存储、访问方法及装置 Active CN114726643B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210450745.2A CN114726643B (zh) 2022-04-27 2022-04-27 云平台上的数据存储、访问方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210450745.2A CN114726643B (zh) 2022-04-27 2022-04-27 云平台上的数据存储、访问方法及装置

Publications (2)

Publication Number Publication Date
CN114726643A CN114726643A (zh) 2022-07-08
CN114726643B true CN114726643B (zh) 2024-04-16

Family

ID=82245813

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210450745.2A Active CN114726643B (zh) 2022-04-27 2022-04-27 云平台上的数据存储、访问方法及装置

Country Status (1)

Country Link
CN (1) CN114726643B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115242815A (zh) * 2022-07-14 2022-10-25 山石网科通信技术股份有限公司 一种数据云存储方法、装置,管理服务器及用户终端
CN115374070B (zh) * 2022-08-16 2023-04-07 北京连山科技股份有限公司 一种数据粒子化技术与分布式存储结合的存储方法及系统
CN115514470B (zh) * 2022-11-22 2023-03-10 中网道科技集团股份有限公司 一种社区矫正数据安全性的存储方法及系统
CN115549907B (zh) * 2022-11-24 2023-03-24 北京智芯微电子科技有限公司 根密钥管理系统、备份方法、恢复方法、装置及电子设备
CN115842833B (zh) * 2022-11-24 2023-12-15 国家电投集团重庆狮子滩发电有限公司 一种超融合虚拟存储的处理方法、装置及系统
CN115878629B (zh) * 2023-01-04 2023-05-12 摩尔线程智能科技(北京)有限责任公司 一种gpu跟踪数据服务系统、电子设备和存储介质
CN115828290A (zh) * 2023-02-24 2023-03-21 卓望数码技术(深圳)有限公司 一种基于分布式对象存储的加解密方法及装置
CN116107520B (zh) * 2023-04-13 2023-06-30 北京中科特瑞科技有限公司 S3对象存储协议的加密数据存储方法及系统
CN116627680B (zh) * 2023-07-20 2023-10-03 河北神玥软件科技股份有限公司 一种基于多源数据融合的云管理平台及方法
CN117010003A (zh) * 2023-10-07 2023-11-07 北京国电通网络技术有限公司 基于文件分片和散列存储的文件解密方法与电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103685162A (zh) * 2012-09-05 2014-03-26 中国移动通信集团公司 文件存储和共享方法
CN107370595A (zh) * 2017-06-06 2017-11-21 福建中经汇通有限责任公司 一种基于细粒度的密文访问控制方法
CN112560095A (zh) * 2020-12-18 2021-03-26 湖南科技学院 云存储的密钥更新方法及云数据审计系统的实现方法
CN112671735A (zh) * 2020-12-16 2021-04-16 江苏通付盾区块链科技有限公司 一种基于区块链和重加密的数据加密分享系统及方法
CN112702160A (zh) * 2020-12-16 2021-04-23 江苏通付盾区块链科技有限公司 一种云端数据加密存储与分享的方法、装置及系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104065680B (zh) * 2013-03-21 2017-03-08 华为终端有限公司 信息处理方法、检索方法、装置、用户终端及服务器
CN109257342B (zh) * 2018-09-04 2020-05-26 阿里巴巴集团控股有限公司 区块链跨链的认证方法、系统、服务器及可读存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103685162A (zh) * 2012-09-05 2014-03-26 中国移动通信集团公司 文件存储和共享方法
CN107370595A (zh) * 2017-06-06 2017-11-21 福建中经汇通有限责任公司 一种基于细粒度的密文访问控制方法
CN112671735A (zh) * 2020-12-16 2021-04-16 江苏通付盾区块链科技有限公司 一种基于区块链和重加密的数据加密分享系统及方法
CN112702160A (zh) * 2020-12-16 2021-04-23 江苏通付盾区块链科技有限公司 一种云端数据加密存储与分享的方法、装置及系统
CN112560095A (zh) * 2020-12-18 2021-03-26 湖南科技学院 云存储的密钥更新方法及云数据审计系统的实现方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
云存储环境下支持动态所有权管理的安全协议设计;布吉瑞;;电子世界;20170223(第04期);全文 *
基于区块链的数据管理方案;周艺华;李洪明;;信息安全研究;20200105(第01期);全文 *

Also Published As

Publication number Publication date
CN114726643A (zh) 2022-07-08

Similar Documents

Publication Publication Date Title
CN114726643B (zh) 云平台上的数据存储、访问方法及装置
CN109274652B (zh) 身份信息验证系统、方法及装置及计算机存储介质
CN109067528B (zh) 密码运算、创建工作密钥的方法、密码服务平台及设备
CN107295002A (zh) 一种云端存储数据的方法及服务器
CN110990827A (zh) 一种身份信息验证方法、服务器及存储介质
CN109347625B (zh) 密码运算、创建工作密钥的方法、密码服务平台及设备
CN104980477A (zh) 云存储环境下的数据访问控制方法和系统
CN113691502B (zh) 通信方法、装置、网关服务器、客户端及存储介质
CN108347428B (zh) 基于区块链的应用程序的注册系统、方法和装置
CN107040520B (zh) 一种云计算数据共享系统及方法
CN113472521A (zh) 基于区块链的实名数字身份管理方法、签名设备和验证设备
CN114282193A (zh) 一种应用授权方法、装置、设备及存储介质
CN114244508A (zh) 数据加密方法、装置、设备及存储介质
CN117240625B (zh) 一种涉及防篡改的数据处理方法、装置及电子设备
CN114629713A (zh) 身份验证方法、装置及系统
CN109862009A (zh) 一种客户端身份校验方法及装置
CN114240347A (zh) 业务服务安全对接方法、装置、计算机设备、存储介质
CN110807210B (zh) 一种信息处理方法、平台、系统及计算机存储介质
CN110399706B (zh) 授权认证方法、装置和计算机系统
Sevis et al. Survey on data integrity in cloud
Jabbar et al. Design and Implementation of Hybrid EC-RSA Security Algorithm Based on TPA for Cloud Storage
CN115361198A (zh) 解密方法、加密方法、装置、计算机设备和存储介质
CN115225286A (zh) 应用访问鉴权方法及装置
CN114117471A (zh) 机密数据管理方法、电子设备、存储介质及程序产品
CN113987561A (zh) 一种基于可信执行环境的隐私数据分级方法、系统及终端

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