base64 加密


base64是一種基於64個可打印字符來表示二進制數據的方法。
它是目前網絡上最常見的用於傳輸8Bit字節碼的編碼方式之一。

Python base64

base64 是 python 中的內置模塊

使用方法:

base64.b64encode() # 將bytes類型數據進行base64編碼,返回編碼后的bytes類型數據。
base64.b64deocde() # 將base64編碼后的bytes類型數據進行解碼,返回解碼后的bytes類型數據。

>>> import base64
>>> byte = bytes('雲端一夢', encoding='gbk')
>>> byte
b'\xd4\xc6\xb6\xcb\xd2\xbb\xc3\xce'
>>> b64 = base64.b64encode(byte)
>>> b64
b'1Ma2y9K7w84='
>>> byte = base64.b64decode(b64)
>>> byte
b'\xd4\xc6\xb6\xcb\xd2\xbb\xc3\xce'
>>> str(byte, encoding='gbk')
'雲端一夢'

加密規則

1、把3個字節重組成4個字節:38=>46。每個字節高兩位補0。

例如:11111111 11111111 11111111
base64加密=> 00111111 00111111 00111111 00111111
每個字節只有六位有效位,最大值不超過 2^6 = 64
轉化成十進制后,查編碼表得到最終字符:////

2、每76個字符加一個換行符。
3、最后的結束符也要處理。

Base64編碼表

索引 對應字符 索引 對應字符 索引 對應字符 索引 對應字符
0 A 16 Q 32 g 48 w
1 B 17 R 33 h 49 x
2 C 18 S 34 i 50 y
3 D 19 T 35 j 51 z
4 E 20 U 36 k 52 0
5 F 21 V 37 l 53 1
6 G 22 W 38 m 54 2
7 H 23 X 39 n 55 3
8 I 24 Y 40 o 56 4
9 J 25 Z 41 p 57 5
10 K 26 a 42 q 58 6
11 L 27 b 43 r 59 7
12 M 28 c 44 s 60 8
13 N 29 d 45 t 61 9
14 O 30 e 46 u 62 +
15 P 31 f 47 v 63 /


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM