python url加密_使用base64加密在URL传递(python和php版本)
把base64加密后在url傳輸,會把“+“,”/”分別替換為”-“,”_”,以及會把末尾的等號“=”去掉。
另外base64加密后的長度必然是4的倍數,所以可以根據這個還原“=”號
解密的過程就是這個的逆向。
注意:python必須補齊=號才正常,不然會拋錯no padding.
python版本:
def base64_url_decode(inp):
# 通過url傳輸時去掉了=號,所以需要補上=號
import base64
return base64.urlsafe_b64decode(str(inp + '=' * (4 - len(inp) % 4)))
def base64_url_encode(inp):
import base64
return base64.urlsafe_b64encode(str(inp)).rstrip('=')
php版本:
function base64url_encode($data) {
return rtrim(strtr(base64_encode($data), '+/', '-_'), '=');
}
function base64url_decode($data) {
return base64_decode(str_pad(strtr($data, '-_', '+/'), strlen($data) % 4, '=', STR_PAD_RIGHT));
}
總結
以上是生活随笔為你收集整理的python url加密_使用base64加密在URL传递(python和php版本)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【物理女神】谁是中国第一位物理学女博士?
- 下一篇: 济公 佛,是无相的