Подтвердить что ты не робот

Неужели иррационально санировать случайные строки символов для проклятий?

Если вы раскрываете случайно сгенерированные строки или строки с данными, закодированными в них (ключи продукта). Неужели иррационально санировать их за проклятие, чтобы избежать возможного оскорбления клиента в редком случае, когда создается оскорбительное слово.

У кого-нибудь когда-либо есть клиент, оскорбленный случайным образом проклятым словом? Кто-нибудь, кто когда-либо кодировал логику, чтобы отфильтровать их?

Спасибо

Edit

Один раз после разработки системы генерации ключа продукта, в которой были записаны данные клиента. В качестве шутки мы написали программу, чтобы увидеть, что клиентский ввод будет генерировать смешные слова.

4b9b3361

Ответ 1

Не генерировать случайные строки с гласными, и тогда вам не нужно беспокоиться о проклятиях.

Ответ 2

Да, на том основании, что любой, кто был бы оскорблен чем-то, что они видели в случайно генерируемой строке, может думать о большем количестве вещей, которые они находят оскорбительными, чем вы можете дезинфицировать.

Не оптимизируйте для безумного.

Ответ 3

Самое простое решение - генерировать из "дезинфицированного" алфавита; используйте набор символов, которые не могут образовывать слова. Одно из предложений в одном из ответов - шестнадцатеричное, что является отличным выбором, или иначе бросать некоторые критические буквы из алфавита.

Обратите внимание, что просто отбрасывание гласных не будет выполнять эту работу... Слишком легко вывести их из остальных согласных.

Ответ 4

Это имеет смысл для меня. Я имею в виду, что это было бы очень плохой PR-катастрофой, если бы кто-то опубликовал фотографию вашего продукта, причем это было напечатано на задней стороне корпуса компакт-диска:

12345-67890-F ** KU-ABCDE-FGHIJ

Это звучит смешно, но вы никогда не знаете, какое чувство юмора у человека будет иметь тот, кто, оказывается, возьмет этот пакет.

Ответ 5

Смотрите те элементы, отмеченные clbuttic

Ответ 6

Я думаю, что лучше избегать гласных. Ключ продукта, такой как JKL-YOUAREMYFRIEND-0001-KK, не может быть оскорбительным, но это не похоже на серьезный бизнес.

Ответ 7

Microsoft не использует следующие ключи продуктов:

0 1 2 5 A E I O U L N S Z

Я опускаю те из [0-9A-Z], и как только ключ сгенерирован, я сопоставляю список, который я нашел двух наиболее распространенные на английском языке, и регенерировать ключ, если есть совпадение. Для скорости я редактирую список буквенных пар, сначала отбраковывая из этого списка пары, которые уже предотвращены из-за их включения символа в лишенный список ( "HE" не может существовать, если ключ генерируется из набора символов который не включает "E" ), а затем преобразовать некоторые из "E" в "3", как в "H3" вместо "HE" и т.д. Я также добавил несколько своих, таких как "KK" и "K", CK 'для краевых случаев. Можно также опустить "3" для скорости по мере необходимости, хотя больше символов, которые вы опускаете, может быть сгенерировано меньше уникальных клавиш.

Вероятно, это не идеальное решение, но оно достаточно быстро для моих нужд и предотвращает генерирование, наступление или вообще не все английские слова.

Ответ 8

Ограничьте произвольно сгенерированные "слова" шестнадцатеричными символами, и я не верю, что у вас будут проклятия на английском языке. Это также подталкивает вас к тому, чтобы не тратить слишком много времени на генератор случайных слов.

Конечно, может быть какой-то язык, где вы можете проклинать шестнадцатеричные цифры, но тогда вы вряд ли будете знать/фильтровать эти проклятия.

Ответ 9

Если вы просто беспокоитесь о ключах продукта, я буду придерживаться шестнадцатеричных цифр, возможно, даже руководство будет работать для вас. Вероятно, нет шансов создать "озорное" слово с этими ограничениями. Вы также можете просто придерживаться цифр. Если у вас должны быть случайные строки со всеми буквами алфавита, это, вероятно, лучше, чем извините, поэтому я бы сделал фильтрацию.

Ответ 10

Мы используем генератор случайных строк для ключа безопасности, который будет отправлен клиентам, и не пропускал гласные с допустимых символов и т.д. Не было слов о лжи, одна из строк, которые она создала, была "7D9WAF * CKS"...! К счастью, это было обнаружено во время разработки, и теперь мы собираемся ограничить допустимые символы. Уфф!! Это был близкий друг - с удовольствием нашел это сообщение!

Ответ 11

Очень забавно рассказ о горе, чтобы читать с подобной ситуацией с вами.

Ответ 12

Это определенно возможно, но я не буду уделять ему много времени, особенно если у вас есть буквы и цифры.

Ответ 13

Я использую случайно сгенерированные, фонетически звучащие пароли для одного webapp, который я написал. Я в конечном итоге жестко кодировал список "грязных" слов, которые неприемлемы, но список, который соответствовал моему шаблону, оказался довольно коротким.

Ответ 14

Нет. У вас нет шансов собрать все проклятые слова на всех языках мира. Эти слова обычно не отображаются в словарях.