base64加密、解密
1. 簡介
Base64是網絡上最常見的用於傳輸8Bit字節碼的編碼方式之一,Base64就是一種基於64個可打印字符來表示二進制數據的方法。可查看RFC2045~RFC2049,上面有MIME的詳細規范。
Base64編碼是從二進制到字符的過程,可用於在HTTP環境下傳遞較長的標識信息。采用Base64編碼具有不可讀性,需要解碼后才能閱讀。
Base64由於以上優點被廣泛應用於計算機的各個領域,然而由於輸出內容中包括兩個以上“符號類”字符(+, /, =),不同的應用場景又分別研制了Base64的各種“變種”。為統一和規范化Base64的輸出,Base62x被視為無符號化的改進版本。
2. 加密
# 加密:數據 --> 字符串 --> 二進制 --> 加密字符串
>>> import base64
>>>
>>> data = {"name": "zhangsan", "age": 23}
>>> data_str = str(data)
>>> data_bytes = data_str.encode("utf-8")
>>> new_data_str = base64.b64encode(data_bytes)
>>> new_data_str
b'eyduYW1lJzogJ3poYW5nc2FuJywgJ2FnZSc6IDIzfQ=='
>>>
3. 解密
>>> import base64
>>>
>>> data_str = 'eyduYW1lJzogJ3poYW5nc2FuJywgJ2FnZSc6IDIzfQ=='
>>> data_bytes = base64.b64decode(data_str)
>>> data = data_bytes.decode("utf-8")
>>> data
"{'name': 'zhangsan', 'age': 23}"