CN103873236B - One kind can search for encryption method and equipment - Google Patents
One kind can search for encryption method and equipment Download PDFInfo
- Publication number
- CN103873236B CN103873236B CN201210534843.0A CN201210534843A CN103873236B CN 103873236 B CN103873236 B CN 103873236B CN 201210534843 A CN201210534843 A CN 201210534843A CN 103873236 B CN103873236 B CN 103873236B
- Authority
- CN
- China
- Prior art keywords
- searcher
- query
- key
- identity information
- plaintext data
- 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
Landscapes
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
技术领域technical field
本发明应用于加密技术领域,尤其涉及一种可搜索加密方法及设备。The invention is applied in the field of encryption technology, and in particular relates to a searchable encryption method and device.
背景技术Background technique
加密方案为了保证语义安全,往往要求加密算法产生的密文分布与密文空间上的均匀分布两者在计算不可区分(计算不可区分是指对于两个概率分布,不存在多项式时间算法能够区分它们)。因此,对于任何有效的算法都无法从加密得到的密文中得到任何有意义的语义信息,而语义信息的丧失使得借助普通的检索算法无法实现对密文数据的检索。为了解决密文检索问题,出现了可搜索加密技术。In order to ensure semantic security, the encryption scheme often requires that the ciphertext distribution generated by the encryption algorithm and the uniform distribution on the ciphertext space are computationally indistinguishable (computationally indistinguishable means that for two probability distributions, there is no polynomial time algorithm that can distinguish them ). Therefore, for any effective algorithm, no meaningful semantic information can be obtained from the encrypted ciphertext, and the loss of semantic information makes it impossible to retrieve ciphertext data with the help of ordinary retrieval algorithms. In order to solve the problem of ciphertext retrieval, searchable encryption technology appears.
可搜索加密,不需要对加密的密文数据进行解密,而是利用检测算法来进行搜索,输出的是该密文是否含有搜索关键词的结果,一般是0或者1。可搜索加密的发展包含三个主要的历史阶段,首先是对称密钥可搜索加密,于2000年由Song等提出。其应用场景是搜索方与加密方为同一实体,利用对称密码体制将数据和关键词进行加密后上传到服务器,之后对该密文数据进行检索。其缺点是用户只能搜索自己加密并上传到数据库中的加密数据。Searchable encryption does not need to decrypt the encrypted ciphertext data, but uses a detection algorithm to search, and the output is the result of whether the ciphertext contains the search keyword, which is generally 0 or 1. The development of searchable encryption includes three main historical stages. The first is symmetric key searchable encryption, which was proposed by Song et al. in 2000. Its application scenario is that the searcher and the encryptor are the same entity, and the data and keywords are encrypted using the symmetric cryptosystem and uploaded to the server, and then the ciphertext data is retrieved. The disadvantage is that users can only search encrypted data that they have encrypted and uploaded to the database.
为了克服这一应用上的局限性,Dan Boneh于2004年提出了带关键词搜索的公钥加密(Public Key Encryption with Keyword Search,PEKS)。PEKS方案的应用场景是多个发送方发送关键词密文和数据密文给接收方,接收方利用私钥生成搜索令牌,上传至服务器,服务器运行相应的检测算法进行关键词搜索。该方案中的接收者只能是单一实体,同时每次关键词检测算法的运行只能实现对一个关键词的检索,无法实现对合取关键词进行检索(假设有n个关键词分别为W1,W2,…,Wn,对包含关键词W1,且包含关键词W2,…,且包含关键词Wn的密文进行搜索,称为合取关键词搜索),这是其功能上的瓶颈。In order to overcome this application limitation, Dan Boneh proposed Public Key Encryption with Keyword Search (PEKS) in 2004. The application scenario of the PEKS scheme is that multiple senders send keyword ciphertext and data ciphertext to the receiver. The receiver uses the private key to generate a search token, uploads it to the server, and the server runs the corresponding detection algorithm for keyword search. The receiver in this scheme can only be a single entity, and at the same time, each time the keyword detection algorithm runs, it can only realize the retrieval of one keyword, and cannot realize the retrieval of conjunction keywords (assuming that there are n keywords respectively W1 , W2,...,Wn, to search the ciphertext that contains keywords W1, and contains keywords W2,..., and contains keywords Wn, which is called conjunction keyword search), which is its functional bottleneck.
2007年Hwang和Lee提出了解决该问题的方案,即多用户的带合取关键词搜索的公钥加密(Multi-user Public Key Encryption with Conjunctive Keyword Search,mPECK),带多接收者合取关键词检索的公钥加密方案。该方案是基于公钥密码体制的,需要在线的公钥数据库或者证书库的基础设施的支持,同时发送方需要查询和下载群组所有成员的公钥,根据每个接收者的公钥对数据进行加密,接受者根据自己的私钥生成搜索令牌对数据进行搜索。然而,公钥数据库的维护和管理成本非常高,并且发送者查询下载多个用户的公钥可能浪费网络带宽和存储资源。In 2007, Hwang and Lee proposed a solution to this problem, that is, multi-user Public Key Encryption with Conjunctive Keyword Search (mPECK), with multi-receiver conjunctive keyword search The retrieved public key encryption scheme. The scheme is based on public key cryptography, and requires the support of an online public key database or certificate library infrastructure. At the same time, the sender needs to query and download the public keys of all members of the group. According to each receiver's public key pair data For encryption, the recipient generates a search token to search the data according to his own private key. However, the maintenance and management cost of the public key database is very high, and the sender may waste network bandwidth and storage resources by querying and downloading public keys of multiple users.
发明内容Contents of the invention
本发明实施例的目的在于提供一种可搜索加密方法和设备,解决了现有技术中基于公钥的可搜索加密技术中需要在线的公钥数据库或者证书库的基础设施的支持,同时发送方需要查询和下载群组所有成员的公钥的问题。The purpose of the embodiments of the present invention is to provide a searchable encryption method and device, which solves the need for online public key database or certificate library infrastructure support in the prior art based on public key searchable encryption technology, while the sender Need to query and download the public keys of all members of the group.
第一方面,一种可搜索加密方法,所述方法包括:In a first aspect, a searchable encryption method includes:
获取搜索方的身份信息以及密钥管理中心的系统参数,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;Obtaining the identity information of the searcher and the system parameters of the key management center, the identity information of the searcher includes the identity information of the single searcher or the identity information of the group in which the multiple searchers belong;
根据所述搜索方的身份信息以及所述系统参数对关键词进行加密,并将加密后的关键词密文上传到存储服务器。The keyword is encrypted according to the identity information of the searcher and the system parameters, and the encrypted keyword ciphertext is uploaded to the storage server.
结合第一方面,在第一方面的第一种可能的实现方式中,所述根据所述搜索方的身份信息以及所述系统参数对关键词进行加密,包括:With reference to the first aspect, in a first possible implementation manner of the first aspect, the encrypting keywords according to the identity information of the search party and the system parameters includes:
根据所述搜索方的身份信息和所述系统参数计算出加密所述关键词的公钥,并根据所述计算出的公钥加密所述关键词。calculating a public key for encrypting the keyword according to the identity information of the searcher and the system parameters, and encrypting the keyword according to the calculated public key.
结合第一方面或者第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述方法还包括:With reference to the first aspect or the first possible implementation of the first aspect, in the second possible implementation of the first aspect, the method further includes:
根据所述搜索方的身份信息和所述系统参数加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器。Encrypt plaintext data according to the identity information of the searcher and the system parameters, and upload the encrypted plaintext data to the storage server.
结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述根据所述搜索方的身份和所述系统参数加密明文数据,包括:With reference to the second possible implementation of the first aspect, in a third possible implementation of the first aspect, the encrypting plaintext data according to the identity of the searcher and the system parameters includes:
根据所述搜索方的身份信息和所述系统参数计算出加密所述明文数据的公钥,并根据所述计算出的公钥加密所述明文数据。calculating a public key for encrypting the plaintext data according to the identity information of the searcher and the system parameters, and encrypting the plaintext data according to the calculated public key.
结合第一方面或者第一方面的第一种可能的实现方式,在第一方面的第四种可能的实现方式中,所述方法还包括:With reference to the first aspect or the first possible implementation manner of the first aspect, in a fourth possible implementation manner of the first aspect, the method further includes:
根据所述搜索方的属性加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器。Encrypt plaintext data according to the attributes of the searcher, and upload the encrypted ciphertext of the plaintext data to the storage server.
第二方面,一种基于身份的可搜索加密方法,所述方法包括:In a second aspect, an identity-based searchable encryption method includes:
根据搜索方的身份信息从密钥管理中心获取查询密钥,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;Obtaining the query key from the key management center according to the identity information of the searcher, where the identity information of the searcher includes the identity information of the single searcher or the identity information of the group in which the plurality of searchers belong;
根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文。A query token is generated according to the keyword and the obtained query key, and the encrypted keyword ciphertext is queried from the storage server through the query token.
结合第二方面,在第二方面的第一种可能的实现方式中,所述通过所述查询令牌从存储服务器中查询加密后的关键词密文,包括:With reference to the second aspect, in the first possible implementation manner of the second aspect, the querying the encrypted keyword ciphertext from the storage server through the query token includes:
通过所述查询令牌从存储服务器中查询包含加密后的关键词的文件。The file containing the encrypted keyword is queried from the storage server through the query token.
结合第二方面或者第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述根据关键词和所述获取的查询密钥生成查询令牌,包括:With reference to the second aspect or the first possible implementation of the second aspect, in the second possible implementation of the second aspect, the generating the query token according to the keyword and the obtained query key includes :
当根据搜索方所在群的身份从密钥管理中心获取查询密钥时,所述搜索方向所述搜索方所在群递交关键词,所述搜索方所在群检查所述搜索方是否是群内的成员,若是,则所述搜索方所在群根据所述关键词和所述查询密钥生成查询令牌,并将所述查询令牌返回到所述搜索方。When obtaining the query key from the key management center according to the identity of the searcher's group, the searcher submits keywords to the searcher's group, and the searcher's group checks whether the searcher is a member of the group , if yes, the group of the searcher generates a query token according to the keyword and the query key, and returns the query token to the searcher.
结合第二方面或者第二方面的第一种可能的实现方式或者第二方面的第二种可能的实现方式,在第二方面的第三种可能的实现方式中,所述通过所述查询令牌从存储服务器中查询加密后的关键词密文,包括:In combination with the second aspect or the first possible implementation of the second aspect or the second possible implementation of the second aspect, in the third possible implementation of the second aspect, the query command The card queries the encrypted keyword ciphertext from the storage server, including:
接收所述存储服务器返回的根据公钥加密的明文数据的密文。Receive the ciphertext of the plaintext data encrypted according to the public key returned by the storage server.
结合第二方面的第三种可能的实现方式,在第二方面的第四种可能的实现方式中,所述方法在步骤接收所述存储服务器返回的根据公钥加密的明文数据的密文之后,还包括:With reference to the third possible implementation of the second aspect, in the fourth possible implementation of the second aspect, after the method receives the ciphertext of the plaintext data encrypted according to the public key returned by the storage server ,Also includes:
根据所述查询密钥,对所述根据公钥加密的明文数据的密文进行解密,获得解密后的明文数据。According to the query key, the ciphertext of the plaintext data encrypted according to the public key is decrypted to obtain decrypted plaintext data.
结合第二方面或者第二方面的第一种可能的实现方式或者第二方面的第二种可能的实现方式或者第二方面的第三种可能的实现方式或者第二方面的第四种可能的实现方式,在第二方面的第五种可能的实现方式中,所述方法,还包括:In combination with the second aspect or the first possible implementation of the second aspect or the second possible implementation of the second aspect or the third possible implementation of the second aspect or the fourth possible implementation of the second aspect Implementation manner, in a fifth possible implementation manner of the second aspect, the method further includes:
根据预先设置的搜索方属性从所述密钥管理中心获取所述属性对应的数据解密密钥。Obtain the data decryption key corresponding to the attribute from the key management center according to the preset attribute of the searcher.
结合第二方面的第五种可能的实现方式,在第二方面的第六种可能的实现方式中,所述通过所述查询令牌从存储服务器中查询加密后的关键词密文,包括:With reference to the fifth possible implementation of the second aspect, in the sixth possible implementation of the second aspect, the querying the encrypted keyword ciphertext from the storage server through the query token includes:
接收所述存储服务器返回的根据所述预先设置的搜索方属性加密的明文数据的密文。Receive the ciphertext of the plaintext data encrypted according to the preset searcher attribute returned by the storage server.
结合第二方面的第六种可能的实现方式,在第二方面的第七种可能的实现方式中,所述方法在步骤接收所述存储服务器返回的根据所述预先设置的搜索方属性加密的明文数据的密文之后,还包括:With reference to the sixth possible implementation manner of the second aspect, in the seventh possible implementation manner of the second aspect, the method receives, at a step, the encrypted data returned by the storage server according to the preset searcher attribute After the ciphertext of the plaintext data, it also includes:
根据所述数据解密密钥,对所述存储服务器返回的根据所述预先设置的搜索方属性加密的明文数据的密文进行解密,获得解密后的明文数据。According to the data decryption key, the ciphertext of the plaintext data encrypted according to the preset searcher attribute returned by the storage server is decrypted to obtain the decrypted plaintext data.
第三方面,一种加密设备,所述设备包括:In a third aspect, an encryption device, the device includes:
第一获取单元,用于获取搜索方的身份信息以及密钥管理中心的系统参数,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;The first obtaining unit is configured to obtain the identity information of the searcher and the system parameters of the key management center, the identity information of the searcher includes the identity information of the single searcher or the group information of the multiple searchers Identity Information;
加密上传单元,用于根据所述搜索方的身份信息以及所述系统参数对关键词进行加密,并将加密后的关键词密文上传到存储服务器。An encryption uploading unit, configured to encrypt keywords according to the identity information of the searcher and the system parameters, and upload the encrypted keyword ciphertext to the storage server.
结合第三方面,在第三方面的第一种可能的实现方式中,所述加密上传单元具体用于:With reference to the third aspect, in a first possible implementation manner of the third aspect, the encrypted upload unit is specifically configured to:
根据所述搜索方的身份信息和所述系统参数计算出加密所述关键词的公钥,并根据所述计算出的公钥加密所述关键词。calculating a public key for encrypting the keyword according to the identity information of the searcher and the system parameters, and encrypting the keyword according to the calculated public key.
结合第三方面或者第三面的第一种可能的实现方式,在第三方面的第二种可能的实现方式中,所述设备还包括:With reference to the third aspect or the first possible implementation manner of the third aspect, in a second possible implementation manner of the third aspect, the device further includes:
第一加密单元,用于根据所述搜索方的身份信息和所述系统参数加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器。The first encryption unit is configured to encrypt plaintext data according to the identity information of the search party and the system parameters, and upload the encrypted plaintext data to the storage server.
结合第三面的第二种可能的实现方式,在第三方面的第三种可能的实现方式中,所述第一加密单元具体用于:With reference to the second possible implementation of the third aspect, in a third possible implementation of the third aspect, the first encryption unit is specifically configured to:
根据所述搜索方的身份信息和所述系统参数计算出加密所述明文数据的公钥,并根据所述计算出的公钥加密所述明文数据。calculating a public key for encrypting the plaintext data according to the identity information of the searcher and the system parameters, and encrypting the plaintext data according to the calculated public key.
结合第三方面或者第三方面的第一种可能的实现方式,在第三方面的第四种可能的实现方式中,所述设备还包括:With reference to the third aspect or the first possible implementation manner of the third aspect, in a fourth possible implementation manner of the third aspect, the device further includes:
第二加密单元,用于根据所述搜索方的属性加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器。The second encryption unit is configured to encrypt the plaintext data according to the attribute of the searcher, and upload the ciphertext of the encrypted plaintext data to the storage server.
第四方面,一种搜索设备,所述设备包括:In a fourth aspect, a search device, the device includes:
第二获取单元,用于根据搜索方的身份信息从密钥管理中心获取查询密钥,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;The second acquiring unit is configured to acquire the query key from the key management center according to the identity information of the searcher, where the identity information of the searcher includes the identity information of the single searcher or the group to which the multiple searchers belong identity information;
查询接收单元,用于根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文。The query receiving unit is configured to generate a query token according to the keyword and the obtained query key, and query the encrypted keyword ciphertext from the storage server through the query token.
结合第四方面,在第四方面的第一种可能的实现方式中,所述查询接收单元中执行步骤通过所述查询令牌从存储服务器中查询加密后的关键词密文,包括:With reference to the fourth aspect, in a first possible implementation of the fourth aspect, the query receiving unit performs a step of querying the encrypted keyword ciphertext from the storage server through the query token, including:
通过所述查询令牌从存储服务器中查询包含加密后的关键词的文件。The file containing the encrypted keyword is queried from the storage server through the query token.
结合第四方面或者第四方面的第一种可能的实现方式,在第四方面的第二种可能的实现方式中,所述查询接收单元执行步骤根据关键词和所述获取的查询密钥生成查询令牌,包括:With reference to the fourth aspect or the first possible implementation of the fourth aspect, in a second possible implementation of the fourth aspect, the query receiving unit executes the step of generating a query key based on keywords and the obtained query key Query tokens, including:
当根据搜索方所在群的身份从密钥管理中心获取查询密钥时,所述搜索方向所述搜索方所在群递交关键词,所述搜索方所在群检查所述搜索方是否是群内的成员,若是,则所述搜索方所在群根据所述关键词和所述查询密钥生成查询令牌,并将所述查询令牌返回到所述搜索方。When obtaining the query key from the key management center according to the identity of the searcher's group, the searcher submits keywords to the searcher's group, and the searcher's group checks whether the searcher is a member of the group , if yes, the group of the searcher generates a query token according to the keyword and the query key, and returns the query token to the searcher.
结合第四方面或者第四方面的第一种可能的实现方式或者第四方面的第二种可能的实现方式,在第四方面的第三种可能的实现方式中,所述查询接收单元,包括:With reference to the fourth aspect or the first possible implementation of the fourth aspect or the second possible implementation of the fourth aspect, in a third possible implementation of the fourth aspect, the query receiving unit includes :
接收所述存储服务器返回的根据公钥加密的明文数据的密文。Receive the ciphertext of the plaintext data encrypted according to the public key returned by the storage server.
结合第四方面的第三种可能的实现方式,在第四方面的第四种可能的实现方式中,所述设备还包括第一解密单元,所述第一解密单元具体用于:With reference to the third possible implementation manner of the fourth aspect, in a fourth possible implementation manner of the fourth aspect, the device further includes a first decryption unit, and the first decryption unit is specifically configured to:
根据所述查询密钥,对所述根据公钥加密的明文数据的密文进行解密,获得解密后的明文数据。According to the query key, the ciphertext of the plaintext data encrypted according to the public key is decrypted to obtain decrypted plaintext data.
结合第四方面或者第四方面的第一种可能的实现方式或者第四方面的第二种可能的实现方式或者第四方面的第三种可能的实现方式或者第四方面的第四种可能的实现方式,在第四方面的第五种可能的实现方式中,所述设备还包括第三获取单元,所述第三获取单元具体用于:In combination with the fourth aspect or the first possible implementation of the fourth aspect or the second possible implementation of the fourth aspect or the third possible implementation of the fourth aspect or the fourth possible implementation of the fourth aspect Implementation manner, in a fifth possible implementation manner of the fourth aspect, the device further includes a third acquisition unit, and the third acquisition unit is specifically configured to:
根据预先设置的搜索方属性从所述密钥管理中心获取所述属性对应的数据解密密钥。Obtain the data decryption key corresponding to the attribute from the key management center according to the preset attribute of the searcher.
结合第四方面的第五种可能的实现方式,在第四方面的第六种可能的实现方式中,所述查询接收单元,包括:With reference to the fifth possible implementation of the fourth aspect, in a sixth possible implementation of the fourth aspect, the query receiving unit includes:
接收所述存储服务器返回的根据所述预先设置的搜索方属性加密的明文数据的密文。Receive the ciphertext of the plaintext data encrypted according to the preset searcher attribute returned by the storage server.
结合第四方面的第六种可能的实现方式,在第四方面的第七种可能的实现方式中,所述设备还包括第二解密单元,所述第二解密单元包括:With reference to the sixth possible implementation manner of the fourth aspect, in a seventh possible implementation manner of the fourth aspect, the device further includes a second decryption unit, and the second decryption unit includes:
根据所述数据解密密钥,对所述存储服务器返回的根据所述预先设置的搜索方属性加密的明文数据的密文进行解密,获得解密后的明文数据。According to the data decryption key, the ciphertext of the plaintext data encrypted according to the preset searcher attribute returned by the storage server is decrypted to obtain the decrypted plaintext data.
与现有技术相比,本发明实施例提供一种可搜索加密方法,所述方法通过从密钥管理中心获取系统参数和私钥,使得密钥管理中心可以采用离线的方式工作同样可以实现发送方加密和搜索方搜索的目的。同时,发送方只需要知道搜索方的身份或者搜索方所在群即可实现关键词的加密方法,使得发送方不需要下载多个搜索方的身份或者搜索方所在群的公钥,不需要在线公钥数据库支撑,降低了网络带宽和存储开销。由于对应发送方公钥的查询密钥是由所述密钥管理中心产生的,因此密钥管理中心能够搜索所有的关键词密文数据,实现集中式密钥托管功能,该功能在公司及一些政府机关尤其重要。同时通过上述一个或者多个关键词的方式,可以实现搜索方对所述一个或多个关键词在所述存储服务器进行搜索查询,通过搜索方所在群对搜索方查询进行管理和控制,从而实现多用户搜索的目的。Compared with the prior art, the embodiment of the present invention provides a searchable encryption method. The method obtains system parameters and private keys from the key management center, so that the key management center can work in an offline manner and also realize sending party encryption and search party search purposes. At the same time, the sender only needs to know the identity of the searcher or the searcher's group to realize the encryption method of keywords, so that the sender does not need to download multiple searcher identities or the public keys of the searcher's group, and does not need to publicize online. Key database support reduces network bandwidth and storage overhead. Since the query key corresponding to the sender's public key is generated by the key management center, the key management center can search all keyword ciphertext data and realize the centralized key custody function. This function is used in companies and some Government agencies are especially important. At the same time, through the above-mentioned one or more keywords, the searcher can search and query the one or more keywords in the storage server, and manage and control the searcher's query through the group where the searcher belongs, so as to realize Purpose of multi-user search.
附图说明Description of drawings
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following will briefly introduce the accompanying drawings that need to be used in the embodiments. Obviously, the accompanying drawings in the following description are only some embodiments of the present invention. For Those of ordinary skill in the art can also obtain other drawings based on these drawings without any creative effort.
图1是本发明实施例一提供的一种可搜索加密方法流程图;FIG. 1 is a flowchart of a searchable encryption method provided by Embodiment 1 of the present invention;
图2是本发明实施例二提供的一种可搜索加密方法流程图;Fig. 2 is a flow chart of a searchable encryption method provided by Embodiment 2 of the present invention;
图3是本发明实施例一、二提供的一种可搜索加密方法示意图;Fig. 3 is a schematic diagram of a searchable encryption method provided by Embodiments 1 and 2 of the present invention;
图4是本发明实施例一、二提供的一种可搜索加密方法示意图;FIG. 4 is a schematic diagram of a searchable encryption method provided by Embodiments 1 and 2 of the present invention;
图5是本发明实施例三提供的一种可搜索加密方法流程图;FIG. 5 is a flow chart of a searchable encryption method provided by Embodiment 3 of the present invention;
图6是本发明实施例四提供的一种可搜索加密方法流程图;FIG. 6 is a flowchart of a searchable encryption method provided by Embodiment 4 of the present invention;
图7是本发明实施例三、四提供的一种可搜索加密方法示意图;Fig. 7 is a schematic diagram of a searchable encryption method provided by Embodiments 3 and 4 of the present invention;
图8是本发明实施例五提供的一种可搜索加密方法流程图;FIG. 8 is a flow chart of a searchable encryption method provided in Embodiment 5 of the present invention;
图9是本发明实施例六提供的一种可搜索加密方法流程图;FIG. 9 is a flow chart of a searchable encryption method provided by Embodiment 6 of the present invention;
图10是本发明实施例五、六提供的一种可搜索加密方法示意图;Fig. 10 is a schematic diagram of a searchable encryption method provided by Embodiments 5 and 6 of the present invention;
图11是本发明实施例七提供的一种可搜索加密方法流程图;Fig. 11 is a flowchart of a searchable encryption method provided by Embodiment 7 of the present invention;
图12是本发明实施例七提供的一种可搜索加密方法流程图;Fig. 12 is a flowchart of a searchable encryption method provided by Embodiment 7 of the present invention;
图13是本发明实施例七、八提供的一种可搜索加密方法示意图;Fig. 13 is a schematic diagram of a searchable encryption method provided by Embodiments 7 and 8 of the present invention;
图14是本发明实施例九提供的一种加密设备的装置结构图;FIG. 14 is a device structural diagram of an encryption device provided in Embodiment 9 of the present invention;
图15是本发明实施例十提供的一种搜索设备的装置结构图;FIG. 15 is a device structure diagram of a search device provided in Embodiment 10 of the present invention;
图16是本发明实施例十一提供的一种加密设备的装置结构图;Fig. 16 is a device structure diagram of an encryption device provided by Embodiment 11 of the present invention;
图17是本发明实施例十二提供的一种搜索设备的装置结构图;FIG. 17 is a device structure diagram of a search device provided in Embodiment 12 of the present invention;
图18是本发明实施例十三提供的一种加密设备的装置结构图;Fig. 18 is a device structure diagram of an encryption device provided by Embodiment 13 of the present invention;
图19是本发明实施例十四提供的一种搜索设备的装置结构图;FIG. 19 is a device structure diagram of a search device provided by Embodiment 14 of the present invention;
图20是本发明实施例十五提供的一种加密设备的装置结构图;Fig. 20 is a device structural diagram of an encryption device provided in Embodiment 15 of the present invention;
图21是本发明实施例十六提供的一种搜索设备的装置结构图。Fig. 21 is a device structural diagram of a search device provided by Embodiment 16 of the present invention.
具体实施方式detailed description
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。In order to make the object, technical solution and advantages of the present invention clearer, the present invention will be further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described here are only used to explain the present invention, not to limit the present invention.
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。The above descriptions are only preferred embodiments of the present invention, and are not intended to limit the present invention. Any modifications, equivalent replacements and improvements made within the spirit and principles of the present invention should be included in the protection of the present invention. within range.
实施例一Embodiment one
参考图1,图1是本发明实施例一提供的一种可搜索加密方法流程图。如图1所示,该方法包括以下步骤:Referring to FIG. 1 , FIG. 1 is a flowchart of a searchable encryption method provided by Embodiment 1 of the present invention. As shown in Figure 1, the method includes the following steps:
步骤101,获取搜索方的身份信息以及密钥管理中心的系统参数,所述搜索方包括单个搜索者或者多个搜索者所在的群组,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;Step 101, acquire the identity information of the searcher and the system parameters of the key management center, the searcher includes a single searcher or a group of multiple searchers, the identity information of the searcher includes the single searcher's Identity information or identity information of the group in which the plurality of searchers belong;
其中,所述搜索方的身份信息包括但不限于搜索方的手机号码、工号、QQ号、Email等信息。所述获取搜索方的身份信息的方式包括但不限于通过电话查询或者邮件查询等方式获得。所述搜索方所在群的身份信息包括但不限于搜索方所在群的QQ群号、部门名称等信息。所述获取搜索方所在群的身份的方式包括但不限于通过电话查询或者邮件查询等方式获得。所述密钥管理中心负责向发送方下发用于计算加密公钥的系统参数,还可以进一步向搜索方或者搜索方所在群下发所述加密公钥对应的私钥,即查询密钥,所述系统参数包括但不限于椭圆曲线密码参数组,映射函数和映射方法。Wherein, the identity information of the searcher includes but not limited to the searcher's mobile phone number, job number, QQ number, Email and other information. The method of obtaining the identity information of the searcher includes but is not limited to obtaining through telephone inquiry or email inquiry. The identity information of the searcher's group includes, but is not limited to, the QQ group number and department name of the searcher's group. The method of obtaining the identity of the group where the searcher belongs includes, but is not limited to, obtaining through telephone inquiry or mail inquiry. The key management center is responsible for issuing the system parameters used to calculate the encrypted public key to the sender, and may further issue the private key corresponding to the encrypted public key, that is, the query key, to the searcher or the searcher's group, The system parameters include but are not limited to elliptic curve cryptographic parameter sets, mapping functions and mapping methods.
具体的,由身份得到的映射参数是一致的,而公钥的计算方式是由映射参数和公钥因子矩阵相乘得到的,私钥的计算方式是由映射参数和私钥因子矩阵相乘得到的,因此,保证了公钥和私钥的一一对应。Specifically, the mapping parameters obtained from the identity are consistent, and the calculation method of the public key is obtained by multiplying the mapping parameters and the public key factor matrix, and the calculation method of the private key is obtained by multiplying the mapping parameters and the private key factor matrix , therefore, guarantees a one-to-one correspondence between public and private keys.
本步骤中,所述密钥管理中心可以采用离线的方式工作,即发送所述身份信息和系统参数,以及发送查询密钥的时间并不限定,可以在离线之前将系统参数下发给发送方,并将计算出的加密公钥所对应的查询密钥下发给搜索方或者搜索方所在群,也可以在线提供。In this step, the key management center can work in an offline manner, that is, the time for sending the identity information and system parameters, and sending the query key is not limited, and the system parameters can be sent to the sender before going offline , and send the query key corresponding to the calculated encrypted public key to the searcher or the group to which the searcher belongs, or provide it online.
步骤102,根据所述搜索方的身份信息以及所述系统参数对关键词进行加密,并将加密后的关键词密文上传到存储服务器。Step 102, encrypt keywords according to the identity information of the searcher and the system parameters, and upload the encrypted keyword ciphertext to the storage server.
具体的,所述根据所述搜索方的身份信息以及所述系统参数对关键词进行加密,包括:Specifically, encrypting keywords according to the identity information of the searcher and the system parameters includes:
根据所述搜索方的身份信息以及所述系统参数,计算出用来加密所述关键词的加密公钥,并根据所述计算出的加密公钥加密所述关键词。According to the identity information of the searcher and the system parameters, an encryption public key used to encrypt the keyword is calculated, and the keyword is encrypted according to the calculated encryption public key.
本步骤中,发送方只需要知道搜索方的身份信息或者搜索方所在群组的身份信息即可实现关键词的加密,使得发送方不需要从在线的公钥数据库或者证书库下载加密公钥,降低了网络带宽和存储开销。In this step, the sender only needs to know the identity information of the searcher or the identity information of the searcher's group to encrypt keywords, so that the sender does not need to download the encrypted public key from the online public key database or certificate library. Reduced network bandwidth and storage overhead.
本发明实施例提供一种基于身份的可搜索加密方法,所述方法中发送方只需要知道搜索方的身份或者搜索方所在群即可实现关键词的加密方法,使得发送方不需要下载多个搜索方的身份或者搜索方所在群的公钥,不需要在线公钥数据库支撑,降低了网络带宽和存储开销。An embodiment of the present invention provides an identity-based searchable encryption method. In the method, the sender only needs to know the identity of the searcher or the group the searcher is in to implement the keyword encryption method, so that the sender does not need to download multiple The identity of the searcher or the public key of the searcher's group does not need the support of an online public key database, which reduces network bandwidth and storage overhead.
实施例二Embodiment two
参考图2,图2是本发明实施例二提供的一种基于身份的可搜索加密方法流程图。如图2所示,该方法包括以下步骤:Referring to FIG. 2, FIG. 2 is a flow chart of an identity-based searchable encryption method provided by Embodiment 2 of the present invention. As shown in Figure 2, the method includes the following steps:
步骤201,根据搜索方的身份信息从密钥管理中心获取查询密钥,所述搜索方包括单个搜索者或者多个搜索者所在的群组,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;Step 201, obtain the query key from the key management center according to the identity information of the searcher, the searcher includes a single searcher or a group of multiple searchers, the identity information of the searcher includes the single searcher or the identity information of the groups in which the multiple searchers belong;
其中,查询密钥是所述密钥管理中心根据所述搜索方的身份信息以及系统参数生成的加密密钥所对应的私钥。所述密钥管理中心同样可以计算公钥,因为所述密钥管理中心存储有公钥因子矩阵,而私钥只存在于所述密钥管理中心,不对外布。Wherein, the query key is a private key corresponding to an encryption key generated by the key management center according to the identity information of the search party and system parameters. The key management center can also calculate the public key, because the key management center stores the public key factor matrix, and the private key only exists in the key management center and is not released.
步骤202,根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文,并接收所述存储服务器返回的查询结果。Step 202: Generate a query token according to the keyword and the obtained query key, query the encrypted keyword ciphertext from the storage server through the query token, and receive the query result returned by the storage server.
其中,所述根据关键词和所述获取的查询密钥生成查询令牌,包括:Wherein, the generating the query token according to the keyword and the obtained query key includes:
根据搜索方的一个或者多个关键词和所述获取的查询密钥生成查询令牌。A query token is generated according to one or more keywords of the search party and the obtained query key.
通过上述一个或者多个关键词的方式,可以实现搜索方对所述一个或多个关键词在所述存储服务器进行搜索查询。By means of the above one or more keywords, the searcher can perform a search query on the storage server for the one or more keywords.
可优选的,所述根据关键词和所述获取的查询密钥生成查询令牌,包括:Preferably, the generating the query token according to the keyword and the obtained query key includes:
当根据搜索方所在群的身份信息从密钥管理中心获取查询密钥时,所述搜索方向所述搜索方所在群递交关键词,所述搜索方所在群检查所述搜索方是否是群内的成员,若是,则所述搜索方所在群根据所述关键词和所述查询密钥生成查询令牌,并将所述查询令牌返回到所述搜索方。通过搜索方所在群对搜索方查询进行管理和控制,从而实现多用户搜索的目的。When obtaining the query key from the key management center according to the identity information of the searcher's group, the searcher submits keywords to the searcher's group, and the searcher's group checks whether the searcher is in the group member, if yes, the group of the searcher generates a query token according to the keyword and the query key, and returns the query token to the searcher. The query of the searcher is managed and controlled through the group where the searcher belongs, so as to realize the purpose of multi-user search.
图3和图4是本发明实施例一和二提供的一种基于身份的可搜索加密方法示意图,现以信令交互的方式具体说明实施例一和二中所述的一种基于身份的可搜索加密方法。同时,本发明实施例的实现方式包括图3和图4的步骤,但不限于各步骤的顺序,图3和图4只是一种可优选的实施例。如图3所示,所述方法包括如下步骤:Figures 3 and 4 are schematic diagrams of an identity-based searchable encryption method provided by Embodiments 1 and 2 of the present invention. Now, the identity-based searchable encryption method described in Embodiments 1 and 2 will be specifically described in the form of signaling interaction. Search for encryption methods. Meanwhile, the implementation of the embodiment of the present invention includes the steps in FIG. 3 and FIG. 4 , but is not limited to the sequence of the steps. FIG. 3 and FIG. 4 are just a preferred embodiment. As shown in Figure 3, the method includes the following steps:
步骤301,发送方从密钥管理中心获取系统参数,并同时获取搜索方的身份信息,所述搜索方包括单个搜索者或者多个搜索者所在的群组,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;Step 301, the sender obtains the system parameters from the key management center, and at the same time obtains the identity information of the searcher, the searcher includes a single searcher or a group of multiple searchers, and the searcher's identity information includes all The identity information of the single searcher or the identity information of the group in which the plurality of searchers belong;
步骤302,发送方根据搜索方的身份信息和系统参数获得对关键词进行加密的加密密钥,根据所述加密密钥加密关键词并将加密后的关键词密文上传到存储服务器;Step 302, the sender obtains an encryption key for encrypting the keyword according to the searcher's identity information and system parameters, encrypts the keyword according to the encryption key, and uploads the encrypted keyword ciphertext to the storage server;
步骤303,搜索方根据自己相关的身份信息从所述密钥管理中心获取查询密钥;Step 303, the search party obtains the query key from the key management center according to its own relevant identity information;
步骤304,搜索方根据所述查询密钥和关键词生成查询令牌;Step 304, the searcher generates a query token according to the query key and keywords;
步骤305,搜索方上传所述查询令牌到所述存储服务器;Step 305, the searcher uploads the query token to the storage server;
步骤306,搜索方从所述存储服务器接收返回的查询结果。Step 306, the searcher receives the returned query result from the storage server.
如图4所示,所述方法包括如下步骤:As shown in Figure 4, the method includes the following steps:
步骤401,发送方从密钥管理中心获取系统参数,并同时获取搜索方的身份信息,所述搜索方包括单个搜索者或者多个搜索者所在的群组,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;Step 401, the sender obtains the system parameters from the key management center, and at the same time obtains the identity information of the searcher, the searcher includes a single searcher or a group of multiple searchers, and the searcher's identity information includes all The identity information of the single searcher or the identity information of the group in which the plurality of searchers belong;
步骤402,发送方根据搜索方的身份信息和系统参数获得对关键词进行加密的加密密钥,根据所述加密密钥加密关键词并将加密后的关键词密文上传到存储服务器;Step 402, the sender obtains an encryption key for encrypting the keyword according to the searcher's identity information and system parameters, encrypts the keyword according to the encryption key, and uploads the encrypted keyword ciphertext to the storage server;
步骤403,搜索方所在群根据所述群的身份信息从所述密钥管理中心获取查询密钥;Step 403, the searcher's group obtains the query key from the key management center according to the identity information of the group;
步骤404,所述搜索方向搜索方所在群递交关键词,向搜索方所在群申请查询令牌;Step 404, the searcher submits keywords to the searcher's group, and applies for a query token to the searcher's group;
步骤405,搜索方所在群检查所述搜索方是否是群内成员,若是,则生成查询令牌,若不是,则不生成查询令牌;Step 405, the searcher's group checks whether the searcher is a member of the group, if so, generate a query token, if not, then do not generate a query token;
步骤406,所述搜索方接收所述群下发的查询令牌;Step 406, the searcher receives the query token issued by the group;
步骤407,搜索方上传所述查询令牌到所述存储服务器;Step 407, the searcher uploads the query token to the storage server;
步骤408,搜索方从所述存储服务器接收返回的查询结果。Step 408, the searcher receives the returned query result from the storage server.
本发明实施例提供一种基于身份的可搜索加密方法,所述方法通过上述一个或者多个关键词的方式,可以实现搜索方对所述一个或多个关键词在所述存储服务器进行搜索查询。同时通过搜索方所在群对搜索方查询进行管理和控制,从而实现多用户搜索的目的。An embodiment of the present invention provides an identity-based searchable encryption method. The method can realize the search query of the one or more keywords in the storage server by the searcher through the above-mentioned one or more keywords. . At the same time, the query of the searcher is managed and controlled through the group where the searcher belongs, so as to realize the purpose of multi-user search.
实施例三Embodiment three
参考图5,图5是本发明实施例三提供的一种基于身份的可搜索加密方法流程图。如图5所示,所述方法包括以下步骤:Referring to FIG. 5 , FIG. 5 is a flowchart of an identity-based searchable encryption method provided by Embodiment 3 of the present invention. As shown in Figure 5, the method includes the following steps:
步骤501,获取搜索方的身份或者搜索方所在群的身份,和密钥管理中心的系统参数;Step 501, obtaining the identity of the searcher or the identity of the group to which the searcher belongs, and the system parameters of the key management center;
步骤502,根据所述搜索方的身份或者搜索方所在群的身份,和所述系统参数加密关键词,并将加密后的关键词密文上传到存储服务器;Step 502, according to the identity of the searcher or the identity of the searcher's group, and the system parameters to encrypt keywords, and upload the encrypted keyword ciphertext to the storage server;
步骤503,根据现有技术中任意一种加密的方法加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器。Step 503, encrypt the plaintext data according to any encryption method in the prior art, and upload the ciphertext of the encrypted plaintext data to the storage server.
本步骤中,通过现有技术中任意一种加密的方法加密所述关键词对应的明文数据。In this step, the plaintext data corresponding to the keyword is encrypted by any encryption method in the prior art.
本发明实施例对于搜索方或者搜索方所在群都适用,下面主要以搜索方为例做进一步说明。具体参考图7所示的步骤703。The embodiment of the present invention is applicable to the searcher or the group to which the searcher belongs, and the following mainly takes the searcher as an example for further description. For details, refer to step 703 shown in FIG. 7 .
本发明实施例通过本发明实施例一和二提供的一种基于身份的可搜索加密方法加密关键词,通过现有技术加密所述关键词对应的明文数据,从而实现在现有技术的基础上,实现基于身份的可搜索加密关键词的方案。The embodiment of the present invention encrypts keywords through an identity-based searchable encryption method provided by Embodiments 1 and 2 of the present invention, and encrypts the plaintext data corresponding to the keywords through the existing technology, so as to achieve based on the existing technology , to implement an identity-based searchable encrypted keyword scheme.
实施例四Embodiment four
参考图6,图6是本发明实施例四提供的一种基于身份的可搜索加密方法流程图。如图6所示,所述方法包括如下步骤:Referring to FIG. 6 , FIG. 6 is a flowchart of an identity-based searchable encryption method provided by Embodiment 4 of the present invention. As shown in Figure 6, the method includes the following steps:
步骤601,根据搜索方的身份或者搜索方所在群的身份从密钥管理中心获取查询密钥;Step 601, obtain the query key from the key management center according to the identity of the searcher or the identity of the group to which the searcher belongs;
步骤602,根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文,并接收所述存储服务器返回的数据;Step 602, generate a query token according to the keyword and the obtained query key, query the encrypted keyword ciphertext from the storage server through the query token, and receive the data returned by the storage server;
步骤603,获取现有技术中任意一种加密明文数据的方法对应的解密密钥;Step 603, obtaining a decryption key corresponding to any method for encrypting plaintext data in the prior art;
步骤604,根据所述现有技术中任意一种加密明文数据的方法对应的解密密钥,对所述加密后的明文数据的密文进行解密,获得解密后的明文数据。Step 604: Decrypt the ciphertext of the encrypted plaintext data according to the decryption key corresponding to any method for encrypting plaintext data in the prior art, to obtain decrypted plaintext data.
本步骤中,通过现有技术中任意一种加密的方法对应的解密方法解密所述关键词对应的明文数据。In this step, the plaintext data corresponding to the keyword is decrypted by using a decryption method corresponding to any encryption method in the prior art.
本发明实施例对于搜索方或者搜索方所在群都适用,下面主要以搜索方为例做进一步说明。具体参考图7所示的步骤708和步骤709。The embodiment of the present invention is applicable to the searcher or the group to which the searcher belongs, and the following mainly takes the searcher as an example for further description. For details, refer to step 708 and step 709 shown in FIG. 7 .
图7是本发明实施例三和实施例四提供的一种基于身份的可搜索加密方法,现以信令交互的方式具体说明实施例三和四中所述的一种基于身份的可搜索加密方法,同时,本发明实施例的实现方式包括图7的步骤,但不限于各步骤的顺序,图7只是一种可优选的实施例。如图7所示,所述方法包括如下步骤:Fig. 7 is an identity-based searchable encryption method provided by Embodiment 3 and Embodiment 4 of the present invention. The identity-based searchable encryption method described in Embodiment 3 and Embodiment 4 is now specifically described in the form of signaling interaction. method, meanwhile, the implementation of the embodiment of the present invention includes the steps in FIG. 7 , but is not limited to the sequence of the steps, and FIG. 7 is only a preferred embodiment. As shown in Figure 7, the method includes the following steps:
步骤701,发送方从密钥管理中心获取系统参数,并同时获取搜索方的身份信息,所述搜索方包括单个搜索者或者多个搜索者所在的群组,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;Step 701, the sender obtains the system parameters from the key management center, and at the same time obtains the identity information of the searcher, the searcher includes a single searcher or a group of multiple searchers, and the searcher's identity information includes all The identity information of the single searcher or the identity information of the group in which the plurality of searchers belong;
步骤702,发送方根据搜索方的身份信息和系统参数获得对关键词进行加密的加密密钥,根据所述加密密钥加密关键词并将加密后的关键词密文上传到存储服务器;Step 702, the sender obtains an encryption key for encrypting the keyword according to the searcher's identity information and system parameters, encrypts the keyword according to the encryption key, and uploads the encrypted keyword ciphertext to the storage server;
步骤703,所述发送方根据现有技术中任意一种加密的方法加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器;Step 703, the sender encrypts the plaintext data according to any encryption method in the prior art, and uploads the ciphertext of the encrypted plaintext data to the storage server;
步骤704,搜索方根据自己相关的身份信息从所述密钥管理中心获取查询密钥;Step 704, the searcher obtains the query key from the key management center according to its own identity information;
步骤705,搜索方根据所述查询密钥和关键词生成查询令牌;Step 705, the searcher generates a query token according to the query key and keywords;
步骤706,搜索方上传所述查询令牌到所述存储服务器;Step 706, the searcher uploads the query token to the storage server;
步骤707,搜索方从所述存储服务器接收返回的查询结果;Step 707, the searcher receives the returned query result from the storage server;
步骤708,所述搜索方获取现有技术中任意一种加密明文数据的方法对应的解密密钥;Step 708, the searcher obtains a decryption key corresponding to any method for encrypting plaintext data in the prior art;
步骤709,根据所述现有技术中任意一种加密明文数据的方法对应的解密密钥,对所述加密后的明文数据的密文进行解密,获得解密后的明文数据。Step 709: Decrypt the ciphertext of the encrypted plaintext data according to the decryption key corresponding to any method for encrypting plaintext data in the prior art, to obtain decrypted plaintext data.
本发明实施例通过本发明实施例一和二提供的一种基于身份的可搜索加密方法加密关键词,通过现有技术加密所述关键词对应的明文数据,从而实现在现有技术的基础上,实现基于身份的可搜索加密关键词的方案。The embodiment of the present invention encrypts keywords through an identity-based searchable encryption method provided by Embodiments 1 and 2 of the present invention, and encrypts the plaintext data corresponding to the keywords through the existing technology, so as to achieve based on the existing technology , to implement an identity-based searchable encrypted keyword scheme.
实施例五Embodiment five
参考图8,图8是本发明实施例五提供的一种基于身份的可搜索加密方法流程图。所述方法包括如下步骤:Referring to FIG. 8 , FIG. 8 is a flowchart of an identity-based searchable encryption method provided by Embodiment 5 of the present invention. The method comprises the steps of:
步骤801,获取搜索方的身份或者搜索方所在群的身份,和密钥管理中心的系统参数;Step 801, obtaining the identity of the searcher or the identity of the group to which the searcher belongs, and the system parameters of the key management center;
步骤802,根据所述搜索方的身份或者搜索方所在群的身份,和所述系统参数加密关键词,并将加密后的关键词密文上传到存储服务器;Step 802, according to the identity of the searcher or the identity of the searcher's group, and the system parameters to encrypt keywords, and upload the encrypted keyword ciphertext to the storage server;
步骤803,根据所述搜索方的身份和所述系统参数加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器。Step 803: Encrypt the plaintext data according to the identity of the searcher and the system parameters, and upload the ciphertext of the encrypted plaintext data to the storage server.
具体的,所述根据所述搜索方的身份和所述系统参数加密明文数据,包括:Specifically, encrypting the plaintext data according to the identity of the searcher and the system parameters includes:
根据所述搜索方的身份和所述系统参数计算出加密所述明文数据的公钥,并根据所述计算出的公钥加密所述明文数据。calculating a public key for encrypting the plaintext data according to the identity of the searcher and the system parameters, and encrypting the plaintext data according to the calculated public key.
本发明实施例对于搜索方或者搜索方所在群都适用,下面主要以搜索方为例做进一步说明。具体参考图10所示的步骤1003。The embodiment of the present invention is applicable to the searcher or the group to which the searcher belongs, and the following mainly takes the searcher as an example for further description. For details, refer to step 1003 shown in FIG. 10 .
本发明实施例通过使用搜索方的身份和系统参数计算出的公钥加密关键词对应的明文数据,使得搜索方只需要通过所述公钥对应的私钥解密所述明文数据即可,可以通过一对公钥和私钥同时实现对关键词和明文数据同时加密,使得操作简单。所述密钥管理中心同时具备查询和解密全部数据的能力,可以实现集中式数据管理,在对公司及一些政府机关尤其重要。In the embodiment of the present invention, the plaintext data corresponding to the keyword is encrypted by using the public key calculated by the searcher's identity and system parameters, so that the searcher only needs to decrypt the plaintext data through the private key corresponding to the public key. A pair of public key and private key can encrypt keywords and plaintext data at the same time, making the operation simple. The key management center has the ability to query and decrypt all data at the same time, and can realize centralized data management, which is especially important for companies and some government agencies.
实施例六Embodiment six
参考图9,图9是本发明实施例六提供的一种基于身份的可搜索加密方法流程图。如图9所示,所述方法包括如下步骤:Referring to FIG. 9 , FIG. 9 is a flowchart of an identity-based searchable encryption method provided by Embodiment 6 of the present invention. As shown in Figure 9, the method includes the following steps:
步骤901,根据搜索方的身份或者搜索方所在群的身份从密钥管理中心获取查询密钥;Step 901, obtaining the query key from the key management center according to the identity of the searcher or the identity of the group to which the searcher belongs;
步骤902,根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文,并接收所述存储服务器返回的数据;Step 902, generate a query token according to the keyword and the obtained query key, query the encrypted keyword ciphertext from the storage server through the query token, and receive the data returned by the storage server;
步骤903,根据所述查询密钥,对所述根据搜索方的身份加密的明文数据的密文进行解密,获得解密后的明文数据。Step 903, according to the query key, decrypt the ciphertext of the plaintext data encrypted according to the identity of the searcher, to obtain decrypted plaintext data.
本发明实施例对于搜索方或者搜索方所在群都适用,下面主要以搜索方为例做进一步说明。具体参考图10所示的步骤1008。The embodiment of the present invention is applicable to the searcher or the group to which the searcher belongs, and the following mainly takes the searcher as an example for further description. For details, refer to step 1008 shown in FIG. 10 .
图10是本发明实施例五和实施例六提供的一种基于身份的可搜索加密方法,现以信令交互的方式具体说明实施例五和六中所述的一种基于身份的可搜索加密方法,同时,本发明实施例的实现方式包括图10的步骤,但不限于各步骤的顺序,图10只是一种可优选的实施例。如图10所示,所述方法包括如下步骤:Figure 10 is an identity-based searchable encryption method provided by Embodiment 5 and Embodiment 6 of the present invention. Now, the identity-based searchable encryption method described in Embodiment 5 and Embodiment 6 is specifically described in the form of signaling interaction. method, meanwhile, the implementation of the embodiment of the present invention includes the steps in FIG. 10 , but is not limited to the sequence of the steps, and FIG. 10 is just a preferred embodiment. As shown in Figure 10, the method includes the following steps:
步骤1001,发送方从密钥管理中心获取系统参数,并同时获取搜索方的身份信息,所述搜索方包括单个搜索者或者多个搜索者所在的群组,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;Step 1001, the sender obtains the system parameters from the key management center, and at the same time obtains the identity information of the searcher, the searcher includes a single searcher or a group of multiple searchers, and the searcher's identity information includes all The identity information of the single searcher or the identity information of the group in which the plurality of searchers belong;
步骤1002,发送方根据搜索方的身份信息和系统参数获得对关键词进行加密的加密密钥,根据所述加密密钥加密关键词并将加密后的关键词密文上传到存储服务器;Step 1002, the sender obtains an encryption key for encrypting the keyword according to the searcher's identity information and system parameters, encrypts the keyword according to the encryption key, and uploads the encrypted keyword ciphertext to the storage server;
步骤1003,根据所述搜索方的身份和所述系统参数加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器;Step 1003, encrypting the plaintext data according to the identity of the searcher and the system parameters, and uploading the ciphertext of the encrypted plaintext data to the storage server;
步骤1004,搜索方根据自己相关的身份信息从所述密钥管理中心获取查询密钥;Step 1004, the searcher obtains the query key from the key management center according to its own identity information;
步骤1005,搜索方根据所述查询密钥和关键词生成查询令牌;Step 1005, the searcher generates a query token according to the query key and keywords;
步骤1006,搜索方上传所述查询令牌到所述存储服务器;Step 1006, the searcher uploads the query token to the storage server;
步骤1007,搜索方从所述存储服务器接收返回的查询结果;Step 1007, the searcher receives the returned query result from the storage server;
步骤1008,根据所述查询密钥,对所述根据搜索方的身份加密的明文数据的密文进行解密,获得解密后的明文数据。Step 1008, according to the query key, decrypt the ciphertext of the plaintext data encrypted according to the identity of the searcher to obtain decrypted plaintext data.
本发明实施例通过使用搜索方的身份和系统参数计算出的公钥加密关键词对应的明文数据,使得搜索方只需要通过所述公钥对应的私钥解密所述明文数据即可,可以通过一对公钥和私钥同时实现对关键词和明文数据同时加密,使得操作简单。所述密钥管理中心同时具备查询和解密全部数据的能力,可以实现集中式数据管理,在对公司及一些政府机关尤其重要。In the embodiment of the present invention, the plaintext data corresponding to the keyword is encrypted by using the public key calculated by the searcher's identity and system parameters, so that the searcher only needs to decrypt the plaintext data through the private key corresponding to the public key. A pair of public key and private key can encrypt keywords and plaintext data at the same time, making the operation simple. The key management center has the ability to query and decrypt all data at the same time, and can realize centralized data management, which is especially important for companies and some government agencies.
实施例七Embodiment seven
参考图11,图11是本发明实施例七提供的一种基于身份的可搜索加密方法流程图。如图11所示,所述方法包括以下步骤:Referring to FIG. 11 , FIG. 11 is a flowchart of an identity-based searchable encryption method provided by Embodiment 7 of the present invention. As shown in Figure 11, the method includes the following steps:
步骤1101,获取搜索方的身份或者搜索方所在群的身份,和密钥管理中心的系统参数;Step 1101, obtaining the identity of the searcher or the identity of the group to which the searcher belongs, and the system parameters of the key management center;
步骤1102,根据所述搜索方的身份或者搜索方所在群的身份,和所述系统参数加密关键词,并将加密后的关键词密文上传到存储服务器;Step 1102, according to the identity of the searcher or the identity of the searcher's group, and the system parameters to encrypt keywords, and upload the encrypted keyword ciphertext to the storage server;
步骤1103,根据所述搜索方的属性加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器。Step 1103, encrypt the plaintext data according to the attribute of the searcher, and upload the ciphertext of the encrypted plaintext data to the storage server.
具体的,所述属性包括但不限于以下几种情况:例如,公司职员A所在的部门是某某公司研发部A组,则公司职员A的属性可以设置为某某公司研发部A组,或者设置为其他形式。发送方根据公司职员A的属性加密关键词对应的明文数据,并将加密后的密文上传到所述存储服务器。Specifically, the attributes include but are not limited to the following situations: For example, if the department of employee A is Group A of the R&D department of a certain company, the attribute of employee A of the company can be set to Group A of the R&D department of a certain company, or Set to another form. The sender encrypts the plaintext data corresponding to the keywords according to the attributes of company employee A, and uploads the encrypted ciphertext to the storage server.
具体的,根据所述搜索方的属性加密明文数据时,产生的加密密钥和根据所述搜索方的身份加密明文数据产生的加密密钥不同。当根据所述搜索方的身份加密明文数据时,是根据所述搜索方的身份和系统参数生成公钥,发送方根据公钥对明文数据加密,搜索方根据公钥对应的私钥对加密后的明文数据进行解密。当根据搜索方的属性对明文数据进行加密时,是根据属性生成加密明文数据的加密密钥,生成密钥的方式和生成公钥的方式不同。Specifically, when the plaintext data is encrypted according to the attribute of the searcher, the generated encryption key is different from the encryption key generated by encrypting the plaintext data according to the identity of the searcher. When encrypting plaintext data according to the identity of the searcher, a public key is generated according to the identity of the searcher and system parameters, the sender encrypts the plaintext data according to the public key, and the searcher encrypts the data according to the private key corresponding to the public key The plaintext data is decrypted. When the plaintext data is encrypted according to the attribute of the searcher, the encryption key for encrypting the plaintext data is generated according to the attribute, and the method of generating the key is different from the method of generating the public key.
本发明实施例对于搜索方或者搜索方所在群都适用,下面主要以搜索方为例做进一步说明。具体参考图13所示的步骤1303。The embodiment of the present invention is applicable to the searcher or the group to which the searcher belongs, and the following mainly takes the searcher as an example for further description. For details, refer to step 1303 shown in FIG. 13 .
本发明实施例通过属性加密搜索方关键词对应的明文属性,使得搜索方可以根据预先设置的属性设置访问权限,对群组成员可以进行多种关键词检索的同时,对群组数据的公共可搜索性和数据的解密权限进行有效的结合。The embodiment of the present invention encrypts the plaintext attributes corresponding to the keywords of the searcher through attribute encryption, so that the searcher can set the access authority according to the preset attributes, and can perform multiple keyword searches on group members, and at the same time, publicly available group data Effective combination of searchability and data decryption authority.
实施例八Embodiment eight
参考图12,图12是本发明实施例八提供的一种基于身份的可搜索加密方法流程图。如图12所示,所述方法包括以下步骤:Referring to FIG. 12 , FIG. 12 is a flowchart of an identity-based searchable encryption method provided by Embodiment 8 of the present invention. As shown in Figure 12, the method includes the following steps:
步骤1201,根据搜索方的身份或者搜索方所在群的身份从密钥管理中心获取查询密钥;Step 1201, obtain the query key from the key management center according to the identity of the searcher or the identity of the group to which the searcher belongs;
步骤1202,根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文,并接收所述存储服务器返回的数据;Step 1202, generate a query token according to the keyword and the obtained query key, query the encrypted keyword ciphertext from the storage server through the query token, and receive the data returned by the storage server;
步骤1203,根据预先设置的搜索方属性从所述密钥管理中心获取所述属性对应的数据解密密钥;Step 1203: Obtain the data decryption key corresponding to the attribute from the key management center according to the preset attribute of the searcher;
步骤1204,根据所述数据解密密钥,对所述存储服务器返回的根据所述预先设置的搜索方属性加密的明文数据的密文进行解密,获得解密后的明文数据。Step 1204, according to the data decryption key, decrypt the ciphertext of the plaintext data encrypted according to the preset searcher attribute returned by the storage server, and obtain decrypted plaintext data.
本发明实施例对于搜索方或者搜索方所在群都适用,下面主要以搜索方为例做进一步说明。具体参考图13所示的步骤1308和步骤1309。The embodiment of the present invention is applicable to the searcher or the group to which the searcher belongs, and the following mainly takes the searcher as an example for further description. For details, refer to step 1308 and step 1309 shown in FIG. 13 .
图13是本发明实施例七和实施例八提供的一种基于身份的可搜索加密方法,现以信令交互的方式具体说明实施例七和八中所述的一种基于身份的可搜索加密方法,同时,本发明实施例的实现方式包括图13的步骤,但不限于各步骤的顺序,图13只是一种可优选的实施例。如图13所示,所述方法包括如下步骤:Figure 13 is an identity-based searchable encryption method provided by Embodiment 7 and Embodiment 8 of the present invention. Now, the identity-based searchable encryption method described in Embodiment 7 and Embodiment 8 is specifically described in the form of signaling interaction. method, meanwhile, the implementation of the embodiment of the present invention includes the steps in FIG. 13 , but is not limited to the order of the steps, and FIG. 13 is just a preferred embodiment. As shown in Figure 13, the method includes the following steps:
步骤1301,发送方从密钥管理中心获取系统参数,并同时获取搜索方的身份信息,所述搜索方包括单个搜索者或者多个搜索者所在的群组,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;Step 1301, the sender obtains the system parameters from the key management center, and at the same time obtains the identity information of the searcher, the searcher includes a single searcher or a group of multiple searchers, and the searcher's identity information includes all The identity information of the single searcher or the identity information of the group in which the plurality of searchers belong;
步骤1302,发送方根据搜索方的身份信息和系统参数获得对关键词进行加密的加密密钥,根据所述加密密钥加密关键词并将加密后的关键词密文上传到存储服务器;Step 1302, the sender obtains an encryption key for encrypting the keyword according to the searcher's identity information and system parameters, encrypts the keyword according to the encryption key, and uploads the encrypted keyword ciphertext to the storage server;
步骤1303,所述发送方根据所述搜索方的属性加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器;Step 1303, the sender encrypts the plaintext data according to the attribute of the searcher, and uploads the ciphertext of the encrypted plaintext data to the storage server;
步骤1304,搜索方根据自己相关的身份信息从所述密钥管理中心获取查询密钥;Step 1304, the search party obtains the query key from the key management center according to its own identity information;
步骤1305,搜索方根据所述查询密钥和关键词生成查询令牌;Step 1305, the searcher generates a query token according to the query key and keywords;
步骤1306,搜索方上传所述查询令牌到所述存储服务器;Step 1306, the searcher uploads the query token to the storage server;
步骤1307,搜索方从所述存储服务器接收返回的查询结果;Step 1307, the searcher receives the returned query result from the storage server;
步骤1308,根据预先设置的搜索方属性从所述密钥管理中心获取所述属性对应的数据解密密钥;Step 1308: Obtain the data decryption key corresponding to the attribute from the key management center according to the preset attribute of the searcher;
步骤1309,根据所述数据解密密钥,对所述存储服务器返回的根据所述预先设置的搜索方属性加密的明文数据的密文进行解密,获得解密后的明文数据。Step 1309, according to the data decryption key, decrypt the ciphertext of the plaintext data encrypted according to the preset searcher attribute returned by the storage server, and obtain decrypted plaintext data.
本发明实施例通过属性加密搜索方关键词对应的明文数据,使得搜索方可以根据预先设置的属性设置访问权限,对群组成员可以进行多种关键词检索的同时,对群组数据的公共可搜索性和数据的解密权限进行有效的结合。The embodiment of the present invention encrypts the plaintext data corresponding to the keyword of the searcher through attribute encryption, so that the searcher can set the access authority according to the preset attribute, and can perform multiple keyword searches on group members, and at the same time, publicly available group data Effective combination of searchability and data decryption authority.
实施例九Embodiment nine
参考图14,图14是本发明实施例九提供的一种加密设备的装置结构图,所述设备包括以下单元:Referring to FIG. 14, FIG. 14 is a device structure diagram of an encryption device provided in Embodiment 9 of the present invention, and the device includes the following units:
第一获取单元1401和加密上传单元1402,所述第一获取单元1401用于执行实施例一中图1的步骤101,所述加密上传单元1402用于执行实施例一中图1的步骤102。A first obtaining unit 1401 and an encrypted uploading unit 1402. The first obtaining unit 1401 is used to execute step 101 in FIG. 1 in the first embodiment, and the encrypted upload unit 1402 is used to execute step 102 in FIG. 1 in the first embodiment.
本领域普通技术人员可以理解为所述本发明实施例九中的设备所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。Those of ordinary skill in the art can understand that each unit included in the device in Embodiment 9 of the present invention is only divided according to functional logic, but is not limited to the above-mentioned division, as long as the corresponding functions can be realized; in addition , the specific names of the functional units are only for the convenience of distinguishing each other, and are not used to limit the protection scope of the present application.
第一获取单元1401,用于获取搜索方的身份信息以及密钥管理中心的系统参数,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;The first obtaining unit 1401 is configured to obtain the identity information of the searcher and the system parameters of the key management center, the identity information of the searcher includes the identity information of the single searcher or the group in which the multiple searchers belong identity information;
其中,所述搜索方的身份包括但不限于搜索方的手机号码、工号、QQ号、Email等信息。所述获取搜索方的身份的方式包括但不限于通过电话查询或者邮件查询等方式获得。所述搜索方所在群的身份包括但不限于搜索方所在群的QQ群号、部门名称等信息。所述获取搜索方所在群的身份的方式包括但不限于通过电话查询或者邮件查询等方式获得。所述密钥管理中心负责向发送方下发加密关键词时使用的系统参数,同时向搜索方或者搜索方所在群下发发送方根据搜索方的身份或者搜索方所在群的身份和系统参数计算出的公钥对应的私钥,即查询密钥,采用公钥和私钥一一对应的方式管理发送方的公钥和搜索方或者搜索方所在群的私钥。具体参考图3中步骤301所示和图4中的步骤401。Wherein, the identity of the searcher includes but not limited to the searcher's mobile phone number, job number, QQ number, Email and other information. The method of obtaining the identity of the searcher includes but is not limited to obtaining by means of telephone inquiry or mail inquiry. The identity of the group where the searcher belongs includes, but is not limited to, the QQ group number and department name of the group where the searcher belongs. The way to obtain the identity of the group where the searcher belongs includes but is not limited to obtaining by means of phone inquiry or mail inquiry. The key management center is responsible for issuing the system parameters used when encrypting keywords to the sender, and at the same time sending the system parameters calculated by the sender based on the identity of the searcher or the identity of the group where the searcher is located and the system parameters to the searcher or the group where the searcher is located. The private key corresponding to the obtained public key, that is, the query key, is used to manage the public key of the sender and the private key of the searcher or the searcher's group in a one-to-one correspondence between the public key and the private key. For details, refer to step 301 in FIG. 3 and step 401 in FIG. 4 .
本单元中,所述密钥管理中心可以采用离线的方式工作,在离线之前将系统参数下发给发送方,并将搜索方计算出的公钥所对应的查询密钥下发给搜索方或者搜索方所在群即可。In this unit, the key management center can work in an offline manner, send the system parameters to the sender before going offline, and send the query key corresponding to the public key calculated by the searcher to the searcher or Just search for the group the party belongs to.
加密上传单元1402,用于根据所述搜索方的身份信息以及所述系统参数对关键词进行加密,并将加密后的关键词密文上传到存储服务器。An encryption uploading unit 1402, configured to encrypt keywords according to the identity information of the searcher and the system parameters, and upload the encrypted keyword ciphertext to the storage server.
具体的,所述根据所述搜索方的身份或者搜索方所在群的身份,和所述系统参数加密关键词,包括:Specifically, according to the identity of the searcher or the identity of the group where the searcher belongs, and the system parameter encryption keywords, include:
根据所述搜索方的身份或者搜索方所在群的身份,和所述系统参数计算出加密所述关键词的公钥,并根据所述计算出的公钥加密所述关键词。Calculate the public key for encrypting the keyword according to the identity of the searcher or the identity of the group to which the searcher belongs, and the system parameters, and encrypt the keyword according to the calculated public key.
本单元中,发送方只需要知道搜索方的身份或者搜索方所在群即可实现关键词的加密方法,使得发送方不需要下载多个搜索方的身份或者搜索方所在群的公钥,不需要在线公钥数据库支撑,降低了网络带宽和存储开销。同时由于对应发送方公钥的查询密钥是由所述密钥管理中心产生的,因此密钥管理中心能够查询和解密全部数据,实现集中式密钥托管功能,该功能在公司及一些政府机关尤其重要。具体参考图3的步骤302。In this unit, the sender only needs to know the identity of the searcher or the group where the searcher belongs to realize the encryption method of keywords, so that the sender does not need to download the identities of multiple searchers or the public keys of the group where the searcher belongs. Online public key database support reduces network bandwidth and storage overhead. At the same time, because the query key corresponding to the sender's public key is generated by the key management center, the key management center can query and decrypt all data, and realize the centralized key custody function. This function is used in companies and some government agencies. especially important. Refer to step 302 in FIG. 3 for details.
本发明实施例提供一种加密设备,所述加密设备中发送方只需要知道搜索方的身份或者搜索方所在群即可实现关键词的加密方法,使得发送方不需要下载多个搜索方的身份或者搜索方所在群的公钥,不需要在线公钥数据库支撑,降低了网络带宽和存储开销。An embodiment of the present invention provides an encryption device. In the encryption device, the sender only needs to know the identity of the searcher or the group of the searcher to implement the keyword encryption method, so that the sender does not need to download the identities of multiple searchers. Or the public key of the search party's group does not need the support of an online public key database, which reduces network bandwidth and storage overhead.
实施例十Embodiment ten
参考图15,图15是本发明实施例十提供的一种搜索设备的装置结构图,所述设备包括以下单元:Referring to FIG. 15, FIG. 15 is a device structure diagram of a search device provided in Embodiment 10 of the present invention, and the device includes the following units:
第二获取单元1501和查询接收单元1502,所述第二获取单元1501用于执行实施例二中图2的步骤201,所述加密上传单元1502用于执行实施例二中图2的步骤202。A second obtaining unit 1501 and a query receiving unit 1502, the second obtaining unit 1501 is used to execute step 201 in Figure 2 in the second embodiment, and the encrypted uploading unit 1502 is used to execute step 202 in Figure 2 in the second embodiment.
本领域普通技术人员可以理解为所述本发明实施例十中的设备所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。Those of ordinary skill in the art can understand that each unit included in the device in Embodiment 10 of the present invention is only divided according to functional logic, but is not limited to the above-mentioned division, as long as the corresponding functions can be realized; in addition , the specific names of the functional units are only for the convenience of distinguishing each other, and are not used to limit the protection scope of the present application.
第二获取单元1501,用于根据搜索方的身份信息从密钥管理中心获取查询密钥,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;The second obtaining unit 1501 is configured to obtain the query key from the key management center according to the identity information of the searcher, the identity information of the searcher includes the identity information of the single searcher or the group to which the multiple searchers belong Group identity information;
其中,查询密钥是所述密钥管理中心根据所述搜索方的身份或者搜索方所在群的身份生成的私钥。Wherein, the query key is a private key generated by the key management center according to the identity of the searcher or the identity of the group to which the searcher belongs.
查询接收单元1502,用于根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文。The query receiving unit 1502 is configured to generate a query token according to the keyword and the obtained query key, and query the encrypted keyword ciphertext from the storage server through the query token.
其中,所述根据关键词和所述获取的查询密钥生成查询令牌,包括:Wherein, the generating the query token according to the keyword and the obtained query key includes:
根据搜索方的一个或者多个关键词和所述获取的查询密钥生成查询令牌。A query token is generated according to one or more keywords of the search party and the obtained query key.
通过上述一个或者多个关键词的方式,可以实现搜索方对所述一个或多个关键词在所述存储服务器进行搜索查询。By means of the above one or more keywords, the searcher can perform a search query on the storage server for the one or more keywords.
可优选的,所述根据关键词和所述获取的查询密钥生成查询令牌,包括:Preferably, the generating the query token according to the keyword and the obtained query key includes:
当根据搜索方所在群的身份从密钥管理中心获取查询密钥时,所述搜索方向所述搜索方所在群递交关键词,所述搜索方所在群检查所述搜索方是否是群内的成员,若是,则所述搜索方所在群根据所述关键词和所述查询密钥生成查询令牌,并将所述查询令牌返回到所述搜索方。When obtaining the query key from the key management center according to the identity of the searcher's group, the searcher submits keywords to the searcher's group, and the searcher's group checks whether the searcher is a member of the group , if yes, the group of the searcher generates a query token according to the keyword and the query key, and returns the query token to the searcher.
本发明实施例提供一种搜索设备,所述搜索设备通过上述一个或者多个关键词的方式,可以实现搜索方对所述一个或多个关键词在所述存储服务器进行搜索查询。同时通过搜索方所在群对搜索方查询进行管理和控制,从而实现多用户搜索的目的。An embodiment of the present invention provides a search device, which enables a searcher to search and query the one or more keywords in the storage server by means of the one or more keywords. At the same time, the query of the searcher is managed and controlled through the group where the searcher belongs, so as to realize the purpose of multi-user search.
实施例十一Embodiment Eleven
参考图16,图16是本发明实施例十一提供的一种加密设备的装置结构图,所述设备包括以下单元:Referring to FIG. 16, FIG. 16 is a device structure diagram of an encryption device provided in Embodiment 11 of the present invention, and the device includes the following units:
第一获取单元1601和加密上传单元1602,第一加密单元1603,所述第一加密单元1603用于执行实施例五图8的步骤803。The first acquiring unit 1601, the encrypting and uploading unit 1602, and the first encrypting unit 1603, the first encrypting unit 1603 is used to execute step 803 in FIG. 8 of the fifth embodiment.
本领域普通技术人员可以理解为所述本发明实施例十一中的设备所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。Those of ordinary skill in the art can understand that each unit included in the device in the eleventh embodiment of the present invention is only divided according to functional logic, but is not limited to the above division, as long as the corresponding functions can be realized; In addition, the specific names of the functional units are only for the convenience of distinguishing each other, and are not used to limit the protection scope of the present application.
第一获取单元1601,用于获取搜索方的身份信息以及密钥管理中心的系统参数,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;The first acquiring unit 1601 is configured to acquire the identity information of the searcher and the system parameters of the key management center, the identity information of the searcher includes the identity information of the single searcher or the group of the multiple searchers identity information;
加密上传单元1602,用于根据所述搜索方的身份信息以及所述系统参数对关键词进行加密,并将加密后的关键词密文上传到存储服务器;An encryption uploading unit 1602, configured to encrypt keywords according to the identity information of the searcher and the system parameters, and upload the encrypted keyword ciphertext to the storage server;
第一加密单元1603,用于根据所述搜索方的身份信息和所述系统参数加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器。The first encryption unit 1603 is configured to encrypt plaintext data according to the identity information of the searcher and the system parameters, and upload the encrypted plaintext data to the storage server.
具体的,所述根据所述搜索方的身份和所述系统参数加密明文数据,包括:Specifically, encrypting the plaintext data according to the identity of the searcher and the system parameters includes:
根据所述搜索方的身份和所述系统参数计算出加密所述明文数据的公钥,并根据所述计算出的公钥加密所述明文数据。calculating a public key for encrypting the plaintext data according to the identity of the searcher and the system parameters, and encrypting the plaintext data according to the calculated public key.
本发明实施例对于搜索方或者搜索方所在群都适用,下面主要以搜索方为例做进一步说明。本发明实施例通过使用搜索方的身份和系统参数计算出的公钥加密关键词对应的明文数据,使得搜索方只需要通过所述公钥对应的私钥解密所述明文数据即可,可以通过一对公钥和私钥同时实现对关键词和明文数据同时加密,使得操作简单。所述密钥管理中心同时具备查询和解密全部数据的能力,可以实现集中式数据管理,在对公司及一些政府机关尤其重要。The embodiment of the present invention is applicable to the searcher or the group to which the searcher belongs, and the following mainly takes the searcher as an example for further description. In the embodiment of the present invention, the plaintext data corresponding to the keyword is encrypted by using the public key calculated by the searcher's identity and system parameters, so that the searcher only needs to decrypt the plaintext data through the private key corresponding to the public key. A pair of public key and private key can encrypt keywords and plaintext data at the same time, making the operation simple. The key management center has the ability to query and decrypt all data at the same time, and can realize centralized data management, which is especially important for companies and some government agencies.
实施例十二Embodiment 12
参考图17,图17是本发明实施例十二提供的一种搜索设备的装置结构图,所述设备包括以下单元:Referring to FIG. 17, FIG. 17 is a device structure diagram of a search device provided in Embodiment 12 of the present invention, and the device includes the following units:
第二获取单元1701和查询接收单元1702,第一解密单元1703,所述第一解密单元1703用于执行实施例六图9的步骤903。The second acquiring unit 1701, the query receiving unit 1702, and the first decrypting unit 1703, the first decrypting unit 1703 is configured to execute step 903 in FIG. 9 of the sixth embodiment.
本领域普通技术人员可以理解为所述本发明实施例十二中的设备所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。Those of ordinary skill in the art can understand that each unit included in the device in Embodiment 12 of the present invention is only divided according to functional logic, but is not limited to the above-mentioned division, as long as the corresponding functions can be realized; In addition, the specific names of the functional units are only for the convenience of distinguishing each other, and are not used to limit the protection scope of the present application.
第二获取单元1701,用于根据搜索方的身份信息从密钥管理中心获取查询密钥,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;The second obtaining unit 1701 is configured to obtain the query key from the key management center according to the identity information of the searcher, the identity information of the searcher includes the identity information of the single searcher or the group to which the multiple searchers belong Group identity information;
查询接收单元1702,用于根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文;A query receiving unit 1702, configured to generate a query token according to the keyword and the obtained query key, and query the encrypted keyword ciphertext from the storage server through the query token;
第一解密单元1703,用于根据所述查询密钥,对所述根据公钥加密的明文数据的密文进行解密,获得解密后的明文数据。The first decryption unit 1703 is configured to decrypt the ciphertext of the plaintext data encrypted according to the public key according to the query key, to obtain decrypted plaintext data.
本发明实施例通过使用搜索方的身份和系统参数计算出的公钥加密关键词对应的明文数据,使得搜索方只需要通过所述公钥对应的私钥解密所述密文数据即可,可以通过一对公钥和私钥同时实现对关键词和明文数据同时加密,使得操作简单。所述密钥管理中心同时具备查询和解密全部数据的能力,可以实现集中式数据管理,在对公司及一些政府机关尤其重要。In the embodiment of the present invention, the plaintext data corresponding to the keyword is encrypted by using the public key calculated by the searcher's identity and system parameters, so that the searcher only needs to decrypt the ciphertext data through the private key corresponding to the public key, and can Simultaneously encrypt keywords and plaintext data through a pair of public key and private key, making the operation simple. The key management center has the ability to query and decrypt all data at the same time, and can realize centralized data management, which is especially important for companies and some government agencies.
实施例十三Embodiment Thirteen
参考图18,图18是本发明实施例十三提供的一种加密设备的装置结构图,所述设备包括以下单元:Referring to FIG. 18, FIG. 18 is a device structure diagram of an encryption device provided by Embodiment 13 of the present invention, and the device includes the following units:
第一获取单元1801和加密上传单元1802,第二加密单元1803,所述第二加密单元1803用于执行实施例七图11的步骤1103。The first acquiring unit 1801, the encrypting and uploading unit 1802, and the second encrypting unit 1803, the second encrypting unit 1803 is used to execute step 1103 in FIG. 11 of the seventh embodiment.
本领域普通技术人员可以理解为所述本发明实施例十三中的设备所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。Those of ordinary skill in the art can understand that each unit included in the device in Embodiment 13 of the present invention is only divided according to functional logic, but is not limited to the above-mentioned division, as long as the corresponding functions can be realized; In addition, the specific names of the functional units are only for the convenience of distinguishing each other, and are not used to limit the protection scope of the present application.
第一获取单元1801,用于获取搜索方的身份信息以及密钥管理中心的系统参数,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;The first obtaining unit 1801 is configured to obtain the identity information of the searcher and the system parameters of the key management center, the identity information of the searcher includes the identity information of the single searcher or the group of the multiple searchers identity information;
加密上传单元1802,用于根据所述搜索方的身份信息以及所述系统参数对关键词进行加密,并将加密后的关键词密文上传到存储服务器;An encryption uploading unit 1802, configured to encrypt keywords according to the identity information of the searcher and the system parameters, and upload the encrypted keyword ciphertext to the storage server;
第二加密单元1803,用于根据所述搜索方的属性加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器。The second encryption unit 1803 is configured to encrypt the plaintext data according to the attribute of the searcher, and upload the ciphertext of the encrypted plaintext data to the storage server.
具体的,所述属性包括但不限于以下几种情况:例如,公司职员A所在的部门是某某公司研发部A组,则公司职员A的属性可以设置为某某公司研发部A组,或者设置为其他形式。发送方根据公司职员A的属性加密关键词对应的明文数据,并将加密后的密文上传到所述存储服务器。Specifically, the attributes include but are not limited to the following situations: For example, if the department of employee A is Group A of the R&D department of a certain company, the attribute of employee A of the company can be set to Group A of the R&D department of a certain company, or Set to another form. The sender encrypts the plaintext data corresponding to the keywords according to the attributes of company employee A, and uploads the encrypted ciphertext to the storage server.
本发明实施例通过属性加密搜索方关键词对应的明文属性,使得搜索方可以根据预先设置的属性设置访问权限,对群组成员可以进行多种关键词检索的同时,对群组数据的公共可搜索性和数据的解密权限进行有效的结合。The embodiment of the present invention encrypts the plaintext attributes corresponding to the keywords of the searcher through attribute encryption, so that the searcher can set the access authority according to the preset attributes, and can perform multiple keyword searches on group members, and at the same time, publicly available group data Effective combination of searchability and data decryption authority.
实施例十四Embodiment Fourteen
参考图19,图19是本发明实施例十四提供的一种搜索设备的装置结构图,所述设备包括以下单元:Referring to FIG. 19, FIG. 19 is a device structure diagram of a search device provided in Embodiment 14 of the present invention, and the device includes the following units:
第二获取单元1901和查询接收单元1902,第三获取单元1903,第二解密单元1904,所述第三获取单元1903用于执行实施例八中图12的步骤1203,所述第二解密单元1904用于执行实施例八中图12的步骤1204。The second acquisition unit 1901 and the query receiving unit 1902, the third acquisition unit 1903, and the second decryption unit 1904, the third acquisition unit 1903 is used to execute step 1203 in Figure 12 in Embodiment 8, the second decryption unit 1904 It is used to execute step 1204 in FIG. 12 in Embodiment 8.
本领域普通技术人员可以理解为所述本发明实施例十四中的设备所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。Those of ordinary skill in the art can understand that each unit included in the device in Embodiment 14 of the present invention is only divided according to functional logic, but is not limited to the above-mentioned division, as long as the corresponding functions can be realized; In addition, the specific names of the functional units are only for the convenience of distinguishing each other, and are not used to limit the protection scope of the present application.
第二获取单元1901,用于根据搜索方的身份信息从密钥管理中心获取查询密钥,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;The second obtaining unit 1901 is configured to obtain the query key from the key management center according to the identity information of the searcher, the identity information of the searcher includes the identity information of the single searcher or the group to which the multiple searchers belong Group identity information;
查询接收单元1902,用于根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文;A query receiving unit 1902, configured to generate a query token according to the keyword and the obtained query key, and query the encrypted keyword ciphertext from the storage server through the query token;
第三获取单元1903,用于根据预先设置的搜索方属性从所述密钥管理中心获取所述属性对应的数据解密密钥;The third acquiring unit 1903 is configured to acquire the data decryption key corresponding to the attribute from the key management center according to the preset attribute of the searcher;
第二解密单元1904,用于根据所述数据解密密钥,对所述存储服务器返回的根据所述预先设置的搜索方属性加密的明文数据的密文进行解密,获得解密后的明文数据。The second decryption unit 1904 is configured to, according to the data decryption key, decrypt the ciphertext of the plaintext data encrypted according to the preset searcher attribute returned by the storage server, and obtain decrypted plaintext data.
本发明实施例通过属性加密搜索方关键词对应的明文属性,使得搜索方可以根据预先设置的属性设置访问权限,对群组成员可以进行多种关键词检索的同时,对群组数据的公共可搜索性和数据的解密权限进行有效的结合。The embodiment of the present invention encrypts the plaintext attributes corresponding to the keywords of the searcher through attribute encryption, so that the searcher can set the access authority according to the preset attributes, and can perform multiple keyword searches on group members, and at the same time, publicly available group data Effective combination of searchability and data decryption authority.
实施例十五Embodiment 15
参考图20,图20是本发明实施例十五提供的一种加密设备的装置结构图。参考图20,图20是本发明实施例提供的一种加密设备2000,本发明具体实施例并不对所述网络设备的具体实现做限定。所述设备2000包括:Referring to FIG. 20 , FIG. 20 is a device structural diagram of an encryption device provided by Embodiment 15 of the present invention. Referring to FIG. 20 , FIG. 20 is an encryption device 2000 provided by an embodiment of the present invention. The specific embodiment of the present invention does not limit the specific implementation of the network device. The device 2000 includes:
处理器(processor)2001,通信接口(Communications Interface)2002,存储器(memory)2003,总线2004。A processor (processor) 2001, a communication interface (Communications Interface) 2002, a memory (memory) 2003, and a bus 2004.
处理器2001,通信接口2002,存储器2003通过总线2004完成相互间的通信。The processor 2001 , the communication interface 2002 , and the memory 2003 communicate with each other through the bus 2004 .
通信接口2002,用于与其他设备进行通信;Communication interface 2002, used to communicate with other devices;
处理器2001,用于执行程序A。Processor 2001, configured to execute program A.
具体地,程序A可以包括程序代码,所述程序代码包括计算机操作指令。Specifically, program A may include program code, and the program code includes computer operation instructions.
处理器2001可能是一个中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。The processor 2001 may be a central processing unit CPU, or an Application Specific Integrated Circuit (ASIC), or one or more integrated circuits configured to implement the embodiments of the present invention.
存储器2003,用于存放程序A。存储器2003可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。程序A具体可以包括:The memory 2003 is used to store the program A. The memory 2003 may include a high-speed RAM memory, and may also include a non-volatile memory (non-volatile memory), such as at least one disk memory. Program A can specifically include:
第一获取单元1401,用于获取搜索方的身份信息以及密钥管理中心的系统参数,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;The first obtaining unit 1401 is configured to obtain the identity information of the searcher and the system parameters of the key management center, the identity information of the searcher includes the identity information of the single searcher or the group in which the multiple searchers belong identity information;
加密上传单元1402,用于根据所述搜索方的身份信息以及所述系统参数对关键词进行加密,并将加密后的关键词密文上传到存储服务器。An encryption uploading unit 1402, configured to encrypt keywords according to the identity information of the searcher and the system parameters, and upload the encrypted keyword ciphertext to the storage server.
或者程序A具体可以包括:Or program A may specifically include:
第一获取单元1601,用于获取搜索方的身份信息以及密钥管理中心的系统参数,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;The first acquiring unit 1601 is configured to acquire the identity information of the searcher and the system parameters of the key management center, the identity information of the searcher includes the identity information of the single searcher or the group of the multiple searchers identity information;
加密上传单元1602,用于根据所述搜索方的身份信息以及所述系统参数对关键词进行加密,并将加密后的关键词密文上传到存储服务器;An encryption uploading unit 1602, configured to encrypt keywords according to the identity information of the searcher and the system parameters, and upload the encrypted keyword ciphertext to the storage server;
第一加密单元1603,用于根据所述搜索方的身份信息和所述系统参数加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器。The first encryption unit 1603 is configured to encrypt plaintext data according to the identity information of the searcher and the system parameters, and upload the encrypted plaintext data to the storage server.
或者程序A具体可以包括:Or program A may specifically include:
第一获取单元1801,用于获取搜索方的身份信息以及密钥管理中心的系统参数,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;The first obtaining unit 1801 is configured to obtain the identity information of the searcher and the system parameters of the key management center, the identity information of the searcher includes the identity information of the single searcher or the group of the multiple searchers identity information;
加密上传单元1802,用于根据所述搜索方的身份信息以及所述系统参数对关键词进行加密,并将加密后的关键词密文上传到存储服务器;An encryption uploading unit 1802, configured to encrypt keywords according to the identity information of the searcher and the system parameters, and upload the encrypted keyword ciphertext to the storage server;
第二加密单元1803,用于根据所述搜索方的属性加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器。The second encryption unit 1803 is configured to encrypt the plaintext data according to the attribute of the searcher, and upload the ciphertext of the encrypted plaintext data to the storage server.
程序A中各单元的具体实现参见图14或图16或图18所示实施例中的相应单元,在此不赘述。For the specific implementation of each unit in program A, refer to the corresponding units in the embodiment shown in FIG. 14 or FIG. 16 or FIG. 18 , which will not be repeated here.
实施例十六Embodiment sixteen
参考图21,图21是本发明实施例十六提供的一种搜索设备的装置结构图。参考图21,图21是本发明实施例提供的一种搜索设备2100,本发明具体实施例并不对所述网络设备的具体实现做限定。所述搜索设备2100包括:Referring to FIG. 21 , FIG. 21 is a device structure diagram of a search device provided by Embodiment 16 of the present invention. Referring to FIG. 21 , FIG. 21 is a search device 2100 provided by an embodiment of the present invention. The specific embodiment of the present invention does not limit the specific implementation of the network device. The search device 2100 includes:
处理器(processor)2101,通信接口(Communications Interface)2102,存储器(memory)2103,总线2104。A processor (processor) 2101 , a communication interface (Communications Interface) 2102 , a memory (memory) 2103 , and a bus 2104 .
处理器2101,通信接口2102,存储器2103通过总线2104完成相互间的通信。The processor 2101 , the communication interface 2102 , and the memory 2103 communicate with each other through the bus 2104 .
通信接口2102,用于与其他设备进行通信;Communication interface 2102, used for communicating with other devices;
处理器2101,用于执行程序A。Processor 2101, configured to execute program A.
具体地,程序A可以包括程序代码,所述程序代码包括计算机操作指令。Specifically, program A may include program code, and the program code includes computer operation instructions.
处理器2101可能是一个中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。The processor 2101 may be a central processing unit CPU, or an Application Specific Integrated Circuit (ASIC), or one or more integrated circuits configured to implement the embodiments of the present invention.
存储器2103,用于存放程序A。存储器2103可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。程序A具体可以包括:The memory 2103 is used to store the program A. The memory 2103 may include a high-speed RAM memory, and may also include a non-volatile memory (non-volatile memory), such as at least one disk memory. Program A can specifically include:
第二获取单元1501,用于根据搜索方的身份信息从密钥管理中心获取查询密钥,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;The second obtaining unit 1501 is configured to obtain the query key from the key management center according to the identity information of the searcher, the identity information of the searcher includes the identity information of the single searcher or the group to which the multiple searchers belong Group identity information;
查询接收单元1502,用于根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文。The query receiving unit 1502 is configured to generate a query token according to the keyword and the obtained query key, and query the encrypted keyword ciphertext from the storage server through the query token.
或者程序A具体可以包括:Or program A may specifically include:
第二获取单元1701,用于根据搜索方的身份信息从密钥管理中心获取查询密钥,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;The second obtaining unit 1701 is configured to obtain the query key from the key management center according to the identity information of the searcher, the identity information of the searcher includes the identity information of the single searcher or the group to which the multiple searchers belong Group identity information;
查询接收单元1702,用于根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文;A query receiving unit 1702, configured to generate a query token according to the keyword and the obtained query key, and query the encrypted keyword ciphertext from the storage server through the query token;
第一解密单元1703,用于根据所述查询密钥,对所述根据公钥加密的明文数据的密文进行解密,获得解密后的明文数据。The first decryption unit 1703 is configured to decrypt the ciphertext of the plaintext data encrypted according to the public key according to the query key, to obtain decrypted plaintext data.
或者程序A具体可以包括:Or program A may specifically include:
第二获取单元1901,用于根据搜索方的身份信息从密钥管理中心获取查询密钥,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;The second obtaining unit 1901 is configured to obtain the query key from the key management center according to the identity information of the searcher, the identity information of the searcher includes the identity information of the single searcher or the group to which the multiple searchers belong Group identity information;
查询接收单元1902,用于根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文;A query receiving unit 1902, configured to generate a query token according to the keyword and the obtained query key, and query the encrypted keyword ciphertext from the storage server through the query token;
第三获取单元1903,用于根据预先设置的搜索方属性从所述密钥管理中心获取所述属性对应的数据解密密钥;The third acquiring unit 1903 is configured to acquire the data decryption key corresponding to the attribute from the key management center according to the preset attribute of the searcher;
第二解密单元1904,用于根据所述数据解密密钥,对所述存储服务器返回的根据所述预先设置的搜索方属性加密的明文数据的密文进行解密,获得解密后的明文数据。The second decryption unit 1904 is configured to, according to the data decryption key, decrypt the ciphertext of the plaintext data encrypted according to the preset searcher attribute returned by the storage server, and obtain decrypted plaintext data.
程序A中各单元的具体实现参见图15或图17或图19所示实施例中的相应单元,在此不赘述。For the specific implementation of each unit in program A, refer to the corresponding units in the embodiment shown in FIG. 15 or FIG. 17 or FIG. 19 , which will not be repeated here.
以上所述仅为本发明的优选实施方式,并不构成对本发明保护范围的限定。任何在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明要求包含范围之内。The above descriptions are only preferred embodiments of the present invention, and do not constitute a limitation to the protection scope of the present invention. Any modifications, equivalent replacements and improvements made within the spirit and principles of the present invention shall be included within the scope of the claims of the present invention.
Claims (22)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210534843.0A CN103873236B (en) | 2012-12-12 | 2012-12-12 | One kind can search for encryption method and equipment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210534843.0A CN103873236B (en) | 2012-12-12 | 2012-12-12 | One kind can search for encryption method and equipment |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103873236A CN103873236A (en) | 2014-06-18 |
CN103873236B true CN103873236B (en) | 2017-03-08 |
Family
ID=50911386
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210534843.0A Active CN103873236B (en) | 2012-12-12 | 2012-12-12 | One kind can search for encryption method and equipment |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103873236B (en) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105471826B (en) * | 2014-09-04 | 2019-08-20 | 中电长城网际系统应用有限公司 | Ciphertext data query method, apparatus and cryptogram search server |
CN104394155B (en) * | 2014-11-27 | 2017-12-12 | 暨南大学 | It can verify that multi-user's cloud encryption keyword searching method of integrality and completeness |
CN105049196B (en) * | 2015-07-13 | 2018-08-03 | 佛山市明茂网络科技有限公司 | The encryption method that multiple keywords of designated position can search in cloud storage |
CN105681030B (en) * | 2015-12-31 | 2017-12-19 | 腾讯科技(深圳)有限公司 | key management system, method and device |
CN105868987B (en) * | 2016-03-28 | 2019-08-13 | 中国银联股份有限公司 | A kind of method and system of shared information between devices |
WO2017166054A1 (en) * | 2016-03-29 | 2017-10-05 | 深圳大学 | Quantum homomorphism symmetry searchable encryption method and system |
CN105933281B (en) * | 2016-03-29 | 2019-05-07 | 深圳大学 | A method and system for quantum homomorphic symmetric searchable encryption |
CN105915520B (en) | 2016-04-18 | 2019-02-12 | 深圳大学 | File storage, search method and storage system based on public key searchable encryption |
CN111416710B (en) * | 2020-03-24 | 2023-05-02 | 国网山东省电力公司 | A certificateless searchable encryption method and system applied to multiple receivers |
CN112152803B (en) * | 2020-09-15 | 2021-12-21 | 河海大学 | A multi-receiver ciphertext searchable identity-based encryption method |
CN114884700B (en) * | 2022-04-18 | 2023-04-28 | 华中科技大学 | Searchable public key encryption batch processing method and system for resisting key guessing attack |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102318263A (en) * | 2009-02-16 | 2012-01-11 | 微软公司 | Trusted cloud computing and services framework |
CN102687132A (en) * | 2009-12-15 | 2012-09-19 | 微软公司 | Trusted Extensible Markup Language for Trusted Computing and Data Services |
CN102687133A (en) * | 2009-11-16 | 2012-09-19 | 微软公司 | Containerless data for trustworthy computing and data services |
-
2012
- 2012-12-12 CN CN201210534843.0A patent/CN103873236B/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102318263A (en) * | 2009-02-16 | 2012-01-11 | 微软公司 | Trusted cloud computing and services framework |
CN102687133A (en) * | 2009-11-16 | 2012-09-19 | 微软公司 | Containerless data for trustworthy computing and data services |
CN102687132A (en) * | 2009-12-15 | 2012-09-19 | 微软公司 | Trusted Extensible Markup Language for Trusted Computing and Data Services |
Also Published As
Publication number | Publication date |
---|---|
CN103873236A (en) | 2014-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103873236B (en) | One kind can search for encryption method and equipment | |
CN109981641B (en) | Block chain technology-based safe publishing and subscribing system and publishing and subscribing method | |
Aljawarneh et al. | A resource-efficient encryption algorithm for multimedia big data | |
Yang et al. | Achieving efficient and privacy-preserving cross-domain big data deduplication in cloud | |
CN109361644B (en) | Fuzzy attribute based encryption method supporting rapid search and decryption | |
CN103107889A (en) | System and method for cloud computing environment data encryption storage and capable of searching | |
CN104038349A (en) | Effective and verifiable public key searching encryption method based on KP-ABE | |
JP2016158189A (en) | Key change direction control system and key change direction control method | |
CN114142996B (en) | A Searchable Encryption Method Based on SM9 Cryptographic Algorithm | |
CN105610793A (en) | Outsourced data encrypted storage and cryptograph query system and application method therefor | |
CN108183791B (en) | Intelligent terminal data security processing method and system applied to cloud environment | |
CN107086912B (en) | Ciphertext conversion method, decryption method and system in heterogeneous storage system | |
Li et al. | Enabling efficient and secure data sharing in cloud computing | |
CN105099653A (en) | Distributed data processing method, device and system | |
CN114528331A (en) | Data query method, device, medium and equipment based on block chain | |
Zhao et al. | Verifiable outsourced ciphertext-policy attribute-based encryption for mobile cloud computing. | |
US20250150260A1 (en) | Multi-key information retrieval | |
Al-Sakran | Accessing secured data in cloud computing environment | |
CN115550007A (en) | Signcryption method and system with equivalence test function based on heterogeneous system | |
CN109274659B (en) | Certificateless online/offline searchable ciphertext method | |
CN103490890A (en) | Combination public key authentication password method based on conic curves | |
EP3001346B1 (en) | Directory service device, client device, key cloud system, method thereof, and program | |
CN113609077A (en) | File retrieval method, system, storage medium and equipment | |
CN109672525B (en) | Searchable public key encryption method and system with forward index | |
CN115208630B (en) | Block chain-based data acquisition method and system and block chain system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220228 Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province Patentee after: Huawei Cloud Computing Technologies Co.,Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd. |
|
TR01 | Transfer of patent right |