Integrity audit method based on collaborative cache in industrial Internet of Things environment
By introducing edge servers and collaborative caching mechanisms in the industrial Internet of Things environment, the problems of high audit costs, low efficiency and poor security in the existing technology are solved, and efficient and secure data integrity audits are achieved, meeting the low latency and low cost requirements of the industrial Internet of Things.
Patent Information
- Application Number
- CN202210927864.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-08-03
- Publication Date
- 2025-03-25
- Estimated Expiration
- 2042-08-03
AI Technical Summary
The existing data integrity audit solutions have the characteristics of high audit costs, low efficiency and poor security in industrial IoT environments, and are not suitable for industrial IoT environments.
Adopt the integrity audit method based on collaborative caching, by introducing edge servers between device nodes and cloud servers, adopting a three-layer architecture of ‘cloud-edge-end’ to realize business sinking, bringing content closer to the end user, and designing a cache value function for cache replacement and update, reducing invalid audits.
It realizes fine-grained integrity checks, reduces computing overhead and resource waste, improves user experience and edge cache data integrity, and meets the low latency and low cost requirements of the industrial Internet of Things.
Smart Images

Figure CN115442078B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of data integrity auditing, and in particular to an integrity auditing method based on collaborative caching in an industrial Internet of Things environment. Background Art
[0002] Chinese patent [CN201811610572.6] discloses a cloud data integrity audit method that supports public verification, which belongs to the field of cloud computing security technology. It consists of system initialization, data storage, challenge issued by a trusted third party, cloud storage server generating proof, and trusted third party verification steps. The technical solution of this invention is based on a bilinear group, uses a verifiable hierarchical jump table to verify the storage location of data blocks, and supports a cloud data integrity audit method that can be publicly verified by any trusted third party. It improves the security of user stored data.
[0003] Chinese patent [CN202110916420.4] discloses a public audit method for cloud storage data integrity based on certificateless. First, the user divides and encrypts the data file to obtain the ciphertext data block, generates the homomorphic signature of the ciphertext data block, and forms a signature set; secondly, the user generates integrity audit auxiliary information, sends the ciphertext data block and the signature set to the cloud server, and sends the integrity audit auxiliary information to the third-party auditor; then, the third-party auditor generates challenge information, sends the challenge information to the cloud server, and generates a pre-calculated value; then, the cloud server generates audit proof response information, and returns the audit proof response information to the third-party auditor; finally, the third-party auditor uses the pre-calculated value, the system public parameter, the user's verification public key and the anonymous identity to verify the correctness of the audit proof response information. The present invention is designed based on a certificateless cryptographic system, which can effectively avoid key escrow and complex certificate management.
[0004] First, there are many IoT devices in the existing industrial environment, and it is unrealistic to upload all the data generated by them to the cloud server for storage management. Moreover, if all users need to download the required data from the cloud, this will cause the cloud throughput to be too large, which will lead to problems such as slow downloads and excessive transmission delays. Secondly, the existing audit schemes tend to audit all cached data. In fact, users only need to know the integrity of the requested data, so auditing all cached data each time is inefficient and will cause resource waste due to invalid audits. Thirdly, the storage and computing resources of edge devices are very limited. Not only low latency and low overhead should be considered, but also a reasonable cache replacement strategy should be considered to maximize the cache hit rate under the limited storage space of the edge server. Summary of the invention
[0005] The purpose of the present invention is to provide an integrity audit method based on collaborative caching in an industrial Internet of Things environment to solve the problems that existing data integrity audit schemes have high audit costs, low efficiency and poor security, and are not suitable for industrial Internet of Things environments.
[0006] The present invention is implemented as follows: an integrity audit method based on collaborative caching in an industrial Internet of Things environment, comprising the following steps:
[0007] A. System initialization: The system selects public parameters and generates a pair of public and private keys for data signing by running the key generation algorithm;
[0008] B. Signature generation: The user divides the data file containing the public and private keys into blocks, then calculates the corresponding signature for each data block, and sends all data blocks and signature sets to the cloud server for storage;
[0009] C. File caching: Adopt hierarchical collaborative caching and design cache value function to replace and update cache data in a timely manner;
[0010] D. File search: The user first sends a data request to the nearest edge server in the edge server layer. The edge server checks whether the requested file exists in the local cache record table. If it hits, the cache value of the data file is updated in the cache record table, and then the audit process is started. If it does not hit, the data request sent by the user gradually spreads within the domain, and will try to obtain data from nearby edge servers or cloud servers and perform integrity audits. At the same time, the edge server will record the ID of the received data request and the routing information in the routing information table until it reaches the hit node.
[0011] E. Challenge generation phase: When the user's data request reaches the cache hit node in the edge server layer, the hit node returns a confirmation message to the user. After receiving the confirmation message, the user uses a trusted and secure channel to delegate the audit request to the third-party auditor TPA. The third-party auditor TPA initiates a challenge to verify the integrity of the data file;
[0012] F. Proof generation phase: The hitting node generates an integrity proof for the challenged block in the challenge information;
[0013] G. Verification phase: After receiving the audit proof response information, the third-party auditor TPA uses the system public parameters and public key P k , the challenge information chal verifies the correctness of the proof returned by the edge server.
[0014] Furthermore, the present invention can be implemented according to the following technical solutions:
[0015] In step A, the system includes a cloud server, an edge server layer composed of multiple edge servers, and an industrial equipment layer; the security parameter λ is input to the system, and the system public parameter pp={G1, G2, e, H, g} is output; the user obtains the value from Z p = {1,2,...,P} randomly selects a security parameter α and sets it as its private key, that is, S k =α; then randomly select a generator g from the G1 group and calculate P k =g α As the public key; where G1 and G2 are both scalar multiplication cyclic groups, p is the order of groups G1 and G2, g is the generator of groups G1 and G2, e represents the bilinear mapping: G1×G1→G2, H: {0, 1} * →G1 is the cryptographic function used for hashing operations.
[0016] In step B, the user uses the public key P k , private key S k and file F as input, execute the signature generation algorithm, and file F is divided into n different blocks, that is, F = {f i} [1≤i≤n] , where F represents the data file, f i represents the i-th data block in the data file, n represents the number of data blocks in the entire data file, and the identity of data file F is F N , then in the file block {f i} [1≤i≤n] Generate a signature:
[0017]
[0018] Among them, id i =F N ||i is file block f i The identity of , 1≤i≤n, u∈G;
[0019] Finally, a signature set ψ={ψ i} [1≤i≤n] ;
[0020] Once the signature set ψ is ready, the user uploads the data file and the signature to the cloud server for storage and deletes (F,ψ) from the local storage.
[0021] In step C, the cache space of each edge server node is divided into two parts, ACache and BCache; the data files of the path are preferentially cached in the ACache of the node, and the cache content recommendation and cache value are calculated and recorded in the cache record table; if the cache space of the ACache of the node is insufficient, cache replacement is performed first according to the cache value of the data file, and the replaced data file and related information are sent to the BCache of the corresponding node according to the hash mapping table; the BCaches of different nodes form a collaborative domain, and the secondary recommended data file will start a secondary competition for cache space in the BCache. If the file has been cached in the ACache of the node, the file will be deleted from the ACache of the node to avoid redundancy;
[0022] The content recommendation degree refers to the number of times R that users request file F within a given time period. F The ratio of content recommendation to the total number of user requests R clearly reflects the degree of user demand for the content; the expression is as follows:
[0023]
[0024] The cache overhead required for the edge server to cache content m is:
[0025]
[0026] in, is the cost of caching content in the edge server; R cloud represents the number of hops from the cloud server to the user, R edge represents the number of hops from the edge server to the user, is the cost of one-hop content transmission;
[0027] If the content requested by the user is not cached in the edge server within a certain period of time, the user needs to obtain the requested content from the cloud server, and the cache overhead is:
[0028]
[0029] If the content requested by the user is cached on the edge server, the user directly obtains the required content from the hit node. At this time, the cache overhead of content m is:
[0030]
[0031] The value of caching content m in the edge server during this period is:
[0032]
[0033] In the step D, the user first sends a data request to a nearby edge server, and the edge server checks whether the requested file exists in the local CRT; if it hits, the cache value of the data file is updated in the CRT, and then the audit process is started; if it does not hit, the request gradually spreads within the domain, and the edge server will try to obtain data from nearby edge servers and prove it; if multiple edge servers have not pre-downloaded the user's requested file, the cloud server will provide assistance; during the search process, the edge server will record the id of the received content request and the routing information in the routing information table until it reaches the hit node; after the audit is passed, the requested file will be based on the routing information The routing information recorded in the table is sent to the user along the original path. If the cache space of the edge server is sufficient to cache the file, it is directly stored in the cache queue. When the cache space of the edge server is saturated, the cache replacement process is performed. After the data content is cached in this routing node, the updated cache value is used to reorder the data content of the cache record table to ensure that all cached data contents in the cache record table are arranged in descending order according to the cache value to reduce the retrieval burden. If the cache value of the newly requested file is lower than the cache value of all files in the cache record table of the current node, it will not be cached and the file will be directly forwarded to the next hop until it reaches the user.
[0034] If the user sends k content requests in total, Indicates whether the CRT of the edge server P is hit. If so, otherwise The cache hit rate is expressed as
[0035]
[0036] In step E, the user first generates an audit request and sends the audit request to the third-party auditor TPA. Then the third-party auditor TPA randomly selects a subset Q in the set [1,n] according to the audit request. The subset has l elements, l∈[1,n], and generates a random number c i represents the element i in the set Q; the third-party auditor TPA will challenge the information chal = {(i,c i )} 1≤i≤l Sent to the hit node.
[0037] In step F, when a single edge server can provide enough data blocks, the hit node performs a proof generation process to generate an integrity proof of the challenged block in the challenge information chal; the proof generation process consists of two parts: a linear combination of the challenge blocks (χ) and an aggregate signature value (ψ)
[0038]
[0039]
[0040] The hitting node returns Proof = {χ, ψ} as proof to the third-party auditor TPA for verification.
[0041] In step F, when multiple edge servers or multiple edge servers and cloud servers need to be combined to provide enough data blocks, the integrity proof process is as follows:
[0042] The cache data set of each edge server is C j ,j∈{1,2,3,...,k}, k is the number of edge servers participating in the process. For each i∈{1,2,...,k}, the edge server Edge i A valid cached dataset can be provided for requesting a chunk of data as follows:
[0043]
[0044] If C1∪C2∪C3∪...∪C i-1 ∪C i =Q, then Edge i is the last edge server; assuming Q j ={1,2,3,...,l j}, l j ∈[1,n], according to formula 8 and formula 9, we can get:
[0045]
[0046]
[0047] The last hitting node returns Proof = {χ, ψ} as proof to the third-party auditor TPA for verification.
[0048] In step G, after receiving the audit proof response information, the third-party auditor TPA uses the system public parameters, public key P k , the challenge information chal verifies the correctness of the proof returned by the edge server;
[0049] When the third-party auditor TPA is proven, it can k , the challenge information chal and the proof Proof received from the edge server are used to verify the correctness of the proof returned by the edge server through equation (13);
[0050]
[0051] If formula 13 holds true, the output is "1", and the verification is successful; otherwise, the output is "0", and the verification fails; the third-party auditor TPA communicates the result to the user.
[0052] The present invention designs an integrity audit scheme based on collaborative cache in an industrial Internet of Things environment (IACC: Integrity Audit Scheme Based on Collaborative Cache in Industrial Internet of Things Environment). The technical solution of the present invention introduces an edge server between the device node and the cloud server, and adopts a "cloud-edge-end" three-layer architecture to increase the task computing and data processing capabilities at the edge of the network, realize the sinking of business applications, and bring the content closer to the end user, so as to ensure that data objects with different cache values are audited by the corresponding auditors quickly and effectively, realize fine-grained integrity checks, and meet the needs of real-time auditing of the industrial Internet of Things.
[0053] The beneficial effects of the present invention are as follows:
[0054] First of all, the present invention proposes an end-edge-cloud collaborative caching mechanism, which includes a three-layer architecture of cloud server, edge server and industrial equipment end. The cache space of each node can be partitioned, and the hierarchical placement of cache content can be achieved through edge horizontal collaboration, which brings the content closer to the end user and makes the cache content distribution more reasonable.
[0055] Secondly, a cache value function that integrates the two indicators of content recommendation and cache overhead is proposed, and the cache hit rate and cache value are combined as constraints for cache replacement and update. The cache data in the edge network is dynamically adjusted and the cache data is replaced and updated in a timely manner, which reduces access delay and improves user experience.
[0056] Then, the concept of "effective audit" is introduced. The edge server will respond to requests based on the local cache status and only generate integrity proofs for the requested data files to reduce the number of files that need to be audited and solve the resource waste caused by invalid audits. The audit phase fully considers data verification in three situations: single edge, multi-edge, and multi-cloud collaboration. This not only reduces computing overhead, but also solves the resource waste caused by invalid audits.
[0057] Finally, the security analysis proves the correctness and reliability of the technical solution of the present invention. The comparison between theoretical analysis and simulation experiments shows that the present invention can cache and audit edge cache data more quickly and effectively, effectively ensure the integrity of edge cache data, effectively reduce the waiting delay of industrial tasks, and meet the requirements of low latency and low cost of the industrial Internet of Things, and can be widely used in the industrial Internet of Things with strict security and latency requirements. BRIEF DESCRIPTION OF THE DRAWINGS
[0058] Figure 1 It is a structural schematic diagram of the present invention.
[0059] Figure 2 It is a schematic diagram of the cache placement process of the present invention.
[0060] Figure 3 It is a schematic diagram of the file search process of the present invention.
[0061] Figure 4 It is a schematic diagram of the change of computing overhead in each stage of the present invention.
[0062] Figure 5 This is a comparison chart of the cache hit rate and cache capacity in various technical solutions.
[0063] Figure 6 This is a comparison chart of the cache hit rate according to the present invention as it changes with the cache ratio.
[0064] Figure 7 It is an audit expense diagram of three situations in the audit phase of the present invention.
[0065] Figure 8 It is a comparison chart of user waiting time in various technical solutions. DETAILED DESCRIPTION
[0066] like Figure 1 As shown, the integrity audit method based on collaborative caching in an industrial Internet of Things environment of the present invention includes the following steps:
[0067] A. System initialization: The system selects public parameters and generates a pair of public and private keys for data signing by running the key generation algorithm.
[0068] like Figure 1 As shown, the system includes a cloud server, an edge server layer consisting of multiple edge servers, and an industrial equipment layer
[0069] Cloud Service Provider (CSP) has powerful computing and storage capabilities. In addition to maintaining all data of its services and customers, the cloud server also generates proofs for uncached data blocks in the edge server and sends them to the third-party auditor TPA.
[0070] Edge Servers (ES) provide low-latency services for industrial equipment in the coverage area. The edge server maintains two record tables locally: a cache record table and a transmission information table. The cache record table is used to record the data files that the server has cached and the cache value. The transmission information table stores the next-hop server information that reaches the content provider server and is used to complete the forwarding of data files. After the user sends an integrity verification request, the edge server finds the corresponding data block in the cache queue and collects the generated proof for verification.
[0071] At the industrial equipment layer, different equipment can be located in different geographical locations. Each workshop is equipped with a large number of industrial equipment such as sensors to collect relevant environmental data, such as humidity, temperature, brightness, etc. They are also the initiators of data integrity verification. Send a data integrity verification request to the edge node and finally receive the verification result returned by the third-party auditor TPA.
[0072] In order to ensure the security and reliability of the technical solution of the present invention in the audit work, this paper assumes that the third-party auditor TPA is semi-trusted. The third-party auditor TPA verifies the proof returned by the edge node on behalf of the user and returns the verification result to the user.
[0073] Specifically, the security parameter λ is input to the system, and the public parameter pp is output to the system = {G1, G2, e, H, g}; the user can obtain the security parameter λ from Z p = {1,2,...,P} randomly selects a security parameter α and sets it as its private key, that is, S k =α; then randomly select a generator g from the G1 group and calculate P k =g α As the public key; where G1 and G2 are both scalar multiplication cyclic groups, p is the order of groups G1 and G2, g is the generator of groups G1 and G2, e represents the bilinear mapping: G1×G1→G2, H: {0, 1} * →G1 is the cryptographic function used for hashing operations.
[0074] B. Signature generation: The user divides the data file containing the public and private keys into blocks, then calculates the corresponding signature for each data block, and sends all data blocks and signature sets to the cloud server for storage;
[0075] Specifically, the user uses the public key P k , private key S k and file F as input, execute the signature generation algorithm, and file F is divided into n different blocks, that is, F = {f i} [1≤i≤n] , where F represents the data file, f irepresents the i-th data block in the data file, n represents the number of data blocks in the entire data file, and the identity of data file F is F N , then in the file block {f i} [1≤i≤n] Generate a signature:
[0076]
[0077] Among them, id i =F N ||i is file block f i The identity of , 1≤i≤n, u∈G;
[0078] Finally, a signature set ψ={ψ i} [1≤i≤n] ;
[0079] Once the signature set ψ is ready, the user uploads the data file and the signature to the cloud server for storage and deletes (F,ψ) from the local storage.
[0080] C. File caching: In order to make full use of the cache space of the edge server, hierarchical collaborative caching is adopted in this stage, and a cache value function is designed to replace and update the cache data in a timely manner.
[0081] like Figure 2 As shown in the figure, the cache space of each edge server node is divided into two parts, ACache and BCache; the data files in the path are first cached in the ACache of the node, and the cache content recommendation and cache value are calculated and recorded in the cache record table; if the cache space of the node's ACache is insufficient, cache replacement is performed first according to the cache value of the data file, and the replaced data file and related information are sent to the BCache of the corresponding node according to the hash mapping table; the BCaches of different nodes form a collaborative domain, and the secondary recommended data file will compete for cache space in the BCache twice. If the file has been cached in the ACache of the node, the file will be deleted from the ACache of the node to avoid redundancy;
[0082] Content recommendation refers to the number of times R a user requests a file F within a given period of time. F The ratio of content recommendation to the total number of user requests R clearly reflects the degree of user demand for the content; the expression is as follows:
[0083]
[0084] The cache overhead required for the edge server to cache content m is:
[0085]
[0086] in, is the cost of caching content in the edge server; R cloud represents the number of hops from the cloud server to the user, R edge represents the number of hops from the edge server to the user, is the cost of one-hop content transmission;
[0087] If the content requested by the user is not cached in the edge server within a certain period of time, the user needs to obtain the requested content from the cloud server, and the cache overhead is:
[0088]
[0089] If the content requested by the user is cached on the edge server, the user directly obtains the required content from the hit node. At this time, the cache overhead of content m is:
[0090]
[0091] The value of caching content m in the edge server during this period is:
[0092]
[0093] It can be seen from Formula 6 that the content recommendation degree and the distance between the hit node and the user affect the cache value; the more frequent the content request, the higher the recommendation degree, the closer the distance to the requesting user, the smaller the cache overhead, and the higher the cache value.
[0094]
[0095] D. File search: Users first send data requests to the nearest edge server in the edge server layer. The edge server checks whether the requested file exists in the local cache record table. If it hits, the cache value of the data file is updated in the cache record table, and then the audit process is started. If it does not hit, the data request sent by the user gradually spreads within the domain, and will try to obtain data from nearby edge servers or cloud servers and perform integrity audits. At the same time, the edge server will record the ID of the received data request and the routing information in the routing information table until it reaches the hit node; after the audit passes, the data file is cached along the return path.
[0096] like Figure 3As shown in the figure, the user sends a data request to the nearby edge server first, and the edge server checks whether the requested file exists in the local CRT. If it hits, the cache value of the data file is updated in the CRT, and then the audit process is started. If it does not hit, the request gradually spreads in the domain, and the edge server will try to obtain data from nearby edge servers and prove it. If multiple edge servers have not downloaded the user's request file in advance, the cloud server will provide assistance; during the search process, the edge server will record the id and routing information of the received content request in the routing information table until it reaches the hit node; after the audit is passed, the requested file will be sent to the user along the original path according to the routing information recorded in the routing information table. If the cache space of the edge server is sufficient to cache the file, it will be directly stored in the cache queue; when the cache space of the edge server is saturated, the above cache replacement process is executed; after the data content is cached at this routing node, the data content of the cache record table is reordered using the updated cache value to ensure that all cached data content in the cache record table is arranged in order from large to small according to the cache value to reduce the burden of retrieval. If the cache value of the newly requested file is lower than the cache value of all files in the current node cache record table, the file will not be cached and will be forwarded directly to the next hop until it reaches the user.
[0097] If the user sends k content requests in total, Indicates whether the CRT of the edge server P is hit. If so, otherwise The cache hit rate is expressed as
[0098]
[0099] E. Challenge generation phase: When the user's data request reaches the cache hit node in the edge server layer, the hit node will return a confirmation message to the user. After receiving the confirmation message, the user uses a trusted and secure channel to delegate the audit request to the third-party auditor TPA. The third-party auditor TPA initiates a challenge to verify the integrity of the data file.
[0100] The user first generates an audit request and sends it to the third-party auditor TPA. Then the third-party auditor TPA randomly selects a subset Q in the set [1,n] according to the audit request. The subset has l elements, l∈[1,n], and generates a random number c i represents the element i in the set Q; the third-party auditor TPA will challenge the information chal = {(i,c i )} 1≤i≤l Sent to the hit node.
[0101] F. Proof generation phase: The hitting node generates an integrity proof for the challenged block in the challenge information.
[0102] There are three cases in this step. The first case is that a single edge server can provide enough data blocks. The second case is that multiple edge servers are required to provide enough data blocks. That is, when the edge server cache of the first request does not hit or hits but some data blocks are missing, further requests are required to nearby edge servers. The third case is that multiple edge servers and cloud servers are required to provide enough data blocks. That is, a single edge server and its nearby edge nodes cannot provide the requested file. At this time, the cloud server will provide help, and the last edge node will communicate with the cloud server to find the requested data.
[0103] In the first case, when a single edge server can provide enough data blocks, the hit node performs the proof generation process to generate the integrity proof of the challenged block in the challenge information chal; the proof generation process consists of two parts: the linear combination of the challenge blocks (χ) and the aggregate signature value (ψ)
[0104]
[0105]
[0106] The hitting node returns Proof = {χ, ψ} as proof to the third-party auditor TPA for verification.
[0107] In the second or third case, when multiple edge servers or multiple edge servers and cloud servers are required to provide enough data blocks, the integrity proof process is as follows:
[0108] The cache data set of each edge server is C j ,j∈{1,2,3,...,k}, k is jointly participated by k edge servers, (on this basis,) for each i∈{1,2,...,k}, the edge server Edge i A valid cached dataset can be provided for requesting a chunk of data as follows:
[0109]
[0110] If C1∪C2∪C3∪...∪C i-1 ∪C i =Q, then Edge i is the last edge server; assuming Q j ={1,2,3,...,l j}, l j ∈[1,n], according to formula 8 and formula 9, we can get:
[0111]
[0112]
[0113] The last hitting node returns Proof = {χ, ψ} as proof to the third-party auditor TPA for verification.
[0114] G. Verification phase: After receiving the audit proof response information, the third-party auditor TPA uses the system public parameters and public key P k , the challenge information chal verifies the correctness of the proof returned by the edge server.
[0115] When the third-party auditor TPA is proven, it can k , the challenge information chal and the proof Proof received from the edge server are used to verify the correctness of the proof returned by the edge server through equation (13);
[0116]
[0117] If formula 13 holds true, the output is "1", and the verification is successful; otherwise, the output is "0", and the verification fails; the third-party auditor TPA communicates the result to the user.
[0118] A safety assessment is performed on the technical solution of the present invention, including correctness analysis and reliability analysis.
[0119] In the correctness analysis, suppose a data file F = f1, f2, ..., f n and the block signature set ψ=ψ1,ψ2,...,ψ n , where n represents the number of file blocks, TPA can correctly verify the integrity of file F through the proposed protocol.
[0120] Proof. Using the properties of bilinear mapping, if equation (13) is proved to be correct, then the proposed protocol is correct. The proof of equation (13) is as follows:
[0121]
[0122] Therefore, the proposed protocol can correctly verify the data integrity of file F.
[0123] In the reliability analysis, in the technical solution of the present invention, if the CDH and DL problems in the bilinear group G are difficult to solve, it is computationally impossible for a malicious edge server to forge a signature and a certificate for the cached data F, thereby succeeding in the verification process.
[0124] Proof. Assume that {χ,ψ} is a correct proof provided by an honest prover (honest edge server). According to the correctness of IACC, we know that the following verification equation holds.
[0125]
[0126] Assume that a malicious edge server provides a forged certificate Since the forgery is successful, the following verification formula holds true.
[0127]
[0128] Obviously, χ≠χ * , otherwise ψ=ψ * , which contradicts our above assumption. Here, we define Δχ=χ * -χ. Now, dividing equation (16) by equation (15) yields
[0129] e(ψ * / ψ,g)=e(u Δχ ,g)
[0130] =e((g a h b ) Δχ ,g)
[0131] =e(g aΔχ ·h bΔχ ,g)
[0132] Therefore, it can be seen that
[0133]
[0134] Among them, the probability of aΔχ=0modp is Since p is a very large prime number, this is negligible. Therefore, we can use This is inconsistent with the assumption that CDH is computationally infeasible.
[0135] Furthermore, given g, h∈G, we can obtain u=g a h b ∈G, where a,b∈Z p Based on the above two verification equations (15) and (16), we can get 1 = u Δχ =(g a h b ) Δχ =g aΔχ ·h bΔχ , and furthermore, 1=u Δχ =(g a h b )Δχ =g a Δχ ·h bΔχ Therefore, given g, h x ∈G, we can calculate
[0136]
[0137] However, the probability that b = 0 is Since p is a large prime number, this can be ignored. Then, we can use The probability of obtaining a solution to the DL problem is inconsistent with the assumption that DL is computationally infeasible. Based on the game discussed above, we can conclude that IACC achieves unforgeability under the CDH and DL assumptions.
[0138] Suppose a file is divided into n blocks, of which m blocks are tampered with. The probability that the tampered data block is detected is at least Where c is the number of blocks being challenged.
[0139] Proof. If and only if at least one tampered data block is challenged, it can be detected. Let c be the number of challenge blocks, and X be the number of tampered data blocks in the challenged data block. Then we have
[0140]
[0141] Therefore, there is It can be seen that the probability of discovering a tampered data block is at least
[0142] The technical solution of the present invention is evaluated, including performance analysis and experimental results analysis.
[0143] In performance analysis, it is divided into computational cost analysis and communication cost analysis.
[0144] The calculation cost analysis of the technical solution of the present invention is carried out. According to Formula 1, the corresponding calculation cost generated in the system initialization phase is 2E G +M G +HASH G , generating challenge information only requires randomly selecting values, which consumes a small amount of computing resources, so we ignore it here. On the verifier, the response to the chal message is {χ,ψ}, then the proof generation phase incurs a computational cost cM p +(c-1)A p +cE G +(c-1)M G , where c represents the number of challenge blocks. According to formula 13, the computational cost of the verification phase is 2Pair+cHASH G +(c+1)EG +cM G .
[0145] The communication cost of the technical solution of the present invention is analyzed. The communication cost is mainly generated in the challenge generation stage and the proof generation stage. TPA generates challenge information chal = {i, c i} [t1≤i≤tl] The resulting communication cost is close to c(|p|+|n|) bits, where |p| is a Z p The length of the element. After receiving the challenge message, the edge server generates P f = {χ,ψ} has a communication cost of |p|+|q|, where |q| is the size of G1. Obviously, the communication cost of sending the integrity proof is independent of the number of blocks c being challenged. Therefore, the communication cost of the challenge-response mechanism is c·|n|+(c+1)·|p|+|q|.
[0146] Finally, the experimental results of the technical solution of the present invention are analyzed. The operating environment of the simulation experiment of the technical solution of the present invention is Matlab R2016b, ubuntu 20.4.1, the operating system is Windows 10, the computer processor is Intel Core i7-7900X @ 3.30GHz, and the encryption operation is implemented using the PBC library and the GMP library. The encryption hash function (SHA256) is implemented using the OpenSSL library. The basic field size is set to 512 bits, |p| = 160 bits (Z p The size of the test file is set to 20MB. The experimental results are random, so all experimental results are tested multiple times and the average value is taken as the final result.
[0147] like Figure 4 As shown in the figure, the audit computation overhead of these three stages increases linearly with the number of challenged blocks. In the system initialization phase, when the data block increases from 100 to 1000, the computation overhead of signature generation increases from 1.12s to 5.34s. The challenge generation phase changes little with the change of the challenge block data block size, and spends the least time in the audit phase. The verification phase takes longer to calculate than the other two phases. Therefore, assigning the most time-consuming process processing to TPA can greatly save user costs.
[0148] To evaluate the cache replacement algorithm of the IACC scheme, it is compared with three benchmark algorithms: Least Recently Used (LRU), Least Frequently Used (LFU), and Hash-based caching strategy (HBCS). Figure 5As shown in the figure, as the cache capacity of the edge server increases, the content it caches increases, so the cache hit rate also increases. The hit rates of the IACC and HBCS strategies are significantly higher than the other two cache strategies. This is because the hash mapping mechanism reduces cache redundancy and improves cache diversity within the domain. However, the IACC scheme has better performance. This is because the IACC scheme takes into account factors such as content recommendation and cache overhead, making the recommended content more reasonably and stably distributed on the edge server nodes, thereby improving the cache hit rate. As the cache space gradually increases, HBCS can cache most of the recommended content, thereby narrowing the gap in hit rate with IACC.
[0149] Figure 6 The figure shows the effect of the hierarchical cache ratio on the cache hit rate. The horizontal axis represents the change in the ACache ratio, and the vertical axis represents the cache hit rate. It can be seen from the figure that the cache hit rate gradually decreases with the increase of the ACache ratio. This is because when the ACache ratio increases, the cache content tends to be stable, and the cache content diversity decreases, which leads to a decrease in the hit rate. When the ACache ratio increases to 100%, the hit rate decreases most significantly. This also shows that hierarchical collaborative caching can effectively improve cache performance.
[0150] Figure 7 The experimental results of the response time of the above Case 1, Case 2 and Case 3 are shown. Case 1 indicates that the edge has pre-downloaded all the data blocks requested by the user for verification. Case 2 indicates that a single edge node cannot provide enough data blocks and asks for help from nearby edge nodes. Case 3 represents the situation of multiple edges and clouds being united. The time cost of the three cases increases with the increase in the number of queried data blocks. However, the time cost of Case 1 is always the lowest, because the additional communication cost between multiple edge nodes and between edge nodes and clouds in Case 2 and Case 3 increases. From the experimental results, it can be seen that improving the edge cache hit rate can effectively reduce the user's waiting delay.
[0151] Figure 8 Shows the average user waiting delay compared with the solution of Shen et al. [1] and the scheme of Liu et al. [2] Comparison. Figure 7It can be seen that the user's waiting time increases with the number of requests. However, the waiting time of Shen et al.'s scheme is always higher than that of this paper's scheme and Liu et al.'s scheme. Shen et al.'s scheme is based on user identity and has a key hosting problem. Moreover, when a user requests the same content multiple times, it is necessary to interact with the cloud multiple times, resulting in a high waiting delay, which cannot meet the low latency and high efficiency requirements of the Internet of Things. Liu et al. and the IACC scheme in this paper are both audit schemes for edge environments. Since the number of requests is small at the beginning and the cache has not reached the optimal cache state, the advantages compared with Liu et al. are not obvious. As the number of requests increases, the hierarchical caching strategy makes the cache content distribution more reasonable and improves the cache hit rate. In addition, the scheme performs effective audits, greatly reducing the audit costs, thereby shortening the overall waiting time for users to obtain content and better meeting the latency requirements of the Internet of Things.
[0152] References:
[0153] [1]W.Shen, J.Qin, J.Yu, R.Hao and J.Hu, "Enabling Identity-BasedIntegrity Auditing and Data Sharing With Sensitive Information Hiding for Secure Cloud Storage," in IEEE Transactions on Information Forensics andSecurity,vol.14,no.2,pp.331-346,Feb,doi:10.1109 / TIFS.2018.2850312(2019).
[0154] [2] Liu, D., Shen, J., Vijayakumar, P. et al. Efficient data integrity auditing with corrupted data recovery for edge computing in enterprise multimedia security. Multimed Tools Appl 79, 10851–10870 https: / / doi.org / 10.1007 / s11042-019-08558-1(2020).
Claims
1. A collaborative cache-based integrity audit method in an industrial Internet of Things environment, characterized by: The steps include: A. System initialization: The system selects public parameters and generates a pair of public and private keys for data signing by running the key generation algorithm; B. Signature generation: The user divides the data file containing the public and private keys into blocks, then calculates the corresponding signature for each data block, and sends all data blocks and signature sets to the cloud server for storage; C. File caching: Adopt hierarchical collaborative caching and design cache value function to replace and update cache data in a timely manner; D. File search: The user first sends a data request to the nearest edge server in the edge server layer. The edge server checks whether the requested file exists in the local cache record table. If it hits, the cache value of the data file is updated in the cache record table, and then the audit process is started; If the target node is not found, the data request sent by the user will gradually spread in the domain, and will try to obtain data from nearby edge servers or cloud servers and perform integrity audits. At the same time, the edge server will record the ID of the received data request and the routing information in the routing information table until it reaches the target node. E. Challenge generation phase: When the user's data request reaches the cache hit node in the edge server layer, the hit node returns a confirmation message to the user. After receiving the confirmation message, the user uses a trusted and secure channel to delegate the audit request to the third-party auditor TPA. The third-party auditor TPA initiates a challenge to verify the integrity of the data file; F. Proof generation phase: The hitting node generates an integrity proof for the challenged block in the challenge information; G. Verification phase: After receiving the audit proof response information, the third-party auditor TPA uses the system public parameters and public key P k , the challenge information chal verifies the correctness of the proof returned by the edge server; In step D, the user first sends a data request to a nearby edge server, and the edge server checks whether the requested file exists in the local CRT; if it does, the cache value of the data file is updated in the CRT, and then the audit process is started; If it does not hit, the request will gradually spread in the domain, and the edge server will try to obtain data from nearby edge servers and verify it; if multiple edge servers have not pre-downloaded the user's requested file, the cloud server will provide assistance; during the search process, the edge server will record the ID of the received content request and the routing information in the routing information table until it reaches the hit node; after the audit is passed, the requested file will be sent to the user along the original path according to the routing information recorded in the routing information table. If the cache space of the edge server passing through is sufficient to cache the file, it will be directly stored in the cache queue; when the cache space of the edge server is saturated, the above cache replacement process is executed; after the data content is cached in this routing node, the data content of the cache record table is reordered using the updated cache value to ensure that all cached data content in the cache record table is arranged in order from large to small according to the cache value, so as to reduce the retrieval burden; if the cache value of the newly requested file is lower than the cache value of all files in the cache record table of the current node, it will not be cached and the file will be directly forwarded to the next hop until it reaches the user; If the user sends k content requests in total, Indicates whether the CRT of the edge server P is hit. If so, otherwise The cache hit rate is expressed as 2. The integrity audit method based on collaborative caching in an industrial Internet of Things environment according to claim 1 is characterized in that In step A, the system includes a cloud server, an edge server layer composed of multiple edge servers, and an industrial equipment layer; the security parameter λ is input to the system, and the system public parameter pp={G1, G2, e, H, g} is output; the user obtains the value from Z p = {1,2,...,P} randomly selects a security parameter α and sets it as its private key, that is, S k =α; then randomly select a generator g from the G1 group and calculate P k =g α As the public key; where G1 and G2 are both scalar multiplication cyclic groups, p is the order of groups G1 and G2, g is the generator of groups G1 and G2, e represents the bilinear mapping: G1×G1→G2, H: {0, 1} * →G1 is the cryptographic function used for hashing operations.
3. The integrity audit method based on collaborative caching in an industrial Internet of Things environment according to claim 1 is characterized in that In step B, the user uses the public key P k , private key S k and file F as input, execute the signature generation algorithm, and file F is divided into n different blocks, that is, F = {f i } [1≤i≤n] , where F represents the data file, f i represents the i-th data block in the data file, n represents the number of data blocks in the entire data file, and the identity of data file F is F N , then in the file block {f i } [1≤i≤n] Generate a signature: Among them, id i =F N ||i is file block f i The identity of , 1≤i≤n, u∈G; Finally, a signature set ψ={ψ i } [1≤i≤n] ; Once the signature set ψ is ready, the user uploads the data file and the signature to the cloud server for storage and deletes (F,ψ) from the local storage.
4. The integrity audit method based on collaborative caching in an industrial Internet of Things environment according to claim 3 is characterized in that In step C, the cache space of each edge server node is divided into two parts, ACache and BCache; the data files of the path are preferentially cached in the ACache of the node, and the cache content recommendation and cache value are calculated and recorded in the cache record table; If the ACache of a node has insufficient cache space, cache replacement will be performed based on the cache value of the data file, and the replaced data file and related information will be sent to the BCache of the corresponding node according to the hash mapping table; the BCaches of different nodes form a collaborative domain, and the secondary recommended data file will compete for cache space in the BCache for a second time. If the file has been cached in the ACache of the node, the file will be deleted from the ACache of the node to avoid redundancy.
5. The integrity audit method based on collaborative caching in an industrial Internet of Things environment according to claim 4 is characterized in that: The content recommendation degree refers to the number of times R that users request file F within a given time period. F The ratio of content recommendation to the total number of user requests R clearly reflects the degree of user demand for the content; the expression is as follows: The cache overhead required for the edge server to cache content m is: in, is the cost of caching content in edge servers; R cloud represents the number of hops from the cloud server to the user, R edge represents the number of hops from the edge server to the user, is the cost of one-hop content transmission; If the content requested by the user is not cached in the edge server within a certain period of time, the user needs to obtain the requested content from the cloud server, and the cache overhead is: If the content requested by the user is cached on the edge server, the user directly obtains the required content from the hit node. At this time, the cache overhead of content m is: The value of caching content m in the edge server during this period is:
6. The integrity audit method based on collaborative caching in an industrial Internet of Things environment according to claim 1 is characterized in that In step E, the user first generates an audit request and sends the audit request to the third-party auditor TPA. Then the third-party auditor TPA randomly selects a subset Q in the set [1,n] according to the audit request. The subset has l elements, l∈[1,n], and generates a random number c i represents the element i in the set Q; The third-party auditor TPA will challenge the information chal = {(i,c i )} 1≤i≤l Sent to the hit node.
7. The integrity audit method based on collaborative caching in an industrial Internet of Things environment according to claim 1 is characterized in that In step F, when a single edge server can provide enough data blocks, the hit node performs a proof generation process to generate an integrity proof of the challenged block in the challenge information chal; The proof generation process consists of two parts: a linear combination of challenge blocks (χ) and an aggregate signature value (ψ) The hitting node returns Proof = {χ, ψ} as proof to the third-party auditor TPA for verification.
8. The integrity audit method based on collaborative caching in an industrial Internet of Things environment according to claim 1 is characterized in that In step F, when multiple edge servers or multiple edge servers and cloud servers need to be combined to provide enough data blocks, the integrity proof process is as follows: The cache data set of each edge server is C j ,j∈{1,2,3,...,k}, k is the number of edge servers participating in the process. For each i∈{1,2,...,k}, the edge server Edge i A valid cached dataset can be provided for requesting a chunk of data as follows: If C1∪C2∪C3∪...∪C i-1 ∪C i =Q, then Edge i is the last edge server; assuming Q j ={1,2,3,...,l j }, l j ∈[1,n], according to formula 8 and formula 9, we can get: The last hitting node returns Proof = {χ, ψ} as proof to the third-party auditor TPA for verification.
9. The integrity audit method based on collaborative caching in an industrial Internet of Things environment according to claim 1 is characterized in that In step G, after receiving the audit proof response information, the third-party auditor TPA uses the system public parameters and the public key P k , the challenge information chal verifies the correctness of the proof returned by the edge server; When the third-party auditor TPA is proven, it can k , the challenge information chal and the proof Proof received from the edge server are used to verify the correctness of the proof returned by the edge server through equation (13); If formula 13 is true, the output is "1", and the verification is successful; otherwise, the output is "0", and the verification is unsuccessful; The third-party auditor TPA communicates the results to users.
Citation Information
Patent Citations
Support publicly verifiable cloud data integrity auditing methods
CN109802828B
System architecture for cross-block-chain open data sharing under heterogeneous multi-chain architecture
CN108876370A
Certificateless cloud storage data integrity public auditing method
CN113364600A