許虎虎 開發者工具集
50%

Base32 解碼


輸入 Base32 解碼的文本

Size : 0 , 0 Characters

Base32 解碼:

Size : 0 , 0 Characters
Base32 解碼

Base32 解碼 是將 Base32 編碼的資料轉回原始資料的過程。這個過程基本上是將編碼後的字符轉換回原來的二進位形式,然後根據需要將二進位資料轉換回字串或其他形式的數據。

Base32 解碼的基本步驟
將 Base32 字符轉換為對應的數值:根據 Base32 字母表,將每個字符轉換為一個數字。Base32 字母表如下:

nginx

ABCDEFGHIJKLMNOPQRSTUVWXYZ234567
每個字符對應的數值是:

A → 0
B → 1
C → 2
...
2 → 26
3 → 27
...
7 → 31
將數值組合成二進位數據:每個 Base32 字符代表 5 位元,將它們組合成一個 40 位的二進位序列。依此將所有的字符進行轉換。

去除填充字符:Base32 編碼中,如果原始資料長度不是 5 位元組的倍數,則會在編碼的末尾添加 = 作為填充字符。在解碼時,這些填充字符需要去除。

將二進位數據轉換為原始資料:將得到的二進位數據轉換回原始的字串或數據。

Base32 解碼的範例
假設我們有一個 Base32 編碼的字串:IFSWMNJX

步驟 1:將每個 Base32 字符轉換為數值
根據 Base32 字母表,將 IFSWMNJX 中的每個字符轉換為數值:

I → 8
F → 5
S → 18
W → 22
M → 12
N → 13
J → 9
X → 23
步驟 2:將這些數值轉換為二進位
每個數值對應 5 位元的二進位數據:

I → 8 → 01000
F → 5 → 00101
S → 18 → 10010
W → 22 → 10110
M → 12 → 01100
N → 13 → 01101
J → 9 → 01001
X → 23 → 10111
將這些二進位數據組合起來:

01000 00101 10010 10110 01100 01101 01001 10111
步驟 3:組合二進位並將其轉換為原始資料
將這些二進位數據組合起來後,得到的長度為 40 位元,這些位元可以分成 8 個 5 位元的組。接下來,將其轉換回原始資料。

0100000101010010101100110011010011101111 (解碼過程)
這些二進位數據再轉回為字串 "Hello"。

解碼過程的注意事項:
填充字符:Base32 編碼中可能會包含填充字符(=)。解碼時,這些填充字符需要去除。

字母表的正確使用:Base32 編碼有固定的字符表,解碼時必須確保正確映射字符與數值。