هرچند این خبر و مطلب دیگه قدیمی شده، ولی این منابع و مطالب جالب رو خودم هم تازه پیدا کردم.
در این منبع نمونهء دو دیتا اومده که هش یکسانی دارن: http://www.mscs.dal.ca/~selinger/md5collision/
اینم یه اسکریپت PHP که برای تست عملیش نوشتم:
<?php
$data1='d131dd02c5e6eec4693d9a0698aff95c 2fcab58712467eab4004583eb8fb7f89
55ad340609f4b30283e488832571415a 085125e8f7cdc99fd91dbdf280373c5b
d8823e3156348f5bae6dacd436c919c6 dd53e2b487da03fd02396306d248cda0
e99f33420f577ee8ce54b67080a80d1e c69821bcb6a8839396f9652b6ff72a70';
$data2='d131dd02c5e6eec4693d9a0698aff95c 2fcab50712467eab4004583eb8fb7f89
55ad340609f4b30283e4888325f1415a 085125e8f7cdc99fd91dbd7280373c5b
d8823e3156348f5bae6dacd436c919c6 dd53e23487da03fd02396306d248cda0
e99f33420f577ee8ce54b67080280d1e c69821bcb6a8839396f965ab6ff72a70';
function convert2binary($str) {
$str=str_replace(array("\n", ' '), '', $str);
return pack('H*', $str);
}
header('Content-type: text/plain');
echo 'data1 hash: ', md5(convert2binary($data1));
echo "\n";
echo 'data2 hash: ', md5(convert2binary($data2));
?>
همچنین دو فایل اجرایی متفاوت که هش یکسانی دارن: http://www.mscs.dal.ca/~selinger/md5collision/hello.exe و http://www.mscs.dal.ca/~selinger/md5collision/erase.exe
همچنین در این منبع: http://crypto.stackexchange.com/ques...ash-value?rq=1 چند نمونه دیگر از داده های دارای هش یکسان رو آوردن.
دو گواهینامه دیجیتال که امضای یکسانی دارن: http://www.win.tue.nl/~bdeweger/Coll...rtificate1.cer و http://www.win.tue.nl/~bdeweger/Coll...rtificate2.cer
از این دست زیاده. درواقع در حال حاضر میشه براحتی از اینطور چیزها ساخت و روش و الگوریتم و برنامه هاش در دسترس عموم است.
البته باید بگم این آسیب پذیری MD5 یک جنبه از خواص و کاربردهای توابع هش امنیتی رو در بر میگیره و بعضی خواص و کاربردهای دیگر توابع هش هستن که MD5 در اون زمینه ها سوراخ نشده یا به این شدت و جدیت سوراخ نشده، ولی بهرحال استفاده ازش حتی در اون کاربردها دیگه توصیه نمیشه. تازه کسی که میخواد چنان استفاده هایی ازش بکنه باید آدم مطلع و دارای بینش در این امور باشه تا بتونه با اطمینان این کار رو انجام بده و دچار برداشت نادرست و ارتکاب غفلت و خطای خطرناکی نشه. حتی خود منکه در برنامم در بعضی جاها از MD5 استفاده کردم الان در این باب به شدت شک کردم و در فکر تعویض اون هستم، باوجودی که در این زمینه تخصص و مطالعات و تحقیقات گسترده ای داشتم. بقولی هم یکی گفته بود که استفاده از md5 حتی برای کاربردهایی که این آسیب پذیری ها چندان ربطی به اون کاربردها ندارن مثل اینه که یک کارخانه اتومبیل سازی بیاد و از تایرهایی که در سرعت بالا میترکن برای اتومبیل های کم سرعت خودش استفاده کنه! با اینکه این کار خطر جدی ای برای اتومبیل های اون کارخانه نداره اما برای شهرت و اعتبارش اصلا خوب نیست و باعث ایجاد شایعات و مشکلات و ترس و بی اعتمادی مشتریان نسبت بهش میشه. چرا عاقل کند کاری که باز آرد پشیمانی؟ و بقول معروف میگن کار از محکم کاری عیب نمیکنه! پس باید در کاربردهای جدی و جدید، md5 رو برای همیشه به سطل آشغال انداخت و فراموشش کرد!
خداحافظ md5