python與js進行MD5取hash有什麼不同

前言:

做滲透測試發現前端關鍵字進行瞭加密,並且對傳遞的參數進行簽名,這導致我不能進行更改參數的值,本來打算使用JSforward進行繞過,結果嘗試失敗,於是最終還是通過python來寫加密方法進行測試。js簽名方法已經找到瞭,是通過MD5進行簽名,進行md5時會加入服務器發放的AES秘鑰(密碼由AES加密),並且秘鑰為固定秘鑰,因此這裡難度不大,但是遇到一個坑,那就pythonjsjson進行md5取hash,MD5結果值不一致,於是在網上尋找方法,最終還是找到瞭原因,接下來進行記錄。

加密的數據包:

簽名方法為MD5

python對{‘name’:‘anan’,‘age’:‘18’}轉換為json字符串:

js對{‘name’:‘anan’,‘age’:‘18’}轉換為json字符串:

比較結果:

python通過json.dumps處理的結果在:與值之間多瞭一個空格

{"name": "anan", "age": "18"}  #python
{"name":"anan","age":"18"}     #js

處理方式:

json.dumps(data, separators=(",", ":"))

到此這篇關於python與js進行MD5取hash有什麼不同的文章就介紹到這瞭,更多相關python與js進行MD5取hash區別內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: