Вы здесьНайдите десять отличий...
Опубликовано ср, 07/01/2009 - 21:40 пользователем pkn
Хе-хе... P.S. Этот топик не модерируется, как и все создаваемые мной топики.
|
Вход на сайтПоиск по блогам и форумамUser menuПоследние комментарии
wvd RE:Подайте бедному копеечку на книжку с литреса... 4 часа
Саша из Киева RE:Приключения белочки Рыжки 2 дня Paul von Sokolovski RE:На 78-м году жизни скончался советский и российский... 3 дня Paul von Sokolovski RE:Бушков умер. 3 дня lemma7 RE:Серия «Интеллектуальный детектив» изд-ва АСТ 4 дня Larisa_F RE:Книжная серия "Жизнь в искусстве" издательство "Искусство"... 5 дней mig2009 RE:Багрепорт - 2 1 неделя Isais RE:Издательство "Медуза" 1 неделя babajga RE:Народные сказки - Сказки народов Сибири = Fairy-Tales of... 2 недели Саша из Киева RE:Кто сможет раздобыть и оцифровать нужные мне книги? 2 недели sibkron RE:Серия "Библиотека французской литературы" (Макбел) 3 недели Isais RE:Игорь Северянин - Том 2. Поэзоантракт 3 недели sem14 RE:Современная корейская литература. Книжная серия... 4 недели sem14 RE:Семейственность в литературе 1 месяц Isais RE:Детство, опаленное войной (Вторая мировая 1939-1945 и ВОВ) 1 месяц Саша из Киева RE:Подводное течение 1 месяц konst1 RE:Переименовать ник (имя учетки) 1 месяц Larisa_F RE:Таррин Фишер 2 месяца Впечатления о книгах
Олег Макаров. про Дэн Перцефф
27 10 А почему его называют "американский журналист", если очевидно, что это российский автор под псевдонимом?
mysevra про Васильчикова: Берлинский дневник, 1940–1945 [Berlin Diaries, 1940–1945 ru] (Биографии и Мемуары)
27 10 Имена, нравы, традиции и лёгкость – совсем иной мир. Читая Дневник понимаешь, как убого и натужно смотрятся нынешние «аристократы» местного разлива – и в жизни, и на экране. Оценка: отлично!
mysevra про Мегре: Анастасия (Современная проза, Ненаучная фантастика)
27 10 Возможно, в чём-то автор и прав, но от такой страшно сладенькой и одновременно патетически-выспренной манеры подачи просто коробит. Оценка: плохо
mysevra про Перцефф: Атака на мозг. Оскал психотронной войны (Публицистика)
27 10 А замаху-то было… Обо всём и ни о чём. Оценка: неплохо
Никос Костакис про Зурков: Большая охота (Альтернативная история, Боевая фантастика, Попаданцы)
26 10 «Шо ни зьим, тое попыднадкусваю». Автор уверен, что он правильно воспроизводит украинский язык? Или "и так сойдет"?
Олег Макаров. про Пепел доверия
26 10 Интересно. Очень долго раскачивается сюжет, до движухи доходит после середины, но написано хорошо и читается достаточно легко. Отличная идея причин и развития апокалипсиса. Реально триллер.
udrees про Даути: Когда дым застилает глаза [Провокационные истории о своей любимой работе от сотрудника крематория] [Smoke Gets in Your Eyes: And Other Lessons from the Crematory ru] (Современная проза, Биографии и Мемуары)
26 10 Какая страшная книга, написанная от лица работника похоронного бюро насчет похоронных ритуалов и о своей работе – в основном о сжигании тел в печи крематория. Сама авторша видать все-таки с прибабахом, все же не каждый человек ……… Оценка: хорошо
udrees про Михайлов: Пепел доверия 2 (Боевая фантастика, Постапокалипсис, Самиздат, сетевая литература)
26 10 Вторая книга из новой серии про жизнь во время зомби-апокалипсиса. Первая книга была хорошо написана, где начиналась завязка сюжета. Вторая книга думаю оказалась не хуже. Сюжет также идет неторопливо, показывая всю боль мира ……… Оценка: отлично!
udrees про Мантикор: Покоривший СТЕНУ 19: Оазис (Боевая фантастика, ЛитРПГ, Самиздат, сетевая литература)
26 10 Замечательное продолжение, уже 19-я книга от автора и герой почти закончил прохождение Стены. Все описано достаточно живо и интересно, описаний статов на десяток страниц уже почти нет. В книге есть около десятка иллюстраций. ……… Оценка: отлично!
ne_fanat про Дронт: Семьянин [СИ] (Социальная фантастика, Фэнтези, Попаданцы, Самиздат, сетевая литература)
25 10 Великолепная серия. На уровне Ильина, Метельского, Мазина или Васильева. Короче говоря, автор входит в мой личный ТОП рейтинга. Оценка: отлично!
Barbud про Чайка: Купец из будущего. Часть 2 [СИ] (Альтернативная история, Историческая проза, Самиздат, сетевая литература)
25 10 Что-то в этом есть. И язык неплох, и историчность присутствует. Книга побудила поинтересоваться событиями той эпохи. С удивлением узнал, что ГГ не с потолка взят, реально существовал такой весьма успешный древнеславянский ……… Оценка: отлично! |
Комментарии
Отв: Найдите десять отличий...
Это, скорее всего, многодельно. Потому что естественный алгоритм предполагает проверку всех возможных вариантов ника. У меня их, скажем - 7, а у кого-то могут быть десятки...
А альтернативный способ нужно выдумывать. Проще предупредить заранее и забанить нарушителя после жалобы "правообладателя" (ой блин, что сейчас будет!).
Отв: Найдите десять отличий...
У Вас так:
RegExp("[оo]ldv[aа]gr[aа]nt","")
Зато правил не нужно и библиотекари ваще ни причем.
Отв: Найдите десять отличий...
Это-то да.Но предствьте себе RegExp для ника "aaa...aa" состоящего из (сколько там можно?) 32 букафф (ну пусть даже из 16-ти). Хороший путь озадачить сервер.
Отв: Найдите десять отличий...
RegExp("[aа][aа][aа]...[aа][aа]","")
Отв: Найдите десять отличий...
Я же не про то, как написать RegExp, а про то что вариантов для 32 буковок будет 4.294.967.296
Отв: Найдите десять отличий...
Поэтому в базу кладем регэксп и 32 буквами сразу накрываем 4 миллиарда с лишним нахалов
Отв: Найдите десять отличий...
"Если у вас есть проблема и Вы пытаетесь решить ее при помощи регулярных выражений, то у Вас уже две проблемы" (С) Кто-то из великих.
Не знаю как в php но в перле это решается tr'ои типа
tr/укехароси/ykexapocu/
Естетственно список надо расширить учитывая, например Il1 O0 и прочие радости сильно зависящие от шрифта :(
Отв: Найдите десять отличий...
Угу. И потом по этой регулярке просматривать всю базу... Вот счастье-то будет серверу БД...
Отв: Найдите десять отличий...
Не надо так.
Ники lebird и lеbird оба породят "l[eе]bird". ;)
Отв: Найдите десять отличий...
Да нисколько это не сложно. Что сложного проверить каждую букву каждого ника попарно на совпадение, считая, что одинаковые по написанию русские и латинские буквы совпадают? Для Вашего, не самого маленького ника, к приммеру, нужно сделать всего 14 побуквенных сравнений. Для современной тезники это нет ничто. Могу привести пример форума, где побобное сравнение таки делается автоматом.
Отв: Найдите десять отличий...
Возьмёшься сделать модуль для этого?
Отв: Найдите десять отличий...
Увы, не знаю, как это сделать на языках, приемлемых для сайта, но на Паскале это выглядело бы примерно так:
var
Syms: string = "A..ZА..Я0..9 -/.."; //предполагается, что ники могут состоять только из русских и
//латинских букв, цифр и некоторых знаков пунктуации
EQs: Array [xx] of String = "AА", "BВ", "CС", "DД", "EЕ", "F", "G",... //здесь для каждого символа прописываются
//все символы, считающиеся "одинаковыми" для данного символа
//xx - число всех допустимых символов
Function ExistNick(theNick:String):Boolean;
var
i, ltn, lcn: Integer,
cNick, theNick: String;
begin
ExistNick := False;
cNick := "";
theNick := upper(trim(theNick);
ltn := length(theNick);
While GetNick(cNick) do // GetNick - функция выборки очередного ника из базы
begin
cNick := upper(trim(cNick);
lcn := length(cNick);
if lcn <> ltn then Exit;
for i := 1 to ltn do
if not EQSym(copy(theNick, i, 1), copy(cNick, i, 1)) then Exit;
end;
ExistNick := True;
end;
Function EqSym(theSym:char, cSym:char):boolean;
var
pt, pc: Integer,
begin
pt := pos(theSym, Syms);
pc := pos(cSym, EQs[pt]);
EqSym := (pc <> 0);
end;
Отв: Найдите десять отличий...
Паскаль не спасает совсем.
Нужен модуль для друпала, который через hook_user подправит процедуру регистрации.
Русские друпалоиды будут счастливы. А их изрядно пасётся на drupal.ru
Отв: Найдите десять отличий...
Илья, взгляни на http://drupal.org/project/custom_username_validation . На базе этого можно сделать, будет работать? (я что в друпале, что в перле - ни в зуб ногой, но попробовать можно).
Отв: Найдите десять отличий...
А какое решение принято ? Eсли разрешить только латиницу, то
-------------------copy/paste----------------
if($nickname == urlencode ($nickname))
{
return true;
}
else
{
return false;
}
-----------------------------
если замена кирилицы на похожую латиницу, то нужна таблица замен а в остальном
http://ru2.php.net/utf8_encode (UTF_to_Unicode)
Отв: Найдите десять отличий...
Imho, не замена не нужна, достаточно лишь выводить предупреждение о допустимости используемых символов.
Отв: Найдите десять отличий...
Если на сервер 3 раза в 5 секунд могут поступать запросы на регистрацию каких-то aeTоaA..MceBО [32 буквы], каждый из которых будет требовать проверки 4 с лишним миллиарда комбинаций, то может быть лучше "пойти другим путем"?
Имхо, лучше сделать второй список ников в БД, с отконвертироваными в один язык "двойными" буквами, и уже с ним сравнивать аналогичным образом переделаный ник новорегящегося.
Отв: Найдите десять отличий...
Никаких миллиардов комбинаций проверять не потребуется. Алгоритм сверки символов элементарен, просто делается сверка ников, записанных в KOI-8, на вхождение русских и латинских символов. Если имеются символы обеих кодовых таблиц, то они переводятся все в латинские, одинаковые по начертанию (например, k и к - можно не учитывать, и так видно) и дальше сравниваются. Мог бы написать такую прогу на ассемлере PDP-11, но вот современными языками, увы, не владею. Но думаю, что для нормального программера это на составит труда. Конечно, над алгоритмом надо немножко подумать ;). А в дальнейшем следует просто запретить при регистрации использовать смешанный код, т.е. сочетание обеих частей кодовой таблицы - латинских и русских символов, в одном нике, при попытке задания такого ника просто будет предложено пользователю исправить ошибку, и использовать только русские или только латинские символы. Большого неудобства это не вызовет.
Отв: Найдите десять отличий...
Этого недостаточно.
Кириллица: АТАМАН. Латиница: ATAMAH.
Отв: Найдите десять отличий...
Верное замечание ;). Тогда можно легко просмотреть весь ник на использование только визуально-совпадающих лат/рус символов, и запретить его. Т.е. предложить пользователю использовать другой ник, указав на ошибку - типа, "вы использовали символы, неотличимые по начертанию от таких же русских (латинских)". Или - даже без такого пояснения. Ведь запрещают же к регистрации ники, уже имеющиеся в базе, и пользователю все и так ясно. Просто: "вы не можете использовать этот ник, выберите другой". А вот вы попробовали бы на форуме в Альде зарегистрироваться! Там ник подобрать - страшная проблема... И сколько жалоб на это в гостевой - а им до лампочки. Так что это не смертельно.
Отв: Найдите десять отличий...
Я не понял. В чем смысл смешивания латиницы и русского алфавита? В использовании букв для подделки нормальных ников. Так?
А теперь, внимание, вопрос - сколько у нас ников, которые можно подделать используя только другой алфавит?
Отв: Найдите десять отличий...
За 5 минут нашёл 4 ника. Примеры - в личку.
Отв: Найдите десять отличий...
Кидайте. Но за 5 минут, и всего 4, это как раз подтверждает, что я прав. Кроме того, защититься от такого очень просто. Всего лишь зарегить второй ник. Т.е. - подделки будут сверхредкими.
+ еще остается r - г, которое тут не заметили.
Отв: Найдите десять отличий...
практически все AbanSpy- латиница ,AlbаnSру - латиница + кириллица
Отв: Найдите десять отличий...
все проще. теэги перед сравнением приводятся к одному набору символов a'la perl tr
tr/укехаросиIl1/ykexapoculll/И уже затем сравниваются
Отв: Найдите десять отличий...
Т.е. каждому нику ставится в соответствие ровно один алиас, приведенный, скажем, к латинскому набору символов. И хранится в базе. А новые ники тоже приводятся к этому же набору и сравниваются сразу с алиасами?
Отв: Найдите десять отличий...
Именно, точнее к некоторому множеству "непохожих" символов. И никаких десятков, а тем более миллионов вариантов рассматривать не требуется. Просто поиск по индексу при регистрации (только не по нику, как сейчас, а по "алиасу"). И одна сортировка и проход по результату при начальном поиске дубликатов.
Отв: Найдите десять отличий...
Гм. Здраствуйте!
От оно ж как бывает. Ну раз уважаемой публике интересно, то рассказываю по порядку.
В результате неожиданной одновременной утери паролей от своей учетки на Либрусеке и почтового ящика, на который высылался новый пароль, пришлось заводить на Либрусеке новый профиль. Дабы он визуально не отличался от старого в нем действительно две первые буквы заменены на латинские.
Сделано это не корысти ради , а токмо из необходимости.
Хотя проблема поднята правильная, т.к. получается, что на Либрусеке нет защиты от флудеров.
Никто не мешает злым людям зарегистрироваться под известными и авторитетными никами и говорить разнообразные гадости и т.п.
Непонятно, почему до сих пор Либрусек на подвергся столь примитивной флуд-атаке.
Выход вижу простой и незатейлевый. При регистрации автоматически регистрировать ВСЕ варианты написания с учетом заменяемости русских букв на латинские.
У кого то будет несколько дополнительных логинов (например у pkn), у кого то несколько сотен (типа КОМАР, АТАМАН, СТРАХ).
Только так, чтоб было технически невозможно зарегестрировать клон ника, а словесно запрещать как п. 2.1.4. на одном из форумов yurbox , это не серьёзно. Увещевания спамера и флудера не остановят.
З.Ы. Уважаемому pkn выношу благодарность за бдительность.
Отв: Найдите десять отличий...
Скорее Ларину за kill-file
;-)
Отв: Найдите десять отличий...
Предлагаю компромиссное решение проблемы. Ну или оптимизацию (если будете регистрацию переделывать).
Обычно регистрируются или полностью с ником на кириллице или полностью на латинице. Тех кто нарушает это неписанное правило - ну, если не банить, то дополнительно проверить (автоматически или еще как).
Отв: Найдите десять отличий...
Да. Похоже это будет самый простой способ.
Отв: Найдите десять отличий...
Вы таки будете смеяться, но есть выход ещё проще.
Требуется регистрировать ники написанные только латинницей (английскими буквами).
И всё. Никаких больше других кодировок, языков.
Посмотрите на правую колонку сайта "Сейчас на сайте". Вы много видете рускоязычных ников? Я ни одного не узрел. Ибо так исторически сложилось.
Во-первых. Это снимает нашу горячо обсуждаемую проблему.
Во-вторых. Не надо ничего кодить для сайта. Только поставить фильтр проверки для написания ников ТОЛЬКО английскими буквами.
В-третьих, это исторически верно, т.к. в ФИДО кирилических ников не было.
Собственно всё.
З.Ы. Правда есть и ложка дёгтя в это миске мёда. Существующие на данный момент русские ники предётся автоматом перевести в транслит.
Отв: Найдите десять отличий...
Спасибо. Ваше предложение будет обязательно рассмотрено.
Отв: Найдите десять отличий...
А между тем, на многих форумах, при разрешенных кириллических никах, они неправильно отображаются при цитировании. Ближайший пример - внешний форум Либрусека. Там русские ники отображаются в цитатах крякозябрами. Поэтому я тоже сторонник латиницы в никах. А уж напоминание о ФИДО и вовсе настраивает в пользу этого предложения ;).
Отв: Найдите десять отличий...
Ники на латинице, ИМХО, действительно лучший выход, как справедливо заметил Тов.Костя ( не уверен правильно ли написал его ник :) ). А то на русском, на английском. Почему тогда не на польском, украинском или иврите? Однообразие всё же иногда приносит пользу. Это вроде как в некоторых языках программирования, можно идентификаторы писать на любом языке, но жутко неудобно.
Отв: Найдите десять отличий...
В последние годы кириллические ники появились.
Правда, в значительной части конференций ники вообще не применялись! Только "реалнейм"
Отв: Найдите десять отличий...
В годы моей молодости любая уважающая себя СУБД имела функцию "фонетического поиска" - например, слова "райт", "paйt", "right" и "write" по-фонетически совпадают. Может, и тут прикрутить что-то такое?
Отв: Найдите десять отличий...
?! Это какая же такая СУБД ? Простите, драгпререч, не верю (с). Максимум, что видел - поиск по кастрированным регуляркам ( WHERE username LIKE 'Lar*'). В общем случае - работает хреново.
Отв: Найдите десять отличий...
Кстати да, что же это за СУБД такая?
Отв: Найдите десять отличий...
Послушайте, а Вы не контрамот, случаем ? ;)
Отв: Найдите десять отличий...
* - Контрамот - это фантастический человек, живущий из будущего в прошлое.
Отв: Найдите десять отличий...
Я не контрамот, я ЕСник. Из прошлого то бишь. MVT, SVS, СВМ (эс-вэ-эм)... ОС ЕС, короче. А СУБД - навскидку АДАБАС (в девичестве ADABAS). См. также http://www.google.ru/search?hl=ru&q=%D1%84%D0%BE%D0%BD%D0%B5%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9+%D0%BF%D0%BE%D0%B8%D1%81%D0%BA&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA+%D0%B2+Google&lr=&aq=f&oq=
Отв: Найдите десять отличий...
MFT, VM SP., ДУВЗ... Так это в Natural фонетический поиск есть ? ;) Фигушки - Job not run, JCL error....
Страницы