Comments 101
Если кто-нибудь создаст программу использующую данный принцип, предлагаю название программы EnigmaPass.
ппц как всё сложно. может проще скачать вот эту табличку, и её использовать? (по ссылке — pdf со случайно сгенерированной таблицей)
Это конечно прикольно, но всё равно что файлы в hex'е распечатывать, вместо бэкапа. Чем многочисленные менеджеры паролей хуже?
Менеджеры паролей хороши, с этим спорить весьма сложно. А если Вы находитесь в интернет-кафе и Вам нужен Ваш пароль? Даже если учесть что у Вас менеджер паролей на флешке и USB-порты открыты, то паранойю ещё никто не отменял. А если Вы забудите пароль от менеджера паролей? Как Вы пройдёте через ещё одну «бронированную» дверку?
Так же, как нужен менеджер паролей, так же и таблица нужна. Я не смогу её запомнить =) Конечно, бумажку проще с собой носить, но, например, мобильник я дома забываю реже, чем, скажем, паспорт=) Я думаю, если в клубе стоит кейлоггер, то ни один метод не спасёт. Пароль можно забыть так же, как и ключевое слово.

В целом интересно, но KeePass не променяю на таблицу =)
keepass на флэшке. Он же шифрует базу свою как-то, вряд ли кто-то кроме ЦРУ сможет расшифровать за вменяемое время даже простой архив с паролем вида vi2R476_6x%rv67`537c (сгенерировано вручную по принципу «пьяный пианист»).
> А если Вы находитесь в интернет-кафе и Вам нужен Ваш пароль?

B вы будите сидеть и по бумажке вычислять пароль? А если срочно?

> А если Вы забудите пароль от менеджера паролей?

Не раз бывало. В одном из офисов обнаружилось место, сев на которое я забываю пароль т менеджера паролей, а на его место в памяти встаёт пароль от рута в институте. Иду в другой кабинет. Сажусь, расслабляюсь, и пароль от менеджера паролей возвращается в голове на место.
ассоциации страшная сила :)
сам не раз замечал, что в зависимости от обстановки информация в голове замещается целыми блоками. при чем связь между блоками и обстановкой железная, можно использовать вместо «напоминалок» :)
одним словом hash+salt
Я делаю так:
$  # echo 'example.com+myphrase'|md5sum
e6d2ae6704e1c910bc6f49b1ad5e5024


P.S.: табличка взорвала мои глаза!
Мне табличка тоже глаза взрывает. Но я же не предложил очередной инфо-дизайн (его можно усовершенствовать). Я предложил идею безопасных и простых паролей.
К табличке и методу нет претензий, кому-то будет удобно. Мне же проще и привычнее мой вариант, тоже достаточно знать адрес сайта+секрет. Ну и иметь консоль *nix-овую под рукой. Зато табличка не нужна )
Хотя перед публикацией топика я табличку распечатывал на чёрно-белом принтере. В бумажном виде вышло всё не так взрывоопасно.
По-моему набор символов маловат. Если добавить !@#$%^&*()-_+=, пароль можно сделать гораздо короче, не потеряв криптостойкости.
гораздо важнее длина пароля и его! словарность, чем набор алфавитов
И остается это в history оболочки :)
Где-то видел скрипт, который не выводит в открытом виде myphrase
А еще можно солить второй частью credentials (логином, например), чтобы иметь сколько хочешь учеток на сайте
1) History моя персональная, кому до неё дело?
2) И вообще ln -s /dev/null ~/.bash_history
Личная — это хорошо. Только вот пароль, дефакто записанный в открытом виде, пусть и где-то на локальной машине, все равно смущает
только вот адрес example.com может поменяться, и пароль ваш перестанет подходить (в случае если все это автоматически генерировать, а не вводить url вручную)
вспомните тот же torrents.ru
для этого есть система восстановления паролей, кроме того, в примере с torrents.ru только глухо-слепой не знал о смене адреса )
— Представляешь, у torrents.ru сменился адрес!
— Фига себе! А что это?
— Понятия не имею, но это же ужос!
А я не тоже. Я английского не знаю. Хотя Google-переводчик мне помог. Я тоже все два PIN-кода от пластиковых карт записал на бумажке. Правда я добавил ещё кучу циферок к этой записи. Данная идея может быть и плохая, но правильная.
А я в мобильник записываю.
Создаю несуществующего персонажа, и его номер мне как бы напоминает…
Да, это оно самое. Принцип тот же самый. Это ОЧЕНЬ старый способ симметричного шифрования. Им пользовались ещё при царе-горохе.
У Вас такой пароль ко всем сайтам такой? Тогда кое-кто идёт к Вам. Другой? Ух как мы Ваш пароль к сайту «разногрупники» узнаем и всё, нет у Вас больше аськи!
Вот здесь предложена гораздо более удобная реализация похожей идеи (пароль для сайта генерируется из названия сайта и единой ключевой фразы).
Я не изобрёл карамельку, я завернул её в другой фантик. Я проверил Ваше предложение. РАБОТАЕТ!!! А это главное. Идея не в системе, а в заголовке моего поста. Сложные пароли не нуждаются в запоминании. Но они ещё и в интернете не нуждаются. Лист бумаги, ручка (дополнительно можно использовать разноцветные маркеры) и Ваша фантазия. Это всё что нужно для правильного пароля.
По ссылке, которую я дал выше, тоже интернет не обязателен, т.к. все реализовано на javascript и предлагается к скачиванию отдельный файлик. Только это отнюдь не мое предложение. Вот его автор.
Все отлично, это наверное хороший способ генерировать «случайный» пароль с возможностью его восстановления…
Но есть несколько «НО:
— всякие „нехорошие“ сайты типа альфа-клик заставляют меня менять пароль раз в месяц. Как быть в этом случае?
— как запомнить эту табличку или как сгенерировать точно такую же в случае ее утери?
— »генерация пароля" вручную долгая и нудная. стандартной автоматизации не предусмотрено.

может быть сделать проще?
base64(md5(«ключевая фраза»+«кодовое слово»))
берем первые 10 символов — чем не пароль? ;)
Думать не получается. А у Вас есть первобытно-общинная палкокопалко? Стукните меня, пожалуйста, по самой костистой части тела, то есть по голове.
Интересный подход, фактически хэширование вручную. И главное зная принцип всегда можно восстановить все пароли, даже без наличия физического доступа к компу.
Вы открыли шифр Хилла-Плейфэйра? И наверняка, знаете, почему они остались в прошлом?
Отлично. Удивляет, столько топиков о ИБ, кругом паранойя, а матчасть не учат.

По теме — заставить вас зарегиться на 3-4 сайтах, и уже есть материал для анализа.
поделитесь инфой насчёт шифра Хилла-Плейфэйра, потому как то, что я нашёл не особо похоже на то, что я вижу здесь.

по-моему, это просто квадрат виженера…
Вы правы, Плейфейр и Хилл, в оригинале, усложнённые разновидности квадрата Вижинера.
Зачем для создания пароля использовать квадрат Вижинера? Ему же не нужна «криптостойкость». Достаточно будет использования простого одноалфавитного шифра замены — это ж куда как проще.

А если сам процесс шифрования доставляет удовольствие, то я советую обратить внимание на Enigma (Silverlight). Будет еще более аутентично.

Если кто не знает как пользоваться — вверху нужно покрутить три «диска», а внизу нужно перемычками соединить несколько выходов.
Вот вы не поверите, использую 6 паролей для разных типов сайтов, компьютеров и т.п. И с 1998 года(тогда мне было 9 лет) еще ни разу мой пароль не взламывали не на 1 из ресурсов. Мой пример паролей примерно такой:

1. Одноразовые сайты.
а) проверить логин\пасс: qwerty\qwerty
б) если не подходит создать свой аккаунт, пароль к которому либо памятная дата, либо что-то вроде 258456
2. Часто посещаемые сайты. Более сложный пароль, но так чтоб легко запомнить, например 321DR67ag0On (кто играл в Heroes of M&M поймут почему он простой и запоминающийся)
3. Электронные кошельки. Тут пароль должен быть сложным, но тоже легко и быстро вводимым, но и запомнить его тоже нужно легко, как пример: zXc_-_8XpOl

Остальные пароли в зависимости от случая, сверх-сложные пароли не генерирую в силу того что их проще всего забыть :)

P.S. Не 1 из вышеперечисленных паролей мною не используется, данные пароли приведены как пример.
я играю в хироес, но пароль запомнить сложно, код конечно же узнал
почему три цифры две буквы две цифры и тд
почему какие то большие, а какие то нет?
логически предположить почему 3 цифры и 2 буквы, потому что 3 цифры идут на убывание (3 2 1), потом пара букв(почему большие? чтоб взломать сложнее было можно для себя решить например чтоб всегда 2 первые буквы были большими), потом еще 2 цифры потому что на возрастание идут (6 7), в конце «0» и «O» для количества символов.
Предвкушаю, что сделают со старательным админом, который попытается внедрить подобную методу в организации.
У меня сделано проще.
Есть у меня в инете определенный урл, куда я захожу и попадаю в свой php скрипт.
там у меня поле для вводу названия сервиса или его урла. скрипт создает из него (названия или урла) и известного только мне ключа — несколько хэшей разными алгоритмами и выбирает из них определенные последовательности символов (которые я помню) и строит мне пароль :)
например habrahabr.ru сводится со строкой «secretKey», хэшируется md5, sha1 и берет из них сиволы с номерами скажем 5,3,1,8,6 и составляет 10-ти значный пароль. Типа того :)
Разумеется) иначе любой любознательный сниферовод даже не хотя заметит странность с передачей названий ресурсов и рядом с ними 10-ти напоминающих пароль символов)
https://chrome.google.com/extensions/detail/bhhinkiejikaoegbkfghkchkfekbkbic
расширение для google chrome со схожим функционалом. Каждому сайту — свой пароль.
«Серёженька, а я опять забыла ...»… как пользоваться табличкой (свою ключевую фразу)

Товарищи! Не ведитесь :-) Не проще ли отправить самому себе письмо с паролем на почту, указав название ресурса в теме. А тело зашифровать RSA 1024-бита. Для расшифровки потребуется приватный ключ и пароль (опциально). Ключик можно хранить на флешке, или где-нибудь на dropbox'е, а паролем сделать какое-нибудь предложение. Например, «one death is a tragedy one million is a statistics». Легко запомнить, нереально подобрать.
Блин да уже давно есть куча готовых решений в духе KeePass. Читаю такие статьи и каждый раз офигеваю, что только люди не придумывают вместо простого и удобного менеджера паролей.
я тоже удивляюсь :)
а еще удивляюсь, как я буду свои 1000+ паролей на этой бумажке держать.
А как вы предложите запоминать дикую комбинацию passwordpassword/HaBRaHaBRDoBiVKa?
Если уж разговор про забывчивого человека, то он не сможет вспомнить и «ключевой фразы» в определенный момент.
UFO landed and left these words here
Издревле пользуюсь pwgen'ом. Рандомные пароли механически запоминаются значительно лучше, чем вот в таких методологиях. Стоит всего-лишь несколько раз набрать пароль.
Насколько я понимаю, самое сложное в паролях, это не их запоминание, а ассоциация пароля и ресурса.
Пароли запоминать легко. Главное, сфокусироваться на них, как на важном, а не второстепенном.

Вот пара паролей из генератора (apg):

juku2Sli
twygFoj7

Первый:

juku 2 Sli. Всмотрись в него. juku, 2Sli. juku 2Sli. Теперь главное не просто запомнить, а связать с некоторой сущностью. juku2Sli — рутовый пароль на srv-312.

twygFoj7. twy twy twy twy twy twy… gF… почти как fg, только совсем наоборот. gF. oj7. twygFoj7. Всё, запомнил.

Запоминать пароли проще, чем номера телефонов (пароли обычно короче и с буквами). Если там знаки препинания — ещё проще, пароль делится на части по этим знакам. «до и после».

А выдумывать табличку — снижать устойчивость пароля.
Все-таки, мне кажется, ни пароль, ни инструменты для его генерации не должны покидать головы хозяина пароля.
А запоминать пароли не так уж и сложно, как может показаться. Голову в любом случае неплохо бы тренировать, запоминая важные данные — свой ИНН, например, паспортные данные, номер банковской карты и т.п. Ну и сложные пароли, чтобы их не забывать, нужно, по возможности, регулярно применять 8)
Блин. Ну нафига такие сложности. Вот сколько если честно признаться у вас действительно важных паролей? У меня 3 всего, почта, пинкод от карты и еще кой чего. Остальная бня ненужная — забуду — восстановлю, а потеряю не жалко. Уж 3-и то пароля как нить запомню. А ну если параноя — то конечно защищать вконтакте и одноклассников суперсложными паролями, разными и с запятыми всякими — это самое то. ИМХО, блин.
UFO landed and left these words here
А как быть, если имя ресурса поменяется? какой-нибудь torrents, например, на rutracker.org
pwgen+немного серого вещества в голове достаточно для того, чтобы хранить одновременно пару десятков 16-символьных паролей.
отличный бред человека который забывает пины от картона…

Просто шикарный пост…

Я не запоминаю пароли, я их даже не знаю, кроме пары-тройки основных. Остальную работу делает 1Password. Реконструировать пароли по такой табличке — увлекательная игра для начинающего шпиона, но в жизни ее применить тяжело. А если на одном сайте 3 разных пароля? А если я логин забыл? У меня такое часто случается.
есть один гавно пароль для незначительных ресурсов, к которым доступ потерять мне не жалко ну никак. И есть несколько хороших уже вызубренных для нужных ресурсов. Мне зарегистрироваться иногда лень, а тут еще и такой фигней с таблицами страдать.
у меня метод такой, зубрю пароль набивая его по клаве, мин 10- 15 достаточно, можно пару повторений сделать через некоторое время, после запоминать его не нужно, пальцы запоминают. как с нотами на гитаре ))
запоминать надо все данные для авторизации — не везде есть возможность использовать один и тот же логин или email и часто приходится чуть ли не генерировать имя чтобы подобрать свободное
а пароль можно легко восстановить зная эти данные
Я раньше тоже пароли в keepass хранил, чтобы в голове не держать, но сейчас держу в голове алгоритм генерации пароля, теперь все пароли всегда со мной и keepass уже не нужен как и листы вышеприведенные.
Топик на Хабрахабре где высказываются критические замечания к данному способу придумывания паролей
Вопрос. Можно ли ниже написанной считать публично опубликованным и использовать свободено без денежных отчислений?
Скрипт взят на этой страничке supergenpass.com/mobile/

<script type="text/javascript">

function b64_md5(p) {
p=utf8_en(p);
return binl2b64(core_md5(str2binl(p),p.length*8));
}

function hex_md5(p) {
p=utf8_en(p);
return binl2hex(core_md5(str2binl(p),p.length*8));
}

function binl2b64(binarray) {
var tab='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz012345678998';
var str='';
for(var i=0; i<binarray.length*4; i+=3) {
var triplet=(((binarray[i>>2]>>8*(i%4))&0xFF)<<16)|(((binarray[i+1>>2]>>8*((i+1)%4))&0xFF)<<8)|((binarray[i+2>>2]>>8*((i+2)%4))&0xFF);
for(var j=0; j<4; j++) {
str+=tab.charAt((triplet>>6*(3-j))&0x3F);
}
}
return str;
}

function binl2hex(binarray) {
var hex_tab='0123456789abcdef';
var str='';
for(var i=0; i<binarray.length*4; i++) {
str+=hex_tab.charAt((binarray[i>>2]>>((i%4)*8+4))&0xF)+hex_tab.charAt((binarray[i>>2]>>((i%4)*8))&0xF);
}
return str;
}

function core_md5(x,len){
x[len>>5]|=0x80<<((len)%32); x[(((len+64)>>>9)<<4)+14]=len;
var a=1732584193; var b=-271733879; var c=-1732584194; var d=271733878;
for(var i=0;i<x.length;i+=16){
var olda=a; var oldb=b; var oldc=c; var oldd=d;
a=md5_ff(a,b,c,d,x[i+0],7,-680876936); d=md5_ff(d,a,b,c,x[i+1],12,-389564586); c=md5_ff(c,d,a,b,x[i+2],17,606105819); b=md5_ff(b,c,d,a,x[i+3],22,-1044525330);
a=md5_ff(a,b,c,d,x[i+4],7,-176418897); d=md5_ff(d,a,b,c,x[i+5],12,1200080426); c=md5_ff(c,d,a,b,x[i+6],17,-1473231341); b=md5_ff(b,c,d,a,x[i+7],22,-45705983);
a=md5_ff(a,b,c,d,x[i+8],7,1770035416); d=md5_ff(d,a,b,c,x[i+9],12,-1958414417); c=md5_ff(c,d,a,b,x[i+10],17,-42063); b=md5_ff(b,c,d,a,x[i+11],22,-1990404162);
a=md5_ff(a,b,c,d,x[i+12],7,1804603682); d=md5_ff(d,a,b,c,x[i+13],12,-40341101); c=md5_ff(c,d,a,b,x[i+14],17,-1502002290); b=md5_ff(b,c,d,a,x[i+15],22,1236535329);
a=md5_gg(a,b,c,d,x[i+1],5,-165796510); d=md5_gg(d,a,b,c,x[i+6],9,-1069501632); c=md5_gg(c,d,a,b,x[i+11],14,643717713); b=md5_gg(b,c,d,a,x[i+0],20,-373897302);
a=md5_gg(a,b,c,d,x[i+5],5,-701558691); d=md5_gg(d,a,b,c,x[i+10],9,38016083); c=md5_gg(c,d,a,b,x[i+15],14,-660478335); b=md5_gg(b,c,d,a,x[i+4],20,-405537848);
a=md5_gg(a,b,c,d,x[i+9],5,568446438); d=md5_gg(d,a,b,c,x[i+14],9,-1019803690); c=md5_gg(c,d,a,b,x[i+3],14,-187363961); b=md5_gg(b,c,d,a,x[i+8],20,1163531501);
a=md5_gg(a,b,c,d,x[i+13],5,-1444681467); d=md5_gg(d,a,b,c,x[i+2],9,-51403784); c=md5_gg(c,d,a,b,x[i+7],14,1735328473); b=md5_gg(b,c,d,a,x[i+12],20,-1926607734);
a=md5_hh(a,b,c,d,x[i+5],4,-378558); d=md5_hh(d,a,b,c,x[i+8],11,-2022574463); c=md5_hh(c,d,a,b,x[i+11],16,1839030562); b=md5_hh(b,c,d,a,x[i+14],23,-35309556);
a=md5_hh(a,b,c,d,x[i+1],4,-1530992060); d=md5_hh(d,a,b,c,x[i+4],11,1272893353); c=md5_hh(c,d,a,b,x[i+7],16,-155497632); b=md5_hh(b,c,d,a,x[i+10],23,-1094730640);
a=md5_hh(a,b,c,d,x[i+13],4,681279174); d=md5_hh(d,a,b,c,x[i+0],11,-358537222); c=md5_hh(c,d,a,b,x[i+3],16,-722521979); b=md5_hh(b,c,d,a,x[i+6],23,76029189);
a=md5_hh(a,b,c,d,x[i+9],4,-640364487); d=md5_hh(d,a,b,c,x[i+12],11,-421815835); c=md5_hh(c,d,a,b,x[i+15],16,530742520); b=md5_hh(b,c,d,a,x[i+2],23,-995338651);
a=md5_ii(a,b,c,d,x[i+0],6,-198630844); d=md5_ii(d,a,b,c,x[i+7],10,1126891415); c=md5_ii(c,d,a,b,x[i+14],15,-1416354905); b=md5_ii(b,c,d,a,x[i+5],21,-57434055);
a=md5_ii(a,b,c,d,x[i+12],6,1700485571); d=md5_ii(d,a,b,c,x[i+3],10,-1894986606); c=md5_ii(c,d,a,b,x[i+10],15,-1051523); b=md5_ii(b,c,d,a,x[i+1],21,-2054922799);
a=md5_ii(a,b,c,d,x[i+8],6,1873313359); d=md5_ii(d,a,b,c,x[i+15],10,-30611744); c=md5_ii(c,d,a,b,x[i+6],15,-1560198380); b=md5_ii(b,c,d,a,x[i+13],21,1309151649);
a=md5_ii(a,b,c,d,x[i+4],6,-145523070); d=md5_ii(d,a,b,c,x[i+11],10,-1120210379); c=md5_ii(c,d,a,b,x[i+2],15,718787259); b=md5_ii(b,c,d,a,x[i+9],21,-343485551);
a=safe_add(a,olda); b=safe_add(b,oldb); c=safe_add(c,oldc); d=safe_add(d,oldd);
}
return Array(a,b,c,d);
}

function md5_cmn(q,a,b,x,s,t) { return safe_add(bit_rol(safe_add(safe_add(a,q),safe_add(x,t)),s),b); }
function md5_ff(a,b,c,d,x,s,t) { return md5_cmn((b&c)|((~b)&d),a,b,x,s,t); }
function md5_gg(a,b,c,d,x,s,t) { return md5_cmn((b&d)|(c&(~d)),a,b,x,s,t); }
function md5_hh(a,b,c,d,x,s,t) { return md5_cmn(b^c^d,a,b,x,s,t); }
function md5_ii(a,b,c,d,x,s,t) { return md5_cmn(c^(b|(~d)),a,b,x,s,t); }
function safe_add(x,y) { var lsw=(x&0xFFFF)+(y&0xFFFF); var msw=(x>>16)+(y>>16)+(lsw>>16); return (msw<<16)|(lsw&0xFFFF); }
function bit_rol(num,cnt) { return (num<<cnt)|(num>>>(32-cnt)); }
function str2binl(str) { var bin=Array(); var mask=(1<<8)-1; for(var i=0;i<str.length*8;i+=8) bin[i>>5]|=(str.charCodeAt(i/8)&mask)<<(i%32); return bin; }
function utf8_en(str){return unescape(encodeURIComponent(str));}

function gp2_generate_passwd(Passwd,Len) {
var i=0;
while(i<10||!(gp2_check_passwd(Passwd.substring(0,Len)))) {
Passwd=b64_md5(Passwd);
i++;
}
return Passwd.substring(0,Len);
}

function gp2_check_passwd(Passwd) {
return (Passwd.search(/[a-z]/)===0&&Passwd.search(/[0-9]/)>0&&Passwd.search(/[A-Z]/)>0)?true:false;
}

function gp2_validate_length(Len) {
Len=(parseInt(Len))?parseInt(Len):10;
if(Len<4) {
Len=4;
} else if(Len>24) {
Len=24;
}
return Len;
}

function gp2_process_uri(URI,DisableTLD) {

URI=URI.toLowerCase();
var HostNameIsolator=new RegExp('^(http|https|ftp|ftps|webdav|gopher|rtsp|irc|nntp|pop|imap|smtp)://([^/:]+)');
var HostName=URI.match(HostNameIsolator);

if(HostName&&HostName[2]!=null) {
HostName=HostName[2];
} else {
HostNameIsolator=new RegExp('^([^/:]+)');
HostName=URI.match(HostNameIsolator);
HostName=(HostName[1]!=null)?HostName[1]:URI;
}

HostNameIsolator=new RegExp('^([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})$');
HostName=(HostName.match(HostNameIsolator))?[HostName]:HostName.split('.');

if(HostName[2]==null||DisableTLD) {
URI=HostName.join('.');
} else {
URI=HostName[HostName.length-2]+'.'+HostName[HostName.length-1];
var TLDList=['ac.ac','com.ac','edu.ac','gov.ac','net.ac','mil.ac','org.ac','com.ae','net.ae','org.ae','gov.ae','ac.ae','co.ae','sch.ae','pro.ae','com.ai','org.ai','edu.ai','gov.ai','com.ar','net.ar','org.ar','gov.ar','mil.ar','edu.ar','int.ar','co.at','ac.at','or.at','gv.at','priv.at','com.au','gov.au','org.au','edu.au','id.au','oz.au','info.au','net.au','asn.au','csiro.au','telememo.au','conf.au','otc.au','id.au','com.az','net.az','org.az','com.bb','net.bb','org.bb','ac.be','belgie.be','dns.be','fgov.be','com.bh','gov.bh','net.bh','edu.bh','org.bh','com.bm','edu.bm','gov.bm','org.bm','net.bm','adm.br','adv.br','agr.br','am.br','arq.br','art.br','ato.br','bio.br','bmd.br','cim.br','cng.br','cnt.br','com.br','coop.br','ecn.br','edu.br','eng.br','esp.br','etc.br','eti.br','far.br','fm.br','fnd.br','fot.br','fst.br','g12.br','ggf.br','gov.br','imb.br','ind.br','inf.br','jor.br','lel.br','mat.br','med.br','mil.br','mus.br','net.br','nom.br','not.br','ntr.br','odo.br','org.br','ppg.br','pro.br','psc.br','psi.br','qsl.br','rec.br','slg.br','srv.br','tmp.br','trd.br','tur.br','tv.br','vet.br','zlg.br','com.bs','net.bs','org.bs','ab.ca','bc.ca','mb.ca','nb.ca','nf.ca','nl.ca','ns.ca','nt.ca','nu.ca','on.ca','pe.ca','qc.ca','sk.ca','yk.ca','gc.ca','co.ck','net.ck','org.ck','edu.ck','gov.ck','com.cn','edu.cn','gov.cn','net.cn','org.cn','ac.cn','ah.cn','bj.cn','cq.cn','gd.cn','gs.cn','gx.cn','gz.cn','hb.cn','he.cn','hi.cn','hk.cn','hl.cn','hn.cn','jl.cn','js.cn','ln.cn','mo.cn','nm.cn','nx.cn','qh.cn','sc.cn','sn.cn','sh.cn','sx.cn','tj.cn','tw.cn','xj.cn','xz.cn','yn.cn','zj.cn','arts.co','com.co','edu.co','firm.co','gov.co','info.co','int.co','nom.co','mil.co','org.co','rec.co','store.co','web.co','ac.cr','co.cr','ed.cr','fi.cr','go.cr','or.cr','sa.cr','com.cu','net.cu','org.cu','ac.cy','com.cy','gov.cy','net.cy','org.cy','co.dk','art.do','com.do','edu.do','gov.do','gob.do','org.do','mil.do','net.do','sld.do','web.do','com.dz','org.dz','net.dz','gov.dz','edu.dz','ass.dz','pol.dz','art.dz','com.ec','k12.ec','edu.ec','fin.ec','med.ec','gov.ec','mil.ec','org.ec','net.ec','com.ee','pri.ee','fie.ee','org.ee','med.ee','com.eg','edu.eg','eun.eg','gov.eg','net.eg','org.eg','sci.eg','com.er','net.er','org.er','edu.er','mil.er','gov.er','ind.er','com.es','org.es','gob.es','edu.es','nom.es','com.et','gov.et','org.et','edu.et','net.et','biz.et','name.et','info.et','ac.fj','com.fj','gov.fj','id.fj','org.fj','school.fj','com.fk','ac.fk','gov.fk','net.fk','nom.fk','org.fk','asso.fr','nom.fr','barreau.fr','com.fr','prd.fr','presse.fr','tm.fr','aeroport.fr','assedic.fr','avocat.fr','avoues.fr','cci.fr','chambagri.fr','chirurgiens-dentistes.fr','experts-comptables.fr','geometre-expert.fr','gouv.fr','greta.fr','huissier-justice.fr','medecin.fr','notaires.fr','pharmacien.fr','port.fr','veterinaire.fr','com.ge','edu.ge','gov.ge','mil.ge','net.ge','org.ge','pvt.ge','co.gg','org.gg','sch.gg','ac.gg','gov.gg','ltd.gg','ind.gg','net.gg','alderney.gg','guernsey.gg','sark.gg','com.gr','edu.gr','gov.gr','net.gr','org.gr','com.gt','edu.gt','net.gt','gob.gt','org.gt','mil.gt','ind.gt','com.gu','edu.gu','net.gu','org.gu','gov.gu','mil.gu','com.hk','net.hk','org.hk','idv.hk','gov.hk','edu.hk','co.hu','2000.hu','erotika.hu','jogasz.hu','sex.hu','video.hu','info.hu','agrar.hu','film.hu','konyvelo.hu','shop.hu','org.hu','bolt.hu','forum.hu','lakas.hu','suli.hu','priv.hu','casino.hu','games.hu','media.hu','szex.hu','sport.hu','city.hu','hotel.hu','news.hu','tozsde.hu','tm.hu','erotica.hu','ingatlan.hu','reklam.hu','utazas.hu','ac.id','co.id','go.id','mil.id','net.id','or.id','co.il','net.il','org.il','ac.il','gov.il','k12.il','muni.il','idf.il','co.im','net.im','org.im','ac.im','lkd.co.im','gov.im','nic.im','plc.co.im','co.in','net.in','ac.in','ernet.in','gov.in','nic.in','res.in','gen.in','firm.in','mil.in','org.in','ind.in','ac.ir','co.ir','gov.ir','id.ir','net.ir','org.ir','sch.ir','ac.je','co.je','net.je','org.je','gov.je','ind.je','jersey.je','ltd.je','sch.je','com.jo','org.jo','net.jo','gov.jo','edu.jo','mil.jo','ad.jp','ac.jp','co.jp','go.jp','or.jp','ne.jp','gr.jp','ed.jp','lg.jp','net.jp','org.jp','gov.jp','hokkaido.jp','aomori.jp','iwate.jp','miyagi.jp','akita.jp','yamagata.jp','fukushima.jp','ibaraki.jp','tochigi.jp','gunma.jp','saitama.jp','chiba.jp','tokyo.jp','kanagawa.jp','niigata.jp','toyama.jp','ishikawa.jp','fukui.jp','yamanashi.jp','nagano.jp','gifu.jp','shizuoka.jp','aichi.jp','mie.jp','shiga.jp','kyoto.jp','osaka.jp','hyogo.jp','nara.jp','wakayama.jp','tottori.jp','shimane.jp','okayama.jp','hiroshima.jp','yamaguchi.jp','tokushima.jp','kagawa.jp','ehime.jp','kochi.jp','fukuoka.jp','saga.jp','nagasaki.jp','kumamoto.jp','oita.jp','miyazaki.jp','kagoshima.jp','okinawa.jp','sapporo.jp','sendai.jp','yokohama.jp','kawasaki.jp','nagoya.jp','kobe.jp','kitakyushu.jp','utsunomiya.jp','kanazawa.jp','takamatsu.jp','matsuyama.jp','com.kh','net.kh','org.kh','per.kh','edu.kh','gov.kh','mil.kh','ac.kr','co.kr','go.kr','ne.kr','or.kr','pe.kr','re.kr','seoul.kr','kyonggi.kr','com.kw','net.kw','org.kw','edu.kw','gov.kw','com.la','net.la','org.la','com.lb','org.lb','net.lb','edu.lb','gov.lb','mil.lb','com.lc','edu.lc','gov.lc','net.lc','org.lc','com.lv','net.lv','org.lv','edu.lv','gov.lv','mil.lv','id.lv','asn.lv','conf.lv','com.ly','net.ly','org.ly','co.ma','net.ma','org.ma','press.ma','ac.ma','com.mk','com.mm','net.mm','org.mm','edu.mm','gov.mm','com.mn','org.mn','edu.mn','gov.mn','museum.mn','com.mo','net.mo','org.mo','edu.mo','gov.mo','com.mt','net.mt','org.mt','edu.mt','tm.mt','uu.mt','com.mx','net.mx','org.mx','gob.mx','edu.mx','com.my','org.my','gov.my','edu.my','net.my','com.na','org.na','net.na','alt.na','edu.na','cul.na','unam.na','telecom.na','com.nc','net.nc','org.nc','ac.ng','edu.ng','sch.ng','com.ng','gov.ng','org.ng','net.ng','gob.ni','com.ni','net.ni','edu.ni','nom.ni','org.ni','com.np','net.np','org.np','gov.np','edu.np','ac.nz','co.nz','cri.nz','gen.nz','geek.nz','govt.nz','iwi.nz','maori.nz','mil.nz','net.nz','org.nz','school.nz','com.om','co.om','edu.om','ac.om','gov.om','net.om','org.om','mod.om','museum.om','biz.om','pro.om','med.om','com.pa','net.pa','org.pa','edu.pa','ac.pa','gob.pa','sld.pa','edu.pe','gob.pe','nom.pe','mil.pe','org.pe','com.pe','net.pe','com.pg','net.pg','ac.pg','com.ph','net.ph','org.ph','mil.ph','ngo.ph','aid.pl','agro.pl','atm.pl','auto.pl','biz.pl','com.pl','edu.pl','gmina.pl','gsm.pl','info.pl','mail.pl','miasta.pl','media.pl','mil.pl','net.pl','nieruchomosci.pl','nom.pl','org.pl','pc.pl','powiat.pl','priv.pl','realestate.pl','rel.pl','sex.pl','shop.pl','sklep.pl','sos.pl','szkola.pl','targi.pl','tm.pl','tourism.pl','travel.pl','turystyka.pl','com.pk','net.pk','edu.pk','org.pk','fam.pk','biz.pk','web.pk','gov.pk','gob.pk','gok.pk','gon.pk','gop.pk','gos.pk','edu.ps','gov.ps','plo.ps','sec.ps','com.pt','edu.pt','gov.pt','int.pt','net.pt','nome.pt','org.pt','publ.pt','com.py','net.py','org.py','edu.py','com.qa','net.qa','org.qa','edu.qa','gov.qa','asso.re','com.re','nom.re','com.ro','org.ro','tm.ro','nt.ro','nom.ro','info.ro','rec.ro','arts.ro','firm.ro','store.ro','www.ro','com.ru','net.ru','org.ru','gov.ru','pp.ru','com.sa','edu.sa','sch.sa','med.sa','gov.sa','net.sa','org.sa','pub.sa','com.sb','net.sb','org.sb','edu.sb','gov.sb','com.sd','net.sd','org.sd','edu.sd','sch.sd','med.sd','gov.sd','tm.se','press.se','parti.se','brand.se','fh.se','fhsk.se','fhv.se','komforb.se','kommunalforbund.se','komvux.se','lanarb.se','lanbib.se','naturbruksgymn.se','sshn.se','org.se','pp.se','com.sg','net.sg','org.sg','edu.sg','gov.sg','per.sg','com.sh','net.sh','org.sh','edu.sh','gov.sh','mil.sh','gov.st','saotome.st','principe.st','consulado.st','embaixada.st','org.st','edu.st','net.st','com.st','store.st','mil.st','co.st','com.sv','org.sv','edu.sv','gob.sv','red.sv','com.sy','net.sy','org.sy','gov.sy','ac.th','co.th','go.th','net.th','or.th','com.tn','net.tn','org.tn','edunet.tn','gov.tn','ens.tn','fin.tn','nat.tn','ind.tn','info.tn','intl.tn','rnrt.tn','rnu.tn','rns.tn','tourism.tn','com.tr','net.tr','org.tr','edu.tr','gov.tr','mil.tr','bbs.tr','k12.tr','gen.tr','co.tt','com.tt','org.tt','net.tt','biz.tt','info.tt','pro.tt','int.tt','coop.tt','jobs.tt','mobi.tt','travel.tt','museum.tt','aero.tt','name.tt','gov.tt','edu.tt','nic.tt','us.tt','uk.tt','ca.tt','eu.tt','es.tt','fr.tt','it.tt','se.tt','dk.tt','be.tt','de.tt','at.tt','au.tt','co.tv','com.tw','net.tw','org.tw','edu.tw','idv.tw','gov.tw','com.ua','net.ua','org.ua','edu.ua','gov.ua','ac.ug','co.ug','or.ug','go.ug','co.uk','me.uk','org.uk','edu.uk','ltd.uk','plc.uk','net.uk','sch.uk','nic.uk','ac.uk','gov.uk','nhs.uk','police.uk','mod.uk','dni.us','fed.us','com.uy','edu.uy','net.uy','org.uy','gub.uy','mil.uy','com.ve','net.ve','org.ve','co.ve','edu.ve','gov.ve','mil.ve','arts.ve','bib.ve','firm.ve','info.ve','int.ve','nom.ve','rec.ve','store.ve','tec.ve','web.ve','co.vi','net.vi','org.vi','com.vn','biz.vn','edu.vn','gov.vn','net.vn','org.vn','int.vn','ac.vn','pro.vn','info.vn','health.vn','name.vn','com.vu','edu.vu','net.vu','org.vu','de.vu','ch.vu','fr.vu','com.ws','net.ws','org.ws','gov.ws','edu.ws','ac.yu','co.yu','edu.yu','org.yu','com.ye','net.ye','org.ye','gov.ye','edu.ye','mil.ye','ac.za','alt.za','bourse.za','city.za','co.za','edu.za','gov.za','law.za','mil.za','net.za','ngo.za','nom.za','org.za','school.za','tm.za','web.za','co.zw','ac.zw','org.zw','gov.zw','eu.org','au.com','br.com','cn.com','de.com','de.net','eu.com','gb.com','gb.net','hu.com','no.com','qc.com','ru.com','sa.com','se.com','uk.com','uk.net','us.com','uy.com','za.com','dk.org','tel.no','fax.nr','mob.nr','mobil.nr','mobile.nr','tel.nr','tlf.nr','e164.arpa'];
for(var i=0; i<TLDList.length; i++) {
if(URI==TLDList[i]) {
URI=HostName[HostName.length-3]+'.'+URI;
break;
}
}
}

return URI;

}

function SGPLocal() {

var Passwd=document.getElementById('Passwd').value;
var DisableTLD=(document.getElementById('DisableTLD').checked)?true:false;
var Domain=document.getElementById('Domain').value;
var Len=gp2_validate_length(document.getElementById('Len').value);

if(Passwd&&Domain) {
Domain=gp2_process_uri(Domain,DisableTLD);
document.getElementById('GenPasswd').value=gp2_generate_passwd(Passwd+':'+Domain,Len);
document.getElementById('Domain').value=Domain;
document.getElementById('Len').value=Len;
}

return false;

}

</script>

Гемор какой)) мне проще по-старинке. поменял пароль — 2-3 дня постоянного ввода пароля при разблокировке (по бумажке) компа — пароль запомнен)
с каждым разом просто будет впадлу лезть в айфон в заметки и будут попытки ввести пароль без подсказки.
зы. пароли — минимум 8 знаков. большие/маленькие буквы и цифры. пароль сгенерён генератором паролей)
Расскажу свой метод придумывания паролей — беру любую энциклопедию и выбираю любые слова, содержащие более 8 символов, буквы х, ъ, б, ю, э в английской раскладке и получаю пароли. К примеру последний раз взял книжку комнатных растений — получилось следующее — {djqysqGfgjhjnybr — ХвойныйПапоротник
{kjhjabnev
Как-то лабы делали для получения 4мя итерациями сложных запоминающихся паролей вида:
step1: bedonopapano
step2: BedonopapAno
step3: Bed0n0papAno
step4: Bed0n0p@pAno

step1: likohusinomu
step2: likoHusinoMu
step3: l1k0HusinoMu
step4: |1k0Hu$inoMu

step1: zudazabizuga
step2: zudazAbizuGa
step3: 7uda7AbizuGa
step4: 7ud@7Ab!zuGa

step1: tezedusemegu
step2: tEzeDusemegu
step3: tE7eDu2emegu
step4: tE7eDu2emegu

Исходники — pastebin.com/qb5qgUqQ
Only those users with full accounts are able to leave comments. Log in, please.