數據加簽就是由發送者產生一段無法偽造的一段數字串,來保證數據在傳輸過程中不被篡改;你可能會問數據如果已經通過https加密了,還有必要進行加簽嗎?數據在傳輸過程中經過加密,理論上就算被抓包,也無法對數據進行篡改;但是我們要知道加密的部分其實只是在外網,現在很多服務在內網中都需要經過很多服務跳轉,所以這里的加簽可以防止內網中數據被篡改;
數據簽名使用比較多的是md5算法,將需要提交的數據通過某種方式組合和一個字符串,然后通過md5生成一段加密字符串,這段加密字符串就是數據包的簽名,可以看一個簡單的例子:
```
str:參數1={參數1}&參數2={參數2}&……&參數n={參數n}$key={用戶密鑰};
MD5.encrypt(str);
```
注意最后的用戶密鑰,客戶端和服務端都有一份(對稱加密),這樣會更加安全;