Por qué tapar los datos personales en vez de rechazar el mensaje
Rechazar un comentario porque lleva un número de teléfono tira a la basura todo lo demás que escribió esa persona. En un marketplace o en un chat de soporte casi nunca compensa: el mensaje está bien, solo una parte no debería ser pública. Tapar esa parte conserva la conversación y quita el número, y el autor no tiene que volver a escribirlo todo.
Qué encuentra
Correos electrónicos, también en las formas que la gente usa porque sabe que una dirección normal se elimina: nombre (arroba) dominio (punto) com, (at) y (dot), [at] y [dot]. Teléfonos, como secuencias de al menos nueve cifras, con o sin separadores y prefijo internacional. Cuentas bancarias en formato IBAN, números de tarjeta, DNI y NIE, el NIR francés, el codice fiscale italiano, el BSN neerlandés, el NIF portugués y la Steuer-ID alemana, y matrículas españolas. Cada uno es una señal de personal_data con el motivo en una frase, y el correo disfrazado añade otra de evasion.
Cómo se comprueba un número antes de señalarlo
Un número largo no es un dato personal por sí mismo; la mayoría son referencias de pedido, códigos de envío o números de factura. Por eso todo lo que tiene dígito de control se verifica. Un IBAN se reordena, sus letras se pasan a números y el resto de dividir entre 97 tiene que ser uno. Una tarjeta tiene que pasar Luhn y empezar por un prefijo que use un emisor real, y así un teléfono con la longitud justa no se cuela una de cada diez veces. Un DNI o un NIE tiene que acabar en la letra que sale de su número módulo 23, y los demás números nacionales llevan su propio dígito o letra de control, que se comprueba igual. Una matrícula no tiene dígito de control, y por eso puntúa más bajo que el resto.
Qué devuelve redact
Con redact: true, la respuesta trae redacted: el texto que enviaste con cada hallazgo sustituido por [redacted]. Las posiciones salen de detectores que leen el texto original, así que el tapado cae sobre las palabras correctas. Los hallazgos que se solapan se unen antes de sustituir nada, porque un IBAN contiene una serie de cifras que el detector de teléfonos también ve, y tapar una y saltarse la otra dejaría media cuenta publicada. La sustitución va de derecha a izquierda, porque cada tapado cambia la longitud del texto. Las posiciones no tienen tope: un mensaje con cuarenta direcciones vuelve con cuarenta tapados.
Una evidencia que no repite el número
La señal enseña lo que se encontró, para que un moderador vea por qué se retuvo un mensaje. Los números de tarjeta aparecen solo con sus cuatro últimas cifras y los teléfonos sin la parte central, porque un detector que existe para avisar de un número que no debería ser público no puede ser el que lo copie en los logs y en las respuestas de la API.