Group-based Cryptography

Định nghÄ©a

Trong toĆ”n hį»c, mį»™t nhóm (group) lĆ  mį»™t tįŗ­p hợp cĆ”c phįŗ§n tį»­ được trang bị mį»™t phĆ©p toĆ”n hai ngĆ“i kįŗæt hợp hai phįŗ§n tį»­ bįŗ„t kỳ cį»§a tįŗ­p hợp thĆ nh mį»™t phįŗ§n tį»­ thứ ba thį»a mĆ£n bốn điều kiện gį»i lĆ  tiĆŖn đề nhóm, lįŗ§n lượt lĆ  tĆ­nh đóng, tĆ­nh kįŗæt hợp, sį»± tồn tįŗ”i cį»§a phįŗ§n tį»­ đʔn vị vĆ  tĆ­nh khįŗ£ nghịch. Mį»™t trong những vĆ­ dỄ quen thuį»™c nhįŗ„t về nhóm đó lĆ  tįŗ­p hợp cĆ”c số nguyĆŖn cùng vį»›i phĆ©p cį»™ng; khi thį»±c hiện cį»™ng hai số nguyĆŖn bįŗ„t kỳ luĆ“n thu được mį»™t số nguyĆŖn khĆ”c. HƬnh thức trƬnh bĆ y trừu tượng dį»±a trĆŖn tiĆŖn đề nhóm, tĆ”ch biệt nó khį»i bįŗ£n chįŗ„t cỄ thể cį»§a bįŗ„t kỳ nhóm đặc biệt nĆ o vĆ  phĆ©p toĆ”n trĆŖn nhóm, cho phĆ©p nhóm bao trùm lĆŖn nhiều thį»±c thể vį»›i nguồn gốc toĆ”n hį»c rįŗ„t khĆ”c nhau trong đẔi số trừu tượng vĆ  rį»™ng hĘ”n, vĆ  có thể giįŗ£i quyįŗæt mį»™t cĆ”ch linh hoįŗ”t, trong khi vįŗ«n giữ lįŗ”i khĆ­a cįŗ”nh cįŗ„u trĆŗc căn bįŗ£n cį»§a những thį»±c thể įŗ„y. Sį»± có mįŗ·t khįŗÆp nĘ”i cį»§a nhóm trong nhiều lÄ©nh vį»±c bĆŖn trong vĆ  ngoĆ i toĆ”n hį»c khiįŗæn chĆŗng trở thĆ nh nguyĆŖn lý tổ chức trung tĆ¢m cį»§a toĆ”n hį»c đʰʔng đẔi

Nhóm lĆ  mį»™t tįŗ­p hợp, G, cùng vį»›i phĆ©p toĆ”n hai ngĆ“i * (còn gį»i lĆ  luįŗ­t nhóm cį»§a G) kįŗæt hợp hai phįŗ§n tį»­ a vĆ  b bįŗ„t kỳ Ä‘į»ƒ tįŗ”o ra mį»™t phįŗ§n tį»­ khĆ”c, viįŗæt lĆ  a * b hoįŗ·c ab.

TĆ­nh chįŗ„t

TĆ­nh đóng

āˆ€a,Ā b∈G,Ā (aāˆ—b)∈G\forall a, \ b \in G, \ (a * b) \in G

Tính kết hợp

āˆ€aĀ ,bĀ ,Ā c∈G,Ā (aĀ āˆ—Ā b)Ā āˆ—Ā cĀ =Ā aĀ āˆ—Ā (bĀ āˆ—Ā c)\forall a \ ,b \ , \ c \in G, \ (a \ * \ b) \ * \ c \ = \ a \ * \ (b \ * \ c)

Phįŗ§n tį»­ đʔn vị

Tồn tįŗ”i mį»™t phįŗ§n tį»­ e trong nhóm G sao cho

āˆ€a∈G,Ā aĀ āˆ—Ā eĀ =Ā eĀ āˆ—Ā aĀ =Ā a\forall a \in G, \ a \ * \ e \ = \ e \ * \ a \ = \ a

Phįŗ§n tį»­ nghịch đảo

āˆ€a∈G\forall a \in G

tồn tįŗ”i mį»™t phįŗ§n tį»­ a^{-1} (phįŗ§n tį»­ nghịch đảo cį»§a a) trong nhóm G sao cho

aāˆ—aāˆ’1=aāˆ’1āˆ—a=ea*a^{-1}=a^{-1}*a =e

Tƭnh giao hoƔn

Nếu * có tính giao hoÔn

āˆ€a∈G,Ā aāˆ—b=bāˆ—a\forall a \in G, \ a * b = b * a

thƬ nhóm G sįŗ½ được gį»i lĆ  nhóm giao hoĆ”n hay nhóm Abel

Order cį»§a mį»™t nhóm

Nhóm hữu hįŗ”n lĆ  mį»™t nhóm có số phįŗ§n tį»­ hữu hįŗ”n

XĆ©t mį»™t nhóm hữu hįŗ”n G

  1. Bįŗ­c cį»§a nhóm lĆ  số phįŗ§n tį»­ cį»§a nhóm đó, kĆ­ hiệu

∣G∣\vert G \vert
  1. Bįŗ­c cį»§a mį»™t phįŗ§n tį»­ a \in G lĆ  số nguyĆŖn dʰʔng m nhį» nhįŗ„t sao cho a^m = e vį»›i e lĆ  phįŗ§n tį»­ đʔn vị cį»§a nhóm, kĆ­ hiệu

∣a∣ \vert a \vert

KĆ­ hiệu

⟨a⟩\langle a \rangle

là nhóm con sinh bởi

a∈G,⟨a⟩=ak∣k∈Za \in G, \langle a \rangle = {a^k \vert k \in \mathbb{Z}}

Ta có tính chẄt

∣⟨a⟩∣=∣a∣\lvert \langle a \rangle \rvert = \lvert a \rvert

( Bậc của nhóm con sinh bởi a bằng bậc của a)

Định ý Lagrange

Nếu H là nhóm con của G thì

∣H∣\vert H \vert

lĆ  ước cį»§a

∣G∣\vert G \vert

Hệ quįŗ£:

∣ GĀ āˆ£Ā ā‹®Ā āˆ£Ā a ∣,Ā āˆ€Ā a ∈ G\vert \ G \ \vert \ \vdots \ \vert \ a \ \vert, \ \forall \ a \ \in \ G

apāˆ’1=1(modp)a^{p-1} = 1 \pmod p

vį»›i p nguyĆŖn tố vĆ  a \ne 0. XĆ©t nhóm nhĆ¢n

Zpāˆ—=1ˉ,2ˉ,…,pāˆ’1‾\mathbb{Z}_p^* = {\bar{1}, \bar{2}, \dots, \overline{p-1}}

ta có

∣Zpāˆ—āˆ£=pāˆ’1\vert \mathbb{Z}_p^* \vert = p - 1

Mặt khÔc

 ∣ Zpāˆ—Ā āˆ£Ā ā‹®Ā āˆ£Ā a ∣ ne^nĀ apāˆ’1Ā =Ā ak∣ a ∣ =Ā 1Ā (modĀ )p(doĀ a∣ a ∣ =Ā 1Ā (modĀ )p) \ \vert \ \mathbb{Z}_p^* \ \vert \ \vdots \ \vert \ a \ \vert \ nĆŖn \ a^{p-1} \ = \ a^{k\vert \ a \ \vert} \ = \ 1 \ \pmod \ p(do \ a^{\vert \ a \ \vert} \ = \ 1 \ \pmod \ p)

Định lý Cauchy

Cho nhóm G hữu hįŗ”n. Nįŗæu cįŗ„p cį»§a G chia hįŗæt cho p, vĆ  p lĆ  số nguyĆŖn tố, thƬ tồn tįŗ”i Ć­t nhįŗ„t mį»™t phįŗ§n tį»­ a thuį»™c G có cįŗ„p bįŗ±ng p.

VĆ nh (Ring)

XĆ©t tįŗ­p hợp R vį»›i 2 phĆ©p toĆ”n + vĆ  *, R được gį»i lĆ  mį»™t vĆ nh nįŗæu ta có cĆ”c tĆ­nh chįŗ„t sau:

  1. Cį»™ng vĆ  nhĆ¢n có tĆ­nh đóng

  2. Cį»™ng vĆ  nhĆ¢n có tĆ­nh kįŗæt hợp:

āˆ€a,b,c∈R,(a+b)+c=a+(b+c),(aāˆ—b)āˆ—c=aāˆ—(bāˆ—c)\forall a, b, c \in R, (a + b) + c = a + (b + c), (a * b) * c = a * (b * c)
  1. Tồn tįŗ”i phįŗ§n tį»­ đʔn vị cho phĆ©p cį»™ng vĆ  nhĆ¢n, ta kĆ­ hiệu 0 vĆ  1 lįŗ§n lượt lĆ  phįŗ§n tį»­ đʔn vị cį»§a phĆ©p cį»™ng vĆ  nhĆ¢n:

āˆ€a∈R,a+0=0+a=a,aāˆ—1=1āˆ—a=a\forall a \in R, a + 0 = 0 + a = a, a * 1 = 1 * a = a
  1. PhĆ©p cį»™ng có tĆ­nh giao hoĆ”n

a+b=b+a,āˆ€a,b∈Ra + b = b + a, \forall a, b \in R
  1. Tồn tįŗ”i phįŗ§n tį»­ nghịch đảo cho phĆ©p cį»™ng

āˆ€a∈R,∃b∈R,a+b=0\forall a \in R , \exists b \in R, a + b = 0
  1. TĆ­nh phĆ¢n phối cį»§a phĆ©p nhĆ¢n đối vį»›i phĆ©p cį»™ng:

aĀ āˆ—Ā (bĀ +Ā c)Ā =Ā (aĀ āˆ—Ā b)Ā +Ā (aĀ āˆ—Ā b),Ā (bĀ +Ā c)Ā āˆ—Ā aĀ =Ā (bĀ āˆ—Ā a)Ā +Ā (cĀ āˆ—Ā a)a \ * \ (b \ + \ c) \ = \ (a \ * \ b) \ + \ (a \ * \ b), \ (b \ + \ c) \ * \ a \ = \ (b \ * \ a) \ + \ (c \ * \ a)

VĆ­ dỄ: Tįŗ­p hợp cĆ”c ma trįŗ­n vuĆ“ng 2x2 trĆŖn tįŗ­p số thį»±c lĆ  mį»™t vĆ nh. Nįŗæu R lĆ  mį»™t vĆ nh thƬ tįŗ­p hợp cĆ”c ma trįŗ­n nxn vį»›i mį»—i phįŗ§n tį»­ ma trįŗ­n \in R , kĆ­ hiệu M_n(R) , cÅ©ng lĆ  mį»™t vĆ nh

TrĘ°į»ng (Field)

XĆ©t tįŗ­p hợp F vį»›i 2 phĆ©p toĆ”n + vĆ  *. F được gį»i lĆ  mį»™t trĘ°į»ng nįŗæu nó thį»a cĆ”c tĆ­nh chįŗ„t sau:

  1. Cį»™ng vĆ  nhĆ¢n có tĆ­nh đóng

  2. Cį»™ng vĆ  nhĆ¢n có tĆ­nh giao hoĆ”n

  3. Tồn tįŗ”i phįŗ§n tį»­ đʔn vị cho cį»™ng vĆ  nhĆ¢n, kĆ­ hiệu lįŗ§n lượt lĆ  0 vĆ  1.

  4. Tồn tįŗ”i phįŗ§n tį»­ nghịch đảo

āˆ’a,Ā āˆ€Ā a ∈ FĀ thį»aĀ aĀ +(āˆ’a)=0-a, \ \forall \ a \ \in \ F \ thį»a \ a \ +(-a)=0
āˆ€Ā a ≠ 0, ∃ aāˆ’1Ā thį»aĀ ma~nĀ aāˆ—aāˆ’1Ā =Ā 1\forall \ a \ \ne \ 0, \ \exists \ a^{-1} \ thį»a \ mĆ£n \ a*a^{-1} \ = \ 1
  1. TĆ­nh phĆ¢n phối cį»§a phĆ©p nhĆ¢n đối vį»›i phĆ©p cį»™ng:

aāˆ—(b+c)=(aāˆ—b)+(aāˆ—c)a * (b+c)=(a * b)+(a * c)

TrĘ°į»ng hữu hįŗ”n lĆ  mį»™t trĘ°į»ng có số phįŗ§n tį»­ lĆ  hữu hįŗ”n. Mį»™t trĘ°į»ng hữu hįŗ”n thĘ°į»ng gįŗ·p lĆ  $Z_p$ vį»›i p lĆ  số nguyĆŖn tố

Diffie-Hellman

Để giįŗ£i quyįŗæt cĆ”c bĆ i trong phįŗ§n nĆ y, mƬnh sįŗ½ giįŗ£i thĆ­ch tóm tįŗÆt về trao đổi khóa Diffie-Hellman.

CĆ”c bįŗ”n có thể Ä‘į»c Diffie-Hellmanarrow-up-right hoįŗ·c xem ATTT-Diffie-Hellmanarrow-up-right Ä‘į»ƒ hiểu rƵ vĆ  lįŗ„y cįŗ£m hứng Ä‘į»ƒ giįŗ£i những challenges trong phįŗ§n nĆ y.

Alice vĆ  Bob thį»a thuįŗ­n sį»­ dỄng chung mį»™t nhóm cyclic hữu hįŗ”n G vĆ  mį»™t phįŗ§n tį»­ sinh g cį»§a G. Phįŗ§n tį»­ sinh g cĆ“ng khai vį»›i tįŗ„t cįŗ£ mį»i ngĘ°į»i, kể cįŗ£ kįŗ» tįŗ„n cĆ“ng. Giįŗ£ sį»­ nhóm G lĆ  nhóm nhĆ¢n.

  1. Đầu tiĆŖn Alice chį»n ngįŗ«u nhiĆŖn mį»™t số tį»± nhiĆŖn a vĆ  gį»­i g^a \ mod \ p cho Bob

  2. Tiįŗæp đó Bob chį»n ngįŗ«u nhiĆŖn mį»™t số tį»± nhiĆŖn b vĆ  gį»­i g^b \ mod \ p cho Alice

  3. TrĆŖn cĘ” sở đó Alice tĆ­nh (g^a)^b \ mod \ p = g^{ab} \ mod \ p

  4. TrĆŖn cĘ” sở đó Alice tĆ­nh (g^a)^b \ mod \ p = g^{ab} \ mod \ p

  5. Khi đó (g^b)^a = (g^a)^b vƬ nhóm G có tĆ­nh kįŗæt hợp, Alice vĆ  Bob tĆ­nh được giĆ” trị g^{ab} vĆ  sį»­ dỄng nó cho khóa bĆ­ mįŗ­t chung.

  6. CĆ”c giĆ” trị a, b, g^{ab} = g^{ba} \ mod \ p được giữ bĆ­ mįŗ­t, cĆ”c giĆ” trị p, \ g, \ g^a \ mod \ p , \ g^b \ mod \ p được truyền cĆ“ng khai.

  7. Alice vĆ  Bob tĆ­nh được bĆ­ mįŗ­t chung, cįŗ£ hai có thể sį»­ dỄng nó lĆ m khóa mĆ£ hóa chung chỉ có hai ngĘ°į»i biįŗæt Ä‘į»ƒ gį»­i dữ liệu trĆŖn kĆŖnh truyền thĆ“ng mở.

Reference

[1] https://vi.wikipedia.org/wiki/L%C3%BD_thuy%E1%BA%BFt_nh%C3%B3marrow-up-right

[2] https://websitehcm.com/ly-thuyet-so-nhom-vanh-truong/arrow-up-right

[3] https://vi.wikipedia.org/wiki/Tr%C6%B0%E1%BB%9Dng_(%C4%91%E1%BA%A1i_s%E1%BB%91)arrow-up-right

[4] https://en.wikipedia.org/wiki/Diffie%E2%80%93Hellman_key_exchangehttps://en.wikipedia.org/wiki/Diffie%E2%80%93Hellman_key_exchangearrow-up-right

[5] https://www.amazon.com/Introduction-Mathematical-Cryptography-Undergraduate-Mathematics/dp/1441926747arrow-up-right

[6] https://vi.wikipedia.org/wiki/Tr%C6%B0%E1%BB%9Dng_h%E1%BB%AFu_h%E1%BA%A1narrow-up-right

Last updated