Russian Qt Forum

Qt => Вопросы новичков => Тема начата: thechicho от Октябрь 06, 2011, 17:40



Название: Функция генерации пароля
Отправлено: thechicho от Октябрь 06, 2011, 17:40
подскажите, плиз, функцию для генерации пароля.
чтобы можно было задать длину (фиксированную, или от-до)
и набор символов (asdfzxcv53242hkj@!!!##$$@#@!)


Название: Re: Функция генерации пароля
Отправлено: thechicho от Октябрь 06, 2011, 18:17
вот мой велик:

Код
C++ (Qt)
QString Widget::passwordRand(qint64 min, qint64 max)
{
   QString chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
   qsrand(QTime(0,0,0).secsTo(QTime::currentTime()));
   QString password;
   qint64 amount = mt_rand(min, max);
   for (int i = 0; i < amount; i++) {
       int num = qrand() % chars.size();
       password += chars.at(num);
   }
   return password;
}
 
qint64 Widget::mt_rand(qint64 a, qint64 b)
{
   qsrand(QTime(0,0,0).secsTo(QTime::currentTime()));
   return qrand()%(b-a+1)+a;
}

зацените и подскажите как можно сделать лучше.
особенно
Код
C++ (Qt)
[b]qsrand(QTime(0,0,0).secsTo(QTime::currentTime()));[/b]
есть альтернатива?!


Название: Re: Функция генерации пароля
Отправлено: thechicho от Октябрь 06, 2011, 18:25
fuck yeah
Код
C++ (Qt)
qsrand(QDateTime::currentMSecsSinceEpoch());


Название: Re: Функция генерации пароля
Отправлено: kambala от Октябрь 06, 2011, 19:33
можно считать какой-нить хэш от логина


Название: Re: Функция генерации пароля
Отправлено: thechicho от Октябрь 06, 2011, 21:44
код, плз


Название: Re: Функция генерации пароля
Отправлено: kambala от Октябрь 06, 2011, 21:54
Код
C++ (Qt)
QByteArray md5Hash = QCryptographicHash::hash("some_login", QCryptographicHash::Md5);


Название: Re: Функция генерации пароля
Отправлено: LisandreL от Октябрь 07, 2011, 09:22
kambala, т.е. если кто-то просечёт алгоритм генерации пароля (а MD5 хеш довольно узнаваем), то он сможет от любого логина получить пароль? Гениально!


Название: Re: Функция генерации пароля
Отправлено: Пантер от Октябрь 07, 2011, 09:27
Заксорь результат, прогони через еще парочку хэшей. Что сложного-то?


Название: Re: Функция генерации пароля
Отправлено: LisandreL от Октябрь 07, 2011, 10:11
Заксорь результат, прогони через еще парочку хэшей. Что сложного-то?
Как говорится: сокрытие алгоритма - не есть безопасность. ;)


Название: Re: Функция генерации пароля
Отправлено: Пантер от Октябрь 07, 2011, 10:12
Ну, ломается все. :) В основном, хватает обычного паяльника.  ;D


Название: Re: Функция генерации пароля
Отправлено: Rem Norton от Октябрь 07, 2011, 13:34
blowfish уже не рулит? Если что, в аттаче реализация.


Название: Re: Функция генерации пароля
Отправлено: thechicho от Октябрь 07, 2011, 20:04
сенкс, ток уже велик изобретен, смысла чот левое присоединять нет :)


Название: Re: Функция генерации пароля
Отправлено: Странник от Октябрь 07, 2011, 22:31
blowfish уже не рулит? Если что, в аттаче реализация.
а вот я притырил, благодарствую)