Base64编码详解

Base64编码详解

原理

Base64编码以24个二进制为一个基本计算单位。

Base64编码的由来是由于0-63都有唯一的对应字母,刚好有64个字符,所以叫Base64。

要想表示64个所有的字符,需要6(64=26)个比特,所以24个二进制可以分有4个6位二进制(4*6=24),将6个比特高位补0变为8个比特后,就可以表示4个字节。也就是说一个3字节数据(24Bit)经过base64编码后变为4字节数据。

计算过程

字符

W

S

R

T

E

 

 

 

对应ASCII码

87

83

82

84

69

 

 

 

3个8位二进制

01010111

01010011

01010010

01010100

01000101

补位

 

 

4个6位二进制

010101

110101

001101

010010

010101

000100

010100

补位

高位补0成4个8位二进制

00010101

00110101

00001101

00010010

00010101

00000100

00010100

补位

十进制

21

53

13

18

21

4

20

补位

Base64编码

V

1

N

S

V

E

U

=

 

Base64计算规则:

(1)24个二进制为一基本计算单位,将原数据以3个字节划分,不足则补位。

(2)3个字节的数据变为4个6位二进制数据,不足的补0;如果不是4的倍数,补位至4的倍数。

(3)高位补0至8个Bit,变为1个字节。

(4)计算十进制,并查找base64编码表得到Base64编码。

 

附录:Base64编码表

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

/

 

附录:ASCII码表

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值