PDA

View Full Version : سوال: هش کردن پسورد



younes.gh
چهارشنبه 29 آبان 1392, 23:16 عصر
سلام خدمت همه دوستان

والا بنده برای هش کردن از sha1 استفاده کردم که خیلی ضعیف هست راحت کرک میشه توسط کرکهای آنلاین

چطور می تونم به صورت حرفه ای هش کنم پسوردو که ایمن باشه؟

با تشکر

SilverLearn
پنج شنبه 30 آبان 1392, 01:27 صبح
ببین مثال هایی که اینجا زده می تونه کمکت کنه !

http://www.php.net/manual/en/function.crypt.php

smksmk
پنج شنبه 30 آبان 1392, 09:33 صبح
اول یه الگوریتم به چیزی که قراره رمز بشه بده (مثلاً ورودیت + اسم خودت یا هرچیزی) بعد هم با
md5() کدش کن . هروقت هم قراره بازیابیش کنی اول + اسم خودت میکنی و بعد md5 میکنی و با md5 داخل دیتابیس چک میکنی .

imanitc
پنج شنبه 30 آبان 1392, 11:08 صبح
md5() هم به راحتي توسط برخي از سايتها به روش معكوس برگردانده ميشه الان من خودم كدهايي تا 10 رقم تا تركيب اعداد و حروف و علايم رو تو يكي از سايتها به راحتي برگدوندم بهترين كار اينه كه خودتون يه تابع من در اوردي بسازيد كه كار هش كردن رو انجام بده اگر بتونيد يه كليد هم براش بذاريد خيلي خوب

smksmk
پنج شنبه 30 آبان 1392, 13:12 عصر
دوست عزیز سایتهایی که md5 رو باز میکنن ، خبری از الگوریتم ندارن فقط پایگاه داده های بزرگ از داده های md5 شده دارند که md5 شما رو هم میگیرن و با دیتابیس خودشون مقایسه میکنن که اگر برابر بود متن معادلشو نمایش میده . بنابراین به هیچ وجه کرک انجام نمیشه . مثلاً ممکنه کاربر 123456 رو به عنوان رمز وارد کنه که معادل md5 اون حتماً در اینجور سایتهای کرک md5 ذخیره شده بنابراین در بالا هم اشاره کردم شما باید یک قسمتی رو خودتون با ورودی کاربر ترکیب کنید تا دیگه قابل کرک شدن توسط اینجو سایتها نباشه . پس هیچ مشکلی نیست .

younes.gh
پنج شنبه 30 آبان 1392, 14:01 عصر
ممنون به خاطر جوابتون
از این روش استفاده کنم فکر کنم بهتر هست چون تست کردم ایمن هست به نظرم


<?php
$hashed_password = crypt('mypassword'); // let the salt be automatically generated
if (crypt($user_input, $hashed_password) == $hashed_password) {
echo "Password verified!";
}
?>
۹۸ کاراکتر ایجاد می کنه جالبه :لبخندساده:

colors
پنج شنبه 30 آبان 1392, 15:28 عصر
والا بنده برای هش کردن از sha1 استفاده کردم که خیلی ضعیف هست راحت کرک میشه توسط کرکهای آنلاین

شما مطمئنید خیلی ضعیف هست و کرک میشه!؟

colors
پنج شنبه 30 آبان 1392, 15:30 عصر
md5() هم به راحتي توسط برخي از سايتها به روش معكوس برگردانده ميشه الان من خودم كدهايي تا 10 رقم تا تركيب اعداد و حروف و علايم رو تو يكي از سايتها به راحتي برگدوندم بهترين كار اينه كه خودتون يه تابع من در اوردي بسازيد كه كار هش كردن رو انجام بده اگر بتونيد يه كليد هم براش بذاريد خيلي خوب

تابع من درآوردی؟ یعنی فکر میکنید به همین سادگیه؟

colors
پنج شنبه 30 آبان 1392, 15:36 عصر
شما اینجارو (http://barnamenevis.org/showthread.php?348222-%DB%8C%DA%A9-%D8%B1%D9%88%D8%B4-%D9%87%D8%B4-%D9%BE%D8%B3%D9%88%D8%B1%D8%AF-%D8%AD%D8%B1%D9%81%D9%87-%D8%A7%DB%8C) بخون(یک روش هش پسورد حرفه ای)

younes.gh
پنج شنبه 30 آبان 1392, 15:50 عصر
شما مطمئنید خیلی ضعیف هست و کرک میشه!؟

والا هش کردم و رفتم کرکش کردم خودم به راحتی هم کرک شد .

و اینکه از این دستور استفاده کردم الان واسه هش کردن ولی هربار به صورت متفاوت هش می کنه!!!

$hashed_password = crypt('mypassword');
وقتی می خوام مقایسه کنم پسورد وارد شده توسط کاربر و پسورد موجود در دیتابیس که به همین صورت هش شده ارور می ده چون هربار به یک صورت اینکود می کنه!

اگه کسی کمی توضیح بده ممنون میشم

younes.gh
پنج شنبه 30 آبان 1392, 15:58 عصر
شما اینجارو (http://barnamenevis.org/showthread.php?348222-%DB%8C%DA%A9-%D8%B1%D9%88%D8%B4-%D9%87%D8%B4-%D9%BE%D8%B3%D9%88%D8%B1%D8%AF-%D8%AD%D8%B1%D9%81%D9%87-%D8%A7%DB%8C) بخون(یک روش هش پسورد حرفه ای)

والا شاید روش حرفه ای باشه اما من از کدهاش چیزهای کمی رو میفهمم

و چون تازه کار هستم دوست دارم کلا خودم کد رو بنویسم و بفهمم که دارم چیکار می کنم (امیدوارم منظورمو بگیرین):لبخند:

younes.gh
پنج شنبه 30 آبان 1392, 16:26 عصر
از روش حرفه ای که معرفی کردین استفاده کردم و خیلی خوب داره جواب میده

if(empty($errors)){
$username = $database->escape($_POST["username"]);
$password = $database->escape($_POST["password"]);
$found = User::find_all();
$result = $database->fetch_array($found);
if($username == $result["username"] && verify_secure_hash($password, $result["password"])){
redirect_to("index.php");
}else{
redirect_to("login.php");
}
}
واسه مقایسه بود این تیکه کد
ممنون :قلب:
در ضمن تستشم کردم تو کرکرها نتوسنتن کرک کنن پس از همین استفاده می کنم حالا بعد اتمام کار تحلیل می کنم کدهاشو:لبخند: