You are on page 1of 5

‫تمرینهای سری پنجم درس رمزنگاری سخت افزاری (مهلت تحویل تا پنجشنبه ‪ 1401/10/15‬و نحوه ارسال از‬

‫طریق ایمیل به ‪:)mmalekpoor38@gmail.com‬‬

‫لطفاٌ پاسخ در زیر همان سوال مربوطه نوشته شود و در صورت امکان به صورت تایپ شده باشد‪.‬‬

‫نام و نام خانوادگی‪ :‬بهزاد موثق‬

‫‪ )1‬با فرض سیستم رمز ‪ RSA‬به سواالت زیر پاسخ دهید‪:‬‬


‫الف) با فرض ‪ p=7‬و ‪ q=11‬و ‪ ،e=17‬پیام ‪ M=8‬را رمز کرده و سپس از رمز خارج کنید‪.‬‬
‫ب) با فرض ‪ p=17‬و ‪ q=31‬و ‪ ،e=7‬پیام ‪ M=2‬را رمز کرده و سپس از رمز خارج کنید‪.‬‬

‫الف)‬

‫‪N=pq=7*11=77‬‬
‫‪𝜑(𝑛) = (𝑝 − 1)(𝑞 − 1)=6*10=60‬‬
‫‪Gcd(e,60)=1 => e=17‬‬
‫‪d => d.e=1 mod 60 =>d =53‬‬
‫}‪PU{17,77‬‬
‫}‪PR{53,77‬‬
‫‪C= 817 mod 77 => C=57‬‬
‫‪M=5753 mod 77 => M= 8‬‬
‫ب)‬

‫‪N=pq=17*31=527‬‬
‫‪𝜑(𝑛) = (𝑝 − 1)(𝑞 − 1)=16*30=480‬‬
‫‪Gcd(e,60)=1 => e=7‬‬
‫‪d => d.e=1 mod 480 =>d =343‬‬
‫}‪PU{7,527‬‬
‫}‪PR{343,527‬‬
‫‪C= 27 mod 527 => C=128‬‬
‫‪M=128343 mod 527 => M= 2‬‬
‫‪ )2‬با فرض سیستم رمز ‪ RSA‬و متن رمز شده ‪ C=10‬و همچنین ‪ n=35‬و ‪ ،e=5‬متن اصلی )‪ (Plaintext‬را با استفاده‬
‫از قضیه باقیمانده های چینی محاسبه نمایید‪.‬‬

‫‪N=35 , p=5 , q=7 => 𝜑(𝑛) = 24‬‬


‫‪e=5 => e.d =1 mod 24 =>d=5‬‬
‫) نسبت به هم اول نیستند وگرنه توان ساده میکردیم‪vp=cd mod p = 105 mod 5 =0 (a,p‬‬

‫‪vq=cd mod q = 105 mod 7 =5‬‬


‫‪xp=q*q-1 mod p =7 *3 mod 5‬‬
‫‪xq=p*p-1 mod q = 5*3 mod 5‬‬
‫‪M=(vp*xp+vq*xq) mod n = (0*7*3+5*5*3) mod 35 =5‬‬

‫‪ )3‬در صورت استفاده از الگوریتم باینری (یا ‪ )square and multiply‬برای انجام عمل توان رسانی مشخص نمایید که‬
‫برای هریک از محاسبات زیر چه تعداد عمل ضرب مورد نیاز است‪:‬‬
‫الف) ‪7512‬‬
‫ب) ‪7511‬‬

‫الف) ‪ 9‬عمل ضرب‬


‫‪7512‬‬ ‫‪512=10 0000 0000‬‬
‫‪72‬‬
‫‪74‬‬
‫‪78‬‬
‫‪716‬‬
‫‪732‬‬
‫‪764‬‬
‫‪7128‬‬
‫‪7256‬‬
‫‪7512‬‬
‫ب)‬
‫‪7511‬‬ ‫‪511= 1 1111 1111‬‬
‫‪71*72*…..7256‬‬
‫‪ 8‬تا ضرب خود توان هاست‬
‫‪ 8‬تا ضرب هم بین هر عدد که در مجموع ‪ 16‬ضرب‬
‫‪ )4‬با فرض سیستم دیفی‪-‬هلمن ‪ q=71‬و ‪ a=7‬به سواالت زیر پاسخ دهید‪:‬‬
‫الف) اگر کلید خصوصی ‪ A‬برابر ‪ xa=5‬باشد آنگاه کلید عمومی آن چه خواهد بود؟‬
‫ب) اگر کلید خصوصی ‪ B‬برابر ‪ xb=12‬باشد آنگاه کلید عمومی آن چه خواهد بود؟‬
‫پ) در صورت نیاز به داشتن کلید خصوصی مشترک بین ‪ A‬و ‪ B‬کلید خصوصی چه خواهد بود؟‬

‫الف)‬
‫‪Ya=axa mod q‬‬
‫‪Ya= 75 mod 71= 51‬‬
‫ب)‬
‫‪Yb=axb mod q‬‬
‫‪Yb= 712 mod 71= 4‬‬
‫پ)‬
‫‪Kab= axbxa mod q‬‬
‫‪Kab=7 5*12 mod 71= 30‬‬
‫‪Or‬‬
‫‪Kab=Ybxa mod 71 = 45 mod 71 = 30‬‬

‫‪ )5‬سیستم رمز ‪ ECC‬با مشخصات )‪ E11(1,6‬و )‪ G=(2,7‬را فرض کنید‪ .‬کلید خصوصی سیستم ‪ B‬را برابر ‪ nb=7‬در نظر‬
‫گرفته و به سواالت زیر پاسخ دهید‪:‬‬
‫الف) کلید عمومی ‪ B‬را محاسبه نمایید‪.‬‬
‫ب) اگر ‪ A‬بخواهد پیام )‪ Pm=(10,9‬را با عدد تصادفی ‪ k=3‬برای ‪ B‬رمز کند پیام رمز شده ‪ Cm‬را محاسبه نمایید‪.‬‬
‫پ) محاسبات انجام شده در گیرنده ‪ B‬را برای باز کردن رمز قسمت قبل انجام دهید و پیام اصلی را به دست آورید‪.‬‬
‫الف)‬
‫)‪E11= (1,6‬‬
‫)‪G=(2,7‬‬
‫‪nb=7‬‬
‫)‪PB=7*(2,7)= (7,2‬‬

‫)‪(10,2‬‬
‫)‪(8,3‬‬ ‫)‪(3,5‬‬ ‫ب)‬
‫}) ‪Cm={3(2,7),(10,9)+3(7 ,2‬‬
‫})‪Cm={(8,3),(10,2‬‬

‫)‪(3,5)=>(3,-5)=(3,6‬‬ ‫پ)‬
‫)‪Pm=(10,2 )-7(8,3)= (10,9‬‬
‫‪ )6‬با کمک الگوریتم مونتگمری ضربهای زیر را انجام دهید‪( :‬مراحل کامل نشان داده شوند)‬
‫الف) ‪11*22 mod 25‬‬
‫ب) ‪7*8 mod 17‬‬

‫الف)‬
‫̅ >= ‪X=11‬‬‫‪X = 11*32 mod 25 =2 =00010‬‬
‫‪Y=22 =>Y‬‬‫‪̅ = 22*32 mod 25 =4 = 00100‬‬
‫‪M=25‬‬
‫‪r=2n =25 =32‬‬
‫‪r-1=18‬‬
‫‪Z=0‬‬
‫‪Z=(0+0)/2 =0‬‬
‫‪Z=(0+4)/2=2‬‬
‫‪Z=(2+0)/2=1‬‬
‫‪Z=(1+0+25)/2=13‬‬
‫‪Z=(13+0+25)/2=19 => Z̅ =19‬‬

‫‪Z =19*18 mod 25 =17‬‬

‫ب)‬
‫̅ >= ‪X=7‬‬
‫‪X = 7*32 mod 17 =3 =00011‬‬
‫‪Y=8 =>Y‬‬‫‪̅ = 8*32 mod 17 =1 = 00001‬‬
‫‪M=17‬‬
‫‪r=2n =25 =32‬‬
‫‪r-1=8‬‬
‫‪Z=0‬‬
‫‪Z=(0+1+17)/2 =9‬‬
‫‪Z=(9+1)/2=5‬‬
‫‪Z=(5+0+17)/2=11‬‬
‫‪Z=(11+0+17)/2=14‬‬
‫‪Z=(14+0)/2=7 => Z̅ =7‬‬

‫‪Z =7*8 mod 17 =5‬‬


‫‪ )7‬با فرض نمایش مانده مونتگمری )‪ (Montgomery residue‬داده شده اعداد معادل آنها را بیابید‪:‬‬
‫الف) ‪𝑥̅ = 10 𝑚𝑜𝑑 11‬‬
‫ب) ‪𝑥̅ = 5 𝑚𝑜𝑑 31‬‬

‫الف)‬
‫‪x̅ = MM(x,r2)=10*16 mod 11 = 6‬‬
‫‪M=11‬‬
‫‪r=2n =24 =16‬‬
‫ب)‬
‫‪x̅ = MM(x,r2)=5*32 mod 31 = 5‬‬
‫‪M=31‬‬
‫‪r=2n =25 =32‬‬

‫موفق باشید‪.‬‬

You might also like