Вы здесьНайдите десять отличий...
Опубликовано ср, 07/01/2009 - 21:40 пользователем pkn
Хе-хе... P.S. Этот топик не модерируется, как и все создаваемые мной топики.
|
Вход на сайтПоиск по блогам и форумамUser menuПоследние комментарии
monochka RE:Подайте бедному копеечку на книжку с литреса... 17 часов
weis RE:Прошу переформатировать, распознать, etc... 3 дня Larisa_F RE:Национальный бестселлер (лауреаты и финалисты) 1 неделя sem14 RE:Премия «Фемина» 2 недели tvv RE:Багрепорт - 2 2 недели sem14 RE:Беляевская премия 2 недели sem14 RE:Серия "Очень прикольная книга", издательство Азбука-классика 2 недели Larisa_F RE:Что читать о блокаде Ленинграда. Подборка книг 1 день sem14 RE:Книжная серия "Жизнь в искусстве" издательство "Искусство"... 1 месяц Larisa_F RE:Дэвид Герберт Лоуренс собрание в 7 томах том 3 1 месяц sem14 RE:Собираем серию: "Мастер серия", издательство "Лимбус". 1 месяц sibkron RE:«Словенский глагол» 1 месяц Tramell RE:Литературная премия имени И.А. Ефремова 1 месяц sem14 RE:Серия "Что есть что" издательства "Слово"(чего не хватает) 1 месяц larin RE:Оплатил, но абонемент не отображается 1 месяц epoost RE:Чарльз Брокден Браун - Wieland 2 месяца nehug@cheaphub.net RE:Ответственность. 2 месяца nehug@cheaphub.net RE:Доступ 2 месяца Впечатления о книгах
udrees про Шиленко: Смотритель маяка (Фэнтези, ЛитРПГ, Самиздат, сетевая литература)
03 10 Простая приятная книга про «жизнь» попаданца на какой-то маяк в каком-то потустороннем мире, где ночью туман сжирает все живое, а днем в океане плавают монстры, которые запросто перекусывают корабли. В общем написано доступным ……… Оценка: неплохо
udrees про Вальтер: Гниль (Боевая фантастика, Приключения: прочее, Постапокалипсис, Самиздат, сетевая литература)
03 10 Ужасная книга про ужасных персонажей, продолжение их похождений. Кто читал две предыдущие книги, знает что за психопаты – главные герои, и какие они отморозки и маньяки, любящие убивать, пытать, расчленять и поедать людей, ……… Оценка: неплохо
udrees про Каменистый: Не триумфатор (Боевая фантастика, Фэнтези, Попаданцы, ЛитРПГ)
03 10 Продолжение не скучное, хотя больших битв в этой книге нет. Понравится любителям серии, главный герой наконец-то покидает степную страну и направляется на настоящую большую войну. Снова интриги, козни, наемные убийцы. Все ……… Оценка: отлично!
udrees про Дорничев: Дворник 25-го уровня. Том 10 (Юмор: прочее, Городское фэнтези, Самиздат, сетевая литература)
03 10 Сляпанный на скорую руку высер незрелого ума. Ничего нового не придумано, сказка для взрослых. В книге полно цветных картинок, сделанных нейросетью по сюжету. Рассматривать их прикольно, как детскую книжку листаешь. Книга ……… Оценка: плохо
udrees про Дорничев: Дворник 22-го уровня. Том 9 (Юмор: прочее, Городское фэнтези, ЛитРПГ, Самиздат, сетевая литература)
03 10 Слишком простая книга, которая была совсем проходной, если бы не обилие цветных картинок, иногда по 2 на одну страницу. Они превращают книгу в детскую сказку для взрослых, листаешь себе книжку и рассматриваешь веселые картинки, ……… Оценка: неплохо
udrees про Дорничев: Дворник 20-го уровня. Том 8 (Юмор: прочее, Городское фэнтези, ЛитРПГ, Самиздат, сетевая литература)
03 10 Такая простая и наивная детская книжка, наполненная сказочными зверями, феями и призраками. Кажется с первой книги вся история сильно деградировала, как главный герой стал слишком сильным. Книга напоминает детскую также обилием ……… Оценка: плохо
udrees про Михайлов: Пепел доверия 4 (Боевая фантастика, Социальная фантастика, Постапокалипсис, Самиздат, сетевая литература)
03 10 Невероятно продолжение истории выживания в зомби-апокалипсисе. Мало того, сама концепция зомби совершенно новая, я такой не встречал ранее у других. Разные были зомби, но таких, в которых можешь обратиться сам и любой человек ……… Оценка: отлично!
udrees про Атаманов: Стратег из ниоткуда. Книга четвёртая (Боевая фантастика, Героическая фантастика, Фэнтези, Самиздат, сетевая литература)
03 10 Достойная книга, написана живо, интересно, с юмором. Конечно как взрослая сказка – кругом орки, огры, великаны, эльфы. Главный герой в основном стратег, чем боевой герой, хотя в сражениях тоже принимает участие. Но по-моему ……… Оценка: отлично!
udrees про Карелин: Имперский повар [СИ] (Боевая фантастика, Фэнтези, Попаданцы, Самиздат, сетевая литература)
03 10 Достаточно легко читаемые приключения попаданца-повара в тело другого повара в другом мире, где конечно же никто не в курсе наших блюд. Все у героя получается с пол-тычка, даже умения повара в уличной драке оказывается пригодились, ……… Оценка: неплохо
udrees про Сугралинов: Голодные звёзды (Боевая фантастика, Постапокалипсис, ЛитРПГ, Самиздат, сетевая литература)
03 10 Продолжение понравилось. Автор не дает передохнуть, битвы идут одни за другими. Все как в компьютерной игре, где надо отстроить базу, развиться, подмять ресурсы, раскидать характеристики и начать побеждать противников. Герой ……… Оценка: отлично!
udrees про Сугралинов: Ночь хищников (Боевая фантастика, Постапокалипсис, ЛитРПГ, Самиздат, сетевая литература)
03 10 Книга написана динамично, бои идут одни за другими. Зомби уже практически отошли на задний план, как водится в таком жанре, теперь оставшиеся люди сцепились друг с другом за остатки мира и бонусы от кукловодов. Написано в ……… Оценка: отлично!
Barbud про Шмараков: Немного чумы (Ужасы, Современная проза, Юмористическая проза)
02 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....
Страницы