Простой генератор паролей

Обсуждение NeoBook на русском
Locked
User avatar
Snow_Irbis
Posts: 13
Joined: Thu Jul 14, 2011 7:46 am
Contact:

Простой генератор паролей

Post by Snow_Irbis »

Недавно Гугл , Фейсбук и другие сайты призвали к смене своих паролей , поэтому что бы не ломать голову над придумыванием сложного пароля проще эту задачу поручить программе по их генерированию . Сам принцип генерирования паролей довольно простой , и как видно из кода приведенного ниже заключается в генерировании двух случайных чисел на основе которых выбирается буква латинского алфавита и ее регистр для каждого символа пароля , и все это делается в цикле который повторяется столько раз сколько символов должно быть в пароле . Скачать сам файл проекта можно тут :)

Code: Select all

ClearVariables "[TextEntry1]"                                          /* Очищаем поле сгенерированных паролей */
If "[TextEntry2]" "=" ""
SetVar "[TextEntry2]" "15"                                             /* Устанавливаем количество символов в пароле равным 15 , на тот случай если данное поле не заполнено */
Else
EndIf
DisableObject "TextEntry2"                                             /* Деактивируем поле ввода количества символов в пароле на время генерирования пароля */
DisableObject "PushButton1"                                            /* Деактивируем кнопку генерирования пароля на время генерирования пароля */
Loop "1" "[TextEntry2]" "[i]"
Random "26" "[RANDOM_1]"                                               /* Генерируем случайное число от 0 до 26 для выборки буквы из Латинского алфавита */
If "[RANDOM_1]" "=" "0"
GotoLine "9"                                                          /* Переходим на строку генерирования случайного числа заново , если случайно сгенерированное число меньше 1 */
Else
EndIf
SubStr "ABCDEFGHIJKLMNOPQRSTUVWXYZ" "[RANDOM_1]" "1" "[Letter]"        /* Копируем символ из строки равный по счету сгенерированному числу */
Random "1000" "[RANDOM_2]"                                             /* Генерируем случайное число от 0 до 1000 для принятия решения о переводе в нижний регистр */
If "[RANDOM_2]" "<=" "500"
StrLower "[Letter]" "[Letter]"                                         /* Переводим символ в нижний регистр если сгенерированное число меньше либо равно 500 */
Else
EndIf
SetVar "[TextEntry1]" "[TextEntry1][Letter]"                           /* Записываем результат в текстовое поле */
EndLoop
SetVar "[Clipboard]" "[TextEntry1]"                                    /* Копируем сгенерированный пароль в буфер обмена */
MessageBox "Сообщение программы" "Пароль длинной [TextEntry2] символов успешно сгенерирован|и скопирован в буфер обмена !" "ОК" "" /* Сообщение программы */
EnableObject "TextEntry2"                                              /* Активируем объект после генерирования пароля */
EnableObject "PushButton1"                                             /* Активируем объект после генерирования пароля */
Image
Image
Neosoft Support
NeoSoft Team
Posts: 5628
Joined: Thu Mar 31, 2005 10:48 pm
Location: Oregon, USA
Contact:

Re: Простой генератор паролей

Post by Neosoft Support »

Very interesting. Thank you for sharing this with us.
NeoSoft Support
Locked