Clever Geek Handbook
📜 ⬆️ ⬇️

Cryptosystem Okamoto - Utiyama

The Okamoto and Utiyama cryptosystem is a probabilistic cryptosystem proposed in 1998 by Tatsuaki Okamoto and Shinegori Utiyama. This cryptosystem is based on a logarithmic functionL {\ displaystyle L} L defined over the multiplicative group(Z/nZ)∗ {\ displaystyle \ mathbb {(} {Z} / n \ mathbb {Z}) ^ {*}} {\ displaystyle \ mathbb {(} {Z} / n \ mathbb {Z}) ^ {*}} wheren=p2q {\ displaystyle n = p ^ {2} q} {\ displaystyle n = p ^ {2} q} , butp {\ displaystyle p} p andq {\ displaystyle q} q are large primes.

For example, ifp {\ displaystyle p} p - a large prime number andγp⊂Zp2n {\ displaystyle \ gamma _ {p} \ subset \ mathbb {Z_ {p ^ {2}} ^ {n}}} {\ displaystyle \ gamma _ {p} \ subset \ mathbb {Z_ {p ^ {2}} ^ {n}}} such that {γp=x<p2∣x=onemodp {\ displaystyle \ gamma _ {p} = {x <p ^ {2} \ mid x = 1 {\ bmod {p}}}} {\ displaystyle \ gamma _ {p} = {x <p ^ {2} \ mid x = 1 {\ bmod {p}}}} } thenγp {\ displaystyle \ gamma _ {p}} {\ displaystyle \ gamma _ {p}} has a group structure with respect to the multiplicative modulep2 {\ displaystyle p ^ {2}} {\ displaystyle p ^ {2}} . Functionlog⁡(.):γp⟶Zp {\ displaystyle \ log (.): \ gamma _ {p} \ longrightarrow Z_ {p}} {\ displaystyle \ log (.): \ gamma _ {p} \ longrightarrow Z_ {p}} connectingx-onep {\ displaystyle {\ frac {x-1} {p}}} {\ displaystyle {\ frac {x-1} {p}}} withx {\ displaystyle x} x defined onn=p2q {\ displaystyle n = p ^ {2} q} {\ displaystyle n = p ^ {2} q} and has homomorphic properties, and in particular:

∀x,y∈γp{\ displaystyle {\ forall x, y \ in \ gamma _ {p}}} {\ displaystyle {\ forall x, y \ in \ gamma _ {p}}}log⁡(xymodp2)=log⁡(x)+log⁡(y)modp {\ displaystyle {\ log (xy {\ bmod {p}} ^ {2}) = \ log (x) + \ log (y) {\ bmod {p}}}} {\ displaystyle {\ log (xy {\ bmod {p}} ^ {2}) = \ log (x) + \ log (y) {\ bmod {p}}}}

Or, summarizing:

∀g∈γp,m∈Zp{\ displaystyle {\ forall g \ in \ gamma _ {p}, m \ in Z_ {p}}} {\ displaystyle {\ forall g \ in \ gamma _ {p}, m \ in Z_ {p}}}log⁡(gmmodp2)=mlog⁡(g)modp {\ displaystyle {\ log (g ^ {m} {\ bmod {p}} ^ {2}) = m \ log (g) {\ bmod {p}}}} {\ displaystyle {\ log (g ^ {m} {\ bmod {p}} ^ {2}) = m \ log (g) {\ bmod {p}}}}

Algorithm Description

Key Generation

  1. Two large different prime numbers are chosen.p {\ displaystyle p} p andq {\ displaystyle q} q and is calculatedn=p2q {\ displaystyle n = p ^ {2} q} {\displaystyle n=p^{2}q} ;
  2. Number is selectedg∈(Z/nZ)∗ {\ displaystyle g \ in ({\ mathbb {Z}} / n {\ mathbb {Z}}) ^ {*}} {\displaystyle g\in ({\mathbb {Z} }/n{\mathbb {Z} })^{*}} such thatgp-one≠onemodp2 {\ displaystyle {g ^ {p-1} \ neq 1 \ mod p ^ {2}}} {\displaystyle {g^{p-1}\neq 1\mod p^{2}}} ;
  3. Calculatedh=gnmodn {\ displaystyle {h = g ^ {n} {\ bmod {n}}}} {\displaystyle {h=g^{n}{\bmod {n}}}}

In this way,(n,g,h) {\ displaystyle (n, g, h)} {\displaystyle (n,g,h)} - public key ,(p,q) {\ displaystyle (p, q)} (p,q) - secret key .

Encryption

To encrypt a k-bit messagem {\ displaystyle m} m where0<m<2k-one {\ displaystyle {0 <m <2 ^ {k-1}}} {\displaystyle {0<m<2^{k-1}}} :

  1. Random selectedr∈Z/nZ {\ displaystyle {r \ in {\ mathbb {Z}} / n {\ mathbb {Z}}}} {\displaystyle {r\in {\mathbb {Z} }/n{\mathbb {Z} }}} ;
  2. The ciphertext is calculated:C=gmhrmodn {\ displaystyle {C = g ^ {m} h ^ {r} {\ bmod {n}}}} {\displaystyle {C=g^{m}h^{r}{\bmod {n}}}}

Decryption

We denoteL(x)=x-onep {\ displaystyle L (x) = {\ frac {x-1} {p}}} {\displaystyle L(x)={\frac {x-1}{p}}} . Thus decrypting the messageC {\ displaystyle C} C :

m=L(Cp-onemodp2)L(gp-onemodp2)modp{\ displaystyle m = {\ frac {L \ left (C ^ {p-1} {\ bmod {p}} ^ {2} \ right)} {L \ left (g ^ {p-1} \ mod p ^ {2} \ right)}} {\ bmod {p}}}  

Cryptosystem Properties

Homomorphism

The cryptosystem is additively homomorphic , since whenmone+m2<p {\ displaystyle {m_ {1} + m_ {2} <p}}   performed:

E(mone)⋅E(m2)=(gmoneronec)(gm2r2c)modn=gmone+m2(roner2)cmod=E(mone+m2){\ displaystyle {{\ mathcal {E}} (m_ {1}) \ cdot {\ mathcal {E}} (m_ {2}) = (g ^ {m_ {1}} r_ {1} ^ {c} ) (g ^ {m_ {2}} r_ {2} ^ {c}) {\ bmod {n}} = g ^ {m_ {1} + m_ {2}} (r_ {1} r_ {2}) ^ {c} {\ bmod {=}} {\ mathcal {E}} (m_ {1} + m_ {2})}}   whereE(m) {\ displaystyle {{\ mathcal {E}} (m)}}   is a message encryption functionm {\ displaystyle m}   .

Persistence

The strength of the cryptosystem Okamoto and Utiyama is based on the problem of factoring the numbern {\ displaystyle n}   and asksO(log3⁡n) {\ displaystyle O (\ log _ {3} n)}   bit operations.

Decryption Reduction Method

To lower the complexity of the circuit toO(log2⁡n) {\ displaystyle O (\ log _ {2} n)}   , can choosep {\ displaystyle p}   through a large (160-bit) coefficientt {\ displaystyle t}   as follows [1] :p-one=tu {\ displaystyle {p-1 = tu}}   and modify the circuit as follows:

  1. Choose an arbitrary numberg<n {\ displaystyle g <n}   such thatgp=g(p-one)modp2 {\ displaystyle {g_ {p} = g ^ {(p-1)} {\ bmod {p}} ^ {2}}}  
  2. CalculateG=gumodn {\ displaystyle {G = g ^ {u} {\ bmod {n}}}}  
  3. Choose an arbitrary numberg′<n {\ displaystyle g ^ {\ prime} <n}   and calculateH=g′numodn {\ displaystyle {H = {g ^ {\ prime}} ^ {nu} {\ bmod {n}}}}  

Then the three values(n,G,H) {\ displaystyle {(n, G, H)}}   forms a public key, and(p,q) {\ displaystyle {(p, q)}}   - The secret key.

Encryption:

  1. Randomly select a numberr<n {\ displaystyle r <n}  
  2. Decrypt(k-one) {\ displaystyle {(k-1)}}   bit messagem {\ displaystyle m}   in the following way:c=GmHrmodn {\ displaystyle {c = G ^ {m} H ^ {r} {\ bmod {n}}}}   .

Decryption:

  1. c′=ctmodp2=gm(p-one)g′nr(p-one)=gpmmodp2{\ displaystyle {c ^ {\ prime} = c ^ {t} {\ bmod {p}} ^ {2} = g ^ {m (p-1)} g ^ {\ prime nr (p-1)} = g_ {p} ^ {m} {\ bmod {p}} ^ {2}}}   ;
  2. m=log⁡(c′)log⁡(gp)-onemodp{\ displaystyle {m = \ log (c ^ {\ prime}) \ log (g_ {p}) ^ {- 1} {\ bmod {p}}}}   .

Notes

  1. ↑ Accelerating Okamoto-Uchiyama's Public-Key Cryptosystem (Jean-S´ebastien Coron, David Naccache, Pascal Paillier)

Literature

  • Okamoto, Tatsuaki; Uchiyama, Shigenori (1998). "A new public-key cryptosystem as secure as factoring." Advances in Cryptology - EUROCRYPT'98.
  • Accelerating Okamoto-Uchiyama's Public-Key Cryptosystem (Jean-S´ebastien Coron, David Naccache, Pascal Paillier)
Source - https://ru.wikipedia.org/w/index.php?title=Cryptosystem_Okamoto_—_Utiyama&oldid=92523215


More articles:

  • Second Bundesliga 2017/2018
  • Novozavolzhsky
  • James Sands
  • Osman's Fist
  • Midday
  • Krylovka (Kaliningrad Oblast)
  • MacMafia
  • 2018 World Cup. Group B
  • Kansky, Vasily Antonovich
  • Johann Gottfried Mutel

All articles

Clever Geek | 2019