2009-06-05 7 views
22

Si expone cadenas o series generadas aleatoriamente con datos codificados en ellas (claves de producto). ¿Es irracional desinfectarlos con palabrotas para evitar que el cliente se ofenda en el raro caso de que se genere una palabra ofensiva?¿Es irracional desinfectar cadenas de caracteres aleatorios para palabras malditas?

¿Alguien alguna vez ha ofendido a un cliente por una palabra maldición generada aleatoriamente? ¿Alguna vez alguien ha codificado la lógica para filtrarlos?

Gracias

Editar

Una vez después de desarrollar un sistema de generación de claves de producto que tenían datos de los clientes codificados en ella. Como broma, escribimos un programa para ver qué aportaciones de los clientes generarían palabras divertidas.

+3

A primera vista, esto seguro suena tonto. ¿Qué pasa con un cliente ofendido por el nombre de un país? Algunas personas no creen que Israel debería existir, y pasan por grandes esfuerzos para decir "La entidad sionista" y cosas por el estilo. ¿Qué tan lejos en este camino deberías ir? ¿Tiene alguna información adicional sobre dónde o cómo se dibuja la línea? ¿Son estas las siete palabras que no puedes decir en la lista de televisión? –

+2

Me gustaría saber si existe un procedimiento consistente para buscar combinaciones de letras "obscenas" en las matrículas. Parece que podrías usar un algoritmo similar. –

+0

Las probabilidades de generar al azar cualquier palabra de 4 letras en particular son como 1 en medio millón. –

Respuesta

33

No genere cadenas al azar con vocales y, a continuación, no tiene que preocuparse por palabras malditas.

+2

Gran idea.Debería funcionar en la mayoría de los idiomas también. – Laserallan

+11

Aunque generalmente estoy de acuerdo, es posible que termines con cadenas como "fck" o "fvck". Esto probablemente todavía se encuentre en "no optimizar para los locos". – luke

+4

@luke: Sí, creo que este método eliminará las palabras de maldición "reales". Imaginado o "un poco parece una maldición si escudriñas realmente fuerte", las palabras siguen siendo el problema del usuario :) – CloudyMusic

27

Sí, con el argumento de que cualquier persona que se ofenda por algo que vio en una cadena generada al azar puede pensar en más cosas que le parecen ofensivas de las que puede desinfectar.

No optimice para locos.

0

Es concebible, pero no le dedicaría mucho tiempo, especialmente si tiene letras y números.

1

Limite sus "palabras" generadas al azar a caracteres hexadecimales y no creo que tenga ninguna maldición en inglés. Esto también lo empuja por el camino de no pasar demasiado tiempo en su generador de palabras aleatorias.

Por supuesto, puede haber algún lenguaje donde puedas maldecir con dígitos hexadecimales, pero entonces no es probable que conozcas/filtres esas maldiciones de todos modos.

+2

Bien, fecc e00 2. – chaos

+1

0xdeadbeef, 0xaffe (alemán para "mono") . –

+5

carne de res muerta?!?! Como vegetariano, estoy MUY ofendido. – Aardvark

4

Eso tiene sentido para mí. Es decir, sería un desastre de relaciones públicas bastante malo si alguien publica una imagen de su producto, con este estampado en la parte posterior de la caja del CD:

12.345 a 67.890-F ** KU-ABCDE-FGHIJ

Suena gracioso, pero nunca se sabe qué tipo de sentido del humor tendrá la persona que recoja ese paquete.

+0

Esto no es solo hipotético, tampoco. Realmente sucedió, con un muñeco de repollo: http://www.clickondetroit.com/news/4050844/detail.html –

+0

Sobre el enlace roto. Ver https://web.archive.org/web/20090116040027/https://www.clickondetroit.com/news/4050844/detail.html – SophiaAP

1

Si solo está preocupado por las claves de producto, me quedaría con los dígitos hexadecimales, tal vez incluso un guid podría funcionar para usted. Probablemente no haya posibilidad de que se genere una palabra "traviesa" con estas restricciones. También podría simplemente apegarse a los números también. Si debe tener cadenas aleatorias con todas las letras del abecedario, probablemente sea mejor prevenir que lamentar, por lo que haría el filtrado.

+0

Desde mi infancia -> 1134 40 – EvilTeach

+0

Oh demonios, los 4s no rinden como debe ser. – EvilTeach

2

ver esos artículos etiquetados con clbuttic

+0

Maldita sea, alguien mató esas etiquetas, intente una búsqueda: http://stackoverflow.com/search?q=clbuttic –

0

estoy usando generados al azar, contraseñas fonéticos que suena para una aplicación web que escribieron. Terminé codificando una lista de palabras "sucias" que no son aceptables, pero la lista que coincidía con mi patrón terminó siendo bastante corta.

0

No. No tienes la oportunidad de juntar todas las palabras malditas en todos los idiomas del mundo. Esas palabras usualmente no aparecen en los diccionarios.

+1

Un BUEN diccionario incluirá coloquialismos y jerga. El OED ciertamente incluye juramentos en él, y todos los otros tipos de inmundicia que mis antepasados ​​estarían avergonzados de admitir que hicieron semanalmente. –

6

La solución más simple es generar a partir de un alfabeto 'desinfectado'; usa un conjunto de caracteres que no pueden formar palabras.Una sugerencia en una de las respuestas es hexadecimal, que es una excelente opción, o bien, suelte algunas letras críticas del alfabeto.

Tenga en cuenta que simplemente dejar caer vocales no va a hacer el trabajo ... es demasiado fácil inferirlos de las consonantes restantes.

2

Creo que es mejor evitar claramente las vocales. Una clave de producto como JKL-YOUAREMYFRIEND-0001-KK puede no ser ofensiva, pero tampoco parece ser un asunto serio.

1

Estamos utilizando un generador de cadena aleatoria de una clave de seguridad, que será enviado a los clientes, y no hicimos omiten las vocales a partir de los caracteres permitidos, etc. Sin una palabra de mentira, una de las cadenas que generó fue " 7D9WAF * CKS "...! Afortunadamente, esto fue descubierto durante el desarrollo, y ahora vamos a restringir los caracteres permitidos. ¡¡Uf!! Eso fue muy cercano, ¡feliz de haber encontrado esta publicación!

1

Una muy divertida tale of woe para leer con una situación similar a la suya.

2

Microsoft omite lo siguiente de sus claves de producto:

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

Omito los de [0-9A-Z], y una vez que se genera la clave, me partido contra a list I found de combinaciones de dos letras más común en inglés, y regenere la clave si hay una coincidencia. Para la velocidad, edito la lista de pares de letras eliminando primero de esa lista los pares que ya están prevenidos debido a su inclusión de un carácter en la lista eliminada ('HE' no puede existir si la clave se genera a partir de un juego de caracteres) eso no incluye 'E'), luego convierta algo de 'E' a '3', como en 'H3' en lugar de 'HE', etc. También he agregado algunas propias, como 'KK' y ' CK 'para casos extremos. También se podría omitir '3' para la velocidad según sea necesario, aunque cuantos más caracteres omita, menos claves únicas se pueden generar.

Probablemente no sea una solución perfecta, pero es lo suficientemente rápida para mis necesidades y evita que casi todas las palabras en inglés sean generadas, ofensivas o no.

Cuestiones relacionadas