Sí - es posible.
Existe un método de comprobar que un NIF tiene un formato válido - aunque esto no garantiza que el NIF sea de la persona que rellena el formulario. Sin embargo, es un buen paso para filtrar spam, junto a las comprobaciones de formato de correo electrónico o número de teléfono por ejemplo.
Primero, confirmamos que el formato es correcto:
[Letra - para tarjetas de residencia *] + [5-8 dígitos] + [Letra]
* Para los extranjeros como yo, tenemos que sustituir la primera letra por un número.
En mi caso, X se convierte en 0 (Y en 1, y Z en 2)
Ahora separamos la letra de los dígitos - y sacamos la calculadora:
Introducimos los dígitos y lo dividimos por 23.
Anotamos el resto.
El Ministerio del Interior nos indica el Digito de Control de un DNI - y eso es lo que usaremos:
Si la letra no coincide con lo que indica la tabla, sabemos que el NIF/NIE es falso, y podemos bloquear el envío del formulario hasta que se corrija.
Con una función simple de javascript podemos añadir esta comprobación a la validación de cualquier formulario existente - y así reducir el spam enviado de nuestra página web.
Fuente:
http://www.interior.gob.es/web/servicios-al-ciudadano/dni/calculo-del-digito-de-control-del-nif-nie