|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Igorek Filimonov 2:5020/238.1 06 Oct 2001 15:05:30 To : Dmitry Kolvakh Subject : Фильтp для базаpа --------------------------------------------------------------------------------
Dmitry Kolvakh wrote for Alex Astafiev & All:
DK> [...skipped...]
DK> С неподдельным интеpесом читаю высказываемые здесь
DK> мнения, но суть в том, что сабж нужен для CGI-шки,
DK> гостевая книга. Т.е. pаботать должен _быстpо_ и с
DK> минимальными тpебованиями с pесуpсам компа.
Я вот тут читаю дискуссию, и мне кажется, что сама
постановка вопроса при данной задаче не верная.
Практически ведь нужно избавиться от мата с форуме, и
всё... Я бы решал задачу примерно следующим образом:
1) Создаётся несложный анализатор текста, который
просматривает получаемое сообщение, проверяет, есть
ли в нём недопустимая речь (см. ниже).
2) В случае, если система обнаруживает, что употреблены
недопустимые выражения, ip-адрес отправителя, тело
сообщения и время заносятся в специальный список.
3) Когда системе приходит запрос на чтение форума,
система смотрит, не находится ли ip-адрес запрашивающей
системы в списке (в списке адреса хранятся несколько часов).
Если нет - отсылается "чистая" версия базы сообщений, не
содержащая писем с недопустимой лексикой. Если же ip-адрес
есть в системе - то посылается изменённая база, вместе
с теми письмами, которые были отправлены с этого адреса
и содержали недопустимую лексику.
И вот чем хороша такая система:
Когда человек напишет чего-нибудь матом, и увидит, что
его письмо было процензурировано, в нём вполне может проснуться
"хакерский инстинкт" и он начнёт "отлаживать" работу этой
системы - не для того, чтобы поругаться, а просто из азарта.
А если человек пишет письмо, и думает, что оно успешно
попало в форум, и исчезло оттуда не сразу - он и не поймёт,
в чём дело, а даже если и поймёт - то ломать такую систему
ему будет уже значительно труднее, так как постоянно придётся
менять ip-адреса. (естественно, что пользователям не нужно
сообщать о наличии подобной системы, всё должно происходить
прозрачно, чтобы с случае чего люди свалили всё на
цензора-человека)
Анализатор - вещь тоже, в общем то, не сложная.
Hа практике достаточно составить словарь запрещённых основ
слов в виде корня с приставкой, но без суффикса и окончания
(предварительно нужно латинские буквы и цифры заменить на
похожие русские, большего, IMHO, не требуется). Таких
основ немного, меньше 100 - если же концовку тоже хранить,
то слов будет слишком много, из-за всяких родов, падежей,
залогов, времён и кучи чего ещё.
With respect, Игоpь Филимoнов.
PGP key fingerprint: 28 B2 CB 8A 85 F6 82 1A FC 8E BE B0 91 61 C9 68
... Hе плюсуй, ибо сам заплюсован будешь.
--- Blue Wave/386 v2.30
* Origin: InfoScience BBS user's message (2:5020/238.1)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/32913bbfe337.html, оценка из 5, голосов 10
|