The present invention relates to the technical field of group delegation computing, and specifically to a group delegation computing method.
With the iteration of information technology, the amount of data that people need to process also increases explosively. In consideration of the amount of data that needs to be computed, the computing power of local users has become insufficient. The emergence of delegation computing solves the problem of limited client resources. A client can rent computing resources from a cloud server on a pay-as-you-go basis and delegate the computing tasks to the cloud server, thereby avoiding necessity of purchasing computing resources due to temporary needs and incurring expensive investment costs.
A general scheme of delegating computing of function F usually expects a client to run an expensive pre-processing stage in advance to generate a user key SKF and a computing key CKF, and then amortize the huge initial costs over multiple executions of the protocol ((F(xi) is computed for different inputs xi), but the client requires the key SKF to start each time of execution. In other words, the client can delegate computing tasks to the cloud only when significant investment has been made in the pre-processing stage. This only makes sense if the client needs to delegate multiple different inputs on the same computing task. In order to use the amortization model to a greater extent, BryanParno and other people (2012) explicitly introduced the concept of public delegation for the first time and constructed a public delegation computing scheme based on attribute encryption, so that everyone can delegate computing tasks to the cloud. However, in this case, some delegators maliciously take advantage of the public delegation attribute to perform delegation tasks for free by using pre-processing that other customers have invested heavily in, which obviously violates the “pay-as-you-go” model of cloud computing.
In order to solve the disadvantage mentioned in background, the purpose of the present invention is to provide a group delegation computing method, to combine customers with a same computing task into a group, and delegate computing to a cloud service provider in the name of the group. After each delegator is authorized as a group member by the group administrator, the delegator can use group resources to delegate computing tasks to the cloud server, and anyone can verify, without knowing an input, whether a computing result returned by the cloud service provider is correct. The identity of the delegator is confidential, and only when a group member maliciously uses computing resources or there is a dispute over outsourced computing, the group administrator can trace the identity of the delegator.
The purpose of the present invention can be achieved by the following technical solution: A group delegation computing method, which includes the following steps:
Preferably, the trusted third-party operation initialization algorithm model inputs the security parameter λ∈, the number n∈
of group members, outputs the public parameter pp, and initializes the revocation list to RL; the group administrator and the group member execute the key generation algorithm model and output the group administrator secret key gmsk, the trace secret key gtsk, the group administrator public key gmpk, the trace public key gtpk, a pair (uski, upki) of a public key and a secret key of a group member i, a group public key gpk:=(pp, gmpk, gtpk, upki), the public key PKF for delegation computing, and the secret key SKF for delegation computing; the group administrator executes the member joining algorithm model and outputs a member certificate cert; and a revocation token regi of the group member i; the group member executes the question generation algorithm model and outputs a group signature τx, an encryption delegation input σx, a verification key VKx, a computing key CKF of the cloud server, and a recovery key RKF; the verifier executes the signature verification algorithm and outputs a signature verification result T indicating whether the group signature is legal; the cloud service provider executes the computing algorithm model when the signature verification is legal, and outputs the computing result σy and the correctness proof π; and any third party executes the blind verification algorithm model and outputs a blind verification result Tσy indicating whether the computing result of the cloud service provider is correct.
Preferably, a process of outputting different results by the recovery algorithm model according to different blind verification results is as follows:
Preferably, a process of executing the member revocation algorithm by the group administrator is as follows:
Preferably, a process of executing the signature opening algorithm model and outputting different results by the group administrator is as follows:
Preferably, the group delegation computing method satisfies the correctness as follows:
Preferably, the group delegation computing method satisfies the verifiability as follows: a dishonest cloud service provider or a malicious adversary cannot forge an incorrect result that can pass the blind verification algorithm, and cannot trick a user and a verifier into accepting an incorrect computing result.
Preferably, the group delegation computing method satisfies anonymity as follows: it is required that when a group signature is provided, no one other than the group administrator can determine a real identity of a signer only based on the signature. Preferably, the group delegation computing method satisfies traceability as follows: if the verifier has dispute over the reliability of the signature, the group administrator searches a storage list through the signature opening algorithm, to find identity information of the signer.
According to another aspect of the present invention, in order to achieve the above objective, a device is disclosed, including:
The present invention has the following beneficial effects:
The present invention can reduce costs, improve scalability, enhance security and improve resource utilization. First, the present invention reduces costs by enabling customers to jointly purchase cloud services, thereby lowering the overall investment required. Second, the present invention provides customers with access to industry-specific cloud platforms that cater exactly to their unique needs. Third, the present invention ensures data privacy and the identity privacy of the delegator. Finally, the present invention promotes the efficient usage of computing resources, maximizes computing resource saving, and prevents malicious usage by the delegator, and is more in line with the pay-as-you-go model of cloud computing.
In order to more clearly describe the technical solutions in the embodiments of the present invention or in the prior art, the drawings required for describing the embodiments or the prior art will be briefly described below. Apparently, those of ordinary skill in the art may still derive other drawings from these drawings without creative work.
The following clearly and completely describes the technical solutions in the embodiments of the present invention with reference to the accompanying drawings in the embodiments of the present invention. Apparently, the described embodiments are some of the embodiments of the present invention rather than all of the embodiments. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the protection scope of the present invention.
In this embodiment, the trusted third-party operation initialization algorithm model inputs the security parameter λ∈, the number n∈
of group members, outputs the public parameter pp, and initializes the revocation list to RL. The group administrator and the group member execute the key generation algorithm model and output the group administrator secret key gmsk, the trace secret key gtsk, the group administrator public key gmpk, the trace public key gtpk, a pair (uski, upki) of a public key and a secret key of a group member i, a group public key gpk:=(pp, gmpk, gtpk, upki), the public key PKF for delegation computing, and the secret key SKF for delegation computing. The group administrator executes the member joining algorithm model and outputs a member certificate cert; and a revocation token regi of the group member i. The group member executes the question generation algorithm model and outputs a group signature τx, an encryption delegation input σx, a verification key VKx, a computing key CKF of the cloud server, and a recovery key RKF. The verifier executes the signature verification algorithm and outputs a signature verification result T indicating whether the group signature is legal. The cloud service provider executes the computing algorithm model when the signature verification is legal, and outputs the computing result oy and the correctness proof T. Any third party executes the blind verification algorithm model and outputs a blind verification result Tσy indicating whether the computing result of the cloud service provider is correct.
In this embodiment, a process of executing the recovery algorithm model by the delegator to output different results according to different blind verification results is as follows: inputting the delegation public key PKF, the verification key VKx, the computing result σy, and the correctness proof π, and if the blind verification result Tσy=(1, accept, S), outputting a real computing result y=F (x), or if the blind verification result Tσy=(1, reject, S), outputting ⊥.
In this embodiment, a process of executing the member revocation algorithm by the group administrator is as follows:
the group administrator inputs the group public key gpk, the group administrator secret key gmsk, the group member revocation token regi, and the revocation list RL, and adds the revocation token to the revocation list RL, updates and publishes the revocation list including regi, and if the revocation succeeds, outputs 1, or if the revocation fails, outputs 0.
In this embodiment, a process of executing the signature opening algorithm model and outputting different results by the group administrator is as follows:
In this embodiment, the group delegation computing method satisfies the correctness as follows:
Finally, it should be noted that the group delegation computing method satisfies verifiability as follows:
In this embodiment, For any λ∈ and any function F∈
, the adversary
can access an oracle machine for q=poly(n) times at most in experiment 1. The advantage probability of the adversary
is expressed as follows:
For a type of function , if the probability Ad
(F, λ) is negligible for ∀F∈
and any probabilistic polynomial time adversary
, the group delegation computing scheme is verifiable.
It should be noted that the group delegation computing method satisfies anonymity as follows:
In this embodiment, before defining anonymity in detail, experiment 2 between the adversary and the challenger
is first introduced (as shown in
is to determine, from two adaptively chosen keys, a key used to generate a signature. More precisely,
generates two challenge users i0 and i1, then
randomly selects a bit b∈{0, 1} and signs with a secret key of ib, and finally
returns a guess b*. The advantage probability of the adversary
is expressed as follows:
If the probability Ad[λ, n] is negligible for any probabilistic polynomial time adversary
, the group delegation computing scheme is anonymous.
It should be noted that the group delegation computing method satisfies traceability as follows:
In this embodiment, Before defining traceability in detail, experiment 3 between the adversary and the challenger
is introduced (shown in
is to use the GOpen algorithm to forge a signature that could not be traced to a specific group member. Finally, the adversary
outputs a forged message signature pair (x*, τx*) and a revocation list RL*. The advantage probability of the adversary
is expressed as follows:
If the probability Ad[λ, n] is negligible for any probabilistic polynomial time adversary
, the group delegation computing scheme is traceable.
Based on the same inventive concept, the present invention also provides a computer device, including: one or more processors, and a memory, configured to store one or more computer programs. The program includes program instructions, and the processor is configured to execute the program instructions stored in the memory. The processor may be a central processing unit (Central Processing Unit, CPU), or other general-purpose processors, a digital signal processor (Digital Signal Processor, DSP), an application specific integrated circuit (Application Specific Integrated Circuit, ASIC), a field-programmable gate array (Field-Programmable Gate Array, FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, or the like, and is the computing core and control core of a terminal and is configured to implement one or more instructions, and is specifically configured to load and execute one or more instructions in the computer storage medium to implement the above method.
It should be further noted that based on the same inventive concept, the present invention also provides a computer storage medium on which a computer program is stored, and the computer program, when executed by the processor, performs the above method. The storage medium may be any combination of one or more computer-readable mediums. The computer-readable medium may be a computer-readable signal medium or a computer-readable storage medium. The computer-readable storage medium may be, for example, but is not limited to, an electric, magnetic, optical, electromagnetic, infrared, or semi-conductive system, apparatus, or component, or any combination of the above. More specific examples (a non-exhaustive list) of the computer readable storage medium include: an electrical connection with one or more conductors, a portable computer disk, a hard disk, a random access memory (RAM), a read only memory (ROM), an erasable programmable read only memory (EPROM or a flash memory), an optical fiber, a portable compact disk read only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof. In the present invention, the computer-readable storage medium may be any tangible medium containing or storing a program, and the program may be used by or used in combination with an instruction execution system, an apparatus, or a device.
In the descriptions of this specification, a description of a reference term such as “an embodiment”, “an example”, or “a specific example” means that a specific feature, structure, material, or characteristic that is described with reference to the embodiment or the example is included in at least one embodiment or example of the present invention. In this specification, exemplary descriptions of the foregoing terms do not necessarily refer to the same embodiment or example. In addition, the described specific features, structures, materials, or characteristics may be combined in a proper manner in any one or more of the embodiments or examples.
The foregoing displays and describes basic principles, main features of the present disclosure and advantages of the present disclosure. A person skilled in the art may understand that the present disclosure is not limited to the foregoing embodiments. Descriptions in the embodiments and this specification only illustrate the principles of the present disclosure. Various modifications and improvements are made in the present disclosure without departing from the spirit and the scope of the present disclosure, and these modifications and improvements shall fall within the protection scope of the present disclosure.