Es posible crear una "firma" para una pieza de JavaScript

3

Tenga paciencia conmigo, es posible que haya formulado esta pregunta de forma fallida.

Por lo tanto, necesito algún código JavaScript que cree una firma de JavaScript que esté almacenada en una cadena.

Aquí hay un ejemplo:

presignature = "<script>alert("test")</script>;

Necesito que este código JavaScript que se almacena en presignature se convierta en firma. Estaba pensando que podría seguir reemplazando la cadena con usos comunes de javascript (como cambiar "alerta" a "a").

¿Alguna pista o consejo?

    
pregunta Uma 14.05.2015 - 23:23
fuente

2 respuestas

6

No es una firma, sin embargo, una Política de seguridad de contenido le permite agregar a la lista blanca JavaScript para la ejecución en tu página al incluir un hash SHA-256, SHA-384 o SHA-512 .

por ejemplo para permitir <script>alert('Hello, world.');</script> , incluiría el siguiente encabezado de respuesta HTTP:

Content-Security-Policy: script-src 'sha256-sha256-qznLcsROx4GACP2dm0UCKCzCG-HiZ1guq6ZZDob_Tng='

navegadores compatibles no se ejecutarán.

También puede usar esto para averiguar el hash esperado de un script en desarrollo abriendo las herramientas de desarrollo en Chrome y examinando los mensajes de error en cualquier discrepancia.

Depende de lo que estés tratando de lograr: ¿un valor de hash sería suficiente o realmente necesitas una firma?

    
respondido por el SilverlightFox 15.05.2015 - 13:25
fuente
2

Un fragmento de javascript es una cadena, por lo que se puede pasar a una biblioteca criptográfica para que se firme como cualquier otra cadena.

Intente buscar en Google " javascript crypto library " y vea si le gusta alguna de las bibliotecas que aparecen. Cualquier biblioteca criptográfica tendrá funcionalidad de firma.

    
respondido por el Mike Ounsworth 15.05.2015 - 00:46
fuente

Lea otras preguntas en las etiquetas