350 likes | 528 Views
امنيت پست الكترونيكي. فهرست مطالب. امنيت پست الكترونيكي ويژگيهاي PGP سرويس هاي PGP انواع كليدهاي مورداستفاده مديريت كليد. نياز به امنيت. استفاده گسترده از سرويس پست الكترونيكي براي تبادل پيغامها ن ياز به استفاده از اين سرويس براي كاربردهاي ديگر به شرط تضمين محرمانگي و احراز هويت
E N D
فهرست مطالب • امنيت پست الكترونيكي • ويژگيهاي PGP • سرويس هاي PGP • انواع كليدهاي مورداستفاده • مديريت كليد
نياز به امنيت • استفاده گسترده از سرويس پست الكترونيكي براي تبادل پيغامها • نياز به استفاده از اين سرويس براي كاربردهاي ديگر • به شرط تضمين محرمانگي و احراز هويت • دو روش براي احرازهويت و ايجاد محرمانگي • PGP (Pretty Good Privacy) • S/MIME (Secure/Multipurpose Internet Mail Extensions)
قراردادهاي پست الكترونيكي • SMTP (Simple Mail Transfer Protocol) • قرارداد SMTPاصليترين و عموميترين قرارداد پست الكترونيكي است. • يك پيغام را همراه با مطالب داخلي و سرآيه آن بصورت كدهاي ASCII ارسال ميكند. • SMTP هيچ امنيتي براي دادههاي ارسال شده فراهم نميكند. • دادهها در طول مسير ميتوانند خوانده شوند، تغيير داده شوند. • آدرس فرستنده براحتي قابل تغيير است. • MIME (Multipurpose Internet Mail Extensions) • MIME يك قرارداد پست الكترونيكي است كه براي رفع محدوديتهاي SMTP و پيغامهاي متني پيادهسازي شد. • MIME هيچگونه امنيتي فراهم نميكند.
ويژگيهاي PGP • ارائه شده توسط Phil Zimmermann • استفاده گسترده ازآن بعنوان پست الكترونيكي امن • استفاده از بهترين الگوريتمهاي رمزنگاري موجود و تركيب آنها در يك برنامه كاربردي چند منظوره • قابليت اجرای مستقل از ماشين و پردازنده(Unix، PC،Macintosh...) • دسترسي به منبع باز و بسته نرم افزاري آن بصورت مجاني(تهيه نسخه تجاري آن طي قراردادي با شركت viacryptدر حال تهيه می باشد)
PGP basic Services Sharif Network Security Center
سرويسهاي PGP احراز هويت • توليد چكيده 160 بيتي از پيغام اوليه با استفاده از SHA-1 • استفاده از RSA و كليد خصوصي فرستنده براي رمز كردن چكيده • الحاق چكيده رمز شده به انتهاي پيغام • استفاده از RSA با كليد عمومي فرستنده براي بازيابي چكيده در سمت گيرنده • توليد چكيده پيغام جديد توسط گيرنده و مقايسه آن با چكيده بازيابي شده
سرويسهاي PGP محرمانگي • استفاده از عدد تصادفي 128 بيتي بعنوان كليد جلسه ويژه پيغام جاري • رمزكردن پيغام با استفاده از CAST-128 یا IDEA یا 3DES و كليد جلسه توليد شده • رمزكردن كليد جلسه با استفاده از الگوريتم RSA و كليد عمومي گيرنده • الحاق كليد رمزشده به پيغام و ارسال آن • استفاده از RSA با كليد خصوصي گيرنده براي رمزگشايي و بازيابي كليد جلسه • رمزگشايي پيغام دريافت شده با استفاده از كليد جلسه
سرويسهاي PGP • محرمانگي + احرازهويت • توليد امضاء و الحاق آن به متن • رمز كردن مجموعه امضا و متن با استفاده از CAST-128 • الحاق كليد جلسه رمزشده با الگوريتم RSA به مجموعه فوق • چرا اول امضاء رقمي انجام مي شود و سپس رمزگذاري؟ • با اين روش شخص ثالث براي تاييد امضاء هيچ نوع نگراني در رابطه با كليد جلسه نخواهد داشت.
سرويسهاي PGP فشرده سازي • بصورت پيش فرض فشرده سازي پس از امضاء و قبل از رمزگذاري انجام مي شود. • چرا پس از امضاء؟ • بايد بتوان پيام و امضاء را براي تاييد بعدي و بدون نياز به فشردهسازي و يا بازگشايي مجدد ذخيره نمود. • در صورتيکه طرفين از مکانيسم های فشرده سازی متفاوت استفاده می کنند، در تاييد امضا تداخلی ایجاد نشود. • چرا قبل از رمزگذاري؟ • كاهش حجم و افزونگي متني كه بايد رمز شود • کاهش اطلاعات آماری پيغام
سرويسهاي PGP حفظ سازگاري • مشكل: • فرستادن داده هاي باينري از طريق سرويس هاي پست الكترونيكي كه تنها براي ارسال متن ASCII طراحي شده اند. • راه حل: • تبديل داده هاي خام باينري به متن ASCII : • استفاده از الگوريتم Radix-64 • تبديل 3 بايت به 4 كاراكتر قابل چاپ ASCII • اضافه كردن CRC به انتهاي آن • توسعه متن به اندازه 33% بدليل استفاده از Radix-64 و فشرده سازي به اندازه 50%---< 1.33 x 0.5=0.665 • نتيجه : فشرده سازي به اندازه 2/3
سرويسهاي PGP قطعه بندي • محدوديت سرويس دهنده هاي ايميل در اندازه پيغام ارسالي • انجام قطعه بندي توسط PGP بصورت خودكار و پس از انجام كليه محاسبات و تبديلات • ارسال كليد جلسه و تاييد امضاء رقمي فقط در ابتداي قطعه اول • بازيابي پيغام اصلي از روي قطعه ها در سمت گيرنده(قبل از انجام هر پردازشي)
كليدهاي مورد استفاده PGP از چهار نوع كليد بهره مي برد: • كليد متقارن يكبار مصرف(كليد جلسه) • كليد عمومي • كليد خصوصي • كليد متقارن حاصل از چكيده يك پيغام رمز (براي رمز كردن كليدهاي خصوصي)
كليدهاي مورد استفاده كليد جلسه • بصورت تصادفي و يكبار مصرف ايجاد مي گردد • الگوريتم توليد عدد تصادفي خود CAST-128 مي باشد طبق استاندارد ANSI X12.17 • الگوريتم از روي كليدهاي فشرده شده روي صفحه كليد مقدار اوليه مي گيرد. • سپس كليدهاي جلسه را بصورت CFB توليد مي كند
كليدهاي مورد استفاده مسئله : امكان داشتن چند زوج كليد نامتقارن براي ارتباط با گروههاي مختلف. راه حل : مشخص نمودن كليد استفاده شده بوسيله يك شناسه(Key Identifier) - استفاده از مقدار (KUa mod 264)به عنوان شناسه - احتمال برخورد بسيار پايين است.
Format of PGP Messag Sharif Network Security Center
كليدهاي مورد استفاده دسته كليد خصوصي(Private Key Ring) براي مديريت كليدهاي نامتقارن استفاده مي شود. شامل موارد زير است: 1 - زمان توليد كليد 2- شناسه كليد 3 – كليد عمومي 4-كليد خصوصي(بصورت رمزشده) 5-شناسه مالك كليد • كليد خصوصي توسط كليد متقارني كه بصورت چكيده اي از يك عبارت رمز مي باشد، رمز مي شود • جدول كليدهاي خصوصي روی ماشين صاحبش ذخيره مي شود.
كليدهاي مورد استفاده دسته كليد عمومي(Public Key Ring) شامل موارد زير است: 1 - زمان توليد كليد 2- شناسه كليد 3 – كليد عمومي 4- شناسه كاربر 5- و چند فيلد ديگر جهت امنيت بيشتر اين جدول شامل همه كليدهاي عمومي كاربران ديگر كه براي اين كاربر مشخص است، مي باشد.
PGP Message Generation Sharif Network Security Center
PGP Reception Sharif Network Security Center
مديريت كليد عمومي در PGP • ارسال كليد عمومي با خاصيت احراز هويت • انتقال بصورت فيزيكي • در شبكه اينكار غير عملي است. • انتقال بصورت الكترونيكي و تاييد توسط تلفن يا… • چكيدهاي از كليد دريافتي از طريق تلفن با مالك بررسي شود. • انتقال توسط فرد مطمئني كه كليد عمومي وي در اختيار است. • كليد عمومي كاربر B توسط كاربر شناخته شده D امضاء و به كاربر A ارسال ميشود. • انتقال بصورت گواهي تاييد شده توسط مرجع قابل اعتماد.
مديريت كليد مشكل: در جدول كليدهاي عمومي A يك كليد متعلق به كاربر B است، ولي C نيز از آن مطلع است. در نتيجه C مي تواند : • بجاي B به A پيغام بفرستد • پيغامهاي ارسال شده از A به سمت B را بخواند PGP براي مديريت كليدهاي عمومي بجاي CA از مدلي بنام اعتماد(Trust) استفاده مي كند.
مديريت كليد فيلدهاي Trust • فيلد Key Legitimacy: بيانگر ميزان اعتماد PGP به اعتبار كليد عمومي. • فيلد signature trust : بيانگر درجه اعتماد PGP به يك كاربر براي تاييد اعتبار يك كليد عمومي • فيلد owner trust : بيانگر ميزان اعتماد به كليد براي تاييد اعتبار كليدهاي عمومي ديگر(گواهي). - هر سه فيلد فوق در داخل يك بايت تحت عنوان trust flag نگهداري مي شوند.
Trust Model Example Sharif Network Security Center
مديريت كليد چند نكته در مورد شكل قبل • كليدهاي كاربراني كه مورداعتماد يك كاربر مي باشند، لزوما توسط وي امضاء نشده اند(مانند L) • اگر دو كاربري كه معمولا قابل اعتماد هستند كليدي را امضاء كنند، كليد مربوطه مورد تاييد قرار مي گيرد(A و B) • كليدي كه تاييد شده است، لزوما نمي تواند براي تاييد امضاي كليد ديگري بكار رود(مانند N) • كليد كاربري كه بطور غيرمستقيم امضاء شده است، ممكن است بصورت مستقيم نيز امضاء شود(مانند كليد E كه توسط ّF و You بصورت غيرمستقيم و مستقيم امضا شده است)
پايان ؟