Download as pdf or txt
Download as pdf or txt
You are on page 1of 4

‫‪1‬‬ ‫ﻣﻘﺭﺭ ﻣﺎﺩﺓ ﺃﻣﻥ ﺍﻟﻣﻌﻠﻭﻣﺎﺕ < ﺍﻟﻣﺣﺎﺿﺭﺓ ﺍﻟﺛﺎﻟﺛﺔ ﻋﺷﺭ ‪2011-01-06‬‬

‫‪ ‬ﺧﻮﺍﺭﺯﻣﻴﺔ ﺍﻟﺘﺸﻔﻴﺮ ‪:RSA‬‬

‫ﻓﻲ ﺃﻧﻅﻣﺔ ﺍﻟﺗﺷﻔﻳﺭ ﺍﻟﺗﻲ ﺩﺭﺳﻧﻬﺎ ﺣﺗﻰ ﺍﻵﻥ ﻭﺟﺩﻧﺎ ﺃﻧﻪ ﻳﺗﻡ ﺍﺧﺗﻳﺎﺭ ﺍﻟﻣﻔﺗﺎﺡ ‪ K‬ﻣﻥ ﻗﺑﻝ ‪ Bob‬ﻭ ‪ Alice‬ﺛﻡ ﺗﻌﻁﻰ ﻗﺎﻋﺩﺓ‬
‫ﺗﺷﻔﻳﺭ ‪ e k‬ﻭﻗﺎﻋﺩﺓ ﻓﻙ ﺗﺷﻔﻳﺭ ‪ . d k‬ﺃﻧﻅﻣﺔ ﺍﻟﺗﺷﻔﻳﺭ ﻣﻥ ﻫﺫﺍ ﺍﻟﻧﻭﻉ ﺗﺳﻣﻰ ﺃﻧﻅﻣﺔ ﺗﺷﻔﻳﺭ ﺍﻟﻣﻔﺗﺎﺡ ﺍﻟﺧﺎﺹ ‪Privet key‬‬
‫ﻭﺃﻥ ﻛﺷﻑ ‪ e k‬ﻳﺟﻌﻝ ﺍﻟﻧﻅﺎﻡ ﻏﻳﺭ ﺁﻣﻥ‪ .‬ﻣﻥ ﻣﺳﺎﻭﺉ ﻫﺫﻩ ﺍﻷﻧﻅﻣﺔ ﺃﻧﻬﺎ ﺗﺗﻁﻠﺏ ﺍﻻﺗﻔﺎﻕ ﻋﻠﻰ ﺍﻟﻣﻔﺗﺎﺡ ﺑﻳﻥ ‪ Bob‬ﻭ ‪Alice‬‬
‫ﺑﺎﺳﺗﺧﺩﺍﻡ ﻗﻧﺎﺓ ﺃﻣﻧﺔ ﻗﺑﻝ ﺇﺭﺳﺎﻝ ﺃﻱ ﻧﺹ ﻣﺷﻔﺭ‪.‬‬
‫ﻓﻛﺭﺓ ﺃﻧﻅﻣﺔ ﺗﺷﻔﻳﺭ ﺍﻟﻣﻔﺗﺎﺡ ﺍﻟﻌﺎﻡ ‪ Public key‬ﻫﻲ ﺃﻥ ‪ K‬ﻭ ‪ e k‬ﻋﺎﻣﺔ ﻭﻣﻥ ﺍﻟﺻﻌﺏ ﺣﺳﺎﺑﻳﺎ ً ﺍﻛﺗﺷﺎﻑ ‪ d k‬ﺑﻣﻌﺭﻓﺔ‬
‫‪ . e k‬ﻓﺎﺋﺩﺓ ﻧﻅﺎﻡ ‪ Public key‬ﻫﻲ ﺃﻥ ‪ ) Alice‬ﺍﻭ ﺃﻱ ﺷﺧﺹ ﺁﺧﺭ( ﻳﻣﻛﻧﻪ ﺃﻥ ﻳﺭﺳﻝ ﺭﺳﺎﻟﺔ ﻣﺷﻔﺭﺓ ﺇﻟﻰ ‪Bob‬‬
‫ﺑﺎﺳﺗﺧﺩﺍﻡ ﻗﺎﻋﺩﺓ ﺍﻟﺗﺷﻔﻳﺭ ﺍﻟﻌﺎﻣﺔ ‪ Bob . e k‬ﻫﻭ ﺍﻟﺷﺧﺹ ﺍﻟﻭﺣﻳﺩ ﺍﻟﺫﻱ ﻳﺳﺗﻁﻳﻊ ﻓﻙ ﺷﻔﺭﺓ ﺍﻟﻧﺹ ﺍﻟﻣﺷﻔﺭ ﺑﺎﺳﺗﺧﺩﺍﻡ‬
‫ﻗﺎﻋﺪﺓ ﻓﻙ ﺍﻟﺗﺷﻔﻳﺭ ﺍﻟﺳﺭﻳﺔ ﺍﻟﺧﺎﺻﺔ ﺑﻪ ‪ . d k‬ﺻﻧﺩﻭﻕ ﺍﻟﺑﺭﻳﺩ ﻫﻭ ﺃﺑﺳﻁ ﻣﺛﺎﻝ ﻋﻥ ﺫﻟﻙ‪.‬‬

‫‪One-Way Function ‬‬


‫ﻧﻘﻭﻝ ﻋﻥ ﺍﻟﺗﺎﺑﻊ ‪ f: XY‬ﺃﻧﻪ ﺗﺎﺑﻊ ‪ One-way‬ﺇﺫﺍ ﻛﺎﻥ )‪ f(x‬ﺳﻬﻝ ﺍﻟﺣﺳﺎﺏ ﻣﻬﻣﺎ ﺗﻛﻥ ‪ x ∈ X‬ﻭﻟﻛﻥ ﻣﻥ ﺃﺟﻝ ﻛﻝ‬
‫ﻋﻧﺎﺻﺭ ‪ y ∈Y‬ﻓﺈﻧﻪ ﻣﻥ ﻏﻳﺭ ﺍﻟﻣﻣﻛﻥ ﺣﺳﺎﺑﻳﺎ ً ﺇﻳﺟﺎﺩ ﺃﻱ ‪ x ∈ X‬ﺑﺣﻳﺙ ﺃﻥ ‪.f(x) = y‬‬

‫• ﻣﺛﺎﻝ‪:‬‬
‫}‪X = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16‬‬
‫‪f(x) = 3x mod 17 ∀x ∈ X‬‬

‫‪x‬‬ ‫‪1‬‬ ‫‪2‬‬ ‫‪3‬‬ ‫‪4‬‬ ‫‪5‬‬ ‫‪6‬‬ ‫‪7‬‬ ‫‪8‬‬ ‫‪9‬‬ ‫‪10‬‬ ‫‪11‬‬ ‫‪12‬‬ ‫‪13‬‬ ‫‪14‬‬ ‫‪15‬‬ ‫‪16‬‬
‫)‪f(x‬‬ ‫‪3‬‬ ‫‪9‬‬ ‫‪10‬‬ ‫‪13‬‬ ‫‪5‬‬ ‫‪15‬‬ ‫‪11‬‬ ‫‪16‬‬ ‫‪14‬‬ ‫‪8‬‬ ‫‪7‬‬ ‫‪4‬‬ ‫‪12‬‬ ‫‪2‬‬ ‫‪6‬‬ ‫‪1‬‬

‫ﻣﻥ ﺃﺟﻝ ﺃﻱ ‪ x ∈ X‬ﻧﺳﺗﻁﻳﻊ ﺑﺳﻬﻭﻟﺔ ﺇﻳﺟﺎﺩ )‪ f(x‬ﻭ ﻟﻛﻥ ﻣﻥ ﺍﻟﺻﻌﺏ ﺇﻳﺟﺎﺩ ‪ x‬ﺇﺫﺍ ﺃﻋﻁﻳﻧﺎ ﻣﺛﻼ ُ ‪ f(x) = 7‬ﺑﺩﻭﻥ‬
‫ﺍﻟﺟﺩﻭﻝ ﺍﻟﺳﺎﺑﻕ‪.‬‬

‫• ﻣﺛﺎﻝ‪:‬‬
‫‪p = 48611, q = 53993‬‬
‫‪n = p*q = 2624653723‬‬
‫}‪X = {1, 2, 3, …, n-1‬‬
‫‪mod n ∀x ∈ X‬‬
‫‪3‬‬
‫‪f(x) = x‬‬

‫‪Trapdoor One-Way Function ‬‬


‫ﻫﻭ ﺗﺎﺑﻊ ‪ One-way‬ﻣﻊ ﺧﺎﺻﺔ ﺇﺿﺎﻓﻳﺔ ﺗﻌﻁﻲ ﻣﻌﻠﻭﻣﺎﺕ ﺇﺿﺎﻓﻳﺔ )ﺗﺳﻣﻰ ﻣﻌﻠﻭﻣﺎﺕ ‪ (Trapdoor‬ﺗﺟﻌﻝ ﻣﻥ ﺍﻟﻣﻣﻛﻥ‬
‫ﺑﻌﺩ ﻣﻌﺭﻓﺔ ‪ y‬ﺇﻳﺟﺎﺩ ‪ x ∈ X‬ﺑﺣﻳﺙ ﺃﻥ ‪.f(x) = y‬‬

‫• ﻣﺛﺎﻝ‪ :‬ﺍﻟﻣﺛﺎﻝ ﺍﻟﺳﺎﺑﻕ ‪ ، n = 2624653723‬ﺑﺈﻋﻁﺎﺋﻧﺎ ﺍﻟﻣﻌﻠﻭﻣﺎﺕ ﺍﻹﺿﺎﻓﻳﺔ ﺑﺄﻥ ﻋﻭﺍﻣﻝ ‪ n‬ﻫﻲ = ‪p‬‬
‫‪ ،48611, q = 53993‬ﻳﺻﺑﺢ ﻣﻥ ﺍﻟﺳﻬﻝ ﺇﻳﺟﺎﺩ ﺍﻟﺗﺎﺑﻊ ﺍﻟﻌﻛﺳﻲ ﻟﻠﺗﺎﺑﻊ ‪.f‬‬
‫‪ ‬ﻧﻈﺎﻡ ﺍﻟﺘﺸﻔﻴﺮ ‪RSA‬‬
‫ﻣﻧﺗﺩﻯ ﻁﻼﺏ ﻛﻠﻳﺔ ﺍﻟﻬﻧﺩﺳﺔ ﺍﻟﻣﻌﻠﻭﻣﺎﺗﻳﺔ – ﻗﺳﻡ ﺍﻟﺳﻧﺔ ﺍﻟﺭﺍﺑﻌﺔ | ﺇﻋﺩﺍﺩ‪ :‬ﻣﺎﺟﺩ ﺍﻟﺯﻳﺑﻕ‬
‫‪2‬‬ ‫ﻣﻘﺭﺭ ﻣﺎﺩﺓ ﺃﻣﻥ ﺍﻟﻣﻌﻠﻭﻣﺎﺕ < ﺍﻟﻣﺣﺎﺿﺭﺓ ﺍﻟﺛﺎﻟﺛﺔ ﻋﺷﺭ ‪2011-01-06‬‬

‫ﻟﻳﻛﻥ ‪ n = p*q‬ﺣﻳﺙ ‪ p, q‬ﻫﻲ ﺃﻋﺩﺍﺩ ﺃﻭﻟﻳﺔ ﻭ ‪p ≠ q‬‬


‫)‪φ (n) = (p-1)*(q-1‬‬
‫ﻭ ﻟﻳﻛﻥ ‪ ، P=C=Z n‬ﻟﻧﻌﺭﻑ ‪:‬‬
‫‪R‬‬ ‫‪R‬‬

‫‪K = {(n, p, q, a, b): ab ≡ 1 (mod φ (n))}.‬‬


‫ﻣﻥ ﺃﺟﻝ )‪ ،K = (n, p, q, a, b‬ﻟﻧﻌﺭﻑ‬
‫‪e k (x ) = x b mod n ‬‬
‫‪ ∀x , y ∈ Z n‬‬
‫‪d k ( y ) = y mod n ‬‬
‫‪a‬‬

‫ﺍﻟﻘﻳﻡ ‪ n, b‬ﻫﻲ ﻋﺎﻣﺔ )‪(Public key‬‬


‫ﺍﻟﻘﻳﻡ ‪ p, q, a‬ﻫﻲ ﺳﺭﻳﺔ )‪(Privet key‬‬

‫• ﻣﻼﺣﻅﺎﺕ‪:‬‬
‫‪ RSA -‬ﺗﺷﻔﺭ ﻛﺗﻠﺔ ﺭﺳﺎﻟﺔ ]‪ M ∈ [0, n − 1‬ﻭ ﺫﻟﻙ ﺑﺣﺳﺎﺏ ‪C = M mod n‬‬
‫‪b‬‬

‫‪ RSA -‬ﺗﻔﻙ ﺗﺷﻔﻳﺭ ﻛﺗﻠﺔ ﺭﺳﺎﻟﺔ ﻣﺷﻔﺭﺓ ‪ C‬ﻭ ﺫﻟﻙ ﺑﺣﺳﺎﺏ ‪M = C a mod n‬‬
‫‪ -‬ﻓﻲ ‪ RSA‬ﻳﻧﺻﺢ ﺑﺄﺧﺫ ‪ a‬ﺃﻭﻟﻲ ﻧﺳﺑﻲ ﻟـ ) ‪ φ (n‬ﻓﻲ ﺍﻟﻣﺟﺎﻝ ]‪[max(p, q) +1, n-1‬‬

‫ﺇﻋﺩﺍﺩ ﻧﻅﺎﻡ ﺍﻟﺗﺷﻔﻳﺭ‪:‬‬ ‫•‬


‫‪ Bob‬ﻳﺗﺑﻊ ﺍﻟﺧﻁﻭﺍﺕ ﺍﻟﺗﺎﻟﻳﺔ ﻣﻥ ﺃﺟﻝ ﺍﻟﺗﺷﻔﻳﺭ‬ ‫‪.1‬‬
‫‪ Bob‬ﻳﻭﻟﺩ ﻋﺩﺩﺍﻥ ﺃﻭﻟﻳﺎﻥ ﻛﺑﻳﺭﺍﻥ ﻣﺧﺗﻠﻔﺎﻥ ‪.p, q‬‬ ‫‪.2‬‬
‫‪ Bob‬ﻳﺣﺳﺏ ‪ n = p*q‬ﻭ )‪φ (n) = (p-1)*(q-1‬‬ ‫‪.3‬‬
‫‪ Bob‬ﻳﺧﺗﺎﺭ ﻋﺩﺩ ﻋﺷﻭﺍﺋﻲ ‪ b‬ﺿﻣﻥ ﺍﻟﻣﺟﺎﻝ ) ‪ 1 < b < φ (n‬ﺑﺣﻳﺙ ﺃﻥ ‪gcd(φ (n ), b ) = 1‬‬ ‫‪.4‬‬
‫‪−1‬‬
‫‪ Bob .5‬ﻳﺣﺳﺏ ) ‪ a = b mod φ (n‬ﺑﺎﺳﺗﺧﺩﺍﻡ ﺍﻟﺨﻮﺍﺭﺯﻣﻴﺔ ﺍﻹﻗﻠﻳﺩﻳﺔ ﺍﻟﻣﻭﺳﻌﺔ ﺃﻭ ﻁﺭﻳﻘﺔ ﺍﻟﺗﺭﺍﺟﻊ‪.‬‬
‫‪ Bob .6‬ﻳﻧﺷﺭ ‪ b, n‬ﻋﻠﻰ ﺃﻧﻪ ‪ Public Key‬ﺍﻟﺧﺎﺹ ﺑﻪ‪.‬‬
‫‪ Bob .7‬ﻳﺑﻘﻲ ‪ p, q, a‬ﺳﺭﻳﺔ ﻋﻠﻰ ﺃﻧﻪ ‪ Private Key‬ﺍﻟﺧﺎﺹ ﺑﻪ‪.‬‬

‫• ﻣﺛﺎﻝ‪:‬‬
‫ﻟﻧﻔﺭﺽ ﺃﻥ ‪ Bob‬ﺇﺧﺗﺎﺭ ‪p = 101, q = 113‬‬
‫‪n = p*q = (101)*(113) = 11413‬‬
‫‪φ (n) = (p-1)*(q-1) = (100)*(112) = 11200‬‬
‫‪ Bob‬ﺳﻭﻑ ﻳﺧﺗﺎﺭ ﻋﺩﺩ ﺻﺣﻳﺢ ‪ b‬ﻟﻛﻲ ﻳﺳﺗﺧﺩﻣﻪ ﺃﺳﺎﺱ ﻟﻠﺗﺷﻔﻳﺭ ﻭ ﻳﺗﺄﻛﺩ ﻣﻥ ﺃﻥ ‪ gcd(φ ( n ), b ) = 1‬ﺑﺎﺳﺗﺧﺩﺍﻡ‬
‫ﺍﻟﺨﻮﺍﺭﺯﻣﻴﺔ ﺍﻹﻗﻠﻳﺩﻳﺔ‪ ،‬ﻟﻧﻔﺭﺽ ﺃﻥ ‪ Bob‬ﺍﺧﺗﺎﺭ ‪ b = 3533‬ﻋﻧﺩﺋﺫ ﺍﻟﺧﻭﺍﺭﺯﻣﻳﺔ ﺍﻹﻗﻠﻳﺩﻳﺔ ﺍﻟﻣﻭﺳﻌﺔ ﺗﻌﻁﻲ‪:‬‬
‫‪−1‬‬
‫=‬
‫ﺍﻟﺗﺷﻔﻳﺭ ﻟـ ‪ Bob‬ﻫﻭ ‪Bob ،a=6597‬‬ ‫=‬
‫)‪ ، a (3533‬ﻭ ﺑﺫﻟﻙ ﻳﻛﻭﻥ ﺃﺱ ﻓﻙ‬ ‫‪mod 11200 6597‬‬
‫ﻳﻧﺷﺭ ‪ Bob ،b=3533, n=11413‬ﻳﺑﻘﻲ ‪ p=101, q=113, a=6597‬ﺳﺭﻳﺔ‬

‫‪ Alice‬ﺗﺭﻳﺩ ﺃﻥ ﺗﺭﺳﻝ ﻧﺹ ﻭﺍﺿﺢ ‪ M = 9726‬ﺇﻟﻰ ‪ Bob‬ﻑﺗﺣﺱﺏ‪(9726)3533 mod 11413 = 5761‬‬

‫ﻣﻧﺗﺩﻯ ﻁﻼﺏ ﻛﻠﻳﺔ ﺍﻟﻬﻧﺩﺳﺔ ﺍﻟﻣﻌﻠﻭﻣﺎﺗﻳﺔ – ﻗﺳﻡ ﺍﻟﺳﻧﺔ ﺍﻟﺭﺍﺑﻌﺔ | ﺇﻋﺩﺍﺩ‪ :‬ﻣﺎﺟﺩ ﺍﻟﺯﻳﺑﻕ‬
‫‪3‬‬ ‫ﻣﻘﺭﺭ ﻣﺎﺩﺓ ﺃﻣﻥ ﺍﻟﻣﻌﻠﻭﻣﺎﺕ < ﺍﻟﻣﺣﺎﺿﺭﺓ ﺍﻟﺛﺎﻟﺛﺔ ﻋﺷﺭ ‪2011-01-06‬‬

‫‪ Alice‬ﺗﺭﺳﻝ ﺍﻟﻧﺹ ﺍﻟﻣﺷﻔﺭ ‪ C = 5761‬ﺇﻟﻰ ‪ Bob‬ﻋﻧﺩﻣﺎ ﻳﺳﺗﻘﺑﻝ ‪ Bob‬ﺍﻟﻧﺹ ﺍﻟﻣﺷﻔﺭ‪ C = 5761‬ﻳﻘﻭﻡ ﺑﺎﻟﺣﺳﺎﺏ‬
‫ﺍﻟﺗﺎﻟﻲ‪:‬‬
‫‪C a mod n‬‬ ‫=‬
‫)‪(5761‬‬ ‫‪6597‬‬
‫‪mod 11413 9726‬‬

‫• ﻣﻼﺣﻅﺎﺕ‪:‬‬
‫ﺇﻥ ‪ Trapdoor‬ﺍﻟﺫﻱ ﻳﺳﻣﺢ ﺑﻔﻙ ﺍﻟﺷﻔﺭﺓ ﻫﻲ ﻣﻌﺭﻓﺗﻪ ﺑﻌﻭﺍﻣﻝ ‪) n‬ﻫﻭ ﻳﻌﺭﻑ ‪ (p, q‬ﻟﺫﻟﻙ ﻳﺳﺗﻁﻳﻊ ﺣﺳﺎﺏ‬
‫)‪ ، φ (n) = (p-1)*(q-1‬ﻭ ﻳﺳﺗﻁﻳﻊ ﺣﺳﺎﺏ ﺃﺱ ﻓﻙ ﺍﻟﺗﺷﻔﻳﺭ ‪.a‬‬
‫ﺍﻟﺗﺷﻔﻳﺭ ﻭ ﻓﻙ ﺍﻟﺗﺷﻔﻳﺭ ﻳﻣﻛﻥ ﺃﻥ ﻳﻧﺟﺯ ﺑﺎﺳﺗﺧﺩﺍﻡ ﺧﻮﺍﺭﺯﻣﻴﺔ ﺍﻟﺭﻓﻊ ﺇﻟﻰ ﺃﺱ ﺍﻟﺳﺭﻳﻌﺔ‪:‬‬
‫)‪C = fastexp(M, b, n‬‬
‫)‪M = fastexp(C, a, n‬‬
‫‪ ‬ﺧﻮﺍﺭﺯﻣﻴﺔ ﺍﻟﺮﻓﻊ ﺇﻟﻰ ﺃﺱ ﺍﻟﺴﺮﻳﻌﺔ‪:‬‬
‫)‪Algorithm fastexp (a, z, n‬‬
‫‪// return‬‬
‫‪al = a‬‬
‫‪zl = z‬‬
‫‪x = l‬‬
‫‪while zl‬‬ ‫‪0‬‬
‫{‬
‫‪while zl mod 2 = 0‬‬
‫{‬
‫;‪zl = zl div 2‬‬
‫‪al = (al * al) mod n‬‬
‫}‬
‫;‪zl = zl - 1‬‬
‫‪x = (x * al) mod n‬‬
‫}‬
‫‪return x‬‬
‫• ﻣﺛﺎﻝ‪:‬‬
‫‪p=5‬‬
‫‪q=7‬‬
‫‪n=p.q=5.7=35‬‬
‫‪φ (n ) =4.6=24‬‬
‫‪a ∈ [max( p , q ) + 1, n − 1] and a is prime‬‬
‫‪a ∈ [8,34] and a is prime‬‬
‫‪a=11 is prime‬‬
‫‪−1‬‬
‫=‬‫=‪b a‬‬ ‫‪mod n (11)−1 mod 24‬‬
‫‪24= 2*11+2  2=24-2*11‬‬
‫‪11=5*2+1 1=11-5*2‬‬
‫‪2=2*1+0‬‬

‫)‪1=11-5*(24-2*11‬‬
‫‪1=11 -5*24+10*11‬‬
‫ﻣﻧﺗﺩﻯ ﻁﻼﺏ ﻛﻠﻳﺔ ﺍﻟﻬﻧﺩﺳﺔ ﺍﻟﻣﻌﻠﻭﻣﺎﺗﻳﺔ – ﻗﺳﻡ ﺍﻟﺳﻧﺔ ﺍﻟﺭﺍﺑﻌﺔ | ﺇﻋﺩﺍﺩ‪ :‬ﻣﺎﺟﺩ ﺍﻟﺯﻳﺑﻕ‬
‫‪4‬‬ ‫ﻣﻘﺭﺭ ﻣﺎﺩﺓ ﺃﻣﻥ ﺍﻟﻣﻌﻠﻭﻣﺎﺕ < ﺍﻟﻣﺣﺎﺿﺭﺓ ﺍﻟﺛﺎﻟﺛﺔ ﻋﺷﺭ ‪2011-01-06‬‬

‫‪1=11*11+(-5)*24‬‬
‫ﺍﻟﻌﺩﺩ ﺍﻟﻣﺟﺎﻭﺭ ﻟـ ‪ 11‬ﻫﻭ ‪ 11‬ﻟﺫﻟﻙ ‪b=11‬‬
‫ﻟﻧﻔﺭﺽ ﺃﻥ ‪M=2‬‬
‫‪C = M b mod n = 211 mod 35‬‬

‫)‪fastexp (2, 11, 35‬‬


‫‪a1=2‬‬
‫‪z1=11‬‬
‫‪x=1‬‬
‫‪zl =11 ≠ 0 true‬‬
‫‪zl mod 2 = 0 false‬‬
‫‪z1=z1-1=10‬‬
‫‪x=x*a1=1*2=2‬‬

‫‪zl =10 ≠ 0 true‬‬


‫‪zl mod 2 = 0 true‬‬
‫‪z1=z1 div 2=10 div 2=5‬‬
‫‪a1=a1*a1 mod 35=2*2 mod 35 =4‬‬
‫‪zl mod 2 = 0 false‬‬
‫‪z1=z1-1=4‬‬
‫‪x=x*a1=2*4=8‬‬
‫‪zl =4 ≠ 0 true‬‬
‫‪zl mod 2 = 0 true‬‬
‫‪z1=z1 div 2=4 div 2=2‬‬
‫‪a1=a1*a1 mod 35=4*4 mod 35 =16‬‬

‫‪zl mod 2 = 0 true‬‬


‫‪z1=z1 div 2=2 div 2=1‬‬
‫‪a1=a1*a1 mod 35=16*16 mod 35 =11‬‬
‫‪zl mod 2 = 0 false‬‬
‫‪z1=1-1=0‬‬
‫‪x=8*11 mod 35=88 mod 35=18‬‬

‫ﻟﺫﻟﻙ ‪ ،C=18‬ﻓﻙ ﺍﻟﺗﺷﻔﻳﺭ‪ :‬ﺑﻧﻔﺱ ﺍﻷﺳﻠﻭﺏ ﻧﺟﺩ ﺃﻥ ‪1811 mod 35 = 2‬‬

‫<< ﺍﻧﺗﻬﺕ ﺍﻟﻣﺣﺎﺿﺭﺓ ﺍﻟﺛﺎﻟﺛﺔ ﻋﺷﺭ ﻭﺍﻷﺧﻳﺭﺓ >>‬

‫ﻣﻧﺗﺩﻯ ﻁﻼﺏ ﻛﻠﻳﺔ ﺍﻟﻬﻧﺩﺳﺔ ﺍﻟﻣﻌﻠﻭﻣﺎﺗﻳﺔ – ﻗﺳﻡ ﺍﻟﺳﻧﺔ ﺍﻟﺭﺍﺑﻌﺔ | ﺇﻋﺩﺍﺩ‪ :‬ﻣﺎﺟﺩ ﺍﻟﺯﻳﺑﻕ‬

You might also like