5 Proposed PCAE-(II) Scheme
5.5 Variant with Message Linkages
Consider the practical implementation that an original message may be large. It therefore will cause the difficulty in encryption. In this subsection, we propose a variant with message linkages to benefit the encryption of a large message by dividing it into lots of small message blocks. The phases of Setup and PCG are defined the same as those in Section 5.1. We describe the other two phases as follows:
– Authenticated-Ciphertext-Generation (ACG): For signing a large message m on behalf of an original signer Uo, Up first divides the message m into n pieces, i.e., m = m1 || m2 || …
|| mn, mi’s∈ GF(p), and then chooses r ∈R Zq and w0 = 0 to compute
R = grh3(m) mod p, (5.5.1)
K = yvσ mod p, (5.5.2)
s = r − xph2(m, C, R) mod q, (5.5.3)
r1 = s(K mod q) mod q, (5.5.4)
wi = mi ⋅ h4(wi − 1 ⊕ h4(K)) mod p, for i = 1, 2,…, n, (5.5.5) and then delivers the warrant mw and the authenticated ciphertext δ = (r1, R, T, w1, w2, …,
wn) to a designated recipient Uv.
– Signature-Recovery-and-Verification (SRV): Upon receiving δ, Uv first computes
C = yoh1(mw, T) mod p, (5.5.6)
K = (TC −1)xv mod p, (5.5.7)
s = (K mod q)−1r1 mod q, (5.5.8)
mi = wi ⋅ h4(wi − 1 ⊕ h4(K))−1 mod p, for i = 1, 2,…, n, (5.5.9) and recovers the original message m as m1|| m2 || … || mn. Uv can further verify the proxy
signature by checking if
R = gsyph2(m, C , R)h3(m) mod p. (5.5.10)
When the case of a later dispute over repudiation occurs, Uv can reveal the converted proxy signature Ω = (R, s, T), the warrant mw and the original message m to prove proxy signer’s dishonesty without any additional computation effort or communication overhead.
Thus, anyone can verify the converted proxy signature with the assistance of Eqs. (5.5.6) and (5.5.10).
We show that with the authenticated ciphertext (r1, R, T, w1, w2, …, wn) and the warrant mw, a designated recipient Uv can recover the message m and check its validity with Eq.
(5.5.9). From the right-hand side of Eq. (5.5.9), we have wi ⋅ h4(ri − 1 ⊕ h4(K))−1
= mi ⋅ h4(ri − 1 ⊕ h4(K)) ⋅ h4(ri − 1 ⊕ h4(K))−1 (by Eq. (5.5.5))
= mi (mod p)
which leads to the left-hand side of Eq. (5.5.9).
Since the variant with message linkages is based on our proposed PCAE-(II) scheme, we can adopt the similar approaches to prove its security in random oracle models.
6. PCAE-(III) Scheme
Since Wu and Hsu [WH02] proposed the first convertible authenticated encryption (CAE) scheme in 2002, lots of researchers have devoted themselves to the enhancement of CAE schemes. Recently, a so-called bilinear pairings cryptosystem from elliptic curves [Kob87, Men93, Mil85] has been found various applications [BKL+02, BF01, BLS01, GS02, Sma02, ZK02] in cryptography. In this section, we demonstrate the proposed third proxy CAE (abbreviated to PCAE-(III)) scheme based on BDHP.
6.1 Construction
– Setup: Taking as input 1k, the system authority (SA) selects two groups (G1, +) and (G2, ×) of the same prime order q, where |q| = k. Let P be a generator of order q over G1, e: G1 × G1
→ G2 a bilinear pairing and h0: {0, 1}* → G1, h1: G2 × G2 → {0, 1}k, h2: G1 → G1 and h3: {0, 1}k × G2 × G1 → Zq collision resistant hash functions. The system publishes public parameters params = {G1, G2, q, P, e, h0, h1, h2, h3}. Each user Ui chooses his private key xi ∈ Zq and computes the corresponding public key as Yi = xiP.
– Proxy-Credential-Generation (PCG): Let Uo be an original signer delegating his signing power to a proxy signer Up. Uo computes
D = xo ⋅ h0(mw), (6.1.1)
where mw is a warrant consisting of the identifiers of original signer, proxy signer and designated recipient, the delegation duration and so on. (D, mw) is then sent to Up. Upon receiving (D, mw), Up checks its validity by verifying whether
e(Yo, h0(mw)) = e(D, P). (6.1.2)
If it does not hold, (D, mw) is requested to be sent again.
– Authenticated-Ciphertext-Generation (ACG): For signing a message m∈R{0, 1}k on behalf of an original signer Uo, Up chooses r ∈R Zq to compute
R = rP + D, (6.1.3)
T = e(D, Yv), (6.1.4)
V = e(h2(R), Yv)xp, (6.1.5)
S = r(h3(m, T, R) + xp)−1P, (6.1.6)
X = h1(T, V) ⊕ m, (6.1.7)
and then delivers the warrant mw and the authenticated ciphertext δ = (R, S, X) to a designated recipient Uv.
– Signature-Recovery-and-Verification (SRV): Upon receiving it, Uv first computes
T = e(Yo, h0(mw))xv, (6.1.8)
V = e(h2(R), Yp)xv, (6.1.9)
to recover the message m as
m = h1(T, V) ⊕ X (6.1.10)
and checks the redundancy embedded in it. Uv further verifies the proxy signature by checking whether
e(Yo, h0(mw))e(S, h3(m, T, R)P + Yp) = e(R, P). (6.1.11) Since the converted proxy signature Ω = (R, S, T) is derived during the verification process, a designated recipient Uv can easily announce it together with (m, mw) in case of a later dispute over repudiation. Accordingly, anyone can check Eq. (6.1.11) to realize proxy signer’s dishonesty.
6.2 Correctness
We first show that the verification of Eq. (6.1.2) works correctly. From the left-hand side of Eq. (6.1.2), we have
e(Yo, h0(mw)) = e(xoP, h0(mw)) = e(xoh0(mw), P)
= e(D, P) (by Eq. (6.1.1))
which leads to the right-hand side of Eq. (6.1.2).
Upon receiving δ = (R, S, X) with the warrant mw, a designated recipient can correctly recover the message m and check its validity with Eq. (6.1.10). From the right-hand side of Eq.
(6.1.10), we have h1(T, V) ⊕ X
= h1(e(Yo, h0(mw))xv, e(h2(R), Yp)xv) ⊕ X (by Eqs. (6.1.8) and (6.1.9)) = h1(e(D, P)xv, e(h2(R), Yv)xp) ⊕ X (by Eq. (6.1.2))
= m (by Eqs. (6.1.4), (6.1.5) and (6.1.7))
which leads to the left-hand side of Eq. (6.1.10).
If an authenticated ciphertext (R, S, X) is correctly generated, it will pass the test of Eq.
(6.1.11). From the left-hand side of Eq. (6.1.11), we have e(Yo, h0(mw))e(S, h3(m, T, R)P + Yp)
= e(Yo, h0(mw))e(r(h3(m, T, R) + xp)−1P, h3(m, T, R)P + Yp) (by Eq. (6.1.6))
= e(D, P)e(rP, P) (by Eq. (6.1.2))
= e(D + rP, P)
= e(R, P) (by Eq. (6.1.3))
which leads to the right-hand side of Eq. (6.1.11).
6.3 Security Proofs
We prove that the proposed PCAE-(III) scheme achieves the IND-CCA2 and the EF-CMA security in random oracle models as Theorems 6.3.1 and 6.3.2, respectively.
Theorem 6.3.1. (Proof of Confidentiality) The proposed PCAE-(III) scheme is (t, qh0, qh1, qh2, qh3, qPCG, qACG, qSRV, ε)-secure against indistinguishability under adaptive chosen-ciphertext attacks (IND-CCA2) in the random oracle model if there is no probabilistic polynomial-time adversary that can (t', ε')-break the BDHP, where
ε' ≥ (qh1−1)(2ε −qSRV qh k qh 2
) 1 ( 1 + 3 +
),
t' ≈ t + tλ(2qACG + 3qSRV + 1).
Here tλ is the time for performing one bilinear pairing computation.
Proof: Fig. 6.3.1 depicts the proof structure of this Theorem. Suppose that a probabilistic polynomial-time adversary A can (t, qh0, qh1, qh2, qh3, qPCG, qACG, qSRV, ε)-break the proposed PCAE-(III) scheme with a non-negligible advantage ε under adaptive chosen- ciphertext attacks after running in time at most t and asking at most qhi hi random oracle (for i = 0 to 3), qPCG PCG, qACG ACG and qSRV SRV queries. Then we can construct another algorithm B that (t', ε')-breaks the BDHP by taking A as a subroutine. Let all involved parties and parameters be defined the same as those in Section 6.1. The objective of B is to obtain e(P, P)xoxpxv by taking (P, q, e, Yo = xoP, Yp = xpP, Yv = xvP) as inputs. In this proof, B simulates a challenger to A in the following game.
Setup: The challenger B runs the Setup(1k) algorithm and sends system’s public parameters params = {G1, G2, q, P, e, Yo, Yp, Yv} to the adversary A.
Fig. 6.3.1. The proof structure of confidentiality in Theorem 6.3.1
Phase 1: A issues the following queries adaptively:
– h0 oracle: When A asks an h0 oracle of h0(mw), B returns O-Sim(III)_h0(mw). The simulated random oracle O-Sim(III)_h0 operates as Fig. 6.3.2.
Fig. 6.3.2. Algorithm of the simulated random oracle O-Sim(III)_h0
oracle O-Sim(III)_h0(mw) // Let Q_h0[qh0] and A_h0[qh0][2] be two arrays.
1: for i = 0 to qh0 − 1
2: if (Q_h0[i] = mw) then // It is an old query.
3: exit for;
4: else if (Q_h0[i] = null) then // It is a new query.
5: insert(Q_h0, mw); insert(A_h0, (σ ∈R Zq, V0 = σP)); exit for;
7: end if 8: next i
9: return A_h0[i][1];
B
A
λ′
{G1, G2, q, P, e, Yo, Yp, Yv}
e(P, P)xoxpxv
Random oracles PCG oracle ACG oracle SRV oracle (P, q, e, Yo = xoP, Yp = xpP, Yv = xvP)
output
output input
input access
– h1 oracle: When A asks an h1 oracle of h1(T, V), B returns O-Sim_h1(T, V). The simulated random oracle O-Sim_h1 operates as Fig. 6.3.3.
Fig. 6.3.3. Algorithm of the simulated random oracle O-Sim(III)_h1
– h2 oracle: When A asks an h2 oracle of h2(R), B returns O-Sim(III)_h2(R). The simulated random oracle O-Sim(III)_h2 operates as Fig. 6.3.4.
Fig. 6.3.4. Algorithm of the simulated random oracle O-Sim(III)_h2
– h3 oracle: When A asks an h3 oracle of h3(m, T, R), B returns O-Sim(III)_h3(m, T, R). The simulated random oracle O-Sim(III)_h3 operates as Fig. 6.3.5.
oracle O-Sim(III)_h2(R) // Let Q_h2[qh2] and A_h2[qh2][2] be two arrays.
1: for i = 0 to qh2 − 1
2: if (Q_h2[i] = R) then // It is an old query.
3: exit for;
4: else if (Q_h2[i] = null) then // It is a new query.
5: insert(Q_h2, R); insert(A_h2, (v2 ∈ R Zq, V2 = v2P));
6: exit for;
7: end if 8: next i
9: return A_h2[i][1];
oracle O-Sim(III)_h1(T, V) // Let Q_h1[qh1][2] and A_h1[qh1] be two arrays.
1: for i = 0 to qh1 − 1
2: if (Q_h1[i][0] = T and Q_h1[i][1] = V) then // It is an old query.
3: exit for;
4: else if (Q_h1[i][0] = null) then // It is a new query.
5: insert(Q_h1, (T, V)); insert(A_h1, v1 ∈R {0, 1}k); exit for;
6: end if 7: next i
8: return A_h1[i];
Fig. 6.3.5. Algorithm of the simulated random oracle O-Sim(III)_h3
– PCG queries: When A makes a PCG query, B chooses a proper mw and then returns (mw, O-Sim(III)_PCG(mw)) as the result. The simulated PCG oracle O-Sim(III)_PCG operates as Fig. 6.3.6.
Fig. 6.3.6. Algorithm of the simulated PCG oracle O-Sim(III)_PCG
– ACG queries: When A makes an ACG query for some message m, B returns O-Sim(III)_ACG(m) as a result. The simulated ACG oracle O-Sim(III)_ACG operates as Fig. 6.3.7.
oracle O-Sim(III)_PCG(mw) 1: V0← O-Sim_h0(mw);
2: for i = 0 to qh0 − 1
3: if (A_h0[i][1] = V0) then 4: σ ← A_h0[i][0];
5: Compute D = σYo; 6: return D;
7: end if 8: next i
oracle O-Sim(III)_h3(m, T, R) // Let Q_h3[qh3][3] and A_h3[qh3] be two arrays.
1: for i = 0 to qh3 − 1
2: if (Q_h3[i][0] = m) and (Q_h3[i][1] = T) and (Q_h3[i][2] = R) then 3: exit for; // It is an old query.
4: else if (Q_h3[i][0] = null) then // It is a new query.
5: insert(Q_h3, (m, T, R));
6: insert(A_h3, v3 ∈R Zq);
7: exit for;
8: end if 9: next i
10: return A_h3[i];
Fig. 6.3.7. Algorithm of the simulated ACG oracle O-Sim(III)_ACG
– SRV queries: When A makes an SRV query for some authenticated ciphertext δ with a warrant mw, B returns O-Sim(III)_SRV(δ, mw) as the result. The simulated SRV oracle O-Sim(III)_SRV operates as Fig. 6.3.8.
Fig. 6.3.8. Algorithm of the simulated SRV oracle O-Sim(III)_SRV oracle O-Sim(III)_ACG(m)
1: Choose a proper mw; D = O-Sim(III)_PCG(mw);
2: Choose s ∈R Zq to compute S = sP and T = e(D, Yv);
3: do
4: Choose v3 ∈R Zq; Compute R = sv3P + sYp + D;
5: while (check(Q_h3, (m, T, R)) = true);
6: insert(Q_h3, (m, T, R)); insert(A_h3, v3); // define h3(m, T, R) = v3 7: V2 = O-Sim_h2(R); v2 = A_h2[i][0]; // Assume that A_h2[i][1] = V2. 8: Compute V = e(Yp, Yv)v2; X = O-Sim_h1(T, V) ⊕ m;
9: return δ = (R, S, X) along with mw;
oracle O-Sim(III)_SRV(δ, mw) // δ = (R, S, X)
1: if (check(Q_h3, (*, *, R)) = true) then // h3(*, *, R) has ever been queried.
2: m = Q_h2[i][0]; T = Q_h3[i][1]; // Assume that Q_h3[i][2] = R.
3: if (check(Q_h1, (T, *)) = true) then // h1(T, *) has ever been queried.
4: V = Q_h1[i][1]; v1 = A_h1[i]; // Assume that Q_h1[i][0] = T.
5: if (X = v1 ⊕ m) then
6: if (e(Yo, h0(mw))e(S, h3(m, T, R)P + Yp) = e(R, P)) then 7: return (m, R, S, T, mw);
8: else // Signature verification fails.
9: return ⊥;
10: end if
11: else // Message recovery fails.
12: return ⊥;
13: end if
14: else // h1(T, *) has never been queried.
15: return ⊥;
16: end if
17: else // h3(*, *, R) has never been queried.
18: return ⊥;
19: end if
Challenge: A generates two messages, m0 and m1, of the same length. The challenger B flips a coin λ ← {0, 1} and produces an authenticated ciphertext δ* = (R*, S*, X*) for mλ by running the simulated Sim(III)_Challenge(mλ). The algorithm of Sim(III)_Challenge operates as Fig. 6.3.9.
Fig. 6.3.9. Algorithm of the simulated Sim(III)_Challenge
Phase 2: A makes new queries as those stated in Phase 1 except an SRV query for the target ciphertext δ*.
Analysis of the game: Consider the simulations of PCG and ACG queries. It can be seen that the simulated proxy credential D and authenticated ciphertext δ are computationally indistinguishable from those generated by a real scheme. We refer the simulations of PCG and ACG queries to be perfect. Then we evaluate the simulation of SRV queries. From the algorithms of O-Sim(III)_SRV, one can observe that it is possible for an SRV query of some valid δ = (R, S, X) to return an error symbol ⊥ on condition that A has the ability to produce δ without asking corresponding h3(m, T, R) or h1(T, V) random oracles in advance. Let SRV_ERR be an event that an SRV query returns an error symbol ⊥ for some valid δ during the entire game, AC-V an event that an authenticated ciphertext δ submitted by A is valid.
QH3 and QH1 separately denote the events that A has ever asked corresponding h3 and h1 algorithm Sim(III)_Challenge(mλ)
1: Choose a proper mw*; D* ← O-Sim(III)_PCG(mw*);
2: Choose z, s ∈R Zq to compute S* = sP and T* = e(D*, Yv);
3: do
4: Choose v3 ∈R Zq; Compute R* = sv3P + sYp + D*;
5: while (check(Q_h3, (mλ, T*, R*)) = true);
6: insert(Q_h3, (mλ, T*, R*)); insert(A_h3, v3); // define h3(mλ, T*, R*) = v3 7: insert(Q_h2, R*); insert(A_h2, (∇, zYo)) where ∇ denotes the null symbol;
// define h2(R*) = zYo 8: Choose v1 ∈R {0, 1}k;
9: Compute X* = v1 ⊕ mλ; // Implicitly define v1 = h1(T*, V*) where V* = e(zYo, Yv)xp. 10: return δ* = (R*, S*, X*) and mw*;
random oracles beforehand. Then we can express the error probability of any SRV query as
≤qhk k qhk
Since A can make at most qSRV SRV queries, we can further express the probability of SRV_ERR as
Additionally, in the challenge phase, B has returned a simulated authenticated ciphertext δ* = (R*, S*, X*) where h2(R*) = zYo, which implies the shared secret V* is implicitly defined as V* = e(dYo, Yv)xp. Let GP be an event that the entire simulation game does not abort. Obviously, if the adversary A never makes an h1(T*, V*) query in Phase 2, the entire simulation game could be normally terminated. We denote an event that A does ask such a query in Phase 2 by QH1*. When the entire simulation game does not abort, it can be seen A gains no advantage in guessing λ due to the randomness of output of random oracles, i.e.,
Pr[λ′ = λ | GP] = 1/2. (6.3.2)
With inequalities (6.3.3) and (6.3.4), we know that
| Pr[λ′ = λ] − 1/2 | ≤ (1/2)Pr[¬GP]. (6.3.5)
Recall that in Definition 3.3.3, A’s advantage is defined as Adv(A) = | Pr[λ′ = λ] − 1/2 |. By assumption, A has non-negligible probability ε to break the proposed scheme. We therefore have
ε = | Pr[λ′ = λ] − 1/2 |
≤ (1/2)Pr[¬GP] (by Eq. (6.3.5))
= (1/2)(Pr[QH1* ∨ SRV_ERR]) ≤ (1/2)(Pr[QH1*] + Pr[SRV_ERR])
Combining Eq. (6.3.1) and rewriting the above inequality, we get Pr[QH1*] ≥ 2ε − Pr[SRV_ERR]
≥ 2ε −qSRV qh k qh 2
) 1 ( 1 + 3 +
.
If the event QH1* happens, we claim that V* = e(zYo, Yv)xp will be stored in some entry of Q_h1 array. Consequently, B has non-negligible probability
ε' ≥ (qh1−1)(2ε −qSRV qh k qh 2
) 1 ( 1 + 3 +
)
to solve the BDHP by outputting (V*)z −1. The computation time required for B is t' ≈ t + tλ(2qACG + 3qSRV + 1).
Q.E.D.
Theorem 6.3.2. (Proof of Unforgeability) The proposed PCAE-(III) scheme is (t, qh0, qh1, qh2, qh3, qPCG, qACG, ε)-secure against existential forgery under adaptive chosen-message attacks (EF-CMA) in the random oracle model if there is no probabilistic polynomial-time adversary
that can (t', ε')-breakthe BDHP, where ε' ≥ (ε − 2−(k + |G1|))/(qh1qh2),
t' ≈ t + tλ(2qACG).
Here tλ is the time for performing one bilinear pairing computation.
Fig. 6.3.10. The proof structure of unforgeability in Theorem 6.3.2
Proof: Fig. 6.3.10 depicts the proof structure of this Theorem. Suppose that a probabilistic polynomial-time adversary A can (t, qh0, qh1, qh2, qh3, qPCG, qACG, ε)-break the proposed PCAE-(III) scheme with a non-negligible advantage ε under adaptive chosen-message attacks after running in time at most t and asking at most qhi hi random oracle (for i = 0 to 3), qPCG PCG and qACG ACG queries. Then we can construct another algorithm B that (t', ε')-breaks the BDHP by taking A as a subroutine. Let all involved parties and parameters
be defined the same as those in Section 6.1. The objective of B is to obtain e(P, P)xoxpxv by
B
δ = (R, S, X)
e(P, P)xoxpxv
Random oracle PCG oracle ACG oracle (P, q, e, Yo= xoP, Yp= xpP, Yv= xvP)
{G1, G2, q, P, e, Yo, Yp, Yv} input
input
output output
access
A
taking (P, q, e, Yo = xoP, Yp = xpP, Yv = xvP) as inputs. In this proof, B simulates a challenger to A in the following game.
Setup: The challenger B runs the Setup(1k) algorithm and sends system’s public parameters params = {G1, G2, q, P, e, Yo, Yp, Yv} to the adversary A.
Phase 1: A adaptively asks hi random oracle (for i = 0 to 3), PCG and ACG queries as those defined in Theorem 6.3.1. Note that in the j-th h2 random oracle, where j is a random positive integer less than or equal to qh2, B directly returns zYo for z ∈R Zq.
Forgery: Finally, A outputs an authenticated ciphertext δ* = (R*, S*, X*) and mw* for his arbitrarily chosen message m*. If the ciphertext is valid, A wins the game.
Analysis of the game: According to analyses of Theorem 6.3.1, we know that the simulation of each PCG or ACG query will be normally terminated. Besides, B answers each hi random oracle with a computationally indistinguishable value without collision. Let AC-V and QH separately be the events that the outputted ciphertext δ* = (R*, S*, X*) is valid and A has ever asks corresponding h1(T*, V*) and h2(R*) random oracles. The probability that A can guess correct random values without asking h1 and h2 random oracles is not greater than 2−(k + |G1|). Since A has a non-negligible advantage ε to break the proposed scheme under adaptive chosen-message attacks, we have
ε = Pr[AC-V]
≤ Pr[AC-V | QH] + Pr[AC-V | ¬QH]
≤ Pr[AC-V | QH] + 2−(k + |G1|).
Further writing above inequality, we can also obtain Pr[AC-V | QH] ≥ ε − 2−(k + |G1|).
Seeing that in the j-th h2 random oracle, B directly returned zYo as a result, i.e., Pr[R* = Rj] = qh2−1, we claim that when the event (AC-V | QH) ∧ (R* = Rj) occurs, B would have the probability of (qh1−1) to output
(V*)z−1 = e(Yo, Yv)xp
from some entry of Q_h1 array. Therefore, we can express the probability of B to solve the BDHP problem as
ε' ≥ (ε − 2−(k + |G1|))/(qh1qh2).
The running time required for B is t' ≈ t + tλ(2qACG).
Q.E.D.
According to Theorem 6.3.2, the proposed PCAE-(III) scheme is secure against existential forgery attacks. That is, the delegated proxy signer cannot repudiate having generated his authenticated ciphertext. Hence, we obtain the following corollary.
Corollary 6.3.1. The proposed PCAE-(III) scheme satisfies the security requirement of non-repudiation.
7. Conclusions and Future Research
In this dissertation, the author proposed three PCAE schemes to solve the delegation problem for confidential transactions. The proposed schemes allow a proxy signer to produce an authenticated ciphertext on behalf of an original signer and only a designated recipient is capable of recovering the message and verifying its proxy signature for ensuring confidentiality.
It is unnecessary to establish a session key in advance between a proxy signer and a designated recipient. Without revealing the private key, a designated recipient can independently convert an authenticated ciphertext into an ordinary proxy signature for public arbitration in case of a later repudiation. Since a converted proxy signature is obtained during the message recovery and signature verification phase, the signature conversion process requires no extra computation efforts or communication overheads.
The author also presented a group-oriented PCAE variant allowing one proxy signer to generate a valid authenticated ciphertext on behalf of a signing group composed of n original signers. To benefit the encryption of large messages, the author addressed another variant with message linkages by dividing a large message into many small message blocks.
Furthermore, the proposed schemes are proved to achieve the security requirement of confidentiality against indistinguishability under adaptive chosen-ciphertext attacks (IND-CCA2) and that of unforgeability against existential forgery under adaptive chosen-message attacks (EF-CMA) in random oracle models. To the best of our knowledge, the proposed PCAE-(I) scheme is the first provably secure PCAE scheme based on RSA assumption. As compared with previous works, the proposed schemes not only have lower computation costs, but also provide better functionalities.
With more and more complicated business applications, the signing policy and the way of proxy delegation might vary depending on different needs. For example, one original signer can delegate his signing power to two or more proxy signers, such that all proxy signers must cooperatively generate a valid authenticated ciphertext on behalf of the original one. In some circumstances, an authenticated ciphertext intended for a designated group can only be decrypted if t-out-of-n verifiers are willing to corporate, which is referred to as (t, n)-shared verification.
To mitigate the impact caused by the key exposure, a key-insulated cryptosystem is a
better alternative for designing cryptographic protocols. In such a system, each user stores a long-term private key in a physically-secure but computation limited device (called base or helper). Another short-term private key is kept secret by the user and used to perform cryptographic protocols such as digital signature schemes. Integrating PCAE schemes with key-insulated systems will bring more benefits to realistic applicability. Therefore, in the future research, the author will devote himself to the study of more flexible PCAE schemes with provable security to fulfill all kinds of practical requirements.
Bibliography
[AUI99] S. Araki, S. Uehara and K. Imamura, “The limited verifier signature and its application,” IEICE Transactions on Fundamentals of Electronics, Communications and Computer Sciences, Vol. E82-A, No. 1, 1999, pp. 63-68.
[BD98] F. Bao and R. H. Deng, “A signcryption scheme with signature directly verifiable by public key,” Workshop on Public Key Cryptography, Springer-Verlag, 1998, pp. 55-59.
[BF01] D. Boneh and M. Franklin, “Identity-based encryption from the Weil pairing,”
Advances in Cryptology − CRYPTO 2001, Springer-Verlag, 2001, pp. 213-229.
[BJY97] M. Bellare, M. Jakobsson and M. Yung, “Round-optimal zero-knowledge arguments based on any one-way hash function,” Advances in Cryptology − EUROCRYPT’97, Springer-Verlag, 1997, pp. 280-305.
[BKL+02] P. S. L. M. Barreto, H. Y. Kim, B. Lynn and M. Scott, “Efficient algorithms for pairing-based cryptosystems,” Advances in Cryptology − CRYPTO 2002, Springer-Verlag, 2002, pp. 354-368.
[BLS01] D. Boneh, B. Lynn and H. Shacham, “Short signature from the Weil pairing,”
Advances in Cryptology − ASIACRYPT 2001, Springer-Verlag, 2001, pp.
514-532.
[BLS03] P. S. L. M. Barreto, B. Lynn, and M. Scott, “On the selection of pairing-friendly groups,” Selected Areas in Cryptography (SAC 2003), Springer-Verlag, 2003.
[Boy03] X. Boyen, “Multipurpose identity-based signcryption: A Swiss army knife for identity-based cryptography,” Advances in Cryptology − CRYPTO’03, Springer-Verlag, 2003, pp. 383-399.
[BSZ02] J. Baek, R. Steinfeld and Y. Zheng, “Formal proofs for the security of signcryption,” Public Key Cryptography - PKC’02, Springer-Verlag, 2002, pp.
80-98.
[CA90] D. Chaum and H. van Antwerpen, “Undeniable signature,” Advances in Cryptology − CRYPTO’90, Springer-Verlag, 1990, pp. 212-216.
[CC06] F. Cao and Z. Cao, “Cryptanalysis on a proxy multi-signature scheme,”
Proceedings of the 1st International Multi-Symposiums on Computer and Computational Sciences, 2006 (IMSCCS’06), Vol. 2, IEEE Press, Piscataway, USA, 2006, pp. 117-120.
[Cha08] T. Y. Chang, “A convertible multi-authenticated encryption scheme for group communications,” Information Sciences, Vol. 178, No. 17, 2008, pp.
3426-3434.
[Cha90] D. Chaum, “Zero-knowledge undeniable signatures,” Advances in Cryptology − EUROCRYPT’90, Springer-Verlag, 1990, pp. 458-464.
[Chi08] H. Y. Chien, “Selectively convertible authenticated encryption in the random oracle model,” The Computer Journal, Vol. 51, No. 4, 2008, pp. 419-434.
[DC06] S. Duan and Z. Cao, “Efficient and provably secure multi-receiver identity-based signcryption,” Information Security and Privacy, Springer-Verlag, 2006, pp. 195-206.
[DCZ05] S. Duan, Z. Cao and Y. Zhou, “Secure delegation-by-warrant ID-based proxy signcryption scheme” Proceedings of Computational Intelligence and Security Conference (CIS 2005), Springer-Verlag, 2005, pp. 445-450.
[DH76] W. Diffie and M. Hellman, “New directions in cryptography,” IEEE Transactions on Information Theory, Vol. IT-22, No. 6, 1976, pp. 644-654.
[DK02] H. Delfs and H. Knebl, Introduction to Cryptography: Principles and Applications, 2nd Ed., Springer-Verlag, 2002.
[DYD03] J. Z. Dai, X. H. Yang and J. X. Dong, “Designated-receiver proxy signature scheme for electronic commerce,” Proceedings of IEEE International Conference on Systems, Man and Cybernetics, Vol. 1, 2003, pp. 384-389.
[EA08] H. Elkamchouchi and Y. Abouelseoud, “A new proxy identity-based signcryption scheme for partial delegation of signing rights,” Cryptology ePrint Archive, Report 2008/041, 2008. http://eprint.iacr.org/2008/041
[EAM06] D. H. Elkamshoushy, A. K. AbouAlsoud and M. Madkour, “New proxy signcryption scheme with DSA verifier,” Proceedings of the 23th National
Radio Science Conference (NRSC 2006), 2006, pp. 1-8.
[ElG85] T. ElGamal, “A public key cryptosystem and a signature scheme based on discrete logarithms,” IEEE Transactions on Information Theory, Vol. IT-31, No.
4, 1985, pp. 469-472.
[Gir91] M. Girault, “Self-certified public keys,” Advances in Cryptology − EUROCRYPT’91, Springer-Verlag, 1991, pp. 491-497.
[GS02] C. Gentry and A. Silverberg, “Hierarchical id-based cryptography,” Advances in Cryptology − ASIACRYPT 2002, Springer-Verlag, 2002, pp. 548-566.
[HC01] S. J. Hwang and C. C. Chen, “A new multi-proxy multisignature scheme,”
Proceedings of 2001 National Computer Symposium, 2001, pp. 19-26.
[HC03] H. F. Huang and C. C. Chang, “An efficient convertible authenticated encryption scheme and its variant,” Proceedings of the 5th International Conference on Information and Communications Security (ICICS2003), Springer-Verlag, 2003, pp. 382-392.
[Hen94] M. Hendry, Smart Card Security and Applications, Artech House, Inc., 1997.
[HLL00] M. S. Hwang, I. C. Lin. and J. L. Eric Lu, “A secure nonrepudiable threshold proxy signature scheme with known signers,” International Journal of Informatica, Vol. 11, No. 2, 2000, pp. 1-8.
[HLL+05] C. H. Huang, C. Y. Lee, C. H. Lin, C. C. Chang and K. L. Chen, “Authenticated encryption schemes with message linkage for threshold signatures,”
Proceedings of the IEEE 19th International Conference on Advanced Information Networking and Applications, Vol. 2, 2005, pp. 261-264.
Proceedings of the IEEE 19th International Conference on Advanced Information Networking and Applications, Vol. 2, 2005, pp. 261-264.