FORCING OUT A CONFESSION
Threshold Discernible Ring Signatures
Swarun Kumar, Shivank Agrawal
Indian Institute of Technology, Madras, India
Ramarathnam Venkatesan, Satya Lokam
Microsoft Research, Bangalore, India
C. Pandu Rangan
Indian Institute of Technology, Madras, India
Keywords:
Ring signatures, Step out, Threshold discernible, Verifiable secret sharing.
Abstract:
Ring signature schemes (Rivest et al., 2001) enable a signer to sign a message and remain hidden within an
arbitrary group A of n people, called a ring. The signer may choose this ring arbitrarily without any setup
procedure or the consent of anyone in A. Among several variations of the notion, step out ring signatures
introduced in (Klonowski et al., 2008) address the issue of a ring member proving that she is not the original
signer of a message, in case of dispute. First we show that the scheme in (Klonowski et al., 2008) has
several flaws and design a correct scheme and prove formally the security of the same. Then we use the basic
constructs of our scheme to design a protocol for a new problem, which we refer to as threshold discernible
ring signatures. In threshold discernible ring signatures, a group B of t members can co-operate to identify the
original signer of a ring signature that involved a group A of n alleged signers, where B A and n > t. This is
the first time that this problem is considered in the literature and we formally prove the security of our novel
scheme in the random oracle model.
1 INTRODUCTION
Ring signatures, introduced in (Rivest et al., 2001),
allow a signer to sign a message on behalf of an arbi-
trary group A of n people, called the ring. The signer
may hide behind the arbitrarily chosen ring A, without
any setup procedure or the consent of the other mem-
bers of A. Such signatures have been expanded to var-
ious applications: deniable ring authentication (Naor,
2002; Susilo and Mu, 2004), linkable ring signature
schemes that allow one to link signatures signed by
the same person, short versions of linkable ring signa-
ture (Tsang and Wei, 2005; Au et al., 2006). Further-
more, identity based ring signature schemes, which
allow ring construction across different identity-based
master domains (Cheng et al., 2004; Awasthi and Lal,
2005; Savola, 2006) and confessible threshold ring
signature (Chen et al., 2006), where the actual signer
can prove that she has created the signature, have also
been proposed in literature.
Even though the original intent was to keep the
real signer anonymous, in the event of a dispute, a
member of the ring A may want to prove that she was
not the actual signer of a particular message. A new
variant called step out ring signature was introduced
in (Klonowski et al., 2008); here the real signer can
prove that she created the signature, while any one
else in the ring can prove that she is not the origi-
nal signer. Their proposal was an intermediate solu-
tion between the classical ring and group signatures,
and can be used for instance in e-auction schemes,
and this is the only scheme present in the literature.
However, our attack presented here shows that their
scheme allows a third party, who is not a member of
the ring, to forge a signature on behalf of the ring.
In another scenario, we break the anonymity of the
signer of a ring signature. Hence, till date, there is no
correct and provably secure scheme available for step
379
Kumar S., Agrawal S., Venkatesan R., Lokam S. and Pandu Rangan C. (2010).
FORCING OUT A CONFESSION - Threshold Discernible Ring Signatures.
In Proceedings of the International Conference on Security and Cryptography, pages 379-388
DOI: 10.5220/0002984203790388
Copyright
c
SciTePress
out ring signatures.
Exposing the identity of the original signer of a
ring signature may arise in several other contexts as
well. Suppose a petitioner wishes to send a complaint
regarding certain government officials on behalf of
several people, say the residents of her locality. The
signer wishes to remain anonymous in order to pre-
vent harassment from the concerned officials. How-
ever, any resident who disagrees with the complaint
must have the right to prove that she is not the peti-
tioner. At the same time, a sufficiently large threshold
of the residents should be able to discover the identity
of the petitioner, in case the complaint was malicious.
Consider a joint bank account scenario, where n
people share a single account. Any account holder
among these n people is authorized to sign and trans-
act with the bank. The bank will only knowthat some-
one among these n people has signed, but will not
know the exact identity of the signer. Hence the sit-
uation cannot afford a centralized manager. Now, in
case of fraud by any one of the n members, anythresh-
old of t people among the n members can cooperate
and identify the fraudulent person.
Our Contributions. We perform cryptanalysis on
the step out ring signature scheme (Klonowski et al.,
2008) and identify defects in unforgeability and
anonymity. We additionally provide appropriate mod-
ifications in order to present a provably secure step
out ring signature scheme under the random oracle
model.
We introduce the concept of threshold discernible
ring signatures, where a threshold of t signers are to-
gether capable of finding the identity of the original
signer. This may be applied, for example, to situa-
tions where a message has been maliciously signed
on behalf of a ring of signers and a majority (or a
threshold t) of the ring members decide to unmask
the original signer of the message. We shall use the
basic constructs of our modified step out ring signa-
ture scheme to produce a threshold discernible ring
signature scheme.
2 PRELIMINARIES
We shall consider rings with n members, denoted by
U
1
,··· ,U
n
. Let p,q be large primes (p,q >> n),
q|p 1, and G =< g > be an order q cyclic subgroup
of Z
p
. For the sake of simplicity we shall skip “mod
p” if it follows from the context. We assume that user
U
i
holds a private key x
i
; the corresponding public
key is y
i
= g
x
i
. The key y
i
is publicly available. H de-
notes a secure hash function {0, 1}
{0, 1}
k
, where
k is a fixed constant. We assume that the following
assumptions are fulfilled in G:
Definition 1 - Decisional Diffie-Hellman Assump-
tion. Let G be a cyclic group generated by g of order
q. Let A
DDH
be an algorithm that has to distinguish
c
0
= (g,g
a
,g
b
,g
ab
) from c
1
= (g,g
a
,g
b
,g
c
) for ran-
domly chosen a, b,c Z
q
. Let Adv
ddh
A
= |Pr[A (c
1
) =
1] Pr[A (c
0
) = 1]| be called the advantage of A in
breaking the DDH problem.
The DDH assumption holds for G, if advan-
tage Adv
ddh
A
is negligible for each probabilistic
polynomial-time algorithm A , i.e. Adv
ddh
A
< ε
ddh
where ε
ddh
is negligible.
Definition 2 - Discrete Logarithm (DL) Assump-
tion. Let G be a cyclic group generated by g of order
q. Let A be an algorithm such that on input g
a
, where
a Z
q
, A should output a. Let Succ
dl
A
= Pr[A (g
a
) =
a] be called the success of A in breaking the DL prob-
lem.
The DL assumption holds in G, if for each proba-
bilistic polynomial-time algorithm A , success Succ
dl
A
is negligible, i.e. Succ
dl
A
< ε
dl
where ε
dl
is negligible.
2.1 SKDL Proof of Knowledge
The SKDL proof of knowledge is a signature of
knowledge of discrete logarithms defined in (Ca-
menisch, 1997). It is based on the Schnorr signature
scheme (Schnorr, 1991). This signature proves the
knowledge of x : y = g
x
in the context of a message
m. We explain the construction and verification be-
low.
SKDL Construction. The construction
SKDL(g,y,m) is described below. It is executed
by the prover who possesses x : y = g
x
. Note that g is
a generator of the group G.
1. Pick r
R
Z
q
.
2. Calculate c = H (g||y||g
r
||m).
3. Calculate
s = r cx (1)
The procedure returns the values (c,s).
SKDL Verification. The verification procedure
V
SKDL
(g,y,m) is executed by the verifier and checks
if:
c
?
= H (g||y||g
s
y
c
||m)
This proves that the prover is aware of discrete loga-
rithm x = log
g
(y) without actually revealing x.
SECRYPT 2010 - International Conference on Security and Cryptography
380
2.2 SEQDL Proof of Knowledge
The step-out ring signature scheme in (Klonowski
et al., 2008) is based on a signature of knowl-
edge of equality of discrete logarithms (SEQDL). Let
g, ˆg, ˆy
w
G and tuples (y
1
,··· ,y
n
),(w
1
,··· ,w
n
) G
n
.
SEQDL allows a prover to prove in zero-knowledge
that log
ˆg
ˆy
w
= log
g
(y
j
w
j
) for some index j, with j not
revealed to the verifier.
Preliminaries. Recall that G is an order q cyclic
subgroup of Z
p
with g as its generator. Let U
j
be
a prover who has the following information:
Y = (y
1
,··· ,y
n
) G
n
For a specific index j, U
j
knows x
j
: y
j
= g
x
j
.
Note that U
j
is not aware of the discrete loga-
rithms of y
i
Y : i 6= j.
W = (w
1
,··· ,w
n
) G
n
and (r
1
,··· ,r
n
) Z
n
q
,
where w
i
= g
r
i
for all i = 1, · · · ,n. Note that unless
U
j
is the signer, she is not aware of the discrete
logarithms of w
i
W : i 6= j.
ˆg G, which is randomly chosen by the signer
and ˆy = ˆg
x
j
+r
j
.
Using these values, U
j
wishes to convince the verifier
that the discrete logarithms log
ˆg
ˆy
w
and log
g
(y
j
w
j
) are
equal, with the index j not revealed to the verifier. U
j
achieves this by executing the SEQDL construction
algorithm and passing the outputs to the SEQDL ver-
ification algorithm. The details are given below:
SEQDL Construction. The SEQDL construc-
tion algorithm, run by the U
j
, is SEQDL( ˆg,g
,x
j
,r
j
, ˆy
w
,Y,W,m). Typically, the vector W is cho-
sen by the signer. However, W may be created and
used in different ways provide three different mecha-
nisms for stepping out, as discussed in section 4. The
construction of SEQDL is as follows:
1. Pick random elements r Z
q
and c
i
,s
i
Z
q
, for
i {1,··· ,n}\{ j}.
2. For all i {1, · · · , n}\{ j}, user U
j
computes:
t
i
ˆg
s
i
ˆy
c
i
w
,u
i
g
s
i
(y
i
w
i
)
c
i
,t
j
ˆg
r
,u
j
g
r
(2)
3. We denote Y = y
1
||···||y
n
, W = w
1
||···||w
n
4. Compute:
c
j
H ( ˆg||g|| ˆy
w
||Y||W||t
1
||u
1
||···||t
n
||u
n
||m)
i<n,i6= j
c
i
(3)
s
j
r (x
j
+ r
j
)c
j
mod q (4)
The algorithm finally returns (C, S) where C =
(c
1
,··· ,c
n
) , S = (s
1
,··· ,s
n
).
SEQDL Verification. Given a signature
SEQDL( ˆg, g ,x
j
,r
j
, ˆy
w
,Y,W,m) = (C, S), with
parameters ˆg, g, ˆy
w
, Y, W, and a message m, the
verification algorithm V
SEQDL
( ˆg, g, ˆy
w
,Y,W,C,S, m),
run by the verifier, checks if:
n
i=1
c
i
?
= H ( ˆg||g|| ˆy
w
||Y||W|| ˆg
s
1
ˆy
c
1
w
||g
s
1
(y
1
w
1
)
c
1
||···
|| ˆg
s
n
ˆy
c
n
w
||g
s
n
(y
n
w
n
)
c
n
||m)
(5)
The verifier returns 1 if the above condition succeeds,
0 otherwise. When verification returns 1, the veri-
fier is convinced of the equality of discrete logarithms
log
ˆg
ˆy
w
and log
g
(y
j
w
j
) with the index j {1,··· ,n}
unknown to the verifier.
3 STEP OUT RING SIGNATURES
(SRS)
3.1 Scheme Outline
Let us assume that U
j
is the real signer and
U
1
,··· ,U
n
are all ring members. Let the private and
public key of user U
i
be x
i
and y
i
= g
x
i
respectively.
For Step-out Ring Signatures (SRS) we have the
following procedures:
Signing Procedure. S
SRS
(g, ˆg,x
j
,Y,m) is a ran-
domized algorithm that takes generator g and a
random element ˆg < g >, ˆg 6= 1, the secret key
x
j
, the set of public keys y
1
,··· ,y
n
< g > and a
message m. It returns a signature σ.
Verification Procedure. V
SRS
(σ,m) is a deter-
ministic algorithm that takes a message m, and a
signature σ for m. It returns a bit: 1 or 0 to indicate
whether σ is valid, i.e. someone having a public key
in a set Y indicated by σ has signed m.
Confession Procedure. Let σ be a step-out
ring signature on m produced by member U
j
of the
ring. In the confession procedure, U
j
proves that
she is indeed the original signer of m and produced
σ. Towards this, U
j
produces a confession record
σ
, which is yet another signature by U
j
on m.
The verifier runs C
SRS
(σ,σ
,y
j
,m), a deterministic
algorithm which takes as input σ, σ
, m and the
public key y
j
of user U
j
, and returns either a bit
1 to confirm that U
j
has created σ or a bit 0 otherwise.
Step-out Procedure. Let σ be a step-out ring
signature on m produced by member U
j
of the ring.
During step-out, a ring member U
i
,i 6= j proves that
she not the original signer of m. Here, U
i
produces
FORCING OUT A CONFESSION - Threshold Discernible Ring Signatures
381
step-out records σ
′′
,σ
′′′
, which are SRS signatures
for the message ˜m =“I have not signed m”. The
verifier runs D
SRS
(σ,m,σ
′′
,σ
′′′
,y
i
, ˜m), a deterministic
algorithm which takes as input σ, σ
′′
, σ
′′′
, m and the
public key y
i
of user U
i
, and returns either a bit 1 to
confirm that U
i
has not created σ or a bit 0 otherwise.
3.2 Step Out Ring Signatures
We recall the signing and verification procedures of
the step out ring signature scheme in (Klonowski
et al., 2008).
3.2.1 Signing Algorithm
The signing algorithm is run by user U
j
with private
key x
j
to produce a ring signature corresponding to
n users with public keys Y = (y
1
,··· ,y
n
). Note that
parameter ˆg G is randomly chosen by the signer.
Algorithm S
SRS
(g, ˆg,x
j
,Y,m)
repeat
r
1
,··· ,r
n
R
Z
q
w
i
g
r
i
for each i = 1,··· ,n
until (y
i
w
i
6= y
j
w
j
for each i 6= j)
ˆw ˆg
r
j
, ˆy ˆg
x
j
, ˆy
w
ˆy ˆw
(C,S) SEQDL( ˆg,g, x
j
,r
j
, ˆy
w
,Y,W,m)
Y y
1
,··· ,y
n
W w
1
,··· ,w
n
σ (g, ˆg, ˆy, ˆw,Y,W,C,S)
return (m,σ)
3.2.2 Verification Algorithm
This algorithm is run by a verifier using only public
information. Algorithm V
SEQDL
verifies the SEQDL
proof of knowledge output by the signer.
Algorithm V
SRS
(σ,m)
ˆy
w
ˆy ˆw
d V
SEQDL
( ˆg,g, ˆy
w
,Y,W,C,S, m)
if d = 1
then return 1
else return 0
3.2.3 Scenarios for r
i
Three different ways of using parameter r
i
, target-
ing three different applications, are suggested in
(Klonowskiet al.,2008):
1. The numbers r
i
are created by the signer at ran-
dom. They are kept secret unless the signer en-
ables a member of a ring to step out.
2. The numbers r
i
are given together with the signa-
ture. In this case the ring participants can imme-
diately step out.
3. U
i
generates r
i
herself and publishes w
i
. More-
over, each w
i
can be a kind of time stamp - a signa-
ture generated with w
i
has to be created no earlier
than at the time of creating w
i
.
4 CRYPTANALYSIS OF SCHEME
We have found weaknesses in the paper in the case of
scenario (1) and scenario (2) above. We explain these
below:
4.1 Forgery in Scenario 1
Under scenario 1, we show that it is easy for anyone,
even without the knowledge of any of the ring mem-
bers’ secret keys, to produce ˆy
w
,w
j
for some j such
that log
ˆg
ˆy
w
= log
g
(y
j
w
j
). We explain an algorithm
F
SRS
which forges a signature of (Klonowski et al.,
2008) in this manner below:
4.1.1 Forger Algorithm
Algorithm F
SRS
(g, ˆg,Y,m)
repeat
r
i
R
Z
q
for each i {1, · · · , n}\{ j}
w
i
g
r
i
for each i {1, · · · , n}\{ j}
α
R
Z
q
w
j
g
α
/y
j
until (y
i
w
i
6= y
k
w
k
for each i 6= k)
β
R
Z
q
ˆw ˆg
β
, ˆy ˆg
αβ
, ˆy
w
ˆy ˆw
(C,S) SEQDL( ˆg, g,α β,β, ˆy
w
,Y,W,m)
Y y
1
,··· ,y
n
W w
1
,··· ,w
n
σ (g, ˆg, ˆy, ˆw,Y,W,C,S)
return (m,σ)
4.1.2 Validity
We will show that the signature produced by F
SRS
verifies successfully. Note that the verification algo-
rithm V
SRS
(σ,m) will in turn call V
SEQDL
( ˆg, g, ˆy
w
=
ˆg
α
,Y,W,C,S, m). By construction in equation (2)
and (3), verification equation (5) holds provided:
g
s
j
(y
j
w
j
)
c
j
= g
s
j
+c
j
α
= g
r
and ˆg
s
j
ˆy
c
j
w
= ˆg
s
j
+c
j
α
= ˆg
r
.
However, these hold, since by construction in (4),
r = s
j
+ c
j
α. Hence the forged signature is consid-
ered valid.
SECRYPT 2010 - International Conference on Security and Cryptography
382
4.1.3 Salient Features
The above algorithm clearly does not use private in-
formation x
j
to forge a ring signature. If this were per-
formed by the k
th
ring member, she can step out using
the value r
k
. An adversary can also allow every ring
member other than the j
th
one to step out by releasing
the values r
i
for each i {1,··· ,n}\{ j}. In fact, it
can be shown that the forged sign is indistinguishable
from a signature by the j
th
ring member in polynomial
time. In the next section we will demonstrate how to
fix this break. We will provide a corrected scheme
and unforgeability proof in the following sections.
4.2 Break of Anonymity in Scenario 2
The anonymity of the signer can be broken in the sec-
ond scenario using the parameter ˆw. Since the param-
eters r
i
are released together with the signature, a dis-
tinguisher simply tests if ˆg
r
i
?
= ˆw for each i = 1,··· ,n.
According to the protocol, this will only hold for the
signer j, thus revealing the identity of the signer.
5 MODIFIED STEP OUT RING
SIGNATURES
We will explain in this section how we can modify the
step out ring signature scheme to restore unforgeabil-
ity and anonymity.
5.0.1 Providing Unforgeability
The signer generates a random value r
j
, but uses only
the value x
j
+ r
j
in equation (4) of the SEQDL pro-
tocol for generating the components, (c, s). However,
there is no proof of knowledge of r
j
(or the other r
i
s)
insisted by the verification algorithm. Hence a forger
can generate the value x
j
+ r
j
in an arbitrary manner
without even knowing or proving that she knows x
j
and r
j
individually. This is exactly what we did in our
forgery algorithm by reverse engineering the (x
j
+r
j
)
values. In fact, in our forging algorithm the values α
and β are chosen in such a way that when α β and
β are used as parameters for SEQDL, the algorithm
produces the same value that SEQDL would have pro-
duced with x
j
and r
j
. Hence, to fix the above problem,
we add SKDLs for w
i
s and verify them during veri-
fication.
5.0.2 Providing Anonymity
The anonymity can be broken if the parameter ˆw is
known and the signature σ output by the signer con-
tains ˆw explicitly as a part of it. Notice that σ contains
both ˆw and ˆy but the verification algorithm needs only
the product ˆwˆy. Hence, it is sufficient to provide only
the product value ˆwˆy as a component of σ instead of
providing ˆw and ˆy as separate components. As one
can not compute ˆw from the product ˆwˆy, this modifi-
cation prevents one from breaking the anonymity. In
fact, we formally prove the same.
5.1 Modified SRS Scheme
The modified SRS scheme overcomes the flaws of the
step out ring signature scheme in (Klonowski et al.,
2008). This uses the SKDL which is a zero knowl-
edge proof of discrete logarithm.
5.1.1 Modified Signing Algorithm
The algorithm is run by user U
j
with private key x
j
to produce a ring signature corresponding to n users
with public keysY = (y
1
,··· ,y
n
). Note that parameter
ˆg G is randomly chosen by the signer.
Algorithm S
MSRS
(g, ˆg,x
j
,y
1
,··· ,y
n
,m)
repeat
r
1
,··· ,r
n
R
Z
q
w
i
g
r
i
for each i = 1,··· ,n
until (y
i
w
i
6= y
j
w
j
for each i 6= j)
ˆy
w
ˆg
x
j
+r
j
(c
1
,··· ,c
n
,s
1
,··· ,s
n
) SEQDL( ˆg, g,x
j
,r
j
, ˆy
w
,y
1
,··· ,y
n
,w
1
,··· ,w
n
,m)
Y y
1
,··· ,y
n
W w
1
,··· ,w
n
σ = (g, ˆg, ˆy
w
,Y,W,c
1
,··· ,c
n
,s
1
,··· ,s
n
,
{SKDL(g,w
i
,m),i = 1,··· , n})
return(m,σ)
5.1.2 Modified Verification Algorithm
This algorithm is run by a verifier using only public
information. Algorithm V
SKDL
is used to verify the
SKDL proofs of knowledge output by the signer.
Algorithm V
MSRS
(σ,m)
if(V
SKDL
(g,w
i
,m) = 0,
for any i = 1,··· ,n)
then return 0
d V
SEQDL
( ˆg, g, ˆy
w
,y
1
,··· ,y
n
,w
1
,··· ,w
n
,
c
1
,··· ,c
n
,s
1
,··· ,s
n
,m)
if d = 1
then return 1
else return 0
FORCING OUT A CONFESSION - Threshold Discernible Ring Signatures
383
5.1.3 Modified Confession Algorithm
We denote Y
= (y
1
,··· ,y
n
) , Y
′′
= (y
1
′′
,··· ,y
n
′′
) ,
Y
′′′
= (y
1
′′′
,··· ,y
n
′′′
). The confession record σ
=
(g, ˆg, ˆy, ˆw,Y
,W, SEQDL( ˆg,g,x
i
,r
i
, ˆy. ˆw,Y
,W,m)) is a
new signature with the same parameters g, ˆg,W as in
σ and some new set of potential signers Y
: Y Y
=
{y
j
}, where y
j
stands at the same position in both se-
quences.
The confession algorithm verifies whether a mem-
ber of the ring U
j
has generated the ring signature σ
by obtaining σ
from her as shown below. Note that
the verifier verifies σ
using V
SRS
because the SKDLs
corresponding to W have already been verified in the
verification of σ.
Algorithm C
MSRS
(σ,σ
,y
j
,m)
if(the same g, ˆg, ˆy, ˆw,W were used in σ and σ
) then
d
1
V
MSRS
(σ,m),d
2
V
SRS
(σ
,m)
if(d
1
= d
2
= 1 and {y
j
} = Y Y
and y
j
stands
on position j in Y
) then
return 1 else return 0
else return 0
5.1.4 Modified Step-out Algorithm
We define the step-out records σ
′′
, σ
′′′
below:
σ
′′
= (g,ˆg, ˆy
′′
, ˆw
′′
,Y
′′
,W, SEQDL( ˆg,g,x
i
,r
i
, ˆy
′′
. ˆw
′′
,
Y
′′
,W, ˜m)) - a SRS signature with the same pa-
rameters g, ˆg,W as in σ and ˆy
′′
= ˆg
x
i
, ˆw
′′
= ˆg
r
i
,
some new set of potential signers Y
′′
, for the con-
trol message ˜m = “I have not signed m”.
σ
′′′
= (g,ˆg, ˆy
′′
, ˆw
′′
,Y
′′′
,W, SEQDL( ˆg,g,x
i
,r
i
,
ˆy
′′
. ˆw
′′
, Y
′′′
,W, ˜m)) - a SRS signature for the same
control message ˜m with the same g, ˆg, ˆw
′′
,W
and Y
′′′
such that Y
′′
Y
′′′
= {y
i
} and y
i
stands
on the same position in Y
′′
and Y
′′′
. Moreover,
y
i
1
′′
w
i
1
6= y
i
2
′′′
w
i
2
for i
1
6= i
2
The step-out algorithm verifies whether a member of
the ring U
i
has not generated the ring signature σ by
obtaining (σ
′′
,σ
′′′
) from her as shown below. Note
that the verifier verifies σ
′′
and σ
′′′
using V
SRS
be-
cause the SKDLs corresponding to W have already
been verified in the verification of σ.
Algorithm D
MSRS
(σ,m,σ
′′
,σ
′′′
,y
i
, ˜m)
if(the same g, ˆg,W were used in σ,σ
′′
,σ
′′′
and the same ˆy
′′
, ˆw
′′
were used in σ
′′
,σ
′′′
) then
d
1
V
MSRS
(σ,m),d
2
V
SRS
(σ
′′
, ˜m),
d
3
V
SRS
(σ
′′′
, ˜m)
if(d
1
= d
2
= d
3
= 1 and {y
i
} = Y
′′
Y
′′′
,
and y
i
stands at the same position in Y
′′
and Y
′′′
,
and ˆy ˆw 6= ˆy
′′
ˆw
′′
) then
return 1 else return 0
else return 0
6 ANALYSIS
6.1 Unforgeability
Informally, forking lemma(Pointcheval, 2005) for
adaptive chosen message attacks states that if an al-
gorithm A can with non-negligible probability ε, pro-
duce a valid signature (m,σ
1
,h,σ
2
) without know-
ing the secret key, then, a replay of the attacker A
may output two valid signatures (m, σ
1
,h,σ
2
) and
(m,σ
1
,h
,σ
2
) such that h 6= h
, within a bounded time
and non-negligible probability. Forking lemma is ap-
plicable for modified step-out ring signatures. This
can be proved similar to (Klonowski et al., 2008), the
difference being the computation of SKDLs by the
simulators. We state the lemma below.
Lemma 1. Modified SRS signatures can be simu-
lated by a simulator, with oracle access to H , under
DDH assumption without knowing the corresponding
secret signing keyand with distribution probability in-
distinguishable from SRS signatures produced by a
legitimate signer.
Now, we shall construct an adversary that can
solve the DL problem by finding x
i
= log
g
y
i
for some
i. Note that the y
i
s are supplied to the forger as input.
Hence a DL solver attempting to find log
g
X can do so
by setting y
t
= X for some t. With success probability
1/n, this is the index of the signer whose signature the
forger generates.
6.1.1 Construction of DL Solver
We now apply forking lemma in the chosen
message attack scenario (section 2.1). The
signature σ is written as (σ
1
,h,σ
2
) where:
σ
1
= ( ˆg, ˆy
w
,W,u
1
,··· ,u
n
,t
1
,··· ,t
n
),
where u
i
, t
i
are constructed like in (2)
h = (H( ˆg||g|| ˆy
w
||Y||W||u
1
||t
1
||...||u
n
||t
n
||m),
{H(g||w
i
||g
˜s
i
w
˜c
i
i
||m),i = 1,··· , n}
σ
2
= (C,S, ˜c
1
, ˜s
1
,··· , ˜c
n
, ˜s
n
)
After acquiring two valid signatures (σ
1
,h,σ
2
) and
(σ
1
,h
,σ
2
), such that h 6= h
and σ
2
6= σ
2
, the DL
solver can compute the x
i
= log
g
(y
i
) corresponding
to the signer whose signature the forger generated.
The solver first computes α
i
= x
i
+ r
i
=
(s
i
s
i
)/(c
i
c
i
) for all i = 1,··· , n where c
i
6= c
i
,
which holds due to equation 4 in SEQDL con-
struction. It then computes r
i
= (˜s
i
˜s
i
)/( ˜c
i
˜c
i
)
for all i = 1,··· ,n where ˜c
i
6= ˜c
i
, which is evident
from equation (1) in SKDL construction. Finally, it
computes x
i
= α
i
r
i
for all obtained values of α
i
and r
i
. Clearly, if the forger produced a signature by
the user with public key y
j
, then solver has obtained
SECRYPT 2010 - International Conference on Security and Cryptography
384
x
j
: g
x
j
= y
j
.
Hence the solver has the solution to the DL
problem x
= log
g
X provided j = t. The probability
that this happens is 1/n. Since we assume that the
DL assumption holds, the above algorithm must have
negligible probability of success, therefore the forger
has negligible success probability too.
6.2 Anonymity
The anonymity argument in (Klonowski et al., 2008)
can be readily extended to the proof of anonymity of
the modified scheme. As the r
i
s are chosen randomly,
the SKDLs reveal no additional information about the
signer. Also, the proof of anonymity in (Klonowski
et al., 2008) assumes that the only distinguishing
property of two signature tuples of the form σ =
(m,g, ˆg, ˆw,y
1
,y
2
,w
1
,w
2
,c
1
,c
2
,s
1
,s
2
) by two different
signers 1 and 2, is that in the former, log
g
(y
1
w
1
) =
log
ˆg
( ˆy ˆw) and in the latter, log
g
(y
2
w
2
) = log
ˆg
( ˆy ˆw).
However, the fact that the adversary, in scenario 2,
may use r
i
= log
ˆg
( ˆw), when r
i
is released along with
the signature was not considered. This can be recti-
fied when the product ˆy
w
= ˆy ˆw is released with the
signature instead of the individual values ˆy, ˆw.
6.3 Security of Confession and Step Out
We will prove the following lemmas in order to show
the security of confession and step-out protocols in
our modified step-out ring signature scheme.
Lemma 2. A confession has a positive outcome
only if performed by the original signer of a modified
step-out ring signature according to protocol.
Proof. Since V
SEQDL
( ˆg, g, ˆy
w
,Y,W,C,S, m) = 1,
there exists α such that g
α
{y
1
w
1
,··· ,y
n
w
n
}
and ˆg
α
= ˆy ˆw. Moreover, if σ
is constructed
appropriately and V
MSRS
(σ
,m) = 1, then g
α
{y
1
w
1
,··· ,y
n
w
n
} as well. So g
α
{y
1
w
1
,··· ,y
n
w
n
}
{y
1
w
1
,··· ,y
n
w
n
}. Since {y1,...,yn} {y
1
,...,y
n
}
= {y
j
}, and y
i
1
w
i
1
6= y
i
2
w
i
2
for i
1
6= i
2
, we know that
g
α
= y
j
w
j
, so in this case user U
j
was a creator of σ
and C
MSRS
(σ,σ
,y
j
,m) = 1.
Lemma 3. A step-out has a positive outcome
only if performed by a ring-member of a modified
step-out ring signature, other than the original signer,
according to protocol.
Proof. It is easy to see that the see that σ
′′′
is
a confession that a message ˜m has been signed as σ
′′
by the user U
i
: y
i
= Y
′′
Y
′′′
. Clearly, this user is a
member of the ring. We will show that the outcome of
the step-out procedure performed by this user is posi-
tive. Let us assume that D
MSRS
(σ,m,σ,σ,y
i
, ˜m) = 0.
This happens if ˆy ˆw = ˆy
′′
ˆw
′′
. As in the proof of
Lemma 1, we can see that the signatures σ
′′
and σ
′′′
guarantee that there exists α
such that g
α
= y
i
w
i
and ˆg
α
= ˆy
′′
ˆw
′′
. So α = log
g
(y
i
w
i
) = log
ˆg
( ˆy
′′
ˆw
′′
) =
log
ˆg
( ˆy ˆw) = log
g
(y
j
w
j
), where U
j
is the signer of σ.
We have got that y
i
w
i
= y
j
w
j
, but this contradicts the
assumption about generating secrets r
i
and computing
w
i
during the signing procedure, provided i 6= j.
Let us consider the case when an actual signer
attempts to step-out. When performing the step-out
procedure and generating signatures σ
and σ
′′
, the
user U
j
has to generate y
′′
w
′′
= g
x
j
+r
j
. However, this
product is the same as in σ, so this would lead to a
failure of the test of the step-out procedure.
7 THRESHOLD DISCERNIBLE
RING SIGNATURES
Threshold discernible ring signatures are ring signa-
tures where a threshold of t signers are together capa-
ble of finding the identity of the original signer. This
may be applied for example to situations where a mes-
sage has been maliciously signed on behalf of a ring
of signers and a majority (or a thresholdt) of the sign-
ers decide to unmask the original signer of the mes-
sage.
We extend the modified step out ring signature
scheme from section 6.3 to allow threshold discerni-
bility. The signing algorithm additionally outputs a
set of verifiably encrypted shares of the secret l =
log
g
( ˆg). This can be done using verifiable sharing
of discrete logarithms (Stadler, 1996) and verifiable
encryption of discrete logarithms (Stadler, 1996; Ca-
menisch and Shoup, 2003). Once l is gathered by
any set of t ring members, the original signer is eas-
ily found by inspecting for which index i of the ring
members, the equation (y
i
w
i
)
l
= ˆy
w
holds. This is the
index of the original signer.
7.1 Preliminaries
We assume the same settings and complexity assump-
tions as the SRS signature scheme as in section 2.
The algorithm uses a verifiable encryption scheme
(Stadler, 1996; Camenisch and Shoup, 2003; Ca-
menisch and Damgard, 2000). The notations used
for this scheme are explained below. We also explain
Shamir’s secret sharing scheme (Rivest et al., 2001)
which is used in the verifiable secret sharing of dis-
crete logarithms (Stadler, 1996).
FORCING OUT A CONFESSION - Threshold Discernible Ring Signatures
385
7.1.1 Verifiable Encryption
We denote verifiable encryption of a discrete loga-
rithm α = log
g
(β) under public key PK as VE
PK
(α :
β = g
α
). This denotes the cipher-text created by the
Encrypt algorithm. The encryption scheme has three
algorithms namely:
1. Encrypt(α : β = g
α
): Takes a message α, a public
key PK and outputs cipher text VE
PK
(α : β = g
α
)
where g,β = g
α
are publicly known.
2. Decrypt(VE
PK
(α : β = g
α
)): Takes a cipher-text
VE
PK
(α : β = g
α
) and obtains the original mes-
sage α. This requires the secret key SK.
3. Verify(VE
PK
(α : β = g
α
)): Takes the cipher-text
VE
PK
(α : β = g
α
) and verifies the zero knowledge
proof that the cipher text indeed encrypts α such
that β = g
α
.
7.1.2 Shamir’s Secret Sharing Scheme
A (t, n) secret sharing scheme is a scheme where a
secret d is shared among n users where only a coali-
tion of size at least t can recover the secret. Such a
scheme was proposed by Shamir (Rivest et al., 2001)
and is explained below. A user U
i
has a well known
public parameter α
u
i
Z
q
.
Preliminaries. Let q be a large prime (q >> n), and
d Z
q
be the secret to be shared. There are n t users
in total.
Share. (d) The dealer chooses a random polyno-
mial f(x) = d +
t1
i=1
a
i
x
i
, of degree t 1 from Z
q
[x]
where the constant term is set to d. The dealer then
distributes the secret shares s
i
= f (α
U
i
), to the i
th
user, for each i = 1···n.
Reconstruct. ((α
v
1
,s
1
),··· , (α
v
|S|
,s
|S|
)) This pro-
cess is a simple polynomial interpolation to com-
pute f (0) = d. Suppose a coalition S,|S| t,S =
{v
1
,··· , v
|S|
} wants to reconstruct the secret. They
can compute the secret polynomial f(x) and the secret
by Lagranges polynomial interpolation:
f(0) =
iS
y
i
λ
i0
,where λ
S
ij
=
j
S\{i}
j j
i j
The additional requirement to Shamir’s secret shar-
ing our scheme requires is that the shared secrets are
encrypted and these encrypted portions must still be
verifiable.
7.2 Scheme Description
Outline. Let us assume that U
j
is the real signer and
U
1
,··· ,U
n
are all ring members. Let the private and
public key of user U
i
be x
i
and (y
i
= g
x
i
,α
i
) respec-
tively, where α
i
Z
q
. For Threshold Discernible Ring
Signatures (TDS) we have the following procedures:
Signing Procedure. S
TDS
(g,x
j
, y
1
,··· ,y
n
,
α
1
,··· ,α
n
, t, m) is an algorithm that takes gen-
erator g, the secret key x
j
, the set of public keys
{y
1
,··· ,y
n
} < g >, threshold t and a message m. It
returns a threshold discernible signature σ.
Verification Procedure. V
TDS
(m,σ) is an algo-
rithm that takes a message m, and a signature σ for
m. It returns a bit: 1 or 0 to indicate whether σ is
valid, i.e., someone having a public key in a set Y in-
dicated by σ has signed m, and whether it is indeed
threshold discernible by t of the members of the ring.
Threshold Distinguisher Procedure. T
TDS
(m,σ)
is an algorithm that takes a message m, and a signa-
ture σ for m, and returns i, the index of the original
signer among the public key sequence Y in the sig-
nature σ. The algorithm requires inputs by at least t
signers among the n members of the ring indicated by
σ.
7.3 Signing Algorithm
The signing algorithm verifiably encrypts n shares
of the secret l = log
g
( ˆg), along with the MSRS sig-
nature. It performs the sharing by encrypting the
values of t 1 degree polynomial function f(x) =
l +
t1
j=1
f
j
x
j
, at n points viz. at x = α
1
,··· ,α
n
.
Algorithm S
TDS
(g,x
j
,y
1
,··· ,y
n
,α
1
,··· ,α
n
,t, m)
f
1
, f
2
,··· , f
t1
R
Z
q
F
i
g
f
i
,i = 1,··· ,t 1
l
R
Z
q
\{1}
ˆg g
l
s
i
l +
t1
j=1
f
j
α
j
i
, i = 1,··· ,n
V
i
VE
y
i
(s
i
: g
s
i
= ˆg
t1
j=1
F
α
j
i
j
), i = 1,··· , n
σ
1
S
MSRS
(g, ˆg,x
j
,y
1
,··· ,y
n
,m)
σ (σ
1
,{V
i
: i = 1,··· ,n}, {F
i
: i = 1,··· ,t 1})
return (m,σ)
7.4 Verification Algorithm
The verification algorithm verifies the MSRS sig-
nature as well as the verifiably encrypted shares of
the secret l. The verification algorithm must check
SECRYPT 2010 - International Conference on Security and Cryptography
386
whether t is an acceptable value based on the required
policy. For instance, one may require that t =
n
2
.
Algorithm V
TDS
(m,σ)
if (Verify(VE
y
i
(s
i
: g
s
i
= ˆg
t1
j=1
F
α
j
i
j
)) = 0
for any i = 1,··· ,n)
return 0
return V
MSRS
(m,σ)
7.5 Threshold Distinguisher Algorithm
The threshold distinguisher algorithm requires that at
least t of the signers in the ring share their respec-
tive s
i
s. It is required that each of these s
i
s are such
that S
i
= ˆg
t1
j=1
F
y
j
i
j
= g
s
i
. Now, using Lagrange’s in-
terpolation formula, the function f, hence the value
f(0) = l, can be computed. Once l is computed,
the verifier checks for which value of i, the equation,
(y
i
w
i
)
l
= ˆy
w
holds. This i is the index of the original
signer.
Algorithm T
TDS
(m,σ)
if (V
TDS
(m,σ) = 0)
then return
Obtain s
i
= Decrypt(VE
y
i
(s
i
: g
s
i
= ˆg
t1
j=1
F
α
j
i
j
))
from t signers w.l.o.g. i = 1, · · · ,t.
l Reconstruct((α
0
,s
0
),··· ,(α
t
,s
t
))
for i = 1 to n
if ((y
i
w
i
)
l
= ˆy
w
)
then return i
return
7.6 Security
In this section we define the security models for
threshold discernible ring signatures. Due to lack of
space, we provide sketches of the security proofs. De-
tailed proofs will be providedin the full version of this
paper.
A threshold discernible ring signature (TDS)
scheme must follow the following conditions:
Unforgeability. Unforgeability in threshold dis-
cernible ring signatures requires that no entity other
than a member of the ring must be able to produce
a ring signature with non-negligible advantage in
polynomial time.
For security proof of unforgeability we formalize
the attacks of a forger F
TDS
in the chosen-message
scenario. We consider the following experiment of
running a forger F
TDS
:
Experiment Exp
F
TDS
for k = 1 to q
max
query for (m
k
, σ
k
), such that V
TDS
(σ
k
,m
k
) = 1
let (m,σ) F
SRS
(g, ˆg,y
1
,...,y
n
,m,(m
1
,σ
1
),...
,(m
k
,σ
k
))
if V
SRS
(σ,m) = 1 return 1
else return 0
Then we define the advantage Adv
F
TDS
of the forger.
F
TDS
as the probability Pr[Exp
F
TDS
= 1].
Theorem 1. Threshold discernible ring signatures
are secure against forgery, i.e., Adv
F
TDS
is negligibly
small.
Proof Sketch: We assume the following secu-
rity results on the verifiable secret sharing of
discrete logarithms. This means that no poly-
nomial time adversary can with non-negligible
probability produce verifiably encrypted shares
σ
2
= {V
i
,i = 1,··· , n},{F
i
,i = 1,··· ,t 1} of secret
l, without knowledge of the secret l. Additionally in
verifiable secret sharing of discrete logarithms, no set
of t 1 or fewer users can obtain the secret l from σ
2
in polynomial time with non-negligible probability.
These results can be obtained from (Stadler, 1996).
This guarantees that the quantity σ
2
cannot be
produced without the prior knowledge of l such that
ˆg = g
l
by any adversary. Note that l is the only
common value used in generation of σ
1
and σ
2
. As
σ
1
is an MSRS signature, the unforgeability of σ
1
follows from the unforgeability of σ
2
. Hence the
tuple (σ
1
,σ
2
) is unforgeable.
Threshold Anonymity. Threshold anonymity in
threshold discernible ring signatures requires that no
entity other than a group of at least t ring members
must be able to identify the original signer of a ring
signature with non-negligible advantage in polyno-
mial time.
Theorem 2. Let A
ATDS
be a probabilistic polyno-
mial time algorithm that can distinguish between
σ
x
,σ
y
produced by two different signers for an
arbitrary message m by any group of t 1 signers
among n signers. Let advantage of A
ATDS
be defined
as Adv
A
ATDS
= Pr[A(σ
b
) = b], where b {x, y}. We
say that the scheme provides threshold anonymity,
if for any efficient algorithm A
ATDS
the value of
Adv
A
ATDS
is at most negligibly greater than 1/n. The
threshold discernible ring signature scheme discussed
above has the threshold anonymity property.
Proof Sketch: From the anonymity of MSRS
FORCING OUT A CONFESSION - Threshold Discernible Ring Signatures
387
no polynomial time algorithm can discover the
original signer of σ using the component σ
1
alone.
This ensures that no group of size below t can find
the original signer of a signature σ
1
. Additionally, in
verifiable secret sharing of discrete logarithms, no set
of t 1 or fewer users can obtain the secret l from σ
2
in polynomial time with non-negligible probability.
Hence l cannot be obtained to find the original signer
of σ
1
, unless a group of at least t users cooperate.
Hence, threshold anonymity holds for the signature
(σ
1
,σ
2
) and theorem 2 holds.
8 CONCLUSIONS AND OPEN
PROBLEMS
Step out ring signatures, introduced in (Klonowski
et al., 2008), had security flaws. We identified those
flaws present in the scheme and fixed them in order
to make it secure. We have introduced the new con-
cept of the Threshold discernible ring signature using
the corrected version of the step out ring signature.
Our scheme is proved secure under DDH assumption.
The problem of finding a scheme which is secure in
the standard model and formulating step out ring sig-
natures using bilinear groups remain open.
REFERENCES
Au, M. H., Chow, S. S. M., Susilo, W., and Tsang, P. P.
(2006). Short linkable ring signatures revisited. In
EuroPKI, pages 101–115. Springer.
Awasthi, A. K. and Lal, S. (2005). Id-based ring signature
and proxy ring signature schemes from bilinear pair-
ings. CoRR.
Camenisch, J. (1997). Efficient and generalized group sig-
natures. In EUROCRYPT, pages 465–479. Springer.
Camenisch, J. and Damgard, I. (2000). Verifiable encryp-
tion, group encryption, and their applications to sepa-
rable group signatures and signature sharing schemes.
In ASIACRYPT, pages 331–345. Springer.
Camenisch, J. and Shoup, V. (2003). Practical verifiable
encryption and decryption of discrete logarithms. In
CRYPTO, pages 126–144. Springer.
Chen, Y.-S., Lei, C.-L., Chiu, Y.-P., and Huang, C.-Y.
(2006). Confessible threshold ring signatures. In
ICSNC ’06: Proceedings of the International Con-
ference on Systems and Networks Communication,
page 25. IEEE Computer Society.
Cheng, W., Lang, W., Yang, Z., Liu, G., and Tan, Y. (2004).
An identity-based proxy ring signature scheme from
bilinear pairings. In ISCC ’04: Proceedings of the
Ninth International Symposium on Computers and
Communications 2004 Volume 2 (ISCC”04), pages
424–429. IEEE Computer Society.
Klonowski, M., Krzywiecki, L., Kutylowski, M., and
Lauks, A. (2008). Step-out ring signatures. In MFCS
’08: Proceedings of the 33rd international symposium
on Mathematical Foundations of Computer Science,
pages 431–442. Springer-Verlag.
Klonowski, M., Krzywiecki, L., Kutyowski, M., and Lauks,
A. (2009). Step-out group signatures. Computing,
85(1-2):137–151.
Naor, M. (2002). Deniable ring authentication. In CRYPTO
’02: Proceedings of the 22nd Annual International
Cryptology Conference on Advances in Cryptology,
pages 481–498. Springer-Verlag.
Pointcheval, D. (2005). Provable security for public key
schemes. In Contemporary Cryptology, pages 133–
190. Birkhuser Basel.
Rivest, R. L., Shamir, A., and Tauman, Y. (2001). How
to leak a secret. In ASIACRYPT ’01: Proceedings of
the 7th International Conference on the Theory and
Application of Cryptology and Information Security,
pages 552–565. Springer-Verlag.
Savola, R. (2006). A requirement centric framework for
information security evaluation. In IWSEC, pages 48–
59. Springer.
Schnorr, C.-P. (1991). Efficient signature generation by
smart cards. J. Cryptology, pages 161–174.
Stadler, M. (1996). Publicly verifiable secret sharing. In
EUROCRYPT, pages 190–199. Springer-Verlag.
Susilo, W. and Mu, Y. (2004). Deniable ring authentication
revisited. In ACNS, pages 149–163. Springer.
Tsang, P. P. and Wei, V. K. (2005). Short linkable ring sig-
natures for e-voting, e-cash and attestation. In ISPEC,
pages 48–60. Springer.
SECRYPT 2010 - International Conference on Security and Cryptography
388