PLoS ONE
Home Obfuscating encrypted threshold signature algorithm and its applications in cloud computing
Obfuscating encrypted threshold signature algorithm and its applications in cloud computing
Obfuscating encrypted threshold signature algorithm and its applications in cloud computing

Competing Interests: The authors have declared that no competing interests exist.

Article Type: Research Article Article History
Abstract

Current cloud computing causes serious restrictions to safeguarding users’ data privacy. Since users’ sensitive data is submitted in unencrypted forms to remote machines possessed and operated by untrusted service providers, users’ sensitive data may be leaked by service providers. Program obfuscation shows the unique advantages that it can provide for cloud computing. In this paper, we construct an encrypted threshold signature functionality, which can outsource the threshold signing rights of users to cloud server securely by applying obfuscation, while revealing no more sensitive information. The obfuscator is proven to satisfy the average case virtual black box property and existentially unforgeable under the decisional linear (DLIN) assumption and computational Diffie-Hellman (CDH) assumption in the standard model. Moreover, we implement our scheme using the Java pairing-based cryptography library on a laptop.

Li,Wei,Wu,Wang,Wang,Zhang,Yang,and Shi: Obfuscating encrypted threshold signature algorithm and its applications in cloud computing

Introduction

Cloud computing provides various data storage and services over a network [1]. Due to its many benefits, it collaborates with other promising technologies such as 5G networks [2, 3] and IoT [4, 5]. Meanwhile, more individual and corporate gradually outsource data storage or computation to the cloud for its cost saving and convenience. Despite various merits of cloud computing, however in practice, cloud servers are not entirely reliable [68]. Since if users directly delivery their data to cloud platforms, the important information in data will be leaked to cloud servers, which will lead to the exposure of users’ privacy. Therefore, the concern is how to secure the data and rely on the services in cloud.

Obfuscation and cryptography are powerful tools that protect the data of users from a malicious/curious cloud server while preserving the services [9, 10]. When user chooses the cloud service to finish computation task without knowing the sensitive information of the task. In this case, the user data are obfuscated before they are forwarded to the cloud server. In a word, the cloud server can finish the computation tasks without sacrificing data privacy [11]. The related researches have addressed various security and privacy issues on data outsourcing. The works in [1214] proposed cloud storage system in which data were obfuscated and encrypted. Sugumar et al. [15] proposed a confidentiality system named as SUG-DO (SUGUMARDigits Obfuscation) to enhance the security of data in cloud environment. Jin et al. [6] proposed an attribute-based data sharing scheme especially for resource-constrained mobile users in cloud computing. Recently, some new privacy preserving schemes [1618]for other features have been reported to meet different auditing requirements in the literature.

Threshold cryptography is an essential distributed computational paradigm for enhancing the applicability and the security of public key schemes [19]. This approach was based on the work of Shamir [20], who proposed the definition of (t, n) threshold secret sharing scheme. Using Shamir’s idea, (t, n)-threshold signature [21] separates private keys into n shares distributed to different users, t threshold or more share holders need cooperatively produce a signature. Most existing threshold algorithms rely on the trusted dealers (TDs) to distribute secrets, and more than that, it needs to be always trusted and safeguarded because it has the private key for all users, but they usually do not keep the confidentiality of the data against the cloud. To eliminate the third party, Pedersen [22] was the first to present threshold secret sharing scheme without any TDs. And then, based on the ideas similar to the protocol of Pedersen, Gennaro et al. [23] presented a secure distributed key generation for discrete log based cryptosystems (GJKR’s DKG protocol) that enjoyed a full proof of security. Due to its distributed nature and the lack of a central authority, threshold cryptography becomes one of the most important tools in offering secure applications such as password protection [24] and cloud computing [25]. These studies make great contributions for protecting security of information systems and against various attacks. However, for nontrustable cloud, secret cryptographic keys are potentially vulnerable to attackers, the problem is related to ensuring proper protection of the outsourced computation task.

Program obfuscation is a very hot research topic in the field of practical application points of view, since program obfuscators perfectly conceal important information encoded into programs. A major breakthrough arrived with the work of Barak et al. [26] put forward the concept of program obfuscation into the area of cryptography, their work showed that the construction of generic obfuscation was impossible under the virtual black-box property. Many other impossibility results have been demonstrated in many situations [27, 28]. However, there are a few positive results for some functions in [29, 30]. Faced with the applications of cryptographic functionality, the first ever obfuscated re-encryption was mentioned in TCC’2007 by Hohenberger [31], a new security concept of average case virtual black-box property (ACVBP) was proposed. Succeeding their groundwork, Hada [32] proposed an obfuscator for encrypted signature scheme, and extended the definition of ACVBP, the algorithm was secure under the decisional linear assumption in the standard model. Consequently, several different functionalities and the corresponding obfuscators have been proposed. The research [33] showed a type of obfuscator for verifiably encrypted signatures. The obfuscation of encrypted group signature (EGS) was studied in [34], where the notion of ACVBP w.r.t R(C) and T(C) was defined. To provide secure authentication, Yang et al. [35], applied an obfuscator to anonymous authentication, the algorithm supported batch verification of authentication requests, realizing the improvement of efficiency. In order to make obfuscation application into cloud computing, Zhang et al. [36] proposed an obfuscator for all polynomial-size CNF circuits and used to cloud computing. Zhang et al. [37] proposed an obfuscator for encrypted verifiable encrypted signature, and modelled the application in electronic transactions. The obfuscation can achieve a series of applications, threshold signature is an attractive service used in cloud computing, this paper focuses on achieving encrypted threshold signature, which designs an obfuscator to protect users’ privacy. It should offer outsourcing computation without compromising data privacy.

However, the existing threshold cryptography mainly focuses on how to afford secure data for users, few works consider another requirement for the cloud application that needs to protect the sensitive data. In order to protect the privacy of the information sent from the user to the cloud, our work follows the idea of Hada’s work and applies it to threshold signature setting. In this paper, we propose a secure obfuscation for encrypted threshold signature. The main contributions are as follows:

    We propose an obfuscator that implements encrypted threshold signature (ETS) functionality, which can outsource the threshold signing rights of users to cloud server securely by obfuscation. Besides, this method can protect the sensitive leakage from the ETS program running on an untrusted sever.

    We propose some security notions of ETS functionality and the corresponding obfuscator. Under the decisional linear assumption and computational Diffie–Hellman assumption, the proposed obfuscator satisfies the requirements of ACVBP and existentially unforgeability in the standard model.

    We analyze the correctness of functionality preservation and polynomial slowdown. Meanwhile, the performance analysis of ETS functionality and the obfuscator are provided. Finally, we implement the proposed algorithms in a personal computer by using java pairing-based cryptography library.

The remainder of this paper is organized as follows. In section 2, we present some preliminaries including bilinear pairings, security problems and circuit obfuscators. In section 3, we present some build blocks will be used in our proposed schemes, then we propose an encrypted threshold signature scheme and the corresponding obfuscator based on linear encryption scheme and threshold signature. Section 4 analyzes the security and performance of our scheme from the perspectives of functionality preservation, ACVBP and existentially unforgeability. Section 5 presents our conclusion.

Preliminary

Bilinear pairings and security problems

In this section, we describe bilinear maps and hard problems [38]. Let consider two cyclic groups G and GT with the same prime order q, and let g is a generator of G. A bilinear map e^:G×GGT need satisfy the following properties:

    Bilinearity: For all g,hG, and a,bZq, e^(ga,hb)=e^(g,h)ab.

    Non-degeneracy: There exists a,bZq, such that e^(ga,gb)1.

    Computability: For all g,hG, e^(g,h) can be computed.

Definition 1. The Decision Linear (DLLN) Problem is to decide whether a + b = c, given u,v,h,ua,vb,hcG for unknown a,b,cZq. The DLLN assumption states that, there is no PPT algorithm can solve the DLLN problem with non-negligible advantage.

Definition 2. The Computational Diffie-Hellman (CDH) Problem is that, given g,gx,gyG for unknown x,yZq, it is hard to compute gxy. The CDH assumption states that, there is no PPT algorithm can solve the CDH problem with non-negligible advantage.

Circuit obfuscators

In this section, we briefly review some notations of circuit obfuscators used in this paper [32]. We use C={Cλ}λN to denote a class of probabilistic circles, here Cλ is the circuits in C of input length lin(λ). the notation CCλ denotes the generation procedure. PPT denotes probability polynomial time. Obf denotes an obfuscator. poly(λ) indicates the set of all polynomials of λ. We now provide definitions of statistical difference and preserving functionality.

Definition 3. [32] The statistical difference between C0(x) and C1(x) is given by:

Definition 4. (Preserving Functionality) [32] A PPT machine Obf is a circuit obfuscator for a class of probabilistic circuits C={Cλ}λN, if for every probabilistic circuit CCλ, the following holds:

Obfuscation of encrypted threshold signatures

Encrypted threshold signatures (ETS) functionality utilizes a threshold signature (TS) scheme, which was proposed in [21] and an asymmetric linear encryption scheme [39]. After that, we will give a detailed description of obfuscation.

TS signature

The TS signature scheme is a tuple of algorithms ∏ = (Setup, Share-Sign, Share-Verify, Combine, Verify) such that:

    Setup(params, λ, k, n): Takes as input a security parameter λN and a pair of integers (k, n) ∈ poly(λ), such that 1 ≤ kn, let P={P1,P2,,Pn} denote a set of n participants (users).

      Choose system parameter params=(G,GT,e^,g,q).

      g2,u,U=(u1,u2,,un)Gn+2 are also generated by using GJKR’s DKG algorithm [22], respectively.

      To generate public key, n users jointly generate user public key g1 = gα by using GJKR’s DKG.

      Each user Pi broadcasts gf(i) for a random jointly generated degree k − 1 polynomial fZq[X] such that α = f(0).

      User Pi gets the private key shares SK = (sk1, sk2, ⋯, skn) as ski=g2f(i) for i = 1 to n. Verification keys VK = (vk1, vk2, ⋯, vkn) as vki = gf(i) for i = 1 to n.

      Output the public key p = (VK, params, g1, g2, u′, U), and each user is supplied with the private key share ski.

    Share-Sign(ski, m): To sign m = m1 m2mn ∈ {0, 1}n, using ski, choose riZq, compute the signature share σi=(σi1,σi2)=(ski(ui=1nuimi)ri,gri).

    Share-Verify(p, m, i, σi): Given a signature share σi, and the verification key vki, the partial verification algorithm return 1 if e^(σi1,g)=e(g2,vki)e^(ui=1nuimi,σi2), else return 0.

    Combine(p, m, i, σi)i∈Φ: For each i ∈ Φ, where a subset Φ ⊂ {1, 2, ⋯, n} and |Φ| = k. Let λi be the Lagrange coefficients so that α=f(0)=iΦλif(i), compute the combined signature (σ1¯,σ2¯)=(iΦσi1λi,iΦσi2λi).

    Verify (p,m,σ1¯,σ2¯): Given signature (σ1¯,σ2¯), the receiver checks the equation e^(σ1¯,g)=e^(g2,g1)e^(ui=1nuimi,σ2¯). If the equation holds, outputs 1, otherwise outputs 0.

Linear encryption scheme

The linear encryption scheme consists of three algorithms ∑ = (Key generation algorithm(KG), Encrypt algorithm(Enc), Decrypt algorithm(Dec)), the algorithms are described as follows:

    KG(params): Parse system parameter params=(G,GT,e^,g,q), choose a,bZq as the private key ske, compute the encryption public key pke = (pke1, pke2) = (ga, gb).

    Enc(m, pke): To encrypt message m, randomly choose r,sZq, compute

    Dec(τ, ske): Given τ and ske, compute m=τ3τ11aτ21b.

Specifically, we denote the rerandomization algorithm by ReRand(p, pke, (τ1, τ2, τ3)), which produces a new ciphertext (τ1(ga)r,τ2(gb)s,τ3gr+s), equivalent to the input ciphertext τ, under the public key pke = (ga, gb), using the additional random numbers r′ and s′.

The ETS functionality

ETS functionality is composed of ETS.Setup, ETS.Sign, ETS.Verify. We give the concrete construction as follows:

    ETS.Setup(params, λ, k, n):

      Parse parameter params=(G,GT,e^,g,q).

      For users(participants), generate public keys and private shares by running (VK, params, g1, g2, u′, U, SK)← Setup(params, λ, k, n).

      For receiver(verifier), randomly choose a,bZq as the receiver’s private key ske, compute receiver’s public key pke = (pke1, pke2) = (ga, gb).

    ETS.Sign(SK, m, p, pke): For m = m1 m2mn ∈ {0, 1}n, works as follows:

      Randomly choose rjZq, and compute σjShare-Sign(skj, m), that is

      Verify the validity of signature σj by

      Compute the combined signature (σ1¯,σ2¯)Combine(p, m, j, σj)j∈Φ, that is

      for each j ∈ Φ, where a subset Φ ⊂ {1, 2, ⋯, n} and |Φ| = k. Let λj be the Lagrange coefficients so that α=f(0)=jΦλjf(j).

      Randomly choose x1,x2,y1,y2Zq, encrypt (σ1¯,σ2¯) under the receiver’s public key S1Enc (pke,σ1¯) and S2Enc (pke,σ2¯), that is

      Output encrypted threshold siganture (S1, S2).

    ETS.Verify(p, ske, S1, S2, m): Parse p = (VK, params, g1, g2, u′, U), and m = m1 m2mn ∈ {0, 1}n. Decrypt (S1, S2) to get (σ1¯,σ2¯), that is

    and
    then verify the encrypted signature by e^(σ1¯,g)=e^(g2,g1)e^(ui=1nuimi,σ2¯), else return 0.

The obfuscation of ETS functionality

From the description of the ETS functionality in above section, we regard a family of circuits CETS={Cλ}λN for the ETS functionality, Cλ is a group of circuits Cp,SK,pke. We can draw system parameters (SK, pke, p) from Cp,SK,pke. Given a circuit Cp,SK,pke, the ObfETS works as follows:

    Obf ETS(Cp,SK,pke):

      Extract system parameters (pke, SK, p).

      Parse parameter params=(G,GT,e^,g,q), SK = (sk1, sk2, ⋯, skn) and VK = (vk1, vk2, ⋯, vkn).

      For each j ∈ {1, 2, ⋯, n}, randomly choose xj1,xj2Zq, encrypt user’s private share skj to run (pke1xj1,pke2xj2,skj)Enc(pke,skj), skj=gxj1+xj2skj is an encrypted form of the original signing key skj, then compute vkj=gxj1+xj2vkj. Suppose t=(cj1,cj2,cj3)=(pke1xj1,pke2xj2,skj).

      Construct an obfuscated circles Rp,pke,t that contains the values (p,pke,vkj,t).

    Rp,pke,t: The obfuscated circuit can be executed on any untrusted cloud server, and it does the following.

      On input security parameter λ, the circuit outputs (pke, p).

      On input message m = m1 m2mn ∈ {0, 1}n, randomly choose rjZq to run σj=(σj1,σj2)Share-Sign (skj,m), that is

      and

      Verify the validity of signature σj by

      Compute the combined signature (σ1¯,σ2¯)Combine (p,m,σj)jΦ, that is

      for each j ∈ Φ, where a subset Φ ⊂ {1, 2, ⋯, n} and |Φ| = k. Let λj be the Lagrange coefficients so that α=f(0)=jΦλjf(j).

      Compute c1=jΦ(cj1)λj=pke1jΦλjxj1, and c2=jΦ(cj2)λj=pke2jΦλjxj2.

      Randomly choose x1,x2,y1,y2Zq, rerandomize the generated signature σ1¯ by running S1*ReRand (p,pke,(c1,c2,σ1¯)), that is

      and run S2*Enc (pke,σ2¯), that is

      Output (S1*,S2*).

Besides, the polynomial time property is evident as all the calculation here is valid in polynomial time. It is easily to verify that the obfuscated program by theorem 1.

Theorem 1. The algorithm Rp,pke,t can pass verification.

Proof 1. For a valid ciphertext (S1*,S2*), receiver decrypts (S1*,S2*), the correctness of Rp,pke,t is elaborated as follows:

The following equation shows that Rp,pke,t satisfies correctness:

Security properties

In the threshold cryptosystem, we should consider a coalition of k curious but honest users attack against the proposed obfuscator. Therefore, we suppose that an adversary is capable of obtaining the private key shares of corrupted users against the obfuscator, excepting the user who generates the obfuscated implementation as a challenge, that is, an adversary can access the corruption oracle on any corrupted user, but corrupt up to k − 1 of the n players, the set of oracle restrictions dependent on C is defined as R(C). In this paper, we define R(C) = {Corruption, ∣Φ∣ ≤ k − 1}, which can be expressed as Corruption∣Φ∣≤k−1. Some security requirements of the proposed obfuscator are introduced in the following descriptions.

Definition 5. [34] An obfuscator Obf for C meets the ACVBP w.r.t. dependent oracle set T(C) and restricted dependent oracle set R(C) if the following situation holds: There exists a PPT simulator S such that, for distinguisher D, arbitrary polynomial f, all sufficiently large λN, and arbitrary z ∈ {0, 1}poly(λ),

where DC,T(C),R(C)≫ means that D has sampling access to all oracles contained in T(C) and R(C) in addition to C.

Definition 6. Let (KG, Enc, Dec) and (Setup, ShareSign, ShareVerify, Combine, Verify) be a couple of linear encryption and the threshold signature algorithms. The threshold algorithm is existentially unforgeable w.r.t. ETS functionality if the following situation has to be satisfied: There exists a PPT algorithm A, all sufficiently large λN, arbitrary polynomial f, and arbitrary z ∈ {0, 1}poly(λ),

where ShareSignp,ski is the Share-Sign oracle, Corruption|Φ|≤k−1 is the corruption oracle such as no more than k − 1 private key shares can be obtained by adversary A in the whole game, Q is the set of message queried by A adaptively.

Definition 7. Let (KG, Enc, Dec) and (Setup, Share-Sign, Share-Verify, Combine, Verify) be a couple of linear encryption and the threshold signature algorithms. The threshold signature algorithm is existentially unforgeable w.r.t. the ETS Obfuscator if the following situation has to be satisfied: There exists a PPT algorithm A, all sufficiently large λN, arbitrary polynomial f, and arbitrary z ∈ {0, 1}poly(λ),

where ShareSignp,ski is the share sign oracle, Corruption|Φ|≤k−1 is the corruption oracle such as no more than k − 1 private key shares can be obtained by adversary A in the whole game, Q is the set of message queried by A adaptively.

Correctness

In this section, we identify the following goals that the obfuscator for ETS should satisfy.

    Correctness: The correctness of an obfuscator requires “Preserving Functionality” as described in Definition 4.

    Security: The obfuscator needs satisfy ACVBP with respect to T(C) and R(C) and existentially unforgeable with respect to ETS Obfuscator.

Below, we state the Theorem 2 which is a key result used to show the correctness of our construction.

Theorem 2. (Preserving Functionality) The obfuscated program preserves the functionality of original ETS.

Proof 2. On receiving the encrypted threshold signature (S1, S2), that is

and
where x1,x2,y1,y2Zq.

On receiving the obfuscated program (S1*,S2*), that is

and
where x1,x2,y1,y2,rjZq.

We observe that both (S1, S2) and (S1*,S2*) are identically distributed.

Security proof

Theorem 3. Under the DLLN assumption, the algorithm ObfETS is ACVBP with respect to dependent oracle T(C)=ShareSignp,ski and restricted dependent oracle R(C) = Corruption∣Φ∣≤k−1.

Proof 3. Suppose C=Cp,SK,pke, T(C)=ShareSignp,ski and R(C) = Corruption∣Φ∣≤k−1. There are a pair of probabilities (PrNick, PrJunk) that represent DC,T(C),D(C)≫ outputs 1, given the true and imitated distributions, respectively. We show that S K = (sk1, sk2, ⋯, skn) and Junk¯=(Junk1,Junk2,,Junkn) are encrypted in the true and imitated distributions. Since the algorithm ObfETS is equivalent to the values (p,pke,vki,t). So we can utilize a simulator S which imitates these values with sampling access to C. The values (p, pke) can be easily draw from C. In order to simulate (t,vki). Then S chooses n junk values and encrypts them using the receiver’s public encryption key pke.

The detailed procedure of S is as below.

    Using the sampling access to Cp,SK,pke to get (p, pke).

    Parse p = (V K, params, g1, g2, u′, U), V K = (vk1, vk2, ⋯, vkn) and params=(G,GT,e^,g,q).

    Randomly choose Junk1,Junk2,,JunknG, and xi1¯,xi2¯Zq.

    Encrypt Junki using public key pke, (ci1,ci2,ci3)=(pke1xi1¯,pke2xi2¯,gxi1¯+xi2¯Junki) for i = 1 to n.

    Compute vki¯=gxi1¯+xi2¯vki for i = 1 to n.

    Set Junk = (ci1, ci2, ci3), where i = 1, 2, ⋯, n.

    Output (p,pke,vki¯,Junk), obviously, Rp,pke,Junk has the same distribution as Rp,pke,t.

We will first prove that the output distributions of the simulator and the obfuscator are indistinguishable. We prove this by contradiction, assume that the probability that a distinguisher DC,T(C),D(C)≫ can distinguish between the probabilities described is not negligible. That is, |PrNick − PrJunk| is not negligible.

Assume that the probability of D to win is not negligible, then we build a couple of adversaries (A, B), which attacks the semantic security of the encryption algorithm. First, A does as below:

    Take as input (params, pke, p, z).

    Parse params=(G,GT,e^,g,q).

    Generate the signers’ private key shares S K.

    Parse S K = (sk1, sk2, ⋯, skn).

    Randomly choose Junk1,Junk2,,JunknG.

    Set m1 = ski and m2 = Junki.

    Output (m1, m2, pke).

Given an encryption ciphertext ct of mi, the algorithm B can make a distinction between m1 and m2 by utilizing D.

    Take as input (p, pke, m1, m2, ct, z).

    Parse params=(G,GT,e^,g,q) and ct.

    Simulate DC,T(C),D(C)(p,pke,ski,ci1,ci2,z).

    Output D’s output.

The advantage of attacker B is the same as the advantage of the distinguisher D to distinguish the output distributions of obfuscator and simulator. So if it’s not negligible, then it contradicts the DLLN assumption. Thus the advantage of D is negligible when given one tuple of ciphertexts, then the advantage when given three tuples is also negligible. So we conclude that the obfuscator satisfies ACVBP with dependent oracle set T(C) and restricted oracle setR(C).

Theorem 4. If ObfETS for ETS functionality is ACVBP w.r.t. dependent oracle T(C)=ShareSignp,ski and restricted dependent oracle R(C) = Corruption∣Φ∣≤k−1, then the existentially unforgeable w.r.t. ETS functionality implies the existentially unforgeable w.r.t. ETS obfuscator.

Proof 4. The proof of this theorem is very similar to the proof in [32], see [103, Theorem 1], we thus omit the formal proof here.

From Theorem 3 and Theorem 4, the TS scheme satisfies the existentially unforgeable, even if the adversary can obtain the obfuscated circuit. The obfuscator for ETS is mainly to enhance the security, and it is safe for the obfuscation circuit to be executed by any untrusted cloud server, and the cloud server could not get any useful information from it.

Corollary 1. Under DLLN and CDH assumptions, TS scheme is existentially unforgeable w.r.t. ObfETS.

Experimental results

Theoretical performance analysis

Here we analyze the performance efficiency of our scheme, in terms of computational complexity when performing ETS.Sign, ObfETS, Rp,pke,t and ETS.Verify operations. The result is showed in Table 1. In this table, Rand denotes the operation that randomly selects element, Add denotes addition, Mult denotes multiplication, Exp be an exponent operation, Inv denotes inverse operation. As shown in Table 1, the computational complexity of ETS.Sign and Rp,pke,t algorithms is linear in the number of n and k. All these operations are polynomial bounded operations and can be computed effectively. Therefore, all algorithms are efficient from a theoretical perspective.

Table 1
Computational overhead, where n is the number of users, k is the threshold number.
OperationETS.SignObfETSRp,pke,tETS.Verify
alternatives Randn + 42nn + 40
Add2n2k0
Inv0004
alternatives Mult2k + n + 12n4k + n + 10
Exp2k + 2n + 63n4k + 2n + 64
Inv0002
alternatives Mult1011
alternatives Pair3033

Implementation

To provide numerical results, we implement it to measure the performance of our scheme. Our implementation is written in C using the Pairing-Based Cryptography Library [40]. For the computations, we use the curve groups that are implemented in the Libpbc library. The computations are run on a PC with 3.70 GHz CPU frequency, and 4 GB of RAM. In the experiment, we use elliptical curves with a base field size of 512 bits and an embedding degree of 2. The security levels are selects as |p| = 512.

The following results denote the average running times of related cryptographic operations. In the experiment, the experimental result is the average number of 10 runs. We measure the running time of four algoritms, that is: ETS.Sign, ObfETS, Rp,pke,t and ETS.Verify. The performing consequence of our scheme is provided in Fig 1 when n = 5 and k = 3. It is shown that the obfuscated implementation have high efficiency in general, because the algorithm needs perform more exponent operation.

Execution time of the algorithms.
Fig 1

Execution time of the algorithms.

Figs 2 and 3 show the time variety when the number of n and k as variables, respectively. Fig 2 shows the operations time of ETS.Sign, ObfETS and Rp,pke,t when k is set as 3 and the number of n is set varies from 5 to 9 increased by an interval of 1. Fig 3 shows the execution time of the three algorithms when n is set as 7 and the number of k is set varies from 3 to 7 increased by an interval of 1. We observe that Rp,pke,t, ETS.Sign and ObfETS’s time cost increases fastly along with the increasing of n and k. It can be seen from the results that Rp,pke,t is more costly than ETS.Sign with the same n or k.

Time cost with k = 3.
Fig 2

Time cost with k = 3.

Time cost with n = 7.
Fig 3

Time cost with n = 7.

Conclusion

Obfuscation technique can provide much greater security for sensitive data from service providers in cloud computing. In this paper, we design an obfuscator for encrypted threshold signature, according to this technique, key shares are obfuscated before they are uploaded to the cloud services. In this regard, we can implement the program obfuscator run on a untrusted cloud sever, while hiding privacy-related sensitive information from the obfuscated program. The security analysis demonstrate that our scheme can meet the average case virtual black box property.

Acknowledgements

The authors would like to thank the anonymous reviewers of this paper for his/her objective comments and helpful suggestions while at the same time helping us to improve the English spelling and grammar throughout the manuscript.

References

ASingh, KChatterjee. Cloud security issues and challenges: A survey. Journal of Network and Computer Applications. 2017, 79:88115. 10.1016/j.jnca.2016.11.027

WZhuang, QYe, FLyu, NCheng, JRen. SDN/NFV-Empowered Future IoV With Enhanced Communication, Computing, and Caching. Proceedings of the IEEE, 2019, PP(99):118. 10.1109/JPROC.2019.2951169

He H, Shan H, Huang A, Ye Q, Zhang W. Edge-Aided Computing and Transmission Scheduling for LTE-U-Enabled IoT. IEEE Transactions on Wireless Communications, to appear. 10.1109/GLOCOM.2018.8647178

QYe, JLi, KQu, WZhuang, LXu. End-to-End Quality of Service in 5G Networks: Examining the Effectiveness of a Network Slicing Framework. IEEE Vehicular Technology Magazine, 2018, 13(99):6574. 10.1109/MVT.2018.2809473

YZhang, CXu, HLi, KYang, JZhou, XLin. HealthDep: An Efficient and Secure Deduplication Scheme for Cloud-Assisted eHealth Systems. IEEE Transactions on Industrial Informatics, 2018:11. 10.1109/TII.2018.2832251

PSun. Security and privacy protection in cloud computing: Discussions and challenges. Journal of Network and Computer Applications, 2020:102642. 10.1016/j.jnca.2020.102642

SIslam, MOuedraogo, CKalloniatis, HMouratidis, SGritzalis. Assurance of Security and Privacy Requirements for Cloud Deployment Model. IEEE Transactions on Cloud Computing, 2018, 6(99):387400. 10.1109/TCC.2015.2511719

JLi, YZhang, XChen, YXiang. Secure attribute-based data sharing for resource-limited users in cloud computing. Comput. Secur. 2018, 72:112. 10.1016/j.cose.2017.08.007

BMary, DAmalarethinam. Data Security Enhancement in Public Cloud Storage Using Data Obfuscation and Steganography. IEEE Computer Society. 2017:181184. 10.1109/WCCCT.2016.52

10 

OArul, LArockiam. Confidentiality Technique for Enhancing Data Security using Encryption and Obfuscation in Public Cloud Storage. International Journal of Advanced Research in Computer and Communication Engineering. 2016, 9(10): 111. 10.17148/IJARCCE.2016.5294

11 

RCheng, FZhang. Obfuscation for multi-use re-encryption and its application in cloud computing. Concurrency & Computation Practice & Experience. 2015, 27(8):21702190. 10.1002/cpe.3399

12 

ARehman, MHussain. Efficient Cloud Data Confidentiality for DaaS. International Journal of Advanced ence & Technology. 2011, 35: 110.

13 

PGautam, MAnsari, SSharma. Enhanced Security for Electronic Health Care Information Using Obfuscation and RSA Algorithm in Cloud Computing. International Journal of Information Security and Privacy, 2019, 13(1):5969. 10.4018/IJISP.2019010105

14 

Oli SA, Arockiam L. Confidentiality Technique to Encrypt and Obfuscate Non-Numerical and Numerical Data to Enhance Security in Public Cloud Storage. 2017 World Congress on Computing and Communication Technologies (WCCCT). IEEE Computer Society, 2017. 10.1109/WCCCT.2016.51

15 

RSugumar, KJoycee. Ensure and Secure Data Confidentiality in Cloud Computing Environment using Data Obfuscation Technique. International Journal of Advanced Studies in Computer Science and Engineering, 2017, 12(6): 1621.

16 

YZhang, CXu, XLin, XShen. Blockchain-Based Public Integrity Verification for Cloud Storage against Procrastinating Auditors. IEEE Transactions on Cloud Computing, 2019:11. 10.1109/TCC.2019.2908400

17 

YZhang, CXu, NCheng, HLi, HYang. Chronos+: An Accurate Blockchain-Based Time-Stamping Scheme for Cloud Storage. IEEE Transactions on Services Computing, 2020, 13(2):216229. 10.1109/TSC.2019.2947476

18 

YZhang, CXu, JNi, HLi, XShen. Blockchain-assisted Public-key Encryption with Keyword Search against Keyword Guessing Attacks for Cloud Storage. IEEE Transactions on Cloud Computing, 2019, PP(99):11. 10.1109/TCC.2019.2923222

19 

TCaddy, SSmith, AStavrou, NWeaver, DNaccache, MKuhn, et al. Threshold Cryptography. Encyclopedia of Cryptography and Security. 2015:12881293. 10.1007/978-1-4419-5906-5_330

20 

AShamir. How to Share a Secret. Communications of the Acm. 2011, 22(11): 612613. 10.1145/359168.359176

21 

Li J, Yuen T H, Kim K. Practical Threshold Signatures Without Random Oracles. International Conference on Provable Security. Springer, Berlin, Heidelberg, 2007. 10.1007/978-3-540-75670-5_14

22 

Pedersen T. A threshold cryptosystem without a trusted party. in: Advances in Cryptology, Proceedings of the Eurocrypt’91, 8-11 April, Brighton, UK, in: LNCS, vol. 547, Springer-Verlag, Berlin, 1991, pp. 522–526. 10.1007/3-540-46416-6_47

23 

RGennaro, SJarecki, HKrawczyk, TRabin. Secure Distributed Key Generation for Discrete-Log Based Cryptosystem. In Advances in Cryptology-EUROCRYPT’99, LNCS 1592, Springer-Verlag, pages 295310, 1999. 10.1007/3-540-48910-X_21

24 

YZhang, CXu, HLi, KYang, XShen. PROTECT: Efficient Password-based Threshold Single-sign-on Authentication for Mobile Users against Perpetual Leakage. IEEE Transactions on Mobile Computing, 2020, PP(99):11. 10.1109/TMC.2020.2975792

25 

Saroj S, Chauhan S, Sharma A, Vats S. Threshold Cryptography Based Data Security in Cloud Computing. IEEE International Conference on Computational Intelligence & Communication Technology. IEEE, 2015. 10.1109/CICT.2015.149

26 

BBarak, RGoldreich O. Impagliazzo, SRudich, ASahai, SVadhan, et al. On the (im)possibility of obfuscating programs. Journal of the ACM. 2010,59(2):16. 10.1145/2160158.2160159

27 

RCanetti, YKalai, MVaria, DWichs. On symmetric encryption and point obfuscation. In: TCC’10. Lecture Notes in Computer Science, vol. 5978, pp. 5271. Springer, Berlin (2010). 10.1007/978-3-642-11799-2_4

28 

DHofheinz, JMalone-Lee, MStam. Obfuscation for cryptographic purposes. Journal of Cryptology. 2010, 23(1):121168. 10.1007/s00145-009-9046-1

29 

MBellare, IStepanovs. Point-function obfuscation: A framework and generic constructions. Theory of Cryptography. TCC 2016. Lecture Notes in Computer Science, vol 9563. Springer, Berlin, Heidelberg. 10.1007/978-3-662-49099-0_21

30 

Canetti R, Rothblum G, Varia M. Obfuscation of hyperplane membership. International Conference on Theory of Cryptography. Springer-Verlag, 2010. 10.1007/978-3-642-11799-2_5

31 

SHohenberger, GRothblum, AShelat, VVaikuntanathan. Securely obfuscating re-encryption. Journal of Cryptology. 2011, 24(4), 694719. 10.1007/s00145-010-9077-7

32 

Hada S. Secure Obfuscation for Encrypted Signatures. International Conference on Advances in Cryptology-eurocrypt. Springer-Verlag, 2010. 10.1007/978-3-642-13190-5_5

33 

RNishimaki, KXagawa. Verifiably encrypted signatures with short keys based on the decisional linear problem and obfuscation for encrypted VES. Designs Codes & Crytography. 2015, 77(1):6198. 10.1007/s10623-014-9986-9

34 

YShi, QZhao, HFan, QLiu. Secure obfuscation for encrypted group signatures. PloS One. 2015, 10(7):140. 10.1371/journal.pone.0131550

35 

YShi, QZhang, JLiang, ZHe, HFan. Obfuscatable Anonymous Authentication Scheme for Mobile Crowd Sensing. IEEE Systems Journal, 2018:29182929. 10.1109/JSYST.2018.2881711

36 

HZhang, FZhang, RCheng, HTian. Efficient obfuscation for CNF circuits and applications in cloud computing. Soft Computing. 2019, 23: 20612072. 10.1007/s00500-017-2921-z

37 

MZhang, YZhang, YJiang, JShen. Obfuscating EVES Algorithm and Its Application in Fair Electronic Transactions in Public Clouds. IEEE Systems Journal, 2019:19. 10.1109/JSYST.2019.2900723

38 

DBoneh, MFranklin. Identity-based encryption from the weil pairing. In: Proc. CRYPTO 2001. LNCS, 2001, 2139:213229. 10.1007/3-540-44647-8_13

39 

Boneh D, Boyen X, Shacham H. Short group signatures. Advancs in Cryptology—Crypto 2004, Proceedings. pp. 41–55. 10.1007/978-3-540-28628-8_3

40 

Lynn B, et al. Pairing-based crytography library. 2013, (https://crypto.stanford.edu/pbc/).