java 加密 je_Java编码加密摘要算法异同比较与总结

编码算法

URL编码.

用途:数据发送给服务器使用URL编码规则.

编码规则:A~Z,a~z,0-9,-_.*保持不变,其他字符以%xx表示。如中文:%E4%B8%AD(该汉字的的十六进制是0xe4b8ad)

2.Unicode编码

十六进制编码。中文和引文的编码不一样。

3.Base64编码

用途:把二进制数据用文本表示的算法。

摘要算法

用途:计算任意长度数据的摘要,输出固定长度.

1.MD5摘要算法

大小:长度128位,16字节

2.SHA-1摘要算法,通常用于数字签名.

大小:长度160位,20字节

3.SHA-256摘要算法

大小:长度256位,32字节,是SHA1的扩充版.

MD5和SHA1比较:SHA1摘要长度比MD5长32位.如果遇上强行攻击,SHA1安全性要高于MD5.但速度上,在相同的硬件上,SHA1运行速度比MD5慢.

加密算法

对称加密算法

DES算法/AES算法

使用同一个密钥进行加密和解密.

例子:WinRAR解压文件夹,使用的即为对称加密算法.

2.非对称加密算法

RSA算法

使用不同的密钥进行加密和解密,公钥加密和私钥解密.除了加密以外,RSA同样可对数据进行签名.

各算法在数据通信中的用途:

摘要算法:确保数据从发送到接收完成过程没有被篡改.

对称/非对称加密算法:对通信数据进行加密和解密.

签名算法:确保数据完整性和抗否认性.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值