Bueno, probablemente nunca estaremos completamente seguros ya que no tenemos el código. Pero podemos discutir algunas posibilidades. Pero primero,
¿Por qué el cambio, en realidad?
¿Cuál podría ser la razón de este cambio de todos modos? Una posibilidad es que las agencias de inteligencia tengan algo que ver con esto, como se supone que sucedió con una versión anterior de A5 / 1 , Comp128v2, donde los primeros diez bits de una clave 'aleatoria' siempre se establecieron en 0. De esta forma pueden, si obtienen el hash de MS, solo fuerza bruta más rápido.
En caso de que no le gusten las teorías complot, otra opción es, por supuesto, que MS no quiere que olvide su contraseña.
Pero veamos las posibilidades.
Contraseñas almacenadas en texto plano
Es posible que MS haya almacenado contraseñas de texto sin formato, pero sería un gran error y supongo que (y realmente espero) este no es el caso.
Normalmente, las contraseñas se procesan y se eliminan de manera irreversible para que incluso MS no pueda conocer su contraseña a partir del valor en la base de datos. Entonces, ¿cómo hicieron esto?
Dos versiones de una función hash almacenadas en paralelo
Lo que sería una posibilidad es que ya planearon por más tiempo tener una longitud máxima en la contraseña. Luego, podrían esperar a que inicies sesión y, paralelamente a verificar si realmente estás ingresando la contraseña correcta y registrándote, cortando tu entrada y agregando sal y hash esa y guardándola en otro lugar. En el momento en que cambiaron al nuevo sistema, simplemente copiaron los nuevos hashes.
Las contraseñas siempre fueron truncadas en 16 caracteres
Como lo señaló Ajedi32 en los comentarios, también es posible que las contraseñas siempre estén truncadas después de 16 caracteres. (La razón para esto, nuevamente, podría ser la interferencia de la inteligencia). La única diferencia es que MS ahora no le permite ingresar más, porque se han vuelto demasiado perezosos para truncarlos ellos mismos.
Esto no me parece probable, porque si esto fuera cierto, ¿por qué ahora le dicen a los usuarios que no ingresen más de 16 caracteres? Sí, podría ser que cosas como esta (es decir, los textos de IU se cambien sin un cambio real de la función) simplemente ocurran en una gran organización. Sin embargo, como explica Ajedi32:
¿Tal vez finalmente se dieron cuenta de que no informar a los usuarios sobre una limitación de seguridad tan importante era una mala idea, y decidieron comenzar a aplicar explícitamente el límite de 16 caracteres? ¿O quizás se están preparando para levantar la limitación en el futuro, y necesitan comenzar a preparar a los usuarios para eso ahora? (Dado que eliminar la limitación significaría que "1234567890123456" ya no sería la misma contraseña que "1234567890123456789")
La respuesta real
Resulta que Ajedi32 tenía razón y las contraseñas siempre estaban truncadas, como se señala en este artículo de MS (los créditos van a PwdRsch, consulte los comentarios). Las otras posibilidades permanecen aquí por el bien de la teoría.