Todo se procesa en tu navegador. La contraseña nunca sale de este equipo. Solo si tú lo autorizas, se envían los 5 primeros caracteres de su hash SHA-1 a api.pwnedpasswords.com (Have I Been Pwned); con eso no es posible saber cuál es tu contraseña. La página no realiza ninguna otra conexión.

Comprobar

Fortaleza estimada (cálculo local): escribe algo para verla.
Qué viajará exactamente:
Escribe una contraseña para ver su hash y qué parte se enviaría.

¿Cómo se comprueba sin revelar la contraseña?

Have I Been Pwned guarda cientos de millones de contraseñas que aparecieron en filtraciones públicas, pero no en texto claro: guarda su hash SHA-1, una "huella" de 40 caracteres que no se puede revertir.

Esta página calcula esa huella en tu navegador y usa el método k-anonymity ("anonimato entre k"):

  1. Se calcula el SHA-1 de tu contraseña aquí mismo (con crypto.subtle).
  2. Se envían solo los 5 primeros caracteres del hash. Quedan 35 caracteres sin enviar: hay 1635 (unos 1,4 × 1042) hashes posibles con ese mismo prefijo, así que el servidor no puede saber cuál es el tuyo.
  3. El servidor responde con la lista de todos los sufijos que conoce para ese prefijo (entre 400 y 1000, y con Add-Padding rellena la respuesta para que ni el tamaño dé pistas).
  4. Tu navegador busca localmente si tu sufijo está en la lista y cuántas veces apareció.
Ejemplo. La contraseña password tiene el hash 5BAA6 1E4C9B93F3F0682250B6CF8331B7EE68FD8. Solo viaja 5BAA6. El servidor devuelve cientos de líneas como 1E4C9B93F3F0682250B6CF8331B7EE68FD8:10434004; el navegador encuentra la tuya y muestra que apareció más de 10 millones de veces. Si el servidor quisiera adivinar tu contraseña a partir de 5BAA6, tendría cientos de candidatas conocidas y una cantidad astronómica de desconocidas.

¿Y si aparece?

Que una contraseña esté en una filtración no significa que tu cuenta se haya filtrado, pero sí que esa contraseña está en las listas que los atacantes prueban primero. Cámbiala en todos los sitios donde la uses, usa una distinta por servicio (un gestor de contraseñas ayuda) y activa la verificación en dos pasos.

¿Cómo funciona esta herramienta y qué NO hace?

Conexión única y explícita. A diferencia del resto de herramientas de TalkSecure, esta necesita una conexión: la política de seguridad de la página (CSP) solo permite conectar con https://api.pwnedpasswords.com, y solo tras marcar la casilla de consentimiento y pulsar el botón. Lo que viaja es GET /range/XXXXX con la cabecera Add-Padding: true, donde XXXXX son los 5 primeros caracteres hexadecimales del SHA-1. La contraseña completa, su hash completo y el resultado nunca salen del navegador ni se guardan.

Medidor de fortaleza. Se calcula localmente estimando la entropía (tipos de caracteres × longitud) con penalizaciones por repeticiones y secuencias. Es orientativo: "no aparece en filtraciones" no significa "fuerte", y una contraseña larga y aleatoria puede no estar filtrada y aun así ser mala si la reutilizas.

Qué NO hace. No comprueba cuentas ni correos (para eso está haveibeenpwned.com). No guarda historial. Si la red bloquea la API (algunas redes corporativas o extensiones), verás un error claro y ningún dato habrá salido.