java中Base64编码解码的编程使用

一、密码学

1、密码学算法的分类

消息编码:Base64

消息摘要:MD类、SHA类、MAC

对称密码:DES、3DES、AES (参见:java对称密码算法的使用DES/3DES/AES算法 

非对称密码:RSA、DH密钥交换

数字签名:RSASignature、DSASignature

2、密码学五元组

(明文,密文,加密算法,解密算法、密钥)

3、对称密码(传统密码)与非对称密码(公钥密码)

对称密码:加解密使用相同密钥的密码体制

非对称密码:加解密使用不同的密钥——公钥与私钥

4、Java编程中常用类

1)消息编码

BASE64Encoder、BASE64Decoder

2)消息摘要(参见:消息摘要MD/SHA/HMAC的使用方法 )

MessageDigest

3)对称密码

KeyGenerator、SecretKey、Cipher

4)非对称密码

KeyPairGenerator、KeyFactory、KeyPair、PublicKey、PrivateKey、Cipher

5)数字签名

Signature

二、Base64算法的编程使用

1、Base64编码示例

密文:d3d3LmJjb2Rlci5jbg==

明文:www.bcoder.cn

2、Base64算法定义

Base64是一种基于64个字符的编码算法,以任意8位字节序列组合的描述形式,这种形式不易直接识别。经Base64编码后的字符串的字符数是以4为单位的整数倍。

3、Base64密钥

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

 

4、Base64编程使用

1)加密

byte[] data = “www.bcoder.cn”.getBytes();

String result = new BASE64Encoder().encode(data);

2)解密:

byte[] result = new BASE64Decoder().decodeBuffer(data);

Base64算法的实际应用(java)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值