سلام
بزودي تو بخش امنيت شبكه و موقعي كه قرار شد بحث امضاهاي ديجيتال مطرح بشه در مورد تكنيكهاي توليد Message Digest صحبت خواهد شد.
MD5 روش براي توليد يك چكيده از يك پيام است ( Message Digest ) . چه يك كلمه ، يك عدد ، يك جمله ، يك كتاب چند صد صفحه اي ، يك فايل و ... به او بدهيد ، يك چكيده با طول ثابت 128بيتي توليد ميكند . حالا اين به چه دردي ميخورد ؟ فرض كنيد در حاشيه ء انتخابات پر شور مجلس ( كه قرار دوباره ملت يك حماسه ديگه توش خلق كنند ! و براستي اين مردم جز خلق كردن حماسه به درد ديگري هم ميخورند ؟ :roll: ) قراره وزير كشور نامه اي محرمانه به تمام استانداري هاي كشور ارسال كنه . ( حالا به چه روشي زياد مهم نيست ) اگر اين نامه بين راه توسط افرادي تغيير داده بشه ، دريافت كننده چطور ممكنه بفهمه ؟ اون ماموره و مجبور به اطاعت . خيلي بعيده به تهران تلفن بزنه و استعلام كنه ، شايد اصلا بالاش نوشته باشه محرمانه و اون مجبور باشه بدون اطلاع ديگران بهش عمل كنه ... اگر حالا متن اصلي وزير با مطلب ديگري تغيير داده شده باشه ( مثلا" : نمايندگان شوراي نگهبان رو به حوزه هاي انتخابيه راه نديد ! :twisted: 8) ) چه دردسر بزرگي ايجاد ميشه ...!
يكي از راههاي اعتماد سازي در يك تبادل اطلاعات دو طرفه استفاده از امضاهاي ديجيتال است و چكيده پيام يا همون Message Digest نقش مهمي در اين مهم ايفا ميكنه . پيام شما ( هر چي كه ميخواد باشه ) هميشه داراي يك چكيده 128 بيتي است كه با متدي يكتا تهيه شده و پس از رمزنگاري به انتهاي نامه الصاق ميشود ، دريافت كننده ( كه به عنوان مثال در يك معماري مبتني بر PKI داراي كليد خصوصي - Private Key - خودش هست ) ميتوني با كليد خصوصي خودش چكيده پيام رو ( كه با كليد عمومي - Public key - كد شده ) باز كنه ، بعد متن پيام رو با همون الگوريتم يكتا درهم ريزي كنه ( Hashing ) و بعدش محصول رو با آنچه كه به پيام الصاق شده بود مقايسه كنه . با تكيه به معماري غير متقارن ( Asymmetric ) شناسائي و تصديق هويت ( Authentication ) اين يكي از روشهاي مناسب براي اعتماد سازي است .
MD5 يا Message Digest version 5 در دانشگاه MIT و توسط پروفسور
Ronald L. Rivest طراحي شده و متن كامل داستان MD5 رو ميتونيد در آر اف سي شماره 1321 مطالعه كنيد :
http://www.faqs.org/rfcs/rfc1321.html
اين صفحه وب هم حاوي مقداري سورس كد به زبانهاي مختلف از جمله سي و دلفي و جاوا است كه ميتوني توليد چكيده پيام به روش ام دي فايو رو حمايت كنه :
http://userpages.umbc.edu/~mabzug1/cs/md5/md5.html
نكته پاياني : شايد موقع دريافت نرم افزار از برخي سايتهاي معتبر ديده باشيد كه كنار فايلهاي مربوطه نوشته اند MD5 و كنار آن هم رشته اي مثل اين :
900150983cd24fb0d6963f7d28e17f72
( اين رشته خروجيه abc است )
اينگونه سايتهاي براي ايجاد اعتماد ، از فايلهاي خود با برنامه هائي كه چكيدهء MD5 توليد ميكنند ، امضاي مربوطه را ايجاد و اعلام ميكنند ، شما هم بعد از دريافت ميتونيد با يكي از ابزارهاي متداول همينكار ( روي لينوكس اصلا دستوري به همين نام و به همين مقصود وجود داره ) فايل مربوطه رو چك كنيد تا از صحت محتواي اون مطمئن بشيد . مدتها قبل فردي توانست سايت حمايت كننده SendMail كه ميل سروري معروف روي پلت فرمهاي مبتني بر يونيكس است را هك كرده و بجاي تغيير صفحات وب آن ، نسخه اي حاوي يك تروجان را به عنوان نسخه جديد آپلود كرد و بعد هم با راسال خبرنامهء رسمي سايت SendMail باعث شد تعداد زيادي از مديران سرورها جهت نصب نسخه جديد هجوم بيارن و در واقع نسخه محتوي تروجان را دريافت و نصب كنند ( و براستي وقتي سورس باز است چه كسي به خودش زحمت چك كردن اون رو ميده ؟ بقول يكي از اساتيد مرحومم ، مخفي ترين چيز ، چيزيه كه اصلا براي مخفي كردنش تلاش نشده ! ) و اين حركت زيركانه اون هكر باعث شد صدها سايت تحت سيطره اون قرار بگيرن كه البته ناگفته پيداست براي برقراري يك حملهء DDOS ( يا Distributed Denail of service ) به اونها احتياج داشت . :arrow:
اميدوارم اين مطلب كوتاه مفيد بوده باشه . خيلي خوبه دوستان ابتداي كار حوزه هاي مورد علاقه خودشون رو مشخص كنند تا فعاليت و ارائه مطلب بهتر و مفيدتر باشه
خوش باشيد