Cocks IBE scheme is an identity based encryption system proposed by Clifford Cocks in 2001.[1] The security of the scheme is based on the hardness of the quadratic residuosity problem.
The PKG chooses:
stylen=pq
stylep,q,p\equivq\equiv3\bmod4
stylel{M}=\left\{-1,1\right\},l{C}=Zn
stylef:\left\{0,1\right\}* → Zn
When user
styleID
stylea
style\left( | a |
n |
\right)=1
styleID
stylef
styler=a(n+5-p-q)/8\pmodn
styler2=a\pmodn
styler2=-a\pmodn
styler
To encrypt a bit (coded as
style1
style-1
stylem\inl{M}
styleID
stylet1
stylem=\left(
t1 | |
n |
\right)
stylet2
stylem=\left(
t2 | |
n |
\right)
stylet1
stylec1=t1+
-1 | |
at | |
1 |
\pmodn
c2=t2-
-1 | |
at | |
2 |
\pmodn
styles=(c1,c2)
To decrypt a ciphertext
s=(c1,c2)
ID
\alpha=c1+2r
r2=a
\alpha=c2+2r
m=\left(
\alpha | |
n |
\right)
Note that here we are assuming that the encrypting entity does not know whether
ID
r
a
-a
First note that since
stylep\equivq\equiv3\pmod4
\left( | -1 |
p |
\right)=\left(
-1 | |
q |
\right)=-1
style\left( | a |
n |
\right) ⇒ \left(
a | |
p |
\right)=\left(
a | |
q |
\right)
stylea
style-a
stylen
Therefore,
styler
stylea
style-a
\begin{align} r2&=\left(a(n+5-p-q)/8\right)2\\ &=\left(a(n+5-p-q\right)2\\ &=\left(a(n+5-p-q\right)2\\ &=\left(a(n+5-p-q\right)2\\ &=\left(a4/8\right)2\\ &=\pma \end{align}
Moreover, (for the case that
stylea
style-a
\begin{align} \left( | s+2r |
n |
\right)&=\left(
t+at-1+2r | |
n |
\right)=\left(
t\left(1+at-2+2rt-1\right) | |
n |
\right)\\ &=\left(
t\left(1+r2t-2+2rt-1\right) | |
n |
\right)=\left(
t\left(1+rt-1\right)2 | |
n |
\right)\\ &=\left(
t | |
n |
\right)\left(
1+rt-1 | |
n |
\right)2=\left(
t | |
n |
\right)(\pm1)2=\left(
t | |
n |
\right) \end{align}
It can be shown that breaking the scheme is equivalent to solving the quadratic residuosity problem, which is suspected to be very hard. The common rules for choosing a RSA modulus hold: Use a secure
stylen
stylet
stylet
A major disadvantage of this scheme is that it can encrypt messages only bit per bit - therefore, it is only suitable for small data packets like a session key. To illustrate, consider a 128 bit key that is transmitted using a 1024 bit modulus. Then, one has to send 2 × 128 × 1024 bit = 32 KByte (when it is not known whether
r
This scheme does not preserve key-privacy, i.e. a passive adversary can recover meaningful information about the identity of the recipient observing the ciphertext.