Текущий архив: 2009.12.13;
Скачать: CL | DM;
ВнизПроверка сложности пaроля Найти похожие ветки
← →
Denis123 (2009-10-11 22:09) [0]Здравствуйте! Нужен aлгоритм проверки сложности пароля в Delphi, есть ли уже написанные, либо статьи, справочное руководство того как проверить пароль на сложность. В MSDN нашел код, но только на VB ...
← →
Поросенок ВинниПух (2009-10-12 00:36) [1]Чего мудрить-то?
Посмотри на окно с настройкой требований к сложности пароля:
1. минимальная длина.
2. количество небуквенно цифровых символов
3. требование к исторической неповторяемости пароля
все.
← →
GDI+ (2009-10-12 00:46) [2]
> Поросенок ВинниПух (12.10.09 00:36) [1]
+ проверка по словарю брутфорсеров.
← →
Германн © (2009-10-12 00:54) [3]
> Denis123 (11.10.09 22:09)
>
> Здравствуйте! Нужен aлгоритм проверки сложности пароля
А зачем сей алгоритм нужен? Учебное задание?
← →
TIF © (2009-10-12 01:40) [4]+ сравнение с логином/именем пользователя, поиск вхождений
← →
McSimm © (2009-10-12 02:38) [5]
> Нужен aлгоритм ... нашел код, но
> только на VB
а алгоритм на чем нужен ? :)
← →
test © (2009-10-12 08:03) [6]Регулярные выражения + проверка по словарю брутфорсеров.
← →
GDI+ (2009-10-12 10:54) [7]
> test © (12.10.09 08:03) [6]
>
> Регулярные выражения + проверка по словарю брутфорсеров.
А что, в стандартную поставку Delphi входит библиотека регулярных выражений?
← →
test © (2009-10-12 12:05) [8]GDI+ (12.10.09 10:54) [7]
Еще нет, но TRegExpr в виде исходников подключать никто не запрещает.
← →
test © (2009-10-12 12:06) [9]GDI+ (12.10.09 10:54) [7]
Найти можно в Гугле
← →
Rouse_ © (2009-10-12 16:17) [10]Можно помимо проверки по словарям подключить энтропию.
Пароль с энтропией 4 и больше хороший :)function CheckEntropy(Buff: PByte; dwSize: DWORD): Double;
function Log2(const X: Extended): Extended;
asm
FLD1
FLD X
FYL2X
FWAIT
end;
var
DataBuff: array [0..255] of Integer;
FrequencyBuff: array [0..255] of Double;
I: Integer;
begin
Result := 0;
if dwSize = 0 then Exit;
ZeroMemory(@DataBuff[0], 256 * SizeOf(Integer));
ZeroMemory(@FrequencyBuff[0], 256 * SizeOf(Double));
// Смотрим сколько раз встречается каждый символ
for I := 0 to dwSize - 1 do
begin
Inc(DataBuff[Buff^]);
Inc(Buff);
end;
// Рассчитываем частоту появления каждого cимвола
for I := 0 to 255 do
FrequencyBuff[I] := DataBuff[I] / dwSize;
// Рассчитываем энтропию
for I := 0 to 255 do
if DataBuff[I] <> 0 then
Result := Result +
(-FrequencyBuff[I] * Log2(FrequencyBuff[I]))
end;
procedure TfrmEntropy.Edit1Change(Sender: TObject);
begin
Label1.Caption := FloatToStr(CheckEntropy(
PByte(PChar(Edit1.Text)), Length(Edit1.Text)));
end;
← →
Медвежонок Пятачок © (2009-10-12 16:22) [11]все эти требования неизбежно имеют один побочный эффект.
в виде стикера на мониторе.
чтобы не забыть очень хороший пароль, который прошел проверку алгоритма.
← →
Denis123 (2009-10-12 16:41) [12]Да, это нам в колледже задали, написать на Дельфи функцию проверки сложности пароля. В гугле искал не нашел, кроме того, на некоторых сайтах даже пароли qwerty считаются сложными... Словарь "брутфорсеров", сейчас поищу ... спасибо.
← →
Медвежонок Пятачок © (2009-10-12 16:45) [13]function IsStrongPassword(const APassword : string) : boolean;
begin
Result := (APassword <> "god") and (APassword <> "love") and (APassword <> "sex")
end;
:)
← →
Медвежонок Пятачок © (2009-10-12 16:47) [14]... and (PasswordDictionaryList.IndexOf(APassword) < 0);
← →
Медвежонок Пятачок © (2009-10-12 16:49) [15]+ проверка по словарю брутфорсеров.
а словарь брутфорсеров - это алфавит.
← →
oldman © (2009-10-12 17:19) [16]
> Нужен aлгоритм проверки сложности пароля
Смешно...
Если пароль состоит минимум из 8 символов разного регистра, а также цифр, он сложен.
Если пароль состоит из одной цифры, он ломается максимум за 10 попыток.
Комбинаторику и тервер учил???
← →
test © (2009-10-12 17:35) [17]Rouse_ © (12.10.09 16:17) [10]
Где бы про энтропию почитать?
← →
Игорь Шевченко © (2009-10-12 17:38) [18]Пароль должен быть хорошо запоминаем, бессмыслен или нецензурен, и длинен.
← →
test © (2009-10-12 17:40) [19]Игорь Шевченко © (12.10.09 17:38) [18]
Мальчик показал жестами что его зовут Хуан 2
Это про оно?
← →
Rouse_ © (2009-10-12 18:04) [20]
> test © (12.10.09 17:35) [17]
>
> Rouse_ © (12.10.09 16:17) [10]
> Где бы про энтропию почитать?
Про меру энтропии Шеннона можно найти тут: http://ru.wikipedia.org/wiki/%D0%98%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%BD%D0%B0%D1%8F_%D1%8D%D0%BD%D1%82%D1%80%D0%BE%D0%BF%D0%B8%D1%8F
Собственно именно этот алгоритм я и привел.
← →
test © (2009-10-12 18:22) [21]Rouse_ © (12.10.09 18:04) [20]
Спасибо
← →
Гость (2009-10-12 20:23) [22]
> Смешно...
> Если пароль состоит минимум из 8 символов разного регистра,
> а также цифр, он сложен.
> Если пароль состоит из одной цифры, он ломается максимум
> за 10 попыток.
> Комбинаторику и тервер учил???
>
Получается пароль Qwerty123 считается сложным?
← →
test © (2009-10-12 20:42) [23]Гость (12.10.09 20:23) [22]
Считается он у брутфорсеровсеров в БД.
Страницы: 1 вся ветка
Текущий архив: 2009.12.13;
Скачать: CL | DM;
Память: 0.49 MB
Время: 0.005 c