El runtime V8 de JavaScript socavó mi biblioteca de tiempo constante
The V8 JavaScript Runtime Undermined My Constant-Time JavaScript Library

El investigador Yayu Wang, de la University of British Columbia, descubrió que las funciones de selección de constant-time-js filtraban secretos a través de V8. El mecanismo ToBoolean, el manejo especial de -0 y los objetos Oddball true/false en distintas líneas de caché revelaban la condición de selección mediante patrones de acceso a caché. El autor verificó el informe, publicó un parche en la versión 0.5.0 y solicitó un CVE. La lección: evitar booleanos por completo y no confiar solo en trazas de instrucciones.
Esto significa que una traza de instrucciones ejecutadas por sí sola puede clasificar incorrectamente la operación como de tiempo constante; deben considerarse tanto las direcciones de instrucción como las de datos.