به نام خدا دانشگاه صنعتی شریف نیمسال اول 49-49 نام درس استاد درس امنیت داده و شبکه دکتر امینی تاریخ تعریف تمرین مهلت تحویل 39/8/22 39/3/7 لطفا فایل پاسخ خود را در قالب PDFو کد و سایر ملحقات را به صورت یک فایل فشرده درآورده و آنرا به آدرس [email protected]ارسال نمایید .عنوان نامه و نام فایل بایستی به صورت HW2-DNS-93-1-Student Number باشد. .1 منظور از Confusionو Diffusionدر رمزنگاری چیست؟ .2 تفاوت بین مقاومت در برابر تصادم ضعیف 1و مقاومت در برابر تصادم قوی 2را بیان کنید. .9 اثر بهمنی را شرح دهید. 4 9 .4 روش رمزنگاری بلوکی چه تفاوتی با روش رمزنگاری جریانی دارد؟ .5 تفاوت توابع درهم ساز ( ،)hashکدهای احراز صحت پیام ( )MACو امضای رقمی را شرح دهید. .6 به نظر شما ترتیب انجام عملیات های رمزگذاری ،تولید کد احراز صحت پیام و فشرده سازی چگونه باید باشد .پاسخ خود رابه طور کامل شرح دهید. .7 فرض کنید تابع درهم سازی داریم که در مقابل تصادم مقاوم است .ورودی این تابع ،پیامی با هر طول دلخواه است و خروجی آن، مقدار درهم شده ی nبیتی است .آیا می توان ادعا کرد که به ازای هر پیام xو yکه 𝑦 ≠ 𝑥 ویژگی )𝑦(𝐻 ≠ )𝑥( 𝐻 صادق است؟ پاسخ خود را شرح دهید. .8 توابع در هم ساز زیر را در نظر بگیرید. 𝑡 𝑛 𝑑𝑜𝑚 ) ℎ2 = (∑(𝑎𝑖 )2 𝑖=0 𝑡 𝑛 𝑑𝑜𝑚 ) 𝑖𝑎 ∑( = ℎ1 𝑖=0 1 Weak Collision Resistance Strong Collision Resistance 3 Block Cipher 4 Stream Cipher 2 فرض کنید پیام ها دنباله ای از اعداد در Znهستند ( nمقداری از پیش تعریف شده است) .یعنی پیام Mرا می توان به صورت ) M=(a0 ,a1,a2,…,atنشان داد .تابع درهم سازی h1و h2بر روی پیام Mاعمال می شود. توابع h1و h2را از نظر ویژگی های زیر بررسی کنید: .3 - تنوع سایز ورودی ()Variable Input Size - سایز خروجی ثابت ()Variable Output Size - کارایی ()Efficiency - یکطرفه بودن ()One-Way - مقاومت در مقابل تصادم ضعیف - مقاومت در مقابل تصادم قوی یکی از پیاده سازی های الگوریتم DESو AESرا در نظر گرفته و به سواالت زیر پاسخ دهید: - برنامه ای نوشته که عمل رمزگذاری و رمزگشایی را در DESو AESانجام دهد .برنامه بایستی در مدهای کاری ECBو CBCکار کند. - مدهای ECBو CBCرا با هم مقایسه کنید. - اثر بهمنی را در مدهای ECBو CBCبررسی کنید. - فایلی با حجم نسبتا بزرگ را با روش AESو کلید 128بیتی و 256بیتی رمز کرده و مدت زمان اجرای آن ها را مقایسه کنید. .11سناریو زیر را در نظر بگیرید: بانکی را در نظر بگیرید که دادههای خود را با کلید kرمز نگاری کرده است .به دلیل برخی مالحظات امنیتی بانک این کلید را به دو کلید دیگر تقسیم میکند بطوری که برای انجام رمزگشایی (و رمزنگاری) وجود هر دو کلید الزم است و هر کلید به تنهایی در خود اطالعاتی در مورد کلید اصلی ندارد. بانک کلید تصادفی k1را تولید میکند و از روی آن کلید k2را بدست میآورد و هر کدام را به یک مدیر اجرایی میدهد. شروط زیر باید برقرار باشد: 𝑙 𝑙 ′ ′ 𝑘 = {0,1} , 𝑘1 𝑖𝑛 {0,1} , 𝑘1 ← 𝑘 ⊕ 𝑘1 , 𝑘 = 𝑘1 ⊕ 𝑘1 حال فرض کنید همین بانک میخواهد با گسترش دادن همین سناریو ،تعداد کلیدهای مشارکت کننده را به 9افزایش دهد با این تفاوت که حتی اگر یکی از این کلیدها حاضر نباشد عملیات رمزنگاری قابل اجرا باشد .شروط زیر باید برقرار باشد: 𝑘 = 𝑘1 ⊕ 𝑘1′ = 𝑘2 ⊕ 𝑘2′ ∶ ) 𝑓𝑜𝑟 𝑡𝑤𝑜 𝑟𝑎𝑛𝑑𝑜𝑚 𝑝𝑎𝑖𝑟𝑠 (𝑘1, 𝑘1′ ) (𝑘2, 𝑘2′ شمای افرازی را برای این بانک طراحی کنید بصورتی که هر 2مدیر اجرایی بتوانند عملیات رمزنگاری را انجام دهند ولی هیچ مدیری به تنهایی این توانایی را نداشته باشد .دالیل خود را برای طراحی آن شِما توضیح دهید. نکات: برای پیاده سازی الگوریتم های رمزنگاری ،می توانید از زبان برنامه نویسی دلخواه خود استفاده کنید. لطفا پاسخ خود (مستندات و کد منبع ) را به آدرس [email protected]ایمیل کنید. تاخیر در ارسال پاسخ ،مشمول کسر نمره خواهد بود. در صورت استفاده از منبع خاصی برای پاس خ به سوال ،لطفا اسم آن منبع ذکر گردد. پاسخ ها می توانند فقط به زبان فارسی باشند. حداکثر تعداد صفحات بایستی 02صفحه باشد. در صورت مشاهده ی تقلب ،بر اساس مقررات آموزشی با آن برخورد خواهد شد. در صورت بروز ابهام در مورد سواالت ،می توانید سواالت خود را به آدرس [email protected]بفرستید. موفق باشید.
© Copyright 2025 Paperzz