Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

Non-commutative cryptography

From Wikipedia, the free encyclopedia

Non-commutative cryptography is the area ofcryptology where thecryptographic primitives, methods and systems are based onalgebraic structures likesemigroups,groups andrings which arenon-commutative. One of the earliest applications of a non-commutative algebraic structure for cryptographic purposes was the use ofbraid groups to develop cryptographic protocols. Later several other non-commutative structures likeThompson groups,polycyclic groups,Grigorchuk groups, andmatrix groups have been identified as potential candidates for cryptographic applications. In contrast to non-commutative cryptography, the currently widely usedpublic-key cryptosystems likeRSA cryptosystem,Diffie–Hellman key exchange andelliptic curve cryptography are based on number theory and hence depend on commutative algebraic structures.

Non-commutative cryptographic protocols have been developed for solving various cryptographic problems likekey exchange,encryption-decryption, andauthentication. These protocols are very similar to the corresponding protocols in the commutative case.

Some non-commutative cryptographic protocols

[edit]

In these protocols it would be assumed thatG is anon-abelian group. Ifw anda are elements ofG the notationwa would indicate the elementa−1wa.

Protocols for key exchange

[edit]

Protocol due to Ko, Lee, et al.

[edit]

The following protocol due to Ko, Lee, et al., establishes a commonsecret keyK forAlice and Bob.

  1. An elementw ofG is published.
  2. TwosubgroupsA andB ofG such thatab =ba for alla inA andb inB are published.
  3. Alice chooses an elementa fromA and sendswa to Bob. Alice keepsa private.
  4. Bob chooses an elementb fromB and sendswb to Alice. Bob keepsb private.
  5. Alice computesK = (wb)a =wba.
  6. Bob computesK' = (wa)b=wab.
  7. Sinceab =ba,K =K'. Alice and Bob share the common secret keyK.

Anshel-Anshel-Goldfeld protocol

[edit]
Main article:Anshel-Anshel-Goldfeld key exchange

This a key exchange protocol using a non-abelian groupG. It is significant because it does not require two commuting subgroupsA andB ofG as in the case of the protocol due to Ko, Lee, et al.

  1. Elementsa1,a2, . . . ,ak,b1,b2, . . . ,bm fromG are selected and published.
  2. Alice picks a privatex inG as aword ina1,a2, . . . ,ak; that is,x =x(a1,a2, . . . ,ak ).
  3. Alice sendsb1x,b2x, . . . ,bmx to Bob.
  4. Bob picks a privatey inG as aword inb1,b2, . . . ,bm; that isy =y (b1,b2, . . . ,bm ).
  5. Bob sendsa1y,a2y, . . . ,aky to Alice.
  6. Alice and Bob share the common secret keyK =x−1y−1xy.
  7. Alice computesx (a1y,a2y, . . . ,aky ) =y−1xy. Pre-multiplying it withx−1, Alice getsK.
  8. Bob computesy (b1x,b2x, . . . ,bmx) =x−1yx. Pre-multiplying it withy−1 and then taking the inverse, Bob getsK.

Stickel's key exchange protocol

[edit]

In the original formulation of this protocol the group used was the group ofinvertible matrices over afinite field.

  1. LetG be a public non-abelianfinite group.
  2. Leta,b be public elements ofG such thatabba. Let the orders ofa andb beN andM respectively.
  3. Alice chooses two random numbersn <N andm <M and sendsu =ambn to Bob.
  4. Bob picks two random numbersr <N ands <M and sendsv =arbs to Alice.
  5. The common key shared by Alice and Bob isK =am +rbn +s.
  6. Alice computes the key byK = amvbn.
  7. Bob computes the key byK =arubs.

Protocols for encryption and decryption

[edit]

This protocol describes how toencrypt a secret message and thendecrypt using a non-commutative group. Let Alice want to send a secret messagem to Bob.

  1. LetG be a non-commutative group. LetA andB be public subgroups ofG such thatab =ba for alla inA andb inB.
  2. An elementx fromG is chosen and published.
  3. Bob chooses a secret keyb fromA and publishesz =xb as his public key.
  4. Alice chooses a randomr fromB and computest =zr.
  5. The encrypted message isC = (xr,H(t){\displaystyle \oplus }m), whereH is somehash function and{\displaystyle \oplus } denotes theXOR operation. Alice sendsC to Bob.
  6. To decryptC, Bob recoverst as follows: (xr)b =xrb =xbr = (xb)r =zr =t. The plain text message send by Alice isP = (H(t){\displaystyle \oplus }m ){\displaystyle \oplus }H(t) =m.

Protocols for authentication

[edit]

Let Bob want to check whether the sender of a message is really Alice.

  1. LetG be a non-commutative group and letA andB be subgroups ofG such thatab =ba for alla inA andb inB.
  2. An elementw fromG is selected and published.
  3. Alice chooses a privates fromA and publishes the pair (w,t ) wheret =ws.
  4. Bob chooses anr fromB and sends a challengew′ =wr to Alice.
  5. Alice sends the responsew′′ = (w′)s to Bob.
  6. Bob checks ifw′′ =tr. If this true, then the identity of Alice is established.

Security basis of the protocols

[edit]

The basis for the security and strength of the various protocols presented above is the difficulty of the following two problems:

  • Theconjugacy decision problem (also called theconjugacy problem): Given two elementsu andv in a groupG determine whether there exists an elementx inG such thatv =ux, that is, such thatv =x−1ux.
  • Theconjugacy search problem: Given two elementsu andv in a groupG find an elementx inG such thatv =ux, that is, such thatv =x−1ux.

If no algorithm is known to solve the conjugacy search problem, then the functionxux can be considered as aone-way function.

Platform groups

[edit]

A non-commutative group that is used in a particular cryptographic protocol is called the platform group of that protocol. Only groups having certain properties can be used as the platform groups for the implementation of non-commutative cryptographic protocols. LetG be a group suggested as a platform group for a certain non-commutative cryptographic system. The following is a list of the properties expected ofG.

  1. The groupG must be well-known and well-studied.
  2. Theword problem inG should have a fast solution by a deterministic algorithm. There should be an efficiently computable "normal form" for elements ofG.
  3. It should be impossible to recover the factorsx andy from the productxy inG.
  4. The number of elements of lengthn inG should grow faster than any polynomial inn. (Here "lengthn" is the length of a word representing a group element.)

Examples of platform groups

[edit]

Braid groups

[edit]
Main article:Braid group

Letn be a positive integer. The braid groupBn is a group generated byx1,x2, . . . ,xn−1 having the following presentation:

Bn=x1,x2,,xn1|xixj=xjxi if |ij|>1 and xixjxi=xjxixj if |ij|=1{\displaystyle B_{n}=\left\langle x_{1},x_{2},\ldots ,x_{n-1}{\big |}x_{i}x_{j}=x_{j}x_{i}{\text{ if }}|i-j|>1{\text{ and }}x_{i}x_{j}x_{i}=x_{j}x_{i}x_{j}{\text{ if }}|i-j|=1\right\rangle }

Thompson's group

[edit]
Main article:Thompson groups

Thompson's group is an infinite groupF having the following infinite presentation:

F=x0,x1,x2,|xk1xnxk=xn+1 for k<n{\displaystyle F=\left\langle x_{0},x_{1},x_{2},\ldots {\big |}x_{k}^{-1}x_{n}x_{k}=x_{n+1}{\text{ for }}k<n\right\rangle }

Grigorchuk's group

[edit]
Main article:Grigorchuk's group

LetT denote the infiniterootedbinary tree. The setV of vertices is the set of all finite binary sequences. LetA(T) denote the set of all automorphisms ofT. (An automorphism ofT permutes vertices preserving connectedness.) The Grigorchuk's group Γ is the subgroup ofA(T) generated by the automorphismsa,b,c,d defined as follows:

Artin group

[edit]
Main article:Artin group

An Artin groupA(Γ) is a group with the following presentation:

A(Γ)=a1,a2,,an|μij=μji for 1i<jn{\displaystyle A(\Gamma )=\left\langle a_{1},a_{2},\ldots ,a_{n}|\mu _{ij}=\mu _{ji}{\text{ for }}1\leq i<j\leq n\right\rangle }

whereμij=aiajai{\displaystyle \mu _{ij}=a_{i}a_{j}a_{i}\ldots } (mij{\displaystyle m_{ij}} factors) andmij=mji{\displaystyle m_{ij}=m_{ji}}.

Matrix groups

[edit]
Main article:Matrix group

LetF be a finite field. Groups of matrices overF have been used as the platform groups of certain non-commutative cryptographic protocols.

Semidirect products

[edit]
Main article:Semidirect product

[1]

See also

[edit]

References

[edit]
  1. ^Habeeb, M.;Kahrobaei, D.; Koupparis, C.; Shpilrain, V. (2013). "Public Key Exchange Using Semidirect Product of (Semi)Groups".Applied Cryptography and Network Security. ACNS 2013. Lecture Notes in Computer Science. Vol. 7954. Springer. pp. 475–486.arXiv:1304.6572.CiteSeerX 10.1.1.769.1289.doi:10.1007/978-3-642-38980-1_30.ISBN 978-3-642-38980-1.

Further reading

[edit]
  1. Myasnikov, Alexei; Shpilrain, Vladimir; Ushakov, Alexander (2008).Group-based Cryptography. Birkhäuser Verlag.ISBN 9783764388270.
  2. Cao, Zhenfu (2012).New Directions of Modern Cryptography. CRC Press.ISBN 978-1-4665-0140-9.
  3. Benjamin Fine; et al. (2011). "Aspects of Nonabelian Group Based Cryptography: A Survey and Open Problems".arXiv:1103.4093 [cs.CR].
  4. Myasnikov, Alexei G.; Shpilrain, Vladimir; Ushakov, Alexander (2011).Non-commutative Cryptography and Complexity of Group-theoretic Problems. American Mathematical Society.ISBN 9780821853603.
Algorithms
Integer factorization
Discrete logarithm
Lattice/SVP/CVP/LWE/SIS
Others
Theory
Standardization
Topics
General
Mathematics
Retrieved from "https://en.wikipedia.org/w/index.php?title=Non-commutative_cryptography&oldid=1295372636"
Category:

[8]ページ先頭

©2009-2025 Movatter.jp