python與js進行MD5取hash有什麼不同
前言:
做滲透測試發現前端關鍵字進行瞭加密,並且對傳遞的參數進行簽名,這導致我不能進行更改參數的值,本來打算使用JSforward進行繞過,結果嘗試失敗,於是最終還是通過python來寫加密方法進行測試。js簽名方法已經找到瞭,是通過MD5進行簽名,進行md5時會加入服務器發放的AES秘鑰(密碼由AES加密),並且秘鑰為固定秘鑰,因此這裡難度不大,但是遇到一個坑,那就python
和js
對json
進行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!
推薦閱讀:
- Python中json.dumps()函數的使用解析
- Python中json.load()和json.loads()有哪些區別
- Python對象與json數據的轉換問題實例詳解
- Python操作JSON實現網絡數據交換
- Python如何把不同類型數據的json序列化