Professional Documents
Culture Documents
التشفير اللامتناظر
التشفير اللامتناظر
اﻟﺘﺸﻔﲑ اﻟﻼﻣﺘﻨﺎﻇﺮ
Asymmetric Cryptography
ﺗﻘﺪﱘ اﻟﻄﻼب :ﶊﻮد ﻗﺮﻩ ﻓﻼح – ﺎﺮ ٔدﯾﺐ – ﺎ اﺳﲈﻋﯿﻞ – ﻣﺼﻄﻔﻰ ﻠﯿﻞ
اﻟﺼﻒ :اﳊﺎدي ﻋﴩ – اﻟﺜﺎﱐ ﻋﴩ
رﱗ 2015/5/13 :
ٕاﴍاف :اﳌﺪرس ﺣ ﯿﺐ ﴗ
ﻣﻠﺨﺺ
ﻧﺪرس ﰲ ﻣﺸﺮوع اﻟﺒﺤﺚ ﻫﺬا ﺧﻮارزﻣﻴﺎت اﻟﺘﺸﻔﲑ اﻟﻼﻣﺘﻨﺎﻇﺮة و آﻟﻴﺔ ﺗﺒﺎدل اﳌﻔﺎﺗﻴﺢ ﰲ ﺷﺒﻜﺔ .و ﺳﻨﻘﺪم ﺧﻮارزﻣﻴﺔ ﻻﻣﺘﻨﺎﻇﺮة
ﻣﻦ ﺗﺼﻤﻴﻢ ﻃﻼب اﳌﺸﺮوع ،ﻣﻊ اﻟﺘﻄﺒﻴﻖ اﻟﻌﻤﻠﻲ ﺑﻠﻐﺎت اﻟﱪﳎﺔ.
2 اﻟ ﺸﻔﲑ اﻟﻼﻣ ﻨﺎﻇﺮ
اﻟﻔﻬﺮس
5 اﻟﻤﻘﺪﻣﺔ :
6 ﻛﯿﻔﺘﺴﺘﺨﺪﻣﮭﺬااﻟﺒﺤﺚ
7 1.1ﻣﺒﺎدﺋﻔﯿﻨﻈﺮﯾﺔاﻷﻋﺪاد
7 1.1.1ﻗﺎﺑﻠﯿﺔاﻟﻘﺴﻤﺔ
7 1.1.2اﻷﻋﺪاداﻷوﻟﯿﺔ
8 1.1.3اﻟﻘﺎﺳﻤﺎﻟﻤﺸﺘﺮﻛﺎﻷﻛﺒﺮواﻟﻤﻀﺎﻋﻔﺎﻟﻤﺸﺘﺮﻛﺎﻷﺻﻐﺮ
8 1.1.4اﻟﺘﻄﺎﺑﻘﺎﻟﺨﻄﻲ
9 1.1.5ﺧﻮارزﻣﯿﺔاﻟﻘﺴﻤﺔ
9 1.1.6ﻣﺒﺮھﻨﺔأوﻟﺮ
10 1.1.7ﻣﺒﺮھﻨﺔاﻟﺒﻮاﻗﯿﺎﻟﺼﯿﻨﯿﺔ
10 1.2رﯾﺎﺿﯿﺎﺗﺎﻟﻤﻨﺤﻨﯿﺎﺗﺎﻟﻨﺎﻗﺼﯿﺔ
10 1.2.1ﻣﻌﺎدﻟﺔﻣﻨﺤﻨﯿﻨﺎﻗﺼﻲ
1.2.2ﺗﻌﺮﯾﻔﺎﻟﻤﻨﺤﻨﯿﺎﻟﻨﺎﻗﺼﻲ 11
12 1.2.3اﻟﻌﻤﻠﯿﺎﺗﺎﻟﺰﻣﺮﯾﺔﻋﻠ ﺎﻟﻤﻨﺤﻨﯿﺎﺗﺎﻟﻨﺎﻗﺼﯿﺔ
14 1.3ﻣﺴﺎﺋﻸﺳﺎﺳﯿﺔﻓﯿﻨﻈﺮﯾﺔاﻷﻋﺪاد
1.3.1ﻣﺴﺄﻟﺔاﻟﺘﺤﻠﯿﻞ 14
14 1.3.2ﻣﺴﺄﻟﺔاﻟﺠﺬوراﻟﺘﺮﺑﯿﻌﯿﺔﺑﺎﻟﻤﻘﺎس n
14 1.3.3ﻣﺴﺄﻟﺔاﻟﻠﻮﻏﺎرﯾﺘﻤﺎﻟﻤﺘﻘﻄﻊ
14 1.3.4ﻣﺴﺄﻟﺔاﻟﻠﻮﻏﺎرﯾﺘﻤﺎﻟﻤﺘﻘﻄﻌﺎﻟﻤﻮﺳﻌﺔ
1.3.5ﻣﺴﺄﻟﺔاﻟﻠﻮﻏﺎرﯾﺘﻤﺎﻟﻤﺘﻘﻄﻌﻔﯿﺎﻟﻤﻨﺤﻨﯿﺎﺗﺎﻟﻨﺎﻗﺼﯿﺔ14 :
14 1.3.6ﻣﺴﺄﻟﺔدﯾﻔﻲ -ھﯿﻠﻤﺎن
15 1.3.7ﻣﺴﺄﻟﺔدﯾﻔﻲ -ھﯿﻠﻤﺎﻧﺎﻟﻤﻮﺳﻌﺔ
15 1.3.8ﻣﺴﺄﻟﺔاﻟﻤﺠﻤﻮﻋﺔاﻟﺠﺰﺋﯿﺔ
1.4ﻣﺒﺎدﺋﺎﻟﺠﺒﺮاﻟﻤﺠﺮد 15
15 1.4.1اﻟﻌﻼﻗﺎﺗﺎﻟﺜﻨﺎﺋﯿﺔ
16 1.4.2ﻗﻮاﻧﯿﻨﺎﻟﺘﺸﻜﯿﻞ) اﻟﻌﻤﻠﯿﺎت(
1.4.3اﻟﺒﻨ ﺎﻟﺠﺒﺮﯾﺔ 16
اﻟ ﺸﻔﲑ اﻟﻼﻣ ﻨﺎﻇﺮ 3
18 1.4.4اﻟﻤﺠﻤﻮﻋﺔاﻟﻤﻮﻟﺪةﻟﺰﻣﺮة
18 1.4.5اﻟﺰﻣﺮةاﻟﺪاﺋﺮﯾﺔاﻟﻤﻮﻟﺪةﺑﻤﺠﻤﻮﻋﺔ
1.5ﺧﻮارزﻣﯿﺎﺗﺄﺳﺎﺳﯿﺔ 18
18 1.5.1اﻟﺨﻮارزﻣﯿﺔاﻹﻗﻠﯿﺪﯾﺔ
19 1.5.2اﻟﺨﻮارزﻣﯿﺔاﻹﻗﻠﯿﺪﯾﺔاﻟﻤﻤﺪدة
21 1.5.3ﺣﺴﺎﺑﺎﻷس
22 1.5.4ﺣﺴﺎﺑﻤﺠﻤﻮﻋﻨﻘﻄﺔﻓﯿﻤﻨﺤﻨﯿﻨﺎﻗﺼﻲ
22 1.5.5اﺧﺘﺒﺎراﺗﺎﻷوﻟﯿﺔ
23 1.5.5.1اﺧﺘﺒﺎرﻓﯿﺮﻣﺎ
24 1.5.5.2اﺧﺘﺒﺎرﻣﯿﻠﺮ -راﺑﯿﻦ
25 2.1ﺧﻮارزﻣﯿﺔRSA
25 2.1.1ﺗﻮﻟﯿﺪاﻟﻤﻔﺎﺗﯿﺢ
26 2.1.2اﻟﺘﺸﻔﯿﺮوﻓﻜﺎﻟﺘﺸﻔﯿﺮ
28 2.1.3ﺑﺮھﺎﻧﺼﺤﺔﺧﻮارزﻣﯿﺔRSA
29 2.1.4ﺗﻘﻨﯿﺎﺗﺘﺴﺮﯾﻌﺘﻨﻔﯿﺬﺧﻮارزﻣﯿﺔRSA
29 2.1.4.1اﻟﺘﺸﻔﯿﺮاﻟﺴﺮﯾﻌﺒﺎﺳﺘﺨﺪاﻣﺎﻟﻤﻔﺎﺗﯿﺤﺎﻟﻌﺎﻣﺔاﻟﺼﻐﯿﺮة
30 2.1.4.2ﻓﻜﺎﻟﺘﺸﻔﯿﺮاﻟﺴﺮﯾﻌﺒﻤﺒﺮھﻨﺔاﻟﺒﻮاﻗﯿﺎﻟﺼﯿﻨﯿﺔ
32 2.1.5أﻣﻦRSA
32 2.1.5.1ﻋﻼﻗﺔاﻷﻣﻨﺒﺎﻟﺘﺤﻠﯿﻞ
32 2.1.5.2اﻟﻤﻔﺎﺗﯿﺤﺎﻟﻌﺎﻣﺔواﻟﺮﺳﺎﺋﻼﻟﺼﻐﯿﺮة
33 2.1.5.3اﻟﻤﻔﺎﺗﯿﺤﺎﻟﺨﺎﺻﺔاﻟﺼﻐﯿﺮة
33 2.1.5.4اﻟﻤﻘﺎﺳﺎﺗﺎﻟﻤﺸﺘﺮﻛﺔ
34 2.1.5.5اﻟﺮﺳﺎﺋﻼﻟﻼﻣﺨﻔﯿﺔ
2.2ﺗﺒﺎدﻟﻤﻔﺘﺎﺣﺪﯾﻔﻲ-ھﯿﻠﻤﺎن 34
2.2.1آﻟﯿﺔﻋﻤﻠﺘﺒﺎدﻟﻤﻔﺘﺎﺣﺪﯾﻔﻲ-ھﯿﻠﻤﺎن 34
2.2.2ﺑﺮھﺎﻧﺼﺤﺔﺗﺒﺎدﻟﻤﻔﺘﺎﺣﺪﯾﻔﯿﮭﯿﻠﻤﺎن 35
36 2.3ﺧﻮارزﻣﯿﺎﺗﺎﻟﻤﻨﺤﻨﯿﺎﺗﺎﻟﻨﺎﻗﺼﯿﺔ
36 2.3.1آﻟﯿﺔﺗﺒﺎدﻟﻤﻔﺘﺎﺣﺪﯾﻔﯿـﮭﯿﻠﻤﺎﻧﻔﯿﺎﻟﻤﻨﺤﻨﯿﺎﺗﺎﻟﻨﺎﻗﺼﯿﺔ
37 2.3.2ﺑﺮھﺎﻧﺼﺤﺔﺗﺒﺎدﻟﻤﻔﺘﺎﺣﺪﯾﻔﻲ-ھﯿﻠﻤﺎﻧﻔﯿﺎﻟﻤﻨﺤﻨﯿﺎﻧﺎﻟﻨﺎﻗﺼﯿﺔ
2.3.3ﻣﻼﺣﻈﺔﻋﻠ ﺎﻟﺘﻌﻘﯿﺪ 38
40 3اﻟﻔﺼﻼﻟﺜﺎﻟﺜﻨﺘﺎﺟﺎﻟﻤﺸﺮوع
4 اﻟ ﺸﻔﲑ اﻟﻼﻣ ﻨﺎﻇﺮ
40 3.1اﻟﺨﻮارزﻣﯿﺔ
40 3.1.1اﻟﺰﻣﺮةاﻟﺪاﺋﺮﯾﺔ
3.1.2ﺗﺒﺎدﻟﻤﻔﺘﺎﺣﺪﯾﻔﻲ-ھﯿﻠﻤﺎﻧﻔﯿﺎﻟﺪواﺋﺮاﻟﻘﻄﺒﯿﺔ 41
41 3.1.3ﺑﺮھﺎﻧﺼﺤﺔﺗﺒﺎدﻟﻤﻔﺘﺎﺣﺪﯾﻔﯿﮭﯿﻠﻤﺎﻧﻔﯿﺎﻟﺪواﺋﺮاﻟﻘﻄﺒﯿﺔ
42 3.1.4اﻟﺤﺴﺎﺑﺎﻟﺴﺮﯾﻊ
42 3.2اﻟﺒﺮﻧﺎﻣﺞ
42 3.2.1ﺷﯿﻔﺮةRSA
45 3.2.2ﺷﯿﻔﺮةاﻟﺪواﺋﺮاﻟﻘﻄﺒﯿﺔ
47 3.2.3اﻟﺸﯿﻔﺮةاﻟﻤﺘﻨﺎظﺮةTrivium
48 3.2.3.1اﻟﻜﻮد
50 3.2.3.2ﺗﻨﻔﯿﺬاﻟﺒﺮﻧﺎﻣﺞ
52 4اﻟﺨﺎﺗﻤﺔ
اﳌﻘﺪﻣﺔ :
اﻧﻄﻠﻖ ﲅ اﻟ ﺸﻔﲑ ﻣ ﺬ ٓﻻف اﻟﺴﻨﲔ ،ﻣﻊ اﳉﲊال ﺧﻮﻟﯿﻮس ﻗ ﴫ .ﻗﺎد اﳉﲊال ﻗ ﴫ ﻓ ﻮ ﺎت ﻋﻈﳰﺔ ﰲ ٔورو ،و ﰷن
ﺮاﺳﻞ ﻗﺎدﺗﻪ ﳌﺮاﺳﻼت اﻟﺘﻘﻠﯿﺪﯾﺔ .ﻟﻜﻦ وا ﺘﻪ ﻣﺸﳫﺔ .ﰲ ﺑﻌﺾ اﳊﺎﻻت ،ﻗ ﺾ ٔ ﺪاءﻩ ﲆ رﺳ ،ﻓﻜﺸﻔﻮا ﺑﻌﺾ ﺧﻄﻄﻪ،
و ﻣ ﻌﻮا اﻟﺒﻌﺾ ا ٓﺧﺮ ﻣﻦ اﻟﻮﺻﻮل .ﻫﺬا ﻣﺎ ﳇﻔﻪ اﻟﻌﺪﯾﺪ ﻣﻦ اﻟﻀ ﺎ و اﳋﺴﺎرات .ﻓﻘﺎم اﳉﲊال ﻗ ﴫ ﺑﺘﲀر ﻞ ﻋﺒﻘﺮي
ﳌﺸﳫﺘﻪ ،ﺑﺪل ﰻ ﺣﺮف " "Aﰲ رﺳﺎﻟﺘﻪ ﲝﺮف " ،"Dو ﰻ ﺣﺮف " "Bﲝﺮف " "Eو ﻫﻜﺬا ﺑﺪل ﰻ ﺣﺮف ٔﲜﺪﯾﺔ
ﳊﺮف ا ي ﯾﻠﯿﻪ ﺑﺜﻼث ﻣﺮاﺗﺐ .و ﯾﻘﻮم اﳌﺮﺳﻞ إﻟﯿﻪ ﺑ ﺪﯾﻞ ﰻ ﺣﺮف ﳊﺮف ا ي ﺴﺒﻘﺔ ﺑﺜﻼث ﻣﺮاﺗﺐ ﻟﯿﻘﺮ ٔ اﻟﺮﺳﺎ
ا ٔﺻﻠﯿﺔ .ﻓﻔﻲ ﺎل ﻗ ﺾ ٔ ﺪاﺋﻪ ﲆ رﺳ ،ﻓﻠﻦ ﯾﻔﻬﻤﻮا ٔي ﳾء ﻣﻜ ﻮب ﰲ ﻣﺮاﺳﻼﺗﻪ .ﰷن ﻞ ﻗ ﴫ ﻫﻮ اﻧﻄﻼﻗﺔ ﲅ
اﻟ ﺸﻔﲑ .و ا ٓن ﺑﻌﺪ ﻣ ﺎت اﻟﺴﻨﲔ ،ﲆ اﻟﺮﰬ ﻣﻦ اﻟﺘﻄﻮرات اﻟﻬﺎﺋ ﰲ ﲅ اﳊﺎﺳﻮب و ﺧﻮارزﻣ ﺎت اﻟ ﺸﻔﲑ ،ﳓﻦ ﻻ ﺰال
ﻧﻮا ﻪ ﻧﻔﺲ ﻣﺸﳫﺔ اﳉﲊال ﻗ ﴫ .ﳚﺐ ﻠﯿﻨﺎ ٔن ﺮﺳﻞ رﺳﺎﺋﻞ ﺎﺻﺔ ﲷﻦ وﺳﻂ ﻟ ﺲ ٓﻣ ًﺎ ﻟﱰﺳﻞ ﻓ ﻪ .و ﰲ اﻟﻮاﻗﻊ ،ﻠﻠﻨﺎ
ﻣﺸﳫﺘﻨﺎ ﺑﻨﻔﺲ اﻟﻄﺮﯾﻘﺔ اﻟﱵ ﻠﻬﺎ ﻟﻬﺎ اﳉﲊال ﻗ ﴫ .ﻓﻈﻬﺮ ﲅ اﻟ ﺸﻔﲑ ،و ﻫﻮ اﻟﻌﲅ ا ي ﳞﱲ ﺑﺪراﺳﺔ اﳋﻮارزﻣ ﺎت و اﻟﻄﺮق
اﻟﺮ ﺿﯿﺔ ﻟ ﺸﻔﲑ و ﻓﻚ ﺸﻔﲑ اﻟﺮﺳﺎﺋﻞ ﲠﺪف إﺧﻔﺎء ﻣﻌﻨﺎﻫﺎ ﻋﻦ ا ٔﻃﺮاف اﻟﻐﲑ اﳌﴫح ﲠﺎ.
ﻟﻌﲅ اﻟ ﺸﻔﲑ ٔ ﺮ ﻫﺎﺋﻞ ﰲ ﺣ ﺎﺗﻨﺎ .ﻟﻨﺬ ﺮ اﳊﺮب اﻟﻌﺎﳌﯿﺔ اﻟﺜﺎﻧﯿﺔ .اﻋﳣﺪ ا ٔﳌﺎن ٓ "إﻧﯿﻐﲈ" ﻟ ﺸﻔﲑ رﺳﺎﺋﻠﻬﻢ و إﺧﻔﺎء ﻣﻌﻨﺎﻫﺎ ﻋﻦ
اﻟﻌﺪو .ﺣﱴ ﺎء اﻟﻌﺒﻘﺮي ٔﻻن ﺗﯿﻮرﯾﻨﻎ ،ا ي ﻗﺎم ﺑ ﺎء ا ٓ اﻟﺸﻬﲑة " ﻮﻟﻮﺳ ﺲ" اﻟﱵ ﺑﺪورﻫﺎ ﴪت ﺸﻔﲑ ٓ إﻧﯿﻐﲈ .و
ﲾ ٔةٔ ،ﺻﺒﺤﺖ ﲨﯿﻊ ﻣﺮاﺳﻼت ا ٔﳌﺎن ﻣﻔﻀﻮ ﺔ ٔﻣﺎم اﳊﻠﻔﺎء .ﻫﺬا ﻣﺎ ﺟﻌﻠﻬﻢ ﳜﴪون ﻣﻌﺮﻛﺔ ﺷﲈل ا ٔﻃﻠﴘ و ﻓ ﺑﻌﺪ،
اﳊﺮب اﻟﻌﺎﳌﯿﺔ اﻟﺜﺎﻧﯿﺔ.
ﺗﻄﻮرت ﺧﻮارزﻣ ﺎت اﻟ ﺸﻔﲑ ﺸﲁ ﺒﲑ ،و ﻛﺬ ﺧﻮارزﻣ ﺎت ﴪ اﻟ ﺸﻔﲑ .ﻓﺎﺿﻄﺮر إﱃ ﺑﻨﺎء ﺧﻮارزﻣ ﺎت ﺪﯾﺪة
ﻣﻀﺎدة ﳋﻮارزﻣ ﺎت اﻟﻜﴪ .و ﺑﻌﺪ ﺮاﰼ اﳋﱪات ﰲ اﻟ ﺸﻔﲑ و ﴪ اﻟ ﺸﻔﺮ وﺻﻠﻨﺎ ا ٓن إﱃ ﺪ ﺒﲑ ﻣﻦ ا ٔﻣﺎن ﰲ
اﳌﺮاﺳﻼت ﱪ ﺷﺒﻜﺔ ﻧﱰﻧﺖ .ﻟﻜﻦ ،ﻻ ﺰال اﻟﻔﻜﺮة اﻟﻌﺎﻣﺔ ﱔ ﻧﻔﺴﻬﺎ اﻟﱵ اﺳﺘﻌﻤﻠﻬﺎ ﻗ ﴫ و ا ٔﳌﺎن .ﯾﻘﻮم اﻟﻄﺮف ا ٔول
ﺑ ﺸﻔﲑ اﻟﺮﺳﺎ xﺑﻮاﺳﻄﺔ اﳌﻔ ﺎح ، kو ﺮﺳﻞ ﻫﺬﻩ اﻟﺮﺳﺎ ﰲ اﻟﻮﺳﻂ اﻟﻐﲑ ٓﻣﻦ ﻟﺘﺼﻞ ﻫﺬﻩ اﻟﺮﺳﺎ إﱃ اﻟﻄﺮف ا ٓﺧﺮ
ﺣ ﺚ ﯾﻘﻮم اﻟﻄﺮف ا ٓﺧﺮ ،ﲟﻌﺮﻓﺔ اﳌﻔ ﺎح kﺑﻔﻚ ﺸﻔﲑ ﻫﺬﻩ اﻟﺮﺳﺎ ﻋﻦ ﻃﺮﯾﻖ ﺗﻨﻔ ﺬ ﺧﻮارزﻣ ﺔ ﻋﻜﺴﯿﺔ.
ﺑﻨ ﺖ ﲨﯿﻊ ﺧﻮارزﻣ ﺎت اﻟ ﺸﻔﲑ ﲆ اﻓﱰاض ٔن اﻟﻄﺮﻓﲔ ا ﻦ ﯾ ﺎدﻻن اﻟﺮﺳﺎﺋﻞ ﻣ ﻔﻘﺎن ﲆ اﳌﻔ ﺎح . kو ﻓﻬﻮ ﯾﺪﻋﻰ
اﻟ ﺸﻔﲑ اﳌﺘﻨﺎﻇﺮٔ ،ن ﻣﻔ ﺎح اﻟ ﺸﻔﲑ ﻫﻮ ﻣﻔ ﺎح ﻓﻚ اﻟ ﺸﻔﲑ ذاﺗﻪ .ﻟﻜﻦ ،ﯿﻒ ﻣﻦ اﳌﻤﻜﻦ ٔن ﯾﺘﻔﻖ ﻃﺮﻓﺎن ﲆ ﻣﻔ ﺎح
اﻟ ﺸﻔﲑ؟ ﻓﻘﺪ ﺮاﺳﻞ ﰲ ﺑﻌﺾ اﳊﺎﻻت ٔﺷ ﺎﺻ ًﺎ ﱂ ﳣﻜﻦ و ﻟﻦ ﳣﻜﻦ ﻣﻦ اﻟﺘﻮاﺻﻞ ﻣﻌﻬﻢ إﻻ ﱪ ﺷﺒﻜﺔ ﲑ ٓﻣ ﺔ .ﻓﻜ ﻒ
ﺳ ﻔﻘﺎن ﲆ ﻣﻔ ﺎح ﻣﻦ دون ٔن ﺗﻌﺮﻓﻪ ٔي ٔﻃﺮاف ٔﺧﺮى؟
6 اﻟ ﺸﻔﲑ اﻟﻼﻣ ﻨﺎﻇﺮ
ﻫﻨﺎ ﯾ ٔﰐ اﻟ ﺸﻔﲑ اﻟﻼﻣ ﻨﺎﻇﺮ .اﺑﺘﻜﺮ ﻫﺬا اﻟﻨﻮع ﻣﻦ اﻟ ﺸﻔﲑ ٔﺳﺎﺳ ًﺎ ﳌﺸﳫﺔ ﺗﺒﺎدل اﳌﻔﺎﺗﯿﺢ ،ﻟﻜﻦ ﻓ ﺑﻌﺪ ٔﺻﺒﺢ ﺷﺎﺋﻌ ًﺎ ﻣﻦ ٔ ﻞ
اﺳﺘ ﺪاﻣﺎت ٔﺧﺮى ﻣ ﻞ اﻟﺒﺼﻤﺔ اﻻٕﻟﻜﱰوﻧﯿﺔ .اﻟﻔﻜﺮة ا ٔﺳﺎﺳﯿﺔ ﻠ ﺸﻔﲑ اﻟﻼﻣ ﻨﺎﻇﺮ ﱔ ﰲ اﲰﻪ ،ﻣﻔ ﺎح اﻟ ﺸﻔﲑ ﳐﺘﻠﻒ ﻋﻦ
ﻣﻔ ﺎح ﻓﻚ اﻟ ﺸﻔﲑ ،و ﻫﺬا ﻣﺎ ﺳﻨﺪرﺳﻪ ﰲ ﲝﺜﻨﺎ ﻫﺬا.
ٔو ًﻻ ،ﺳﻨﻘﻮم ﻟﺘﻌﺮﯾﻒ ﻋﻦ اﳌﻔﺎﻫﲓ ا ٔﺳﺎﺳﯿﺔ ﻠ ﺸﻔﲑ اﻟﻼﻣ ﻨﺎﻇﺮ .و دراﺳﺔ ٓﻟﯿﺎت و ﻓﻚ ﺸﻔﲑ ﺑﻌﺾ اﳋﻮارزﻣ ﺎت
اﻟﻼﻣ ﻨﺎﻇﺮة اﳌﻬﻤﺔ ﻟﺘﻔﺼﯿﻞ ،ﻣﻊ ﴍح ٔﱒ اﻟﻬﺠﻮﻣﺎت اﻟﱵ ﺪﺛﺖ ﻠﳱﺎ .ﻛﺬ ﺳ ﳮﺮ ﺮ ﲆ ﺑﻌﺾ اﳋﻮارزﻣ ﺎت ا ٔﻗﻞ
ٔﳘﯿﺔ .ﰒ ﺳﻨﻘﻮم ﴩح ٓﻟﯿﺔ ﺧﻮارزﻣ ﺘﻨﺎ اﻟﱵ ٔو ﺪ ﻫﺎ ﰲ ﲝﺜﻨﺎ ﻫﺬا ،ﻣﻊ ﴍح اﻟﻨﺘﺎج اﻟﻌﻤﲇ ﳌﴩوﻋﻨﺎ.
. n ﻻ ﯾﺘﻌﺪى ﻣﱪﻫﻨﺔ ٔ : 1.1.2.2ي ﺪد ﲱﯿﺢ ﻣﺮﺐ n 1ﯾﻘ ﻞ ﲆ ا ٔﻗﻞ ﻗﺎﺳﲈً ٔوﻟﯿ ًﺎ
p
ﻣﱪﻫﻨﺔ : 1.1.2.3ﯾﻮ ﺪ ﺪد ﻻﳖﺎﰄ ﻣﻦ ا ٔ ﺪاد ا ٔوﻟﯿﺔ.
ﻣﱪﻫﻨﺔ ) 1.1.2.4اﳌﱪﻫﻨﺔ ا ٔﺳﺎﺳﯿﺔ ﰲ اﳊﺴﺎب( :ﻣﻦ ٔ ﻞ ﰻ ا ٔ ﺪاد اﻟﺼﺤﯿ ﺔ اﳌﻮﺟ ﺔ ، nﺗﻮ ﺪ ا ٔ ﺪاد ا ٔوﻟﯿﺔ
اﻟﻮﺣ ﺪة p1, p2 ,..., prﲝﯿﺚ . n p p ... p : :
1
1
2
2
r
r
i
ﲆ اﻟﺮﰬ ﻣﻦ ﺪم وﺟﻮد ﺻﯿﻐﺔ ﻻٕﳚﺎد ا ٔ ﺪاد ا ٔوﻟﯿﺔ ،إﻻ ٔن ﻛﺜﺎﻓﳤﺎ) ٔي ﻣﻌﺪل ﻇﻬﻮرﻫﺎ ﲷﻦ ا ٔ ﺪاد اﻟﺼﺤﯿ ﺔ( ﻣﻌﺮوﻓﺔ
ﻣ ﺬ ﺣﻮاﱄ اﳌﺌﺔ ﺎم.
ﻣﱪﻫﻨﺔ ) 1.1.2.5ﻣﱪﻫﻨﺔ ا ٔ ﺪاد ا ٔوﻟﯿﺔ( :ﻟﯿﻜﻦ ) (nﯾﻌﱪ ﻋﻦ ﺪد ا ٔ ﺪاد ا ٔﺻﻐﺮ ﻣﻦ . nﻓ ﻜﻮن :
(n) ln n
lim 1
n
n
r
(n) ( pi pi 1 ) i i
i 1
: ﻟﻨﻜ ﺐ ﺻﯿﻐﺔ ﺑﻊ ٔوﻟﺮ ﻠﻤﺜﺎل اﻟﺴﺎﺑﻖ: ﻣ ﺎل
: ﻓ ﻜﻮن28 2 7 ﲟﺎ ٔن
2 1
r
(28) i 1 ( pi pi 1 ) (22 21 )(71 70 ) 2 6 12
i i
: اﻟﻌﻼﻗﺔ ا ٓﺗﯿﺔ ﳏﻘﻘﺔ، gcd(a, n) 1 ﲝﯿﺚa, n ﻣﻦ ٔ ﻞ ﰻ ا ٔ ﺪاد اﻟﺼﺤﯿ ﺔ اﳌﻮﺟ ﺔ: ( )ﻣﱪﻫﻨﺔ ٔوﻟﺮ1.1.6.2 ﻣﱪﻫﻨﺔ
1
Titu Andrescu, Dorin Andrica. Number Theory structures, examples and problems. Springer, London, United Kingdom, 2010.
10 اﻟ ﺸﻔﲑ اﻟﻼﻣ ﻨﺎﻇﺮ
ﲈ ﻜﻦ ا ٔ ﺪاد اﻟﺼﺤﯿ ﺔ a , a ,..., aا ﺘﻠﻔﺔ ﻋﻦ 0ﺗﻘ ﻞ ﲨ اﻟﺘﻄﺎﺑﻘﺎت اﳋﻄﯿﺔ: 1 2 r
2
Titu Andrescu, Dorin Andrica. Number Theory structures, examples and problems.Springer, London, United Kingdom, 2010. Page 47.
3
Christof Paar, Jan Penzel. Understanding Cryptography. Springer, Heidelberg, Berlin, Germany, 2010.
اﻟ ﺸﻔﲑ اﻟﻼﻣ ﻨﺎﻇﺮ 11
ﺳ ﺪ ٔ ﻋﻄﺎء ﻣﻘﺪﻣﺔ ﻗﺼﲑة ﺣﻮل اﳌﺒﺪ ٔ اﻟﺮ ﴈ ﻠﻤﻨﺤﲏ اﻟﻨﺎﻗﴢ ﲟﻌﺰل ﻋﻦ ﺗﻄﺒﯿﻘﺎﺗﻪ اﻟ ﺸﻔﲑﯾﺔ .ﺳ ﺪ ٔ ﺮﰟ اﳋﻂ اﻟﺒﯿﺎﱐ
2
ﻟﺒﻌﺾ ﻛﺜﲑات اﳊﺪود ﲟﺠﻬﻮﻟﲔ ﲆ اﳊﻘﻞ .
2 2 2
ﻣ ﺎل x y r :
2 2 2
ﻟﲊﰟ اﳌﻌﺎد x y rﺑﺘﺎﺑﻌﯿﺔ ، x, yﺳﺘ ﺞ ﯾﻨﺎ دا ﺮة ﻛﲈ ﰲ اﻟﺸﲁ:
2
ﺛﻮاﺑﺖ ،ﺳﯿ ﺞ ﯾﻨﺎ اﻟﻘﻄﻊ اﻟﻨﺎﻗﺺ ﻛﲈ ﰲ a, b, c ، axﺣ ﺚ اﻟﺸﲁ by 2 c ﻟﻨﻌﻤﻢ ﻣﻌﺎد ا ا ﺮة ﲝﯿﺚ ﺗﺼﺒﺢ ﻣﻦ
اﻟﺸﲁ :
1.2.2ﺗﻌﺮﯾﻒ اﳌﻨﺤﲏ اﻟﻨﺎﻗﴢ
ﻛﲈ و ﺪ ﰲ اﳌﺜﺎﻟﲔ ٔ ﻼﻩ ،ﳝﻜ ﻨﺎ اﳊﺼﻮل ﲆ ٔﻧﻮاع ﳐﺘﻠﻔﺔ ﻣﻦ
ا ٔﺷﲀل ﺑﺘﻐﯿﲑ ﺷﲁ اﳌﻌﺎد )ﺣ ﺚ ﻧﻌﲏ ﳌﻨﺤﲏ ﶍﻮ ﺔ اﻟﻨﻘﺎط
اﻟﱵ ﲢﻘﻖ ا ﺪاﺛﯿﺎﲥﺎ ﻣﻌﺎدﻟﺘﻪ( ﺣ ﺚ ﳝﻜ ﻨﺎ ﺑﻮﺿﻮح ﻣﻼﺣﻈﺔ ان
اﻟﻨﻘﻄﺔ ) (r , 0ﺗ ﳣﻲ ا ﺮة ٔﻣﺎ اﻟﻨﻘﻄﺔ ) (r 2, r 2ﻻ ﺗ ﳣﻲ ﻟﻬﺎ.
إن اﳌﻨﺤﲏ اﻟﻨﺎﻗﴢ ﻫﻮ ﺷﲁ ﺎص ﲢﺪدﻩ ﻣﻌﺎد ﺳﻨﺬ ﺮﻫﺎ ﰲ ﻫﺬا
اﻟﻔﺼﻞ ،وﻟﻜﻦ ﺴ ﺐ ﺎﺟ ﻨﺎ ﰲ ﳎﺎل اﻟ ﺸﻔﲑ ﻻ ﻧﻌﺮﻓﻪ ﲆ ﺣﻘﻞ
ا ٔ ﺪاد اﳊﻘ ﻘ ﺔ ،وٕاﳕﺎ ﲆ ﺣﻘﻞ ﺎﻟﻮا ﻟ ٔ ﺪاد ا ٔوﻟﯿﺔ )، GF ( p
وﻫﻮ اﳊﻘﻞ ا ٔﻛﱶ ﺷﯿﻮ ًﺎ ﻟﻼﺳﺘ ﺪام ﰲ ﳎﺎل اﻟ ﺸﻔﲑ ٔﻧﻪ ﻣﻦ
اﳌﻤﻜﻦ اﺟﺮاء اﻟﻌﻤﻠﯿﺎت اﳊﺴﺎﺑﯿﺔ ﻓ ﻪ ﳌﻘﺎس . p
ﻫﻮ ﶍﻮ ﺔ اﻟﻨﻘﺎط x, y ﺗﻌﺮﯾﻒ: 1.2.2.1اﳌﻨﺤﲏ اﻟﻨﺎﻗﴢ ﲆ
p
ﻻ ﳚﻌ ﺑﻌ ًﺎ وٕاﳕﺎ ﻠﻤﺤﻮر ' xx ﳝﻜ ﻨﻨﺎ ﻣﻼﺣﻈﺔ اﻟﻜ ﲑ ﻣﻦ ا ٔﻣﻮر اﳌﺘﻌﻠﻘﺔ ﺮﰟ اﳌﻨﺤﲏ اﻟﻨﺎﻗﴢٔ .و ًﻻ إن ﺗﻨﺎﻇﺮﻩ ﻟ ﺴﺒﺔ
اﺟ ع ﺑﻌﲔ ﻫﲈ :
3 3
y x 3x 3و y x 3x 3
2 1
ﻧﯿ ًﺎ :ﯾﻘﻄﻊ اﳌﻨﺤﲏ اﶈﻮر ' xxﰲ ﻧﻘﻄﺔ وا ﺪة ﻓﻘﻂ وﻫﺬا ﯾﺪل ٔن ﻠﻤﻌﺎد
ﻞ ﺣﻘ ﻘﻲ وا ﺪ و ﻼن ﻋﻘﺪ ن ،وﻫﲈ ﻟﻄﺒﻊ ﻟﻦ ﯾﻈﻬﺮا ﰲ ﻣﺴﺘﻮي
ا ٔ ﺪاد اﳊﻘ ﻘ ﺔ ،وﻫﺬا ﻣﺎ ﯾﻘ ﻀﯿﻪ اﻟﴩط . 4a 27b T 0 mod p
2 2
P P Pﻣﻦ اﳌﻨﺤﲏ اﻟﻨﺎﻗﴢ ﻧﻔﺴﻪ ،وﻫﺬا ﻣﻦ ﴍوط اﻟﺰﻣﺮة. 3 1 2
وﻛﲈ ﻫﻮ ﻣﻌﻠﻮم ،ﻻ ﳝﻜ ﻨﺎ اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻌﻤﻠﯿﺎت اﻟﻬﻨﺪﺳﯿﺔ ﰲ اﻟﻨﻈﺎم اﻟ ﺸﻔﲑي ،إﳕﺎ ﳚﺐ ﲢﻮﯾﻠﻬﺎ إﱃ اﻟﺸﲁ اﳉﱪي ،ﰒ ﺗﻌﺮﯾﻔﻬﺎ
ﲆ ﺣﻘﻞ ﺎﻟﻮا ﻟ ٔ ﺪاد ا ٔوﻟﯿﺔ ،وﻫﻮ ﯾﻌﺪ ر ﺿﯿ ًﺎ ٔﻣﺮ ﺳﻬﻞ ﺳﻨﺬ ﺮ اﻟﺼﯿﻐﺔ ﻣ ﺎﴍة وﱔ ﰷﻟﺘﺎﱄ :
اﶺﻊ واﳌﻀﺎﻋﻔﺔ ﰲ زﻣﺮة اﳌﻨﺤﻨﯿﺎت اﻟﺰاﺋﺪﯾﺔ :
ﺣﺚ: ) R ( xR , yR ﻟﺘﻜﻦ ﯾﻨﺎ اﻟﻨﻘﻄﺘﺎن ) . P ( x , y ), Q ( x , yﺎﺻﻞ ﲨﻊ اﻟﻨﻘﻄﺘﲔ ﻫﻮ اﻟﻨﻘﻄﺔ
P P Q Q
3 x 2 a 3 52 2
s 73 21 13mod17
2y 2 1
)2 P (6,3
وﳝﻜﻦ ﺑ ﺴﺎﻃﺔ اﻟﺘ ٔﻛﺪ ﻣﻦ ﲱﺔ اﳊﺴﺎ ت ﺑﺘﻌﻮﯾﻀﻬﺎ ﰲ اﳌﻌﺎد ا ٔﺳﺎﺳﯿﺔ.
ﻣﱪﻫﻨﺔ )ﻣﱪﻫﻨﺔ ﻫﺎس( :ﰲ ٔي ﻣ ﺤﲎ ﻗﴢ Cﲆ ا ﻤﻮ ﺔ ،ﺗﺘﺤﻘﻖ اﻟﻌﻼﻗﺔ :
p
. a, b , ( a b ) (b a ) a bﻣ ﺎل :ﻼﻗﺔ اﻟﱰاﰕ ﱔ ﻼﻗﺔ ﲣﺎﻟﻔ ﺔٔ ،ن
و ا ٓن ﻧﻮرد ﺑﻌﺾ ٔﻧﻮاع اﻟﻌﻼﻗﺎت اﻟﺜﻨﺎﺋﯿﺔ.
ﺗﻌﺮﯾﻒ : 1.4.1.6ﻼﻗﺔ اﻟﺘﲀﻓﺆ ﱔ ﻼﻗﺔ اﻧﻌﲀﺳﯿﺔ و ﺗﻨﺎﻇﺮﯾﺔ و ﻣ ﻌﺪﯾﺔ.
ﻣ ﺎل :ﻼﻗﺔ اﻟﺘﲀﻓﺆ ﳌﻘﺎس nﱔ ﻼﻗﺔ ﲀﻓﺆ.
ﺗﻌﺮﯾﻒ : 1.4.1.6ﻼﻗﺔ اﻟﱰﺗ ﺐ ﱔ ﻼﻗﺔ اﻧﻌﲀﺳﯿﺔ و ﲣﺎﻟﻔ ﺔ و ﻣ ﻌﺪﯾﺔ.
ﻣ ﺎل :ﻼﻗﺔ اﻟﱰاﰕ ﱔ ﻼﻗﺔ ﺮﺗ ﺐ.
ﺗﻌﺮﯾﻒ : 1.4.1.7ﻼﻗﺔ اﻟﱰﺗ ﺐ اﳉﺰﰄ ﱔ ﻼﻗﺔ ﺮﺗ ﺐ ﲆ ﶍﻮ ﺔ Aﲢﻘﻖ . a, b A, aRb
ﻣ ﺎل :ﻼﻗﺔ " xﻣﻀﺎﻋﻒ ل " yﱔ ﻼﻗﺔ ﺮﺗ ﺐ ﺟﺰﰄ ﲆ ا ﻤﻮ ﺔ .
ﺗﻌﺮﯾﻒ : 1.4.1.8ﻼﻗﺔ اﻟﱰﺗ ﺐ اﻟﳫﻲ ﱔ ﻼﻗﺔ ﺮﺗ ﺐ ﲆ ﶍﻮ ﺔ Aﲢﻘﻖ ). a, b A, (aRb) (bRa
ﻣ ﺎل :ﻼﻗﺔ اﻟﱰاﰕ ﱔ ﻼﻗﺔ ﺮﺗ ﺐ ﳇﻲ ﲆ ا ﻤﻮ ﺔ .
1.4.2ﻗﻮاﻧﲔ اﻟ ﺸﻜ ﻞ )اﻟﻌﻤﻠﯿﺎت(
ﺗﻌﺮﯾﻒ : 1.4.2.1ﻗﺎﻧﻮن اﻟ ﺸﻜ ﻞ ﻫﻮ ﲻﻠﯿﺔ ﲆ ﻋﻨﴫ ٔو ٔﻛﱶ ﻟﻨﺤﺼﻞ ﲆ ﻋﻨﴫ ﺪﯾﺪ .و ﺮﻣﺰ ﻟﻬﺎ ﺎدة . *, T ,...
ﻣ ﺎل :اﻟﻌﻤﻠﯿﺎت , , ,...ﱔ ﻗﻮاﻧﲔ ﺸﻜ ﻞ.
ﺗﻌﺮﯾﻒ : 1.4.2.2ﻗﺎﻧﻮن اﻟ ﺸﻜ ﻞ ا ا ﲇ ﻫﻮ ﻗﺎﻧﻮن ﺸﻜ ﻞ ﻣﻌﺮف ﲆ ﶍﻮ ﺔ Aﲝﯿﺚ . a, b A, aTb A
ﻣ ﺎل :ﻗﺎﻧﻮن اﻟ ﺸﻜ ﻞ " "ﻫﻮ ﻗﺎﻧﻮن ﺸﻜ ﻞ دا ﲇ ﲆ ا ﻤﻮ ﺔ .
ﻣﻦ ا ٓن ﻓﺼﺎ ﺪ ًا ﺳﻨﺪﻋﻮ "ﻗﺎﻧﻮن اﻟ ﺸﻜ ﻞ" ب"اﻟﻌﻤﻠﯿﺔ" ﻠﺴﻬﻮ .
ﺗﻌﺮﯾﻒ : 1.4.2.3اﻟﻌﻤﻠﯿﺔ اﻟﺘﺒﺪﯾﻠﯿﺔ ﱔ ﲻﻠﯿﺔ Tﻣﻌﺮﻓﺔ ﲆ ﶍﻮ ﺔ ﲆ Aﲢﻘﻖ . a, b A, aTb bTa
ﻣ ﺎل :ﲻﻠﯿﺔ " "اﳌﻌﺮﻓﺔ ﲆ ا ﻤﻮ ﺔ ﱔ ﲻﻠﯿﺔ ﺗﺒﺪﯾﻠﯿﺔ.
ﺗﻌﺮﯾﻒ : 1.4.2.3اﻟﻌﻤﻠﯿﺔ اﻟﺘﺠﻤﯿﻌﯿﺔ ﱔ ﲻﻠﯿﺔ Tﻣﻌﺮﻓﺔ ﲆ ﶍﻮ ﺔ ﲆ Aﲢﻘﻖ ). a, b, c A, (aTb)Tc aT (bTc
ﻣ ﺎل :ﲻﻠﯿﺔ " "اﳌﻌﺮﻓﺔ ﲆ ا ﻤﻮ ﺔ ﱔ ﲻﻠﯿﺔ ﲡﻤﯿﻌﯿﺔ.
1.4.3اﻟﺒﲎ اﳉﱪﯾﺔ
ﺗﻌﺮﯾﻒ : 1.4.3.1اﻟﺒ ﺔ اﳉﱪﯾﺔ ﱔ ﺛﻨﺎﺋﯿﺔ ) ( A, Tﲝﯿﺚ Aﶍﻮ ﺔ و Tﻗﺎﻧﻮن ﺸﻜ ﻞ دا ﲇ ﲆ . A
ﻣ ﺎل ( , ) :ﱔ ﺑ ﺔ ﱪﯾﺔ.
ﺗﻌﺮﯾﻒ : 1.4.3.2ﻟﺘﻜﻦ ﯾﻨﺎ اﻟﺒ ﺔ اﳉﱪﯾﺔ ) ، ( A, Tاﻟﻌﻨﴫ اﳊﯿﺎدي ا ﳰﯿﲏ ﻟ ﺴﺒﺔ ﻠﻌﻤﻠﯿﺔ Tﻫﻮ ﻋﻨﴫ e Aﳛﻘﻖ
. a A, aTe aو ﻛﺬ اﻟﻌﻨﴫ اﳊﯿﺎدي اﻟ ﺴﺎري ﻟ ﺴﺒﺔ ﻠﻌﻤﻠﯿﺔ Tﻫﻮ ﻋﻨﴫ e Aﳛﻘﻖ . a A, eTa a
اﻟ ﺸﻔﲑ اﻟﻼﻣ ﻨﺎﻇﺮ 17
و ﻫﻮ ﺣ ﺎدي ﳝﯿﲏ و ﺣ ﺎدي ﺗﻌﺮﯾﻒ : 1.4.3.3ﻟﺘﻜﻦ ﯾﻨﺎ اﻟﺒ ﺔ اﳉﱪﯾﺔ ) ، ( A, Tاﻟﻌﻨﴫ اﳊﯿﺎدي ﻫﻮ
ﻋﻨﴫ e A
ﺴﺎري.
ﻣ ﺎل :اﻟﻌﻨﴫ " "1ﻫﻮ ﺣ ﺎدي ﻟ ﺴﺒﺔ ﻠﻌﻤﻠﯿﺔ " "ﰲ اﻟﺒ ﺔ ). ( ,
aﳛﻘﻖ 1
ﺗﻌﺮﯾﻒ : 1.4.3.4ﻟﺘﻜﻦ ﯾﻨﺎ اﻟﺒ ﺔ اﳉﱪﯾﺔ ) ، ( A, Tﻧﻈﲑ اﻟﻌﻨﴫ aﻟ ﺴﺒﺔ ﻠﻌﻤﻠﯿﺔ Tﻫﻮ ﻋﻨﴫ A
1
. aTa e
ﻣ ﺎل :اﻟﻌﻨﴫ " " 7ﻫﻮ ﻧﻈﲑ اﻟﻌﻨﴫ 7ﰲ اﻟﺒ ﺔ ). ( ,
ﺗﻌﺮﯾﻒ : 1.4.3.5اﻟﺰﻣﺮة ) ( A, Tﱔ اﻟﺒ ﺔ ﱪﯾﺔ ) ( A, Tاﻟﺘ ﺤﻘﻖ :
T -ﲻﻠﯿﺔ ﺗﺒﺪﯾﻠﯿﺔ.
T -ﲻﻠﯿﺔ ﲡﻤﯿﻌﯿﺔ.
-ﻟﲁ ﻋﻨﴫ a Aﻧﻈﲑ a Aﻟ ﺴﺒﺔ ﻠﻌﻤﻠﯿﺔ . T
1
ﻣ ﺎل ( , ) :ﱔ زﻣﺮة.
ﺗﻌﺮﯾﻒ : 1.4.3.6اﻟﺰﻣﺮة اﻟﺘﺒﺪﯾﻠﯿﺔ ﱔ زﻣﺮة ) ( A, Tﲝﯿﺚ Tﲻﻠﯿﺔ ﺗﺒﺪﯾﻠﯿﺔ.
ﻣ ﺎل ( , ) :ﱔ زﻣﺮة ﺗﺒﺪﯾﻠﯿﺔ.
ﺗﻌﺮﯾﻒ : 1.4.3.7اﻟﺰﻣﺮة اﳌﻨﳤﯿﺔ ﱔ زﻣﺮة ) ( A, Tﻓﳱﺎ . A
ﺗﻌﺮﯾﻒ : 1.4.3.8رﺗﺒﺔ زﻣﺮة ﱔ ﺪد ﲱﯿﺢ ﻣﻮﺟﺐ . O ( A, T ) A
O
)(a
. aTaT ...Ta e ﺗﻌﺮﯾﻒ : 1.4.3.9ﻟﺘﻜﻦ ﯾﻨﺎ زﻣﺮة ) . ( A, Tرﺗﺒﺔ اﻟﻌﻨﴫ a Aﱔ ٔﺻﻐﺮ ﺪد ﲱﯿﺢ ) O(aﳛﻘﻖ
ﻣ ﺎل :ﻟﺘﻜﻦ ﯾﻨﺎ اﻟﺰﻣﺮة ) . (1, 2,...,7 , mod 7رﺗﺒﺔ اﻟﻌﻨﴫ a 2ﱔ ٔ O(2) 3ن . 2 8 1 e mod 7
3
n
. a A, aTaT ...Ta e ﻣﱪﻫﻨﺔ : 1.4.3.1رﺗﺒﺔ زﻣﺮة ﻣﺎ ) ( A, Tﱔ ٔﺻﻐﺮ ﺪد ﲱﯿﺢ nﳛﻘﻖ
ﻣﱪﻫﻨﺔ ) 1.4.3.2ﻣﱪﻫﻨﺔ ﻻﻏﺮاﱋ( :رﺗﺒﺔ ٔي ﻋﻨﴫ ﰲ زﻣﺮة ﺗﻘﺴﻢ رﺗﺒﺔ اﻟﺰﻣﺮة.
) ( A, Tو ﻜ ﺐ ﺗﻌﺮﯾﻒ :ﻟﺘﻜﻦ ﯾﻨﺎ اﻟﺰﻣﺮ ن ) ( A, Tو ) . ( B, Tﻧﻘﻮل ﻋﻦ اﻟﺰﻣﺮة ) ٔ ( B, Tﳖﺎ زﻣﺮة ﺟﺰﺋﯿﺔ ﻣﻦ اﻟﺰﻣﺮة
A Bإذا و ﻓﻘﻂ إذا . B A
ﺧﻮاص اﻟﺰﻣﺮ اﳉﺰﺋﯿﺔ :
-1ﺣ ﺎدي اﻟﺰﻣﺮة ) ( B, Tﻫﻮ ﻧﻔﺴﻪ ﺣ ﺎدي اﻟﺰﻣﺮة ) . ( A, T
-2ﻧﻈﲑ ٔي ﻋﻨﴫ ﻣﻦ Bﰲ ) ( B, Tﻫﻮ ذاﺗﻪ ﰲ ) . ( A, T
ﻣ ﺎل (2 , mod n) :ﱔ زﻣﺮة ﺟﺰﺋﯿﺔ ﻣﻦ ). ( , mod n
ﻣﱪﻫﻨﺔ :اﻟﴩط اﻟﻼزم و اﻟﲀﰲ ﻟﺘﻜﻮن ) ( B, Tزﻣﺮة ﺟﺰﺋﯿﺔ ﻣﻦ ) ( A, Tﻫﻮ :
18 اﻟ ﺸﻔﲑ اﻟﻼﻣ ﻨﺎﻇﺮ
1.5ﺧﻮارزﻣ ﺎت ٔﺳﺎﺳﯿﺔ
1.5.1اﳋﻮارزﻣ ﺔ اﻻٕﻗﻠﯿﺪﯾﺔ
اﳋﻮارزﻣ ﺔ اﻻٕﻗﻠﯿﺪﯾﺔ ﱔ اﻟﻄﺮﯾﻘﺔ ا ٔﻣ ﻞ و ا ٔﻛﱶ ﻛﻔﺎءة ﳊﺴﺎب اﻟﻘﺎﰟ اﳌﺸﱰك ا ٔﻛﱪ ﻟﻌﺪد ﻦ ﻣﻌﻠﻮﻣﲔ .و ﱔ ﻣ ﯿﻨﺔ ﲆ
اﳊﻘ ﻘﺔ ا ٓﺗﯿﺔ :
ﻣﱪﻫﻨﺔ . gcd(a, b) gcd(a b, b) :
ﻜﺮر ﺗﻄﺒﯿﻖ ﻫﺬﻩ اﳋﺎﺻﯿﺔ ﻟﻨﺤﺼﻞ ﲆ :
)gcd( a, b) gcd( a b, b) gcd( a 2b, b) ... gcd( a nb, b
ﻃﺎﳌﺎ ٔ ، a nbي ﳫﲈت ٔﺧﺮى :
)gcd( a, b) gcd( a mod b, b
ﻟﻨﺪﻋﻮ a mod bب ، rﻜﺮر اﻟﻌﻤﻠﯿﺔ ﻣﺮة ٔﺧﺮى :
1
4
1.5.2اﳋﻮارزﻣ ﺔ اﻻٕﻗﻠﯿﺪﯾﺔ اﳌﻤﺪدة
اﳋﻮارزﻣ ﺔ اﻻٕﻗﻠﯿﺪﯾﺔ اﳌﻤﺪة ﱔ اﳋﻮارزﳝﺔ ا ٔﻣ ﻞ إذا ٔرد ٔن ﳓﺴﺐ اﳌﻌﻜﻮﺳﺎت اﻟﴬﺑﯿﺔ ﳌﻘﺎس . nﻓﻬ ﻲ ،إﱃ ﺎﻧﺐ
ﺣﺴﺎب اﻟﻘﺎﰟ اﳌﺸﱰك ﻟﻌﺪد ﻦ ﻣﻌﻠﻮﻣﲔ ، a, bﺗﻌﱪ ﻋﻨﻪ ﻛﱰﯿﺐ ﺧﻄﻲ ل aو bﻟﺼﯿﻐﺔ:
gcd( a, b) a b : ,
4
A. Menezes, P. VanOorschot, S. Vanstone. Handbook of Applied Cryptography. CRC press, Boca Raton, Florida, USA, 1997. Page 67.
20 اﻟ ﺸﻔﲑ اﻟﻼﻣ ﻨﺎﻇﺮ
اﻟﺴﺆال ﻫﻮ ،ﯿﻒ ﻧﻘﻮم ﲝﺴﺎب ا ٔﻣ ﺎل , ؟ اﻟﻔﻜﺮة وراء اﳋﻮارزﻣ ﺔ اﳌﻤﺪة ﱔ ﺗﻨﻔ ﺬ اﳋﻮارزﻣ ﺔ اﻻٕﻗﻠﯿﺪﯾﺔ ،ﻟﻜﻦ ،ﲁ
ﻣﺮ ،ﻧﻌﱪ ﻋﻦ اﻟﺒﺎﰶ rﻛﱰﯿﺐ ﺧﻄﻲ ل aو bﻟﺼﯿﻐﺔ: i
ri i a i b
ﻣ ﺎل :ﺳ ﻈﺮ إﱃ ﺗﻨﻔ ﺬ اﳋﻮارزﻣ ﺔ اﻻٕﻗﻠﯿﺪﯾﺔ اﳌﻤﺪة ﺑﻨﻔﺲ اﻟﻘﲓ اﻟﺴﺎﺑﻘﺔ . 832, 78
ai bi ri ai 2 qbi 1 ri ri i a i b
اﳋﻮارزﻣ ﺔ :
1. if b 0
)1.1 return (1, 0
2. i 1, 0 1, 0 0, 1 0, 1 0
3. while b 0
3.1 q a b , r a - qb
3.2 0 q1 , 0 q 1
3.3 a b
3.4 b r
3.5 0 1 , 1
3.6 0 1 , 1
4. 0 , 0
) 5. return ( ,
اﻟ ﺸﻔﲑ اﻟﻼﻣ ﻨﺎﻇﺮ 21
5
1.5.3ﺣﺴﺎب ا ٔس
اﻟﻄﺮﯾﻘﺔ ا ٔ ﺴﻂ ﳊﺴﺎب ا ٔس ﱔ ﰷﻟﺘﺎﱄ :
MUL MUL MUL MUL
x x 2 x 3 x 4 ...
ﺣ ﺚ ﺗﺪل " " MULﲆ ﲻﻠﯿﺔ ﴐب اﻟﻌﺪد اﳊﺎﱄ ٔﺳﺎس . xﻟﻜﻦ ﺗﺬ ﺮ ٔن ا ٔ ﺪاد اﳌﺴﺘ ﺪﻣﺔ ﰲ اﳋﻮارزﻣ ﺎت
اﻟﻼﻣ ﻨﺎﻇﺮةﰲ اﳊﺎ اﻟﻌﺎﻣﺔ ٔ ﺪاد ﲻﻼﻗﺔ 1024 ،ﺑﺖ و ٔﻛﱶ .إذا ٔرد ﺣﺴﺎب ا ٔس اﻟﺴﺎﺑﻖ ﻟﻄﺮﯾﻘﺔ اﻟ ﺴﯿﻄﺔ ،ﻓﺴﻨﺤﺘﺎج
إﱃ ﺣﻮاﱄ 2ﲻﻠﯿﺔ ﴐب .ﻟﻬﺎ ﻣﻦ ﻓﻜﺮة ﻣﺮﻋﺒﺔٔ ،ن ﯾﻮ ﺪ ﰲ اﻟﻜﻮن اﳌﻌﺮوف ﺣﻮاﱄ 2ذرة! اﻟﺴﺆال ﻫﻮ ،ﻫﻞ ﻫﻨﺎك
300 1024
ﻃﺮﯾﻘﺔ ٔﴎع ﳊﺴﺎب ا ٔس ﺑﺪون ٔن ﻧﻀﻄﺮ إﱃ اﻧﺘﻈﺎر اﻟﺸﻤﺲ ﻟﲄ ﺗﻨﻄﻔﺊ ﻟﻨﳯ ﻲ اﳊﺴﺎب؟ ﳊﺴﻦ اﳊﻆ ،ﻧﻌﻢ .إﳖﺎ ﺗﺪﻋﻰ
ﺧﻮارزﻣ ﺔ اﻟﴬب و اﻟﱰﺑﯿﻊ.
SQ
x MUL
x 2 SQ
x 3 SQ
x 6 MUL
x12 SQ
x13 x 26
ﻣﺎ ﶍﻮ ﻪ ﲻﻠﯿﺘﺎ ﴐب و ٔرﺑﻊ ﲻﻠﯿﺎت ﺮﺑﯿﻊ .ﰲ اﻟﻮاﻗﻊ ،ﺗﻌﻘ ﺪ ﲻﻠﯿﺔ اﻟﱰﺑﯿﻊ ﯾﻘﺎرب ﺗﻌﻘ ﺪ ﲻﻠﯿﺔ اﻟﴬب ،ﻓ ﺎٕﻣﲀﻧﻨﺎ ٔن ﻧﻘﻮل ٔن
ﳇﻔﺔ ﻫﺬا اﻟﺘﻨﻔ ﺬ ﱔ 6ﲻﻠﯿﺎت ﴐب ﻓﻘﻂ.
5
Christof Paar, Jan Penzel. Understanding Cryptography. Springer, Heidelberg, Berlin, Germany, 2010. Page 182.
22 اﻟ ﺸﻔﲑ اﻟﻼﻣ ﻨﺎﻇﺮ
ٔﻣﺎ ﻟ ﺴﺒﺔ ﻟﺘﻌﻘ ﺪ ﺧﻮارزﻣ ﺔ اﻟﴬب و اﻟﱰﺑﯿﻊ .ﻧﻼﺣﻆ ٔﻧﻪ ﰲ ﰻ ﻣﺮ ﻣﻦ ﺗﻨﻔ ﺬ ﻠﻘﺔ forﯾﱲ ﺮﺑﯿﻊ اﻟﻨ ﺔ اﳊﺎﻟﯿﺔ .و ﲟﺎ
ٔن ﻠﻘﺔ forﺗﺘﻜﺮر rﻣﺮة ﺣ ﺚ rﻫﻮ ﻃﻮل ا ٔس ﻟﻨﻈﺎم اﻟﺜﻨﺎﰄ ،ﻓ ﯾﻨﺎ rﲻﻠﯿﺔ ﺮﺑﯿﻊ .إﺿﺎف إﱃ ذ ،ﯾﱲ ﴐب
اﻟﻨ ﺔ اﳊﺎﻟﯿﺔ ٔﺳﺎس xﻣﻊ ﰻ 1ﰲ ا ﳣﺜﯿﻞ اﻟﺜﻨﺎﰄ ﻟ ٔس .ﺸﲁ ﺎم ،ﯾﻨﺎ ﺣﻮاﱄ r 2رﰴ 1ﰲ ا ﳣﺜﯿﻞ اﻟﺜﻨﺎﰄ ﻟﻌﺪد
ﻃﻮ rﺑﺖ .ﻓ ﻜﻮن ﺗﻌﻘ ﺪ ﺗﻨﻔ ﺬ اﳋﻮارزﻣ ﺔ ﻫﻮ . rc r 2 cو ﻛﲈ ﻗﻠﻨﺎ ﺳﺎﺑﻘ ًﺎ ،ﺗﻌﻘ ﺪ ﲻﻠﯿﺔ اﻟﱰﺑﯿﻊ ﯾﻘﺎرب ﺗﻌﻘ ﺪ ﲻﻠﯿﺔ
1 2
اﻟﴬب ،ﻓ ﺎٕﻣﲀﻧﻨﺎ ٔن ﻧﻘﻮل ٔن ﺗﻌﻘ ﺪ اﳋﻮارزﻣ ﺔ ﻫﻮ . 3 2 rcو ﻫﻮ ٔﻓﻀﻞ ﻜ ﲑ ﻣﻦ 2 cﻟﻮ ٔرد ﺗﻨﻔ ﺬ اﳋﻮارزﻣ ﺔ
r
1 1
ﻟﻄﺮﯾﻘﺔ اﻟﺒﺪاﺋﯿﺔ.
ﻣ ﺎل :ﳊﺴﺎب اﻟﻨﻘﻄﺔ ، 26Pﰲ اﻟﺒﺪاﯾﺔ ،ﻜ ﺐ اﻟﻌﺪد 26ﺛﻨﺎﺋﯿ ًﺎ . 26 110010ﻓ ﺼﺒﺢ ﺗﻄﺒﯿﻖ اﳋﻮارزﻣ ﺔ ﰷﻟﺘﺎﱄ :
2
ﯾﱲ ﺗﻮﻟﯿﺪ ا ٔ ﺪاد ا ٔوﻟﯿﺔ ﺑﻄﺮﯾﻘﺔ ﻏﺮﯾﺒﺔ ﻧﻮ ًﺎ ﻣﺎ ،ﯾﱲ اﺧ ﯿﺎر ﺪد ﻋﺸﻮاﰄ ﺑﻄﻮل ﳏﺪد ) ﺎدة 512ﺑﺖ( ،ﰒ ﳔﺘﱪ ﻣﺎ إذا ﰷن
ٔوﻟﯿ ًﺎ ٔم ﻻ .و ﳇﻨﺎ ﻧﻌﲅ ٔن ﻛﺜﺎﻓﺔ ا ٔ ﺪاد ا ٔوﻟﯿﺔ ﺗ ﺎﻗﺺ ﳇﲈ ﺰاﯾﺪ اﻟﻌﺪد .و ﻫﻨﺎ ﯾ ٔﰐ اﻟ ﺴﺎؤلٔ ،ﻻ ﺰال ﻫﻨﺎك اﺣ ل ﻣ ﻄﻘﻲ
ٔن ﳒﺪ ٔ ﺪاداً ٔوﻟﯿﺔ ﺑﺘ ا ٔﻃﻮال اﻟﻌﻤﻼﻗﺔ ﻋﻦ ﻃﺮﯾﻖ اﻟﺘﺠﺮﯾﺐ؟ ﺣﺴﺐ اﳌﱪﻫﻨﺔ 1.1.2.5اﺣ ل ٔن ﻜﻮن ﺪد ﻣﺎ ﺑﻄﻮل
rﺑﺖ ٔوﻟﯿ ًﺎ ﻫﻮ :
. P(n is prime) (n) 2 ln 2 r
n
ٔي ﳓﻦ ﲝﺎ ﺔ ﻟﲄ ﳔﺘﱪ ﺣﻮاﱄ 177ﺪد ﻗ ﻞ ٔن ﳓﺼﻞ ﲆ ﺪد ٔوﱄ ﯾﻄﻮل 512ﺑﺖ .ﳊﺴﻦ اﳊﻆ ،ﻣﻘﺎم اﻟﻜﴪ ٔ ﻼﻩ
ﯾﱱاﯾﺪ ﺰاﯾﺪ ًا ﻟﻮ ﺎرﲤﯿ ًﺎٔ ،ي ﺣﱴ ﻣﻊ ﻣﻔﺎﺗﯿﺢ RSAا ٔﻛﱪ ،ﻣ ﻞ 4096ﺑﺖ ،ﻻ ﺰال ﻫﻨﺎك ﻓﺮﺻﺔ ﻟﻨ ﺪ ٔ ﺪاد ًا ٔوﻟﯿﺔ.
ﺑﻌﺪ اﺧ ﺒﺎر اﻟﻌﺪد اﻟﻌﺸﻮاﰄ ،ﯾ ٔﰐ دور اﺧ ﺒﺎرات ا ٔوﻟﯿﺔ .اﺧ ﺒﺎر ا ٔوﻟﯿﺔ ﻫﻮ ﺧﻮارزﻣ ﺔ ﲟﺪ ﻠﲔ ،ﺪد ' pﯾﺪﻋﻰ "ﻣﺮﴊ
ٔوﱄ" .و ﻣﻌﺎﻣﻞ ٔﻣﺎن . sو ﺗﻘﻮم اﳋﻮارزﻣ ﺔ ﳊﲂ ﲆ ' pﻣﺎ إذا ﰷن ٔوﻟﯿ ًﺎ ٔم ﻻ .ﯾﻮ ﺪ ﻧﻮ ﲔ ﻻﺧ ﺒﺎرات ا ٔوﻟﯿﺔ :
-1اﺧ ﺒﺎرات ا ٔوﻟﯿﺔ اﻟﺼﺤﯿ ﺔ :و ﱔ ﺗﻌﯿﺪ ﻧ ﺔ ﻗﺎﻃﻌﺔ "ﻻ" إذا ﱂ ﻜﻦ ٔوﻟﯿ ًﺎٔ .و ﻧ ﺔ ﻗﺎﻃﻌﺔ "ﻧﻌﻢ" إذا ﰷن ٔوﻟﯿ ًﺎ.
-2اﺧ ﺒﺎرات ا ٔوﻟﯿﺔ ﺣ ﻟﯿﺔ :و ﱔ ﺗﻌﯿﺪ ﻧ ﺔ ﻗﺎﻃﻌﺔ "ﻻ" إذا ﱂ ﻜﻦ ٔوﻟﯿ ًﺎٔ .و ﻧ ﺔ "ﻧﻌﻢ" ﺣ ل ﺒﲑ إذا ﰷن
ٔوﻟﯿ ًﺎ.
ﺳ ﻌﺎﻣﻞ ا ٓن ﻣﻊ اﺧ ﺒﺎرات ا ٔوﻟﯿﺔ ﺣ ﻟﯿﺔ .ﰲ اﻟﻮاﻗﻊ ،اﺧ ﺒﺎرات ا ٔوﻟﯿﺔ ﺣ ﻟﯿﺔ ﱔ اﻟﱵ ﯾﱲ اﺳﺘ ﺪا ﺎ ﰲ اﻟﻌﺎﱂ اﻟﻮاﻗﻌﻲ
ﻧﻈﺮ ًا ﻟﳫﻔﳤﺎ اﳊﺴﺎﺑﯿﺔ اﳌﻨﺨﻔﻀﺔ ﻣﻘﺎرﻧﺔ ﻻﺧ ﺒﺎرات اﻟﺼﺤﯿ ﺔ.
اﺧ ﺒﺎر ﻓﲑﻣﺎ 1.5.5.1
ﯾﻌﳣﺪ اﺧ ﺒﺎر ﻓﲑﻣﺎ ﲆ اﳌﱪﻫﻨﺔ 1.1.6.2و ﻫﻮ ﰷﻟﺘﺎﱄ :
اﳋﻮارزﻣ ﺔ : 1.5.5.1اﺧ ﺒﺎر ﻓﲑﻣﺎ :
ا ﻞ :ﻣﺮﴊ ٔوﱄ ' . pﻣﻌﺎﻣﻞ ٔﻣﺎن . s
اﳋﺮج p ' " :ﺪد ﻣﺮﺐ" ٔو " ' pﺎﻟﺒ ًﺎ ﺪد ٔوﱄ".
اﳋﻮارزﻣ ﺔ :
1. for i 1 to i s
1.1 choose random a
)1.2 if (a p '-1 mod p ' 1
" 1.2.1 return " p ' is composite
" 2. return " p ' is probably prime
ﻟﻜﻦ
aﻣﻦ ٔ ﻞ اﻟﻌﺪﯾﺪ ﻣﻦ ﻗﲓ a p ' 1
1mod p اﻟﱵ ﲢﻘﻖ 'p ﯾﻮ ﺪ ﻋﯿﺐ ﰲ اﺧ ﺒﺎر ﻓﲑﻣﺎ .ﺗﻮ ﺪ ﺑﻌﺾ ا ٔ ﺪاد اﻟﺼﺤﯿ ﺔ
24 اﻟ ﺸﻔﲑ اﻟﻼﻣ ﻨﺎﻇﺮ
ﻟﻜﳯﺎ ﻟ ﺴﺖ ٔ ﺪاد ٔوﻟﯿﺔ ،و ﺗﺪﻋﻰ " ٔ ﺪاد ﰷذﺑﺔ" .ﺪد ا ٔ ﺪاد اﻟﲀذﺑﺔ ﲆ اﺧ ﺒﺎر ﻓﲑﻣﺎ ﺒﲑ ﺴ ًﺎ .ﰲ اﻟﻮاﻗﻊ ،ﺗﻮ ﺪ ٔ ﺪاد
ﲱﯿ ﺔ cﺗﺪﻋﻰ " ٔ ﺪاد ﰷرﻣﺎ ﲁ" ﲢﻘﻖ اﻟﻌﻼﻗﺔ a 1mod cﻣﻦ ٔ ﻞ ﲨﯿﻊ ﻗﲓ aﻟﻜﳯﺎ ﻟ ﺴﺖ ٔوﻟﯿﺔ .ﯾﻮ ﺪ ﺣﻮاﱄ
c 1
2j r
. gcd(a, p) 1ﻋﻨﺪﺋﺬ إﻣﺎ ٔ a 1mod pو a 1mod pﻣﻦ ٔ ﻞ ﺪد ﲱﯿﺢ
r
ﺳﻨﻘﻮم ﴩح ﯿﻔ ﺔ ﺗﻮﻟﯿﺪ اﻟﻌﺪد ﻦ ا ٔوﻟﯿﲔ ﻓ ﺑﻌﺪ .اﻟﻬﺪف ﻣﻦ اﻟﴩط gcd(e, (n)) 1ﰲ اﳋﻄﻮة اﻟﺮاﺑﻌﺔ ﺿﲈن وﺟﻮد
ﻧﻈﲑ ل eﻟ ﺴﺒﺔ ﻟﻌﻤﻠﯿﺔ اﻟﴬب ﳌﻘﺎس . nﰲ اﻟﻮاﻗﻊٕ ،ﻣﲀﻧﻨﺎ ﺣﺴﺎب اﳋﻄﻮﺗﲔ اﻟﺮاﺑﻌﺔ و اﳋﺎﻣﺴﺔ ﰲ اﻟﻮﻗﺖ ﻧﻔﺴﻪ ،ﻧﻘﻮم
ﺧ ﯿﺎر ﺪد e 1, 2,..., (n) 1و ﻧﻨﻔﺬ اﳋﻮارزﻣ ﺔ 1.5.2ﻣﻦ ٔ ﻞ ا ٔ ﺪاد ) . e, (nﻓ ﺤﺼﻞ ﲆ اﻟﺼﯿﻐﺔ :
). gcd(e, (n)) e (n
ﻓﺎٕذا ﰷن ﻓﻌﻼ gcd(e, ( n)) 1ﻜﻮن ﻗﺪ ﺣﺼﻠﻨﺎ ﲆ اﳌﻔ ﺎح اﻟﻌﺎم .ﺑﻌﺪ ٔن ﻧ ٔ ﺬ ﻃﺮﰲ اﻟﻌﻼﻗﺔ اﻟﺴﺎﺑﻘﺔ ﳌﻘﺎس ) ( n
ﳓﺼﻞ ﲆ اﻟﻌﻼﻗﺔ :
e 1mod n
ﻓ ﻜﻮن ﻗﳰﺔ dﱔ ﻗﳰﺔ اﻟﱵ ﺣﺼﻠﻨﺎ ﻠﳱﺎ ﻣﻦ ﺧﺮج اﳋﻮارزﻣ ﺔ اﻻٕﻗﻠﯿﺪﯾﺔ اﳌﻤﺪة.
ٔﻣﺎ ﰲ ﺎل ، gcd(e, (n)) 1ﺑ ﺴﺎﻃﺔ ﻧﻌﯿﺪ ﺗﻨﻔ ﺬ اﳋﻮارزﻣ ﺔ ﻣﻦ ٔ ﻞ ﻗﲓ ٔﺧﺮى ل . eﻧﻼﺣﻆ ٔن ﻗﳰﺔ اﳌﻌﺎﻣﻞ ا ي
ﺣﺼﻠﻨﺎ ﻠﯿﻪ ﻣﻦ ﺧﺮج اﳋﻮارزﻣ ﺔ ﻟ ﺴﺖ ذات ﻗﳰﺔ ،و ﻟﺘﺎﱄ ٕﻣﲀﻧﻨﺎ ٔن ﻧﺘﺠﻨﺐ ﺣﺴﺎﺑﻪ.
ا ٓن ﺳﻨﻘﺪم ﻣ ﺎ ًﻻ ﺴﯿﻄ ًﺎ ﻋﻦ ﺗﻨﻔ ﺬ ﺧﻮارزﻣ ﺔ RSAﺑ ٔ ﺪاد ﺻﻐﲑة.
2.1.2اﻟ ﺸﻔﲑ و ﻓﻚ اﻟ ﺸﻔﲑ
ﳛﺪث ﺸﻔﲑ و ﻓﻚ ﺸﻔﲑ RSAﰲ اﳊﻠﻘﺔ )اﳌﻠﺤﻖ ب( و ﺗﻠﻌﺐ اﻟﺘﻄﺎﺑﻘﺎت اﳋﻄﯿﺔ دور ًا ﻫﺎﻣ ًﺎ ﻓﳱﺎ ) .(1.1.4ﺸﻔﺮ
n
RSAاﻟﺒﯿﺎ ت ا ٔﺻﻠﯿﺔ ، xﺣ ﺚ xﱔ اﻟﻘﳰﺔ اﻟﻌﺪدﯾﺔ ﻟﺴﻠﺴ ا ٔﺻﻔﺎر و اﻟﻮا ﺪات إذا ﺎﻣﻠﻨﺎﻫﺎ ﻣﻌﺎﻣ ﺪد ﻣﻜ ﻮب
ﻟﻨﻈﺎم اﻟﺜﻨﺎﰄ ،ﻓ ﻜﻮن . x 1, 2,..., n 1ﺴﺘ ﺞ ٔﻧﻪ ﯾﺘﻮﺟﺐ ﲆ ٔ xن ﻜﻮن ﳏﺼﻮر ًا ﰲ ا ﺎل 1, nو
n
d
ﻃﺮﯾﻖ ﺣﺴﺎب . x y mod n
ﲟﻌﻠﻮﻣﺎﺗﻨﺎ اﶈﺪودة ﻫﺬﻩ ،ﺴﺘﻄﯿﻊ ٔن ﺴﺘ ﺞ ﺑﻌﺾ ﻣ ﻄﻠﺒﺎت ﺗﻨﻔ ﺬ اﳋﻮارزﻣ ﺔ :
-1ﲟﺎ ٔن ٕﻣﲀن اﳌﻬﺎﰖ اﳊﺼﻮل ﲆ اﳌﻔ ﺎح اﻟﻌﺎم ﻣﻦ اﻟﺸﺒﻜﺔ ،ﳚﺐ ٔن ﻜﻮن ﻣﻦ اﳌﺴﺘﺤﯿﻞ ﺣﺴﺎﺑﯿ ًﺎ ﲢﺪﯾﺪ ﻗﳰﺔ
اﳌﻔ ﺎح اﳋﺎص dﻣﻦ اﳌﻔ ﺎح اﻟﻌﺎم ). (n, e
-2ﲟﺎ ٔن اﻟﻨﺺ ا ٔﺻﲇ xﳑﲒ ﺣﱴ اﻟﻮﺻﻮل إﱃ ﲩﻢ اﳌﻘﺎس ، nﻓ ﺤﻦ ﻻ ﺴﺘﻄﯿﻊ ٔن ﺸﻔﺮ رﺳﺎ ٔﻃﻮل ﻣﻦ lﺑﺖ،
ﺣ ﺚ lﻫﻮ ﺪد ﻣ ﺎزل اﻟﻌﺪد nإذا ﻛﺘﺐ ﰲ اﻟﻨﻈﺎم اﻟﺜﻨﺎﰄ.
-3ﻣﻦ ٔ ﻞ ﻗﳰﺔ ﳏﺪدة ل ، nﯾﻠﺰم وﺟﻮد ﺪد ﺒﲑ ﻣﻦ ٔزواج اﳌﻔﺎﺗﯿﺢ اﻟﻌﺎﻣﺔو اﳋﺎﺻﺔ .و إﻻ ﺳﯿﻘﻮم اﳌﻬﺎﰖ ﺑ ﺴﺎﻃﺔ
ﺸﻦ ﳗﻮم ﻟﻘﻮة اﻟﻐﺎﴰﺔ و ﳚﺮب ﲨﯿﻊ اﻟﻘﲓ اﳌﻤﻜ ﺔ ﻠﻤﻔﺎﺗﯿﺢ )ﺳﲊى ﻓ ﺑﻌﺪ ٔﻧﻪ ﺴﻬﻞ ﲢﻘ ﻖ ﻫﺬا اﻟﴩط(.
ا ٓن ﺳﻨﻘﺪم ﻣ ﺎ ًﻻ ﺴﯿﻄ ًﺎ ﻋﻦ ﺗﻨﻔ ﺬ ﺧﻮارزﻣ ﺔ RSAﺑ ٔ ﺪاد ﺻﻐﲑة.
ﻣ ﺎل :ﺮﯾﺪ ﻣﺼﻄﻔﻰ ٔن ﺮﺳﻞ رﺳﺎ ﻣﺸﻔﺮة إﱃ ﶊﻮد.
ٔو ًﻻ :ﯾﻘﻮم ﶊﻮد ﲝﺴﺎب ﻣﻌﺎﻣﻼت RSAﻋﻦ ﻃﺮﯾﻖ ﺧﻄﻮات ﺧﻮارزﻣ ﺔ ﺗﻮﻟﯿﺪ اﳌﻔ ﺎح ﻣﻦ 1إﱃ ،5ﰒ ﯾ ﴩ ﰲ اﻟﺸﺒﻜﺔ
اﳌﻔ ﺎح اﻟﻌﺎم ا ي ﳛﺼﻞ ﻠﯿﻪ ﻣﺼﻄﻔﻰ .ﯾﻘﻮم ﻣﺼﻄﻔﻰ ﺑ ﺸﻔﲑ رﺳﺎﻟﺘﻪ ، x 4و ﺮﺳﻞ اﻟﻨﺺ اﳌﺸﻔﺮ إﱃ ﶊﻮد ﱪ
اﻟﺸﺒﻜﺔ ٔ .ﲑ ًا ،ﯾﻘﻮم ﶊﻮد ﺑﻔﻚ ﺸﻔﲑ رﺳﺎ ﻣﺼﻄﻔﻰ ﺑﻌﺪ ٔن ﺗﺼ ﺑﻮاﺳﻄﺔ ﻣﻔ ﺎ ﻪ اﳋﺎص . d
28 اﻟ ﺸﻔﲑ اﻟﻼﻣ ﻨﺎﻇﺮ
ﰲ اﻟﻮاﻗﻊ ،ا ٔ ﺪاد اﻟﱵ ٔورد ﻫﺎ ﰲ اﳌﺜﺎل اﻟﺴﺎﺑﻖ ﺣﱴ ﻻ ﺗﻘﱰب ﻣﻦ اﻟﻮﺻﻮل إﱃ ﲩﻢ اﳌﻔﺎﺗﯿﺢ اﳌﺴﺘ ﺪﻣﺔ ﰲ اﻟﻮاﻗﻊ .ﲆ
ﺳ ﻞ اﳌﺜﺎل ،ﻧﻮرد ﻫﺬﻩ اﳌﻌﺎﻣﻼت اﻟﱵ ﱔ ﻟﻄﻮل اﻟﲀﻣﻞ :
E 0 DFD 2C 2 A288 ACEBC 705EFAB30 E 4447541A8C 5 A47 A37185C 5 A9
p CB98389CE 4 DE19199 AA3069 B 404 FD98C801568CB9170 EB712 BF
10 B 4955CE 9C 9 DC 8CE 6855C 6123h
EBE 0 FCF 21866 FD9 A9 F 0 D72 F 7994875 A8D92 E 67 AEE 4 B515136 B 2
q A778 A8048B149828 AEA30 BD0 BA34 B977982 A3D 42168F 594CA99
F 3981DDABFAB 2369 F 229640115h
اﳌﺜﲑ ﻟﻼﻫ م ﰲ ﺗﻨﻔ ﺬ اﳋﻮارزﻣ ﺔ ،ﻫﻮ ٔن ﰲ ﲻﻠﯿﺔ اﻟ ﺸﻔﲑ ،رﻓﻌﻨﺎ اﻟﺮﺳﺎ xإﱃ ا ٔس eﻟﺘﻈﻬﺮ ﻣﻌﻨﺎ اﻟﺮﺳﺎ اﳌﺸﻔﺮة . yو
ﺑﻌﺪ ذ ،ﰲ ﲻﻠﯿﺔ ﻓﻚ اﻟ ﺸﻔﲑ ،رﻓﻌﻨﺎ اﻟﺮﺳﺎ اﳌﺸﻔﺮة yإﱃ ا ٔس dﻓﲀﻧﺖ اﻟﻨ ﺔ ﱔ اﻟﺮﺳﺎ ا ٔﺻﻠﯿﺔ . xﻟﻨﻜ ﺐ ذ
ﳌﻌﺎدﻻت :
d k pr ( y ) d k pr (e k pb ( x)) ( x e ) d x de x mod n
ﻫﺬﻩ اﻟﻌﻼﻗﺔ ﱔ ﺟﻮﻫﺮ .RSAﻟﻨﱪﻫﻦ ﲱﺔ ﻫﺬﻩ اﻟﻌﻼﻗﺔ.
2.1.3ﺮﻫﺎن ﲱﺔ ﺧﻮارزﻣ ﺔ RSA
ﺳﻨﱪﻫﻦ ٔن ﺑﻊ ﻓﻚ اﻟ ﺸﻔﲑ ﻫﻮ اﻟﺘﺎﺑﻊ اﻟﻌﻜﴘ ﻟﺘﺎﺑﻊ اﻟ ﺸﻔﲑٔ .ي ﺳﻨﱪﻫﻦ ﲱﺔ اﻟﻌﻼﻗﺔ :
d k pr ( x) ekpb1 mod n( x) d k pr (ek pr ( x)) x mod n
اﻟ ﺸﻔﲑ اﻟﻼﻣ ﻨﺎﻇﺮ 29
ﻟﱪﻫﺎن ﲱﺔ ﻫﺬﻩ اﻟﻌﻼﻗﺔ ،ﻧﻌﻮد إﱃ ﺗﻌﺮﯾﻒ اﳌﻔ ﺎح اﳋﺎص ، dاﻟﱵ ﺗﻘﻮل ٔن ) . de 1mod (nﻣﻦ ﺗﻌﺮﯾﻒ اﻟﺘﻄﺎﺑﻖ
اﳋﻄﻲ )اﳌﻠﺤﻖ ٔ( ﻫﺬﻩ ﲀ :
)de 1 s ( n
ﻣﻦ ٔ ﻞ ﺪد ﲱﯿﺢ . sﻧﻌﻮض ﰲ اﻟﻌﻼﻗﺔ ا ٔﺳﺎﺳﯿﺔ :
d k pr (ek pb ( x)) ( x e )d x1 s ( n ) x x s ( n ) x ( x ( n ) ) s
ﻣﻦ ﻫﻨﺎ ﺳ ﺎﻗﺶ ﺎﻟﺘﲔ :
اﳊﺎ ا ٔوﱃ . gcd( x, n) 1 :ﻧﻄﺒﻖ ﻣﱪﻫﻨﺔ ٔوﻟﺮ )اﳌﻠﺤﻖ ٔ( ﻟﻨﺤﺼﻞ ﲆ اﻟﻌﻼﻗﺔ :
x ( x ( n ) ) s x 1s x mod n
و ﻫﻮ اﳌﻄﻠﻮب.
اﳊﺎ اﻟﺜﺎﻧﯿﺔ . gcd( x, n) 1 :ﲟﺎ ٔن ، n pqو ﻣﻦ ٔ p, qﺪاد ٔوﻟﯿﺔ ،ﻓﻼﺑﺪ ٔن ﻜﻮن ﻫﻨﺎك وا ﺪ ﻣﳯﻢ ﯾﻘﺴﻢ . x
ﻟﻨﻔﺮض ﺑﺪون ﻓﻘﺪان اﻟﻌﻤﻮﻣ ﺔ ٔن ، p x x psﻓ ﻜﻮن . gcd( x, q) 1ﻻﻋ د ﲆ ﻣﱪﻫﻨﺔ ٔوﻟﺮ :
t , ( x ( q ) )t 1mod q
ﯾﻨﺎ :
( x ( n ) )t ( x ( p 1)( q 1) )t ( x ( q ) )t ( p 1) 1mod q
ﻻﻋ د ﲆ ﺗﻌﺮﯾﻒ اﻟﺘﻄﺎﺑﻖ اﳋﻄﻲ ،ﻫﺬا ﲀ :
t , ( x ( n ) )t 1 kq : k
x( x ( n ) )t x xkq
x( x ( n ) )t x pskq
x( x ( n ) )t x ksn : ks
x( x ( n ) )t x mod n
و ﻫﻮ اﳌﻄﻠﻮب.
2.1.4ﺗﻘ ﯿﺎت ﴪﯾﻊ ﺗﻨﻔ ﺬ ﺧﻮارزﻣ ﺔ RSA
اﻟ ﺸﻔﲑ اﻟﴪﯾﻊ ﺳﺘ ﺪام اﳌﻔﺎﺗﯿﺢ اﻟﻌﺎﻣﺔ اﻟﺼﻐﲑة 2.1.4.1
و ﱔ ٕا ﺪى اﻟﻄﺮق اﻟﻔﻌﺎ ﻟ ﴪﯾﻊ ﺗﻨﻔ ﺬ .RSAو ﱔ ﺴﺘ ﺪم ﰲ ﺸﻔﲑ RSAو ﺗ ٔ ﯿﺪ اﻟﺒﺼﲈت اﻻٕﻟﻜﱰوﻧﯿﺔ .و ﺑ ﺴﺎﻃﺔ،
ﰲ ﻫﺬﻩ اﻟﺘﻘ ﯿﺔ ،ﻧﻘﻮم ﺧ ﯿﺎر اﳌﻔ ﺎح اﻟﻌﺎم eﻟﯿﻜﻮن ﻗﳰﺔ ﺻﻐﲑة .ﺗﻄﺒﯿﻘ ًﺎ ،ﺎﻟﺒ ًﺎ ﻣﺎ ﺴﺘ ﺪم اﻟﻘﲓ 2, 7, 2 1,...ﻓ ﻜﻮن
16
ﺣﻮاﱄ ﻧﻔﺲ اﻟﻄﻮل ،ﻓﻠﲁ ﻣﻦ ا ٔ ﺪاد اﻟﺴﺎﺑﻘﺔ ﺣﻮاﱄ ﻧﺼﻒ ﻃﻮل . n
اﻟ ﺸﻔﲑ اﻟﻼﻣ ﻨﺎﻇﺮ 31
اﳋﻄﻮة : 3
ﻧﻘﻮم ﳊﺴﺎب اﻟﻨﻈﺎ ﺮ ا ٓﺗﯿﺔ :
c p q 1 mod p
cq p 1 mod q
ﻟﻌﻼﻗﺔ : y . xﺣﺴﺐ ﻣﱪﻫﻨﺔ اﻟﺒﻮاﰶ اﻟﺼﯿ ﺔ ،ﺗﻌﻄﻰ اﻟﻨ ﺔ p , xq ﻧﻘﻮم ﺑﱰﯿﺐ اﻟﻨ ﺔ xﻣﻦ ﺴ ﺎﲥﺎ اﳌﺮﺟﻌﺔ
x qc p x p pcq xq mod n
ﻣ ﺎل :ﻟﺘﻜﻦ ﻣﻌﺎﻣﻼت RSAﰷ ٓﰐ :
p 11, q 13, n pq 143
e 7, d e1 103mod120
ﺳﻨﻘﻮم ا ٓن ﺑ ﻔ ﺬ ﻓﻚ اﻟ ﺸﻔﲑ ﺑﺘﻘ ﯿﺔ اﻟﺒﻮاﰶ اﻟﺼﯿ ﺔ ﻣﻦ ٔ ﻞ اﻟﻨﺺ اﳌﺸﻔﺮ . y 15
اﳋﻄﻮة : 1
y p 15 4 mod11
yq 15 2 mod13
ﲟﺎ ٔن ﰻ ﻣﻦ ا ٔ ﺪاد اﻟﺴﺎﺑﻘﺔ ﲝﻮاﱄ ﻧﺼﻒ ﻃﻮل ، nﻓ ٔن ﳇﻔﺔ ﺗﻨﻔ ﺬ ﲻﻠﯿﺔ ﻓﻚ اﻟ ﺸﻔﲑ ﺑﺘﻘ ﯿﺔ اﻟﺒﻮاﰶ اﻟﺼﯿ ﺔ ٔﻗﻞ ﺑ ٔرﺑﻊ
ﻣﺮات ﻣﻦ ﺗﻨﻔ ﺬﻫﺎ ﻟﻄﺮﯾﻘﺔ اﻟﻌﺎدﯾﺔ.
ٔ 2.1.5ﻣﻦ RSA
ﻣﺎ ﴍﺣ ﺎﻩ إﱃ ﺪ ا ٓن ﻋﻦ ﺧﻮارزﻣ ﺔ RSAﻫﻮ ﻣﺎ ﯾﺪﻋﻰ "اﳋﻮارزﻣ ﺔ اﻟﺘﻌﻠﳰﯿﺔ" .ﻟﻜﻦ ﯾﻮ ﺪ ﰲ اﳋﻮارزﻣ ﺔ اﻟﺘﻌﻠﳰﯿﺔ اﻟﻌﺪﯾﺪ
ﻣﻦ اﻟﻨﻘﺎط اﻟﻀﻌﻒ اﻟﱵ اﺳﺘ ﺪ ﺎ ﻠﲈء اﻟ ﺸﻔﲑ ﻟﺸﻦ ﳗﻮﻣﺎت ﻣ ﻌﺪدة ﲆ .RSAﺳﻨﻘﻮم ﰲ ﻫﺬﻩ اﻟﻘﺴﻢ ﴩح ﺑﻌﺾ ﻫﺬﻩ
اﻟﻬﺠﻮﻣﺎت و ﻃﺮق ﺗﻔﺎدﳞﺎ.
ﻼﻗﺔ ا ٔﻣﻦ ﻟﺘ ﻠﯿﻞ 2.1.5.1
ٔراد ﺎﰖ ٔن ﯾﻘﻮم ﲝﺴﺎب اﳌﻔ ﺎح اﳋﺎص dﻣﻦ اﳌﻔ ﺎح اﻟﻌﺎم eو اﳌﻘﺎس . nاﻋ د ًا ﲆ ﺗﻌﺮﯾﻒ اﳌﻔ ﺎح اﳋﺎص ، dﻠﯿﻪ
ٔن ﯾﻘﻮم ﲝﺴﺎب ﻧﻈﲑ eاﻟﴬﰊ ﳌﻘﺎس ) . (nو ﻫﻮ ﲝﺎ ﺔ ﳌﻌﺮﻓﺔ ) (nﳊﺴﺎﺑﻪ .و ﳌﻌﺮﻓﺔ ) (nﳚﺐ ﻠﯿﻪ ٔن ﳝ
اﻟﻌﺪد ﻦ . p, qﻓ ﺒﺪو ٔن ٕﻣﲀﻧﻪ ٔن ﺸﻦ ﳗﻮم ﲆ RSAﲟ ﺎو ﲢﻠﯿﻞ اﳌﻘﺎس . nﺑﻌﺪ ٔن ﯾﻘﻮم ﺑﺬ ،ﯾﻘﻮم ﲝﺴﺎب
) ، (n) ( p 1)(q 1و ﻟﺘﺎﱄ ٕﻣﲀﻧﻪ ﺣﺴﺎب dﺑﻨﻔﺲ اﻟﻄﺮﯾﻘﺔ اﻟﱵ ﺣﺴﺒﻪ ﲠﺎ اﻟﻄﺮف ا ٔوﺳﻂ .ﻫﺬا ﻣﺎ ﯾﺪﻋﻰ ﻣﺴ ٔ
.RSA
ﻣﱪﻫﻨﺔ : 2.1.5.1ﻣﺴ ٔ اﳊﺼﻮل ﲆ اﳌﻔ ﺎح اﳋﺎص dﻣﻦ اﳌﻔ ﺎح اﻟﻌﺎم eو اﳌﻘﺎس ) nﻣﺴ ٔ (RSAو ﻣﺴ ٔ ﲢﻠﯿﻞ
اﳌﻘﺎس nإﱃ ﻋﻮاﻣ ا ٔوﻟﯿﺔ ﻣ ﲀﻓ ﺘﺎن ﺣﺴﺎﺑﯿ ًﺎ.
ﺮﻫﺎن ﻫﺬﻩ اﳌﱪﻫﻨﺔ ﯾﺘﻄﻠﺐ ﻣﻌﻠﻮﻣﺎت ﻣ ﻘﺪﻣﺔ ﰲ دراﺳﺔ ﺗﻌﻘ ﺪ اﳋﻮارزﻣ ﺎت ،ﺳ ﺎوز ذ ﺮﻩ ﻧﻈﺮ ًا ﻟﻄﻮ .
ﲟﺎ ٔﻧﻨﺎ ا ﱰ اﻟﻌﺪد ﻦ p, qﺒﲑﻦ ﲝﯿﺚ ٔﻧﻪ ﻣﻦ اﳌﺴﺘﺤﯿﻞ ﺣﺴﺎﺑﯿ ًﺎ ﲢﻠﯿﻞ nإﱃ ﻋﻮاﻣ ا ٔوﻟﯿﺔ ،ﳁﻦ اﳌﺴﺘﺤﯿﻞ ﺣﺴﺎﺑﯿ ًﺎ
ﳒﺎح ﻫﺬﻩ اﻟﻬﺠﻮم .ﻟﻜﻦ ،ﱂ ﯾﱲ إﺛﺒﺎت ٔن ﴪ RSAو ﲢﻠﯿﻞ nﲻﻠﯿﺘﺎن ﻣ ﲀﻓ ﺘﺎن ﺣﺴﺎﺑﯿ ًﺎ ﺣﱴ اﻠﺤﻈﺔ ﻫﺬﻩ.
اﳌﻔﺎﺗﯿﺢ اﻟﻌﺎﻣﺔ و اﻟﺮﺳﺎﺋﻞ اﻟﺼﻐﲑة 2.1.5.2
ﻛﲈ ﻗﺸﻨﺎ ﺳﺎﺑﻘ ًﺎ ﰲ ٕ ،1.5.2ﻣﲀﻧﻨﺎ ٔن ﴪع ﲻﻠﯿﺔ اﻟ ﺸﻔﲑ ﻋﻦ ﻃﺮﯾﻖ اﺧ ﯿﺎر اﳌﻔ ﺎح اﻟﻌﺎم eﻟﯿﻜﻮن ﺻﻐﲑ ًا .و ﻣﻦ اﳌﺘﻌﺎرف
ﻠﯿﻪ اﺧ ﯿﺎر . e 3ﻟﯿﻜﻦ ﯾﻨﺎ ﻃﺮف ﺮﯾﺪ إرﺳﺎل اﻟﺮﺳﺎ xإﱃ ﺛﻼﺛﺔ ٔﻃﺮاف ﳐﺘﻠﻔﺔ ،و ﺴﺘ ﺪم اﳌﻔ ﺎح e 3ﻣﻦ ٔ ﻞ
ﲻﻠﯿﺎت اﻟ ﺸﻔﲑ اﻟﺜﻼث .ﻓ ﻘﻮم ﻫﺬا اﻟﻄﺮق ٕرﺳﺎل ) y x mod nﳚﺐ ٔن ﻜﻮن اﳌﻘﺎﺳﺎت اﻟﺜﻼث ﳐﺘﻠﻔﺔ( .و ﻟﻜﻦ،
i
3
i
ﻜﻮن . m xو ﻟﺘﺎﱄ ٕﻣﲀﻧﻪ ٔن ﳛﺼﻞ ﲆ xﲝﺴﺎب اﳉﺬر اﻟﺘﻜﻌﯿﱯ ل . m 3
ﻟﲄ ﻧﺘﺠﻨﺐ ﺪوث ﻫﺬا اﻟﻬﺠﻮمٕ ،ﻣﲀﻧﻨﺎ ٔن ﺰﯾﺪ ﲆ xﺳﻠﺴﺔ ﺷﺒﻪ ﻋﺸﻮاﺋﯿﺔ ﻣﻦ اﻟﺒﺘﺎت ﻗ ﻞ ﲻﻠﯿﺔ اﻟ ﺸﻔﲑ .و ﻣﻦ ٔ ﻞ
ﰻ ﻃﺮف ﺮﯾﺪ إن ﺮﺳﻞ رﺳﺎ ،ﻧﻮ ﺳﻠﺴﺔ ﳐﺘﻠﻔﺔ ﻣﻦ اﻟﺒﺘﺎت ،و ﻫﻮ ﻣﺎ ﯾﺪﻋﻰ ب"ﲤﻠﯿﺢ" اﻟﺮﺳﺎ .
و ﻛﺬ ،ﻻ ﳚﺐ ٔن ﺴﺘ ﺪم ﻣﻔﺎﺗﯿﺢ اﻟ ﺸﻔﲑ اﻟﺼﻐﲑة ﻣﻦ ٔ ﻞ اﻟﺮﺳﺎﺋﻞ اﻟﻘﺼﲑة ﻣﻘﺎرﻧﺔ ﻣﻊ اﳌﻔ ﺎح اﻟﻌﺎم .ﻓﺎٕذا ﰷن x n
e
،ﻓ ﺎٕﻣﲀن اﳌﻬﺎﰖ ٔن ﺴﱰﺟﻊ اﻟﺮﺳﺎ ا ٔﺻﻠﯿﺔ ﻋﻦ ﻃﺮﯾﻖ ﺣﺴﺎب ٕ . yﻣﲀﻧﻨﺎ ٔن ﻧﺘﺠﻨﺐ ﻫﺬﻩ اﳌﺸﳫﺔ ﻋﻦ ﻃﺮﯾﻖ "ﲤﻠﯿﺢ"
e
اﻟﺮﺳﺎ .
اﻟﺮﺳﺎﺋﻞ اﻟﻘﺼﲑة ﺑﻐﺾ اﻟﻨﻈﺮ ﻋﻦ اﳌﻔ ﺎح اﻟﻌﺎم ﺸﲁ ﺧﻄﺮ ًا .ﻓﺎٕذا ﰷن ﺪد اﻟﺮﺳﺎﺋﻞ اﳌﻤﻜ ﺔ ﻣﻦ ﻃﻮل ﳏﺪد ﻗﺼﲑ ﺴ ًﺎ ٔو
ﺣﱴ ﻣ ﻮﻗﻊٕ ،ﻣﲀن ﺎﰖ ﺑ ﺴﺎﻃﺔ ٔن ﺸﻔﺮ ﰻ ﺣ ﻻت اﳌﻤﻜ ﺔ ﺣﱴ ﳛﺼﻞ ﲆ اﻟﺮﺳﺎ اﳌﺸﻔﲑ اﻟﱵ ر ٓﻫﺎ ﻟﺸﺒﻜﺔ.
ٔﯾﻀ ًﺎ ،ﲤﻠﯿﺢ اﻟﺮﺳﺎ ٔ ﺪ ﻃﺮق ﺗﻔﺎدي ﻫﺬﻩ اﳌﺸﳫﺔ.
اﳌﻔﺎﺗﯿﺢ اﳋﺎﺻﺔ اﻟﺼﻐﲑة 2.1.5.3
ﺑﻨﻔﺲ اﻟﻄﺮﯾﻘﺔ اﻟﱵ ﴎﻋﻨﺎ ﻓﳱﺎ ﺗﻨﻔ ﺬ اﳋﻮارزﻣ ﺔ ﻣﻦ ٔ ﻞ ﲻﻠﯿﺔ اﻟ ﺸﻔﲑٕ ،ﻣﲀﻧﻨﺎ ٔن ﴪع ﲻﻠﯿﺔ ﻓﻚ اﻟ ﺸﻔﲑ ﺧ ﯿﺎر ٔس
6
ﻓﻚ اﻟ ﺸﻔﲑ ﺻﻐﲑ ًا .ﻟﻜﻦ ،ﰲ ﺎل ﰷن ) gcd( p 1, q 1ﺻﻐﲑا -و ﻫﺬﻩ ﱔ اﳊﺎ اﻟﻌﺎﻣﺔ ، -و ﰷن ٔ dﻗﴫ ﻣﻦ رﺑﻊ n
ﯾﻨﺼﺢ ﺑ ٔن ﻜﻮن ﻃﻮل ﳣﺜﯿﻞ اﻟﺜﻨﺎﰄ ،ﻓ ﻮ ﺪ ﺧﻮارزﻣ ﺔ ﳊﺴﺎب اﳌﻔ ﺎح اﳋﺎص dﻗﺎم واﯾﲊ ﺑﺪراﺳﳤﺎ ﰲ رﺳﺎﻟﺘﻪ.
اﳌﻔ ﺎح اﳋﺎص ﯾﻘﺎرب ﻃﻮل اﳌﻘﺎس . n
اﳌﻘﺎﺳﺎت اﳌﺸﱰﻛﺔ 2.1.5.4
ﺎدة ﻣﺎ ﯾﱲ اﻗﱰاح وﺟﻮد ﻃﺮف ﻣﻮﺛﻮق ﰲ ﺷﺒﻜﺔ ﻣﺎ ،و ﯾﻘﻮم ﻫﺬا اﻟﻄﺮف ﲝﺴﺎب اﳌﻘﺎس ، nو ﻫﺬا اﳌﻘﺎس وا ﺪ ﶺﯿﻊ
ا ٔﻃﺮاف ﰲ ﻫﺬﻩ اﻟﺸﺒﻜﺔ .و ﯾﱲ ﺗﻮزﯾﻊ ﺛﻨﺎﺋﯿﺎت ) (e , dﻟﲁ ﻃﺮﻓﲔ ﰲ ﻫﺬﻩ اﻟﺸﺒﻜﺔ.
i i
ﻟﻜﻦ ،ﺗﻮ ﺪ ﻃﺮﯾﻘﺔ ﲤﻜ ﻨﺎ ﻣﻦ ﲢﻠﯿﻞ nﻋﻦ ﻃﺮﯾﻖ ﻣﻌﺮﻓﺔ اﻟﺜﻨﺎﺋﯿﺔ ) . (e, dو ﻟﺘﺎﱄ ،إذا ﻋﺮف ﻃﺮف وا ﺪ ﲢﻠﯿﻞ ، nﻓﻘﺪ
ﻋﺮﻓﻪ ﻣﻦ ٔ ﻞ ﲨﯿﻊ ا ٔﻃﺮاف ﰲ ﻫﺬﻩ اﻟﺸﺒﻜﺔ.
اﻟﻬﺪف ﻣﻦ ﻫﺬﻩ اﻟﻄﺮﯾﻘﺔ ﻫﻮ ﺟﻌﻞ اﳌﺮاﺳﻼت ﱪ ﺷﺒﻜﺔ ﻣﺎ ٔﻛﱶ ﻛﻔﺎءة و ﴎ ﺔ ،ﻟﻜﳯﺎ ﲑ ٓﻣ ﺔ .ا ﳚﺐ ﲆ ﰻ ﻃﺮﻓﲔ
اﲣﺎذ ﻣﻘﺎس nﺎص ﲠﲈ. i
6ﻫﻨﺎ ﻧﻘﻮم ﲝﺴﺎب ا ٔس اﳋﺎص ٔو ًﻻ ،ﰒ ﳓﺴﺐ ﻧﻈﲑﻩ اﻟﴬﰊ ﳌﻘﺎس nو ﻟ ﺲ ﻟﻌﻜﺲ.
34 اﻟ ﺸﻔﲑ اﻟﻼﻣ ﻨﺎﻇﺮ
ﰲ ﻧﻈﺎم RSAﲈ ﰷﻧﺖ ﻣﻌﻤﻼﺗﻪ .ﲆ ﺳ ﻞ اﳌﺜﺎل x 1, x 0, x 1ﱔ رﺳﺎﺋﻞ ﻻ ﳐﻔ ﺔٕ .ﻣﲀﻧﻨﺎ ٔن ﻧﻌﺮف ﺪد
اﻟﺮﺳﺎﺋﻞ اﻟﻼﳐﻔ ﺔ ﰲ ﻧﻈﺎم RSAﲟﻌﻤﻼت ﻣﺎ ﻟﺼﯿﻐﺔ :
1 gcd(e 1, p 1) 1 gcd(e 1, q 1)
ﻓﺪاﲚ ًﺎ ﻜﻮن ﺪد اﻟﺮﺳﺎﺋﻞ اﻟﻼﳐﻔ ﺔ ﻫﻮ ﲆ ا ٔﻗﻞ . 9ﻓﺎٕذا ﰷﻧﺖ ا ٔ ﺪاد p, qﻋﺸﻮاﺋﯿﺔ ،و اﳌﻔ ﺎح اﻟﻌﺎم ﺻﻐﲑ
، e 3, e 2 1ﻓ ﻜﻮن ﺪد اﻟﺮﺳﺎﺋﻞ اﻟﻼﳐﻔ ﺔ ﺻﻐﲑ و ﻤﻞ ٔﻣﺎم ﺪد اﻟﺮﺳﺎﺋﻞ اﳌﻤﻜ ﺔ .و ﻟﺘﺎﱄ ﻻ ﺸﲁ اﻟﺮﺳﺎﺋﻞ 16
k
pb , A A
k B
pb ,B
k k
k AB k pbpr,,AB Ab mod p k AB k pbpr,,BA B a mod p
k
k AB k pbpr,,BA B a ( b ) a mod p
و اﻟﻘﳰﺔ اﻟﱵ ﺣﺴﳢﺎ ﻣﺼﻄﻔﻰ ﱔ :
k
k AB k pbpr,,AB Ab ( a )b mod p
إذا ﻫﲈ ﻣ ﻔﻘﺎن ﲆ اﳌﻔ ﺎح ﻧﻔﺴﻪ .ﻓ ﺑﻌﺪ ،ﺳ ﺴﺘ ﺪﻣﺎن ﻫﺬا اﳌﻔ ﺎح ﻣﻦ ٔ ﻞ اﻟ ﺸﻔﲑ اﳌﺘﻨﺎﻇﺮ ب ٔ AESو ٔي ﺧﻮارزﻣ ﺔ
ﻣ ﻨﺎﻇﺮة ٔﺧﺮى .و ﻟﻜﻦ ،إذا ٔراد ﺎﰖ ﻣﺎ ٔن ﳛﺴﺐ اﳌﻔ ﺎح ﻣﻦ اﳌﻌﻄﯿﺎت اﳌﻮﺟﻮدة ﰲ اﻟﺸﺒﻜﺔ ،و ﱔ Aو ، Bﻓﻌﻠﯿﻪ ٔن
ﳛﺴﺐ ﻣﻦ و . و ﻟﻜﻦ ﻫﺬﻩ ﱔ ﻣﺴ ٔ اﻠﻮ ﺎرﯾﱲ ،و ﺣﺴﺎﺑﻪ ﺳﯿﻜﻮن ﺷﺪﯾﺪ اﻟﳫﻔﺔ اﳊﺴﺎﺑﯿﺔ.
b a ab
36 اﻟ ﺸﻔﲑ اﻟﻼﻣ ﻨﺎﻇﺮ
.4اﴩ . p, C, P
وﻟﯿﻜﻦ ﻟﻌﲅ ٔن ﲻﻠﯿﺔ اﺧ ﯿﺎر ﻣ ﺤﻦ ﻗﴢ ﱔ ﲻﻠﯿﺔ ﺻﻌﺒﺔ ﻠﻐﺎﯾﺔ ،إذ ﳚﺐ ان ﳣﺘﻊ اﳌﻨﺤﲏ ﺑﺒﻌﺾ اﳋﻮاص ﻟﲄ ﻜﻮن ٔﻛﱶ
اﻣﺎ ً ،وﺳ ﳫﻢ ٔﻛﱶ ﰲ ﻫﺬا اﳌﻮﺿﻮع .وا ٓن ﺳ ﴩح ﲻﻠﯿﺔ ﺗﺒﺎدل اﳌﻔ ﺎح . ECDHKE
اﳌﺮ ا ٔﺳﺎﺳﯿﺔ :
ﶊﻮد ﻣﺼﻄﻔﻰ
b k pr , B 2,3,..., # C 1 a k pr , A 2, 3,..., # C 1
) B k pub , B bP ( xB , yB ) k pub , A aP A ( x A , y A
k
pb , AA
k B
pb ,B
k AB bA k AB aB
2
C : yو ). P (5,1 x3 2 x 2 mod17 ﻣ ﺎل :ﻟﯿﻜﻦ ﯾﻨﺎ
ﶊﻮد ﻣﺼﻄﻔﻰ
b k pr , B 10 a k pr , A 3
)B k pub , B 10 P (7,11) A k pub , A 3P (10, 6
k
pb , A ) A (10,6
k ) B (7,11
pb , B
) PRQ ( rP P ) R ( rQ , Q ) ( r ,
ﻟﺼﯿﻎ : ﺣ ﺚ ﯾﻌﻄﻰ rو
r rP rQ mod p
وﻫﻮ ﻣﺎ ﯾﻌﺪ ﺗﻔﻮﻗ ًﺎ ﲆ ECCاﻟﱵ ﺗﺒﻠﻎ رﺗ ﳤﺎ ﻓ ﻪ ﺪﻫﺎ ا ٔﻗﴡ ﻋﻨﺪ 2 p 1 وﺑﺬ ﳓﺼﻞ ﲆ زﻣﺮة دا ﺮﯾﺔ رﺗ ﳤﺎ ﱔ
p p 1وﻓﻘ ًﺎ ﻟﻨﻈﺮﯾﺔ ﻫﺎس .
3.1.2ﺗﺒﺎدل ﻣﻔ ﺎح دﯾﻔﻲ-ﻫﯿﻠﲈن ﰲ ا وا ﺮ اﻟﻘﻄﺒﯿﺔ
ﺳ ﺴﺘ ﺪم زﻣﺮﺗﻨﺎ ا ا ﺮﯾﺔ ﻣﻦ ٔ ﻞ إﳒﺎز ﺗﺒﺎدل ﻣﻔ ﺎح دﯾﻔﻲ-ﻫﯿﻠﲈن .و ﺳﻨﻘﻮم ﺑﺬ ﺑﻄﺮﯾﻘﺔ ﻣﺸﺎﲠﺔ ﻠﺘﺒﺎدل اﻟﻌﺎدي و اﻟﺘﺒﺎدل
ﳌﻨﺤﻨﯿﺎت اﻟﻨﺎﻗﺼﯿﺔ.
اﳌﺮ اﻟﺘﺤﻀﲑﯾﺔ :
.1ا ﱰ ﺪد ًا ٔوﻟﯿ ًﺎ ﺒﲑ ًا . p
.2ا ﱰ ﻧﻘﻄﺔ . P M
.3اﴩ . p, P
ﻧﻼﺣﻆ ﰲ اﳌﺮ اﻟﺘﺤﻀﲑﯾﺔ ٔﻧﻪ ﯾﻮ ﺪ ﻣ ﺤﻮل وﺣ ﺪ ﻓﻘﻂ ﻫﻮ اﻟﻌﺪد ا ٔوﱄ ، pو ﻫﺬا ﯾﻌﺘﱪ ٔﻓﻀﻠﯿﺔ ﲆ ECCاﻟﱵ ﺗﻘﻮم
ﺑ ﴩ ﺛﻼث ﻣ ﺤﻮﻻت P, a, bﰲ اﻟﺸﺒﻜﺔ.
اﳌﺮ ا ٔﺳﺎﺳﯿﺔ :
ﶊﻮد ﻣﺼﻄﻔﻰ
b k pr , B 2,3,..., 2 p 1 a k pr , A 2, 3,..., 2 p 1
B k pub , B P b A k pub , A P a
k A
pb , A
اﳋﻮارزﻣ ﺔ : 3.1.4
r i
ا ﻞ :اﻟﻨﻘﻄﺔ . P Mاﻟﻌﺪد . d d 2
i 0 i
n
اﳋﺮج . P :
اﳋﻮارزﻣ ﺔ :
1. T P
2. for i r - 1 downto i 0
2.1 T T 2
2.2 if d i 1
2.2.1 T TRP
3. return T
3.2اﻟﱪ ﻣﺞ
3.2.1ﺷﯿﻔﺮة RSA
ﳃﻨﺎ ﻜ ﺎﺑﺔ ﺮ ﻣﺞ ﺑﻠﻐﺔ JAVAﳛﺎﰾ ﺗﻨﻔ ﺬ ﺧﻮارزﻣ ﺔ .RSAﻓ ﻪ ﺛﻼث ﺻﻔﻮف .اﻟ ٔ ول ﻋﻦ اﳋﻮارزﻣ ﺔ اﻻٕﻗﻠﯿﺪﯾﺔ اﳌﻤﺪدة ،و
اﻟﺜﺎﱐ ﻋﻦ ﻣﻮ ا ٔرﻗﺎم اﻟﻌﺸﻮاﺋﯿﺔ و ا ٔ ﲑ ﻫﻮ اﻟﺘﻨﻔ ﺬ اﻟﻔﻌﲇ ﻠﱪ ﻣﺞ.
ﺻﻒ اﳋﻮارزﻣ ﺔ اﻻٕﻗﻠﯿﺪﯾﺔ اﳌﻤﺪدة :
;package rsa
;import java.math.BigInteger
publicclass ExtendedEuclideanAlgorithm
{
;BigInteger alpha, beta
)publicvoid getAlphaBeta(BigInteger a, BigInteger b
اﻟ ﺸﻔﲑ اﻟﻼﻣ ﻨﺎﻇﺮ 43
{
BigInteger d = a.gcd(b);
BigInteger x, y;
if(a == BigInteger.ZERO)
{
y = BigInteger.ONE;
this.beta = y;
x = BigInteger.ZERO;
this.alpha = x;
}
elseif(b == BigInteger.ZERO)
{
y = BigInteger.ZERO;
this.beta = y;
x = BigInteger.ONE;
this.alpha = x;
}
else
{
BigInteger x1 = BigInteger.ZERO;
BigInteger x2 = BigInteger.ONE;
BigInteger y1 = BigInteger.ONE;
BigInteger y2 = BigInteger.ZERO;
while(b.compareTo(BigInteger.ZERO) != 0)
{
BigInteger q = a.divide(b);
BigInteger r = a.subtract(q.multiply(b));
x = x2.subtract(q.multiply(x1));
y = y2.subtract(q.multiply(y1));
a = b;
b = r;
x2 = x1;
x1 = x;
y2 = y1;
y1 = y;
}
d = a;
x = x2;
y = y2;
this.alpha = x;
this.beta = y;
}
}
}
import java.util.Random;
import java.math.BigInteger;
import java.security.SecureRandom;
publicclass RNG
{
publicstatic BigInteger generateBigPrime ()
{
SecureRandom sr = new SecureRandom();
Random primeSource = new Random(sr.nextLong());
return BigInteger.probablePrime(1024, primeSource);
}
import rsa.RNG;
import rsa.ExtendedEuclideanAlgorithm;
import java.math.BigInteger;
import java.util.Random;
import java.util.Scanner;
publicclass RSA
{
publicstaticvoid main(String[] args)
{
// defining vars...
BigInteger p = RNG.generateBigPrime();
BigInteger q = RNG.generateBigPrime();
// BigInteger p = new BigInteger("5");
// BigInteger q = new BigInteger("7");
BigInteger n = p.multiply(q);
BigInteger fn = (p.subtract(BigInteger.ONE)).multiply(q.subtract(BigInteger.ONE));
// computing e...
while(e.gcd(fn).compareTo(BigInteger.ONE) != 0 || e.compareTo(fn.subtract(BigInteger.ONE)) == 1)
{
e = new BigInteger(5, eSource);
}
if(message.compareTo(n) == 1)
{
System.out.println("your message is too big");
}
// decrypting message...
if(alpha.compareTo(BigInteger.ZERO) == -1)
{
alpha = alpha.add(fn);
}
}
}
ﺷﯿﻔﺮة ا وا ﺮ اﻟﻘﻄﺒﯿﺔ3.2.2
اﻟﺜﺎﱐ، ا ٔول ﻫﻮ ﻣﻮ ا ٔرﻗﺎم اﻟﻌﺸﻮاﰄ. ﻓ ﻪ ﺛﻼث ﺻﻔﻮف.و ﻛﺬ ﳃﻨﺎ ﲝﺎﰷة ﺗﺒﺎدل ﻣﻔ ﺎح دﯾﻔﻲ ﻫﯿﻠﲈن ﰲ ا وا ﺮ اﻟﻘﻄﺒﯿﺔ
.و ﺻﻒ اﻟﻨﻘﻄﺔ و ا ٔ ﲑ ﻫﻮ اﻟﺘﻨﻔ ﺬ اﻟﻔﻌﲇ
: ﺻﻒ ﻣﻮ ا ٔرﻗﺎم اﻟﻌﺸﻮاﰄ
package cryptography.prototype;
import java.util.Random;
import java.math.BigInteger;
import java.security.SecureRandom;
publicclass RNG
{
}
: ﺻﻒ اﻟﻨﻘﻄﺔ
package cryptography.prototype;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.math.MathContext;
publicclass Point
{
private BigDecimal radius;
private BigDecimal angle;
privatestatic final BigDecimal bigPi = new BigDecimal("3.141592653589793");
privatestatic final BigDecimal doubleBigPi = new BigDecimal("6.283185307179586476925286766559");
public Point(BigDecimal q)
{
this.radius = new BigDecimal("1");
this.angle = bigPi.divide(q, MathContext.DECIMAL128);
}
publicvoid add()
{
this.angle = this.angle.add(one);
this.radius = this.radius.add(one);
while(this.angle.compareTo(doubleBigPi) == 1)
{
this.angle = this.angle.subtract(doubleBigPi);
}
}
publicvoid addDouble()
{
this.angle = this.angle.add(one);
this.radius = this.radius.add(one);
this.angle = this.angle.multiply(two);
this.radius = this.radius.multiply(two);
while(this.angle.compareTo(doubleBigPi) == 1)
{
this.angle = this.angle.subtract(doubleBigPi);
}
}
اﻟ ﺸﻔﲑ اﻟﻼﻣ ﻨﺎﻇﺮ 47
import cryptography.prototype.RNG;
import cryptography.prototype.Point;
import java.util.Scanner;
import java.util.Random;
import java.math.BigInteger;
import java.math.BigDecimal;
publicclass CryptographyPrototype
{
BigInteger a = RNG.generateBigNumber();
p.pow(a);
BigInteger b = RNG.generateBigNumber();
p.pow(b);
: ﺣ ﺚ.flip-flop ﰒ ﻧﻘﻮم ﲝﺴﺎب ﺧﺮج ﰻ. ﺑﺘﺨﺰﻦ ﻗﳰﺘﻪ ي ﯾﻠﯿﻪflip-flop ﯾﻘﻮم ﰻ: ٔوﻻ. S ﲦﺘﺒﺪ ٔ ﲻﻠﯿﺔ ﺗﻮﻟﯿﺪ
i
1
اﻟﻨﻈﺎم اﻟﺜﻨﺎﰄ . a i
2
ﰒ ﻧﻘﻮم ﲝﺴﺎب اﻟﺒﺘﺎت اﳌﺸﻔﺮة bﺣ ﺚ:i
اﻟﻜﻮد 3.2.3.1
>#include<iostream
>#include<cmath
>#include<string
>#include<cstring
;]bool a1[8000],b1[8000
;]int a[1000],b[1000
;]char x[1000
;usingnamespace std
{)][void bin(int a
;int p,e=0
;]bool q[8
{)for(int i=0;i<strlen(x);i++
{)strlen(x);i++
اﻟ ﺸﻔﲑ اﻟﻼﻣ ﻨﺎﻇﺮ 49
int t=a[i];
p=0;
while(1){
q[p]=t%2;
t/=2;
if(t==0)
break;
else
p++;
}
while(p<7){
q[p+1]=0;
p++;
}
for(int j=e;j<e+8;j++){
a1[j]=q[p];
p--;
}
e+=8;
}
}
}
b[t]=sum;
t++;
}
void main(){
bool f1[2][93],f2[2][84],f3[2][111];
bool s1,s2,s3,s[1000];
cout<<"Enter your 288-bit key"<< endl;
for(int i=0;i<93;i++)
cin>>f1[0][i];
for(int i=0;i<84;i++)
cin>>f2[0][i];
for(int i=0;i<111;i++)
cin>>f3[0][i];
for(int j=0;j<1000;j++){
for(int i=0;i<92;i++)
f1[1][i+1]=f1[0][i];
for(int i=0;i<83;i++)
f2[1][i+1]=f2[0][i];
for(int i=0;i<110;i++)
f3[1][i+1]=f3[0][i];
s1=(f1[1][91]*f1[1][90]+f1[1][92]+f1[1][65])%2;
s2=(f2[1][83]+f2[1][82]*f2[1][81]+f2[1][68])%2;
s3=(f3[1][110]+f3[1][109]*f3[1][108]+f3[1][65])%2;
f1[1][0]=(f1[1][68]+s3)%2;
f2[1][0]=(f2[1][77]+s1)%2;
f3[1][0]=(f3[1][86]+s2)%2;
s[j]=(s1+s2+s3)%2;
50 اﻟ ﺸﻔﲑ اﻟﻼﻣ ﻨﺎﻇﺮ
for(int i=0;i<93;i++)
f1[0][i]=f1[1][i];
for(int i=0;i<84;i++)
f2[0][i]=f2[1][i];
for(int i=0;i<111;i++)
f3[0][i]=f3[1][i];
}
cout <<"Enter
"Enter your text : "
"<< endl;
cin>>x;
for(int i=0;i<strlen(x);i++){
a[i]=x[i];
if(a[i]<0) a[i]+=256;
}
bin(a);
for(int i=0;i<strlen(x)*8;i++)
b1[i]=(s[i]+a1[i])%2;
dec(b1);
cout <<"Your
"Your result is : ""<< endl;
for(int i=0;i<strlen(x);i++){
strlen(x);i++){
if(b[i]<0) b[i]+=256;
cout<<(char)b[i];
}
cout<<endl<<endl<<endl;
system("pause");
}
4اﳋﺎﲤﺔ
ﰲ اﳋﺘﺎم ،ﻧﻨﻮﻩ إﱃ ٔﳘﯿﺔ دراﺳﺔ ﲅ اﻟ ﺸﻔﲑ ﳌﺎ ﻣﻦ دور ﺒﲑ ﰲ ﺣﻔﻆ اﳌﻌﻠﻮﻣﺎت وا ٔﴎار اﳌﺘﻌﻠﻘﺔ ﲜﻤﯿﻊ اﳉﻮاﻧﺐ اﻟﻌﻠﻤﯿﺔ
واﻟﺴﯿﺎﺳﯿﺔ واﻟﻌﺴﻜﺮﯾﺔ ،ﻛﲈ ﳚﺐ اﻻٕﺷﺎرة اﱃ ﲨﯿﻊ اﳌﻮاﺿﯿﻊ اﻟﱵ ﰎ ادرا ﺎ ﰲ ﻗﺴﻢ )اﻟﻮا ﺔ اﻟﺮ ﺿﯿﺔ ﻠﻤﴩوع(ﰲ اﳌﻨﺎﱑ
اﻟﺘﻌﻠﳰﯿﺔ ﻣﻦ ٔ ﻞ ﻓﻬﻢ ٔﻛﱪ ﻠ ﺸﻔﲑ ﲑ اﳌﺘﻨﺎﻇﺮ.
ﳃﻨﺎ ﰲ ﻣﴩوع ﲝﺜﻨﺎ ﻫﺬا ﻟﺘﻮﺻﻞ إﱃ زﻣﺮة دا ﺮﯾﺔ ﺪﯾﺪة ﱂ ﻜﻦ ﻣﻜ ﺸﻔﺔ ﻣﻦ ﻗ ﻞ .و ﳣﺘﻊ ﻫﺬﻩ اﻟﺰﻣﺮة ﺑﺒﻌﺾ اﳋﺎص اﻟﱵ
ﺮﻓﻊ ﻣﻦ ﻛﻔﺎءﲥﺎ ﻣﻘﺎرﻧﺔ ﻟﺰﻣﺮ ا ٔﺧﺮى .ﻛﲈ ﻛﺘﺒ ﺎ ﺮ ﳎ ًﺎ ﻟﯿ ﺎﰾ ﻫﺬﻩ اﻟﺸﯿﻔﺮة ،ﻟﻨﱪﻫﻦ ٔن ﲅ اﻟ ﺸﻔﲑ ﻟ ﺲ ﺑﺒﻌﯿﺪ اﳌﻨﺎل ﻋﻦ
ٔﻣ ﻨﺎ .و ﻧ ٔم ٔن ﻜﻮن ﻫﺬا اﳌﴩوع ﺤﺠﺮ ا ٔﺳﺎس ﻟﺒﺪاﯾﺔ ازدﻫﺎر ﲅ اﻟ ﺸﻔﲑ ﰲ ﺳﻮر .
وا ان ﻗﺪﻣﺎ ﻟﻨﺎ ا ﰪ ا ٔﻛﱪ ﻣﳣﺜ ًﻼ ﳌﺮﻛﺰ اﻟﻮﻃﲏ ﻠﻤﳣﲒﻦ وﻋﴗ ٔن ﻜﻮن ﻗﺪ ﻗﺪﻣ ﺎ ﻣﺎ ﺴﺘﻄﯿﻊ ﰲ ﻫﺬا ا ﺎل ﻟﺘﺼﺒﺢ
ﺳﻮر ﻣﻦ ا ول اﳌﺘﻘﺪﻣﺔ ﰲ ﻫﺬا ا ﺎل.
ٔﻋﻀﺎء اﳌﴩوع:
ﺎ ﺮ ٔدﯾﺐ ـ ﻣﺼﻄﻔ ﻠﯿﻞ ـ ﶊﻮد ﻗﺮﻩ ﻓﻼح ـ ﺎ إﺳﲈﻋﯿﻞ
54 اﻟ ﺸﻔﲑ اﻟﻼﻣ ﻨﺎﻇﺮ
اﳌﺼﻄﻠ ﺎت5
English ﻋﺮﰊ
CRT Chinese Remainders ﻣﱪﻫﻨﺔ اﻟﺒﻮاﰶ اﻟﺼﯿ ﺔ
Theorem
ECC Elliptic Curves اﻟ ﺸﻔﲑ ﳌﻨﺤﻨﯿﺎت اﻟﻨﺎﻗﺼﯿﺔ
Cryptography
ECDHKE Elliptic Curves Diffie- ﻫﯿﻠﲈن ﳌﻨﺤﻨﯿﺎت-ﺗﺒﺎدل ﻣﻔ ﺎح دﯾﻔﻲ
Hellman Key Exchange اﻟﻨﺎﻗﺼﯿﺔ
DHKE Diffie-Hellman Key ﺗﺒﺎدل ﻣﻔ ﺎح
Exchange
RNG Random Number ﻣﻮ ٔرﻗﺎم ﻋﺸﻮاﺋﯿﺔ
Generator
RSA Rivest Shamir Adleman ٔﺳﲈء اﻟﻌﻠﲈء راﯾﻔﺖ ﺷﺎﻣﲑ و ٔدﯾﻠﲈن
اﻟ ﺸﻔﲑ اﻟﻼﻣ ﻨﺎﻇﺮ 55
: اﳌﺮاﺟﻊ
1- A. Menezes, P. VanOorschot, S. Vanstone. Handbook of Applied Cryptography.
CRC press, Boca Raton, Florida, USA, 1997.
2- Christof Paar, Jan Penzel. Understanding Cryptography. Springer, Heidelberg,
Berlin, Germany, 2010.
3- Titu Andrescu, Dorin Andrica. Number Theory structures, examples and
problems.Springer, London, United Kingdom, 2010.
4- W. Diffie, M.Hellman. New directions in cryptography. IEEE Transactions on
Information Theory, IT-22:644-644, 1976.
5- T.ElGamal. Apublic-key cryptosystem and a digital signature scheme based on
discrete logarithms, IEEE Transactions on Information Theory, IT-31(4):469-472,
1985.
6- Dan Boneh, Ron Rivest, Adi Shamir, and Len Adelman. Twenty Years of Attacks on
the RSA Cryptosystem. Notices of the AMS, 46:203-213, 1999.