Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

198
Vistas
Necesidades de novato con cryptojs y md5

Soy un novato total en JavaScript. Quiero jugar con una API Rest. Esto requiere la creación de una clave X-Auth para la autenticación.

La documentación decía:

El encabezado X-Auth-Key debe construirse con el siguiente algoritmo: md5(api_key + md5(url + X-Auth-User + api_key + X-Auth-Expires)).

Por ejemplo, considere una solicitud GET a https://<server_ip>/api/live_events/1?clean=true por parte del usuario 'admin' con la api_key '1acpJN7oEDn3BDDYhQ' que vence el 1 de junio de 2011 UTC. En este caso, el parámetro de URL es '/live_events/1' y el valor de X-Auth-Expires es '1306886400'. Por lo tanto, el valor de X-Auth-Key debe calcularse de la siguiente manera:

md5('1acpJN7oEDn3BDDYhQ' + md5('/live_events/1'+'admin'+'1acpJN7oEDn3BDDYhQ'+'1306886400')) => md5('1acpJN7oEDn3BDDYhQ' + md5('/live_events/1admin1acpJN7oEDn3BDDYhQ1306886400')) => ' 180c88df8d0d4182385f6eb7e7045a42 '

He intentado implementar esto con CryptoJs hasta ahora, pero desafortunadamente no puedo obtener los valores del ejemplo:

 <script> var md5xx = CryptoJS.MD5('/live_events/1admin1acpJN7oEDn3BDDYhQ1306886400') var md5yy = CryptoJS.MD5(('1acpJN7oEDn3BDDYhQ') + String(md5xx)); console.log(md5yy.toString()); // => 17222238c238b7ac9f76ea8d0fe1e330 </script>

¡Realmente agradecería algo de ayuda! ¡Gracias por adelantado!

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

El hash md5 que obtuvo 17222238c238b7ac9f76ea8d0fe1e330 es correcto.
El ejemplo 180c88df8d0d4182385f6eb7e7045a42 dado con búsqueda inversa da un enlace diferente /jobs/1admin1acpJN7oEDn3BDDYhQ1306886400 en lugar de /live_events/1admin1acpJN7oEDn3BDDYhQ1306886400 .
Puede cotejar con
https://md5.gromweb.com/?md5=180c88df8d0d4182385f6eb7e7045a42 y
https://md5.gromweb.com/?md5=a39ee4e3aa79939249cb6b5e7faead28

 //the hash you actually expected var md5xx = CryptoJS.MD5('/jobs/1admin1acpJN7oEDn3BDDYhQ1306886400') var md5yy = CryptoJS.MD5(('1acpJN7oEDn3BDDYhQ') + String(md5xx)); console.log(md5yy.toString()); //correct hash according to the given link var md5xx = CryptoJS.MD5('/live_events/1admin1acpJN7oEDn3BDDYhQ1306886400') var md5yy = CryptoJS.MD5(('1acpJN7oEDn3BDDYhQ') + String(md5xx)); console.log(md5yy.toString());
 <script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/4.1.1/crypto-js.min.js"></script>

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda