Análisis de los parámetros de cifrado de queryKey y queryMessage en el terminal Jingdong m
I. Introducción
Recientemente, luego de analizar el sitio web JD.com para obtener la cantidad de productos en la tienda, encontré que hay un parámetro de cifrado 2, lo que despierta mi interés, a continuación lo analizaré.
2. Iniciar el análisis
Revisé el código de js y finalmente encontré la parte clave.
La primera es queryKey. El significado del código debe ser una cadena de 16 dígitos generada aleatoriamente.
o = this._getRandomString(8) + this._getRandomString(8)
El siguiente paso es centrarse en queryMessage. Después de buscar un poco, encontré el código relevante.
i.queryMessage = this._encryptPkcs7ToJava(c, o, n)
¿Qué es _encryptPkcs7ToJava? Cuando entré, resultó ser un cifrado AES. Básicamente resolvió el caso aquí.
3. Resumen
Esta vez la dificultad no es demasiado grande, el algoritmo se restaura en un lenguaje sencillo y no hay problema después de probarlo
Intercambio técnico QQ53461569