Base64 加密与解密|学习笔记

简介: 快速学习 Base64 加密与解密

开发者学堂课程【Java 高级编程Base64 加密与解密】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/20/detail/359


Base64 加密与解密


内容介绍:

1. Base64 的两个加密类

2. 范例:实现加密与解密操作.

3. 范例:使用盐值加密

4. 范例:多次加密处理

 

正常来讲加密基本上永远都要伴随着解密,所谓的加密或者是解密往往都要伴随着解密,所谓的加密或者是解密往往都需要有一些新的加密处理操作类,Base64 处理,在这个类里面有两个内部类:

Base64.Encoder:进行加密才能处理;

加密处理:public byte[] encode(byte[] src);

Base64.Decoder:进行解密处理;

解密处理: public byte[] decode(String src);

 

范例:实现加密与解密操作.

public class avaAPIDemo { 

public static void main(string[ ] args) throws Exception { 

String msg =  “www .mldn.cn" ; //要发送的信息内容

string encMsg = new string(Base64.getEncoder( ).encode(msg.getBytes())) ; 

//数据加密

system. out.print1n(encMsg); 

string oldMsg = new string(Base64.getDecoder( ) .decode(encMsg)); 

system.out.print1n(oldMsg);

虽然 Base64 可以实现加密与解密的处理,但是其由于其是一个公版的算法,所以如果对其进行加密,最好的做法是使用盐值操作。+

 

范例:使用盐值加密

public class avaAPIDemo { 

public static void main(string[ ] args) throws Exception { 

String salt = "mldnjava"; 

String msg =  “www .mldn.cn" + "+ salt +" ; //要发送的信息内容

string encMsg = new string(Base64.getEncoder( ).encode(msg.getBytes())) ; 

//数据加密

system. out.print1n(encMsg); 

string oldMsg = new string(Base64.getDecoder( ) .decode(encMsg)); 

system.out.print1n(oldMsg);

即便有盐值处理,但加密效果并不完善,所以要用到多次加密

 

范例:多次加密处理

c1ass stringutil { 

private static final string sALT= "mldnjava" ; //公共的盐值

private static final int REPEAT = 5 ; //加密次数

/** 

*加密处理 

*@param str要加密的字符串,需要与盐值整合 

*@param repeat 加密的重复次数 

*@return 加密后的数据 

*/ 

public static String encode(String str) {//加密处理

String temp = str + "{"+ SALT +}; //盐值对外不公布

byte data [] = temp.getBytes() ; //将字符串变为字节数组

for (int x= e ; x <REPEAT ; ×++) { 

data = Base64.getEncoder( ).encode(data) ;//重复加密

} 

return .new string(data) ; 

} 

}

最好的做法是使用 2-3 种加密程序,同时在找到一些完全不可解密的加密算法。

相关文章
|
1月前
|
Java 数据安全/隐私保护
des加密+base64编码,base64解码+des解密
des加密+base64编码,base64解码+des解密
37 0
|
1月前
|
数据安全/隐私保护
18、cookie注入(base64加密)
18、cookie注入(base64加密)
34 0
|
6天前
|
Go 数据安全/隐私保护
go 基于gin编写encode、decode、base64加密接口
go 基于gin编写encode、decode、base64加密接口
10 2
|
1月前
|
移动开发 JavaScript 安全
js的常见的三种密码加密方式-MD5加密、Base64加密和解密和sha1加密详解总结
js的常见的三种密码加密方式-MD5加密、Base64加密和解密和sha1加密详解总结
162 0
|
1月前
|
Java 数据安全/隐私保护
java base64 加密 解密
java base64 加密 解密
|
1月前
|
数据安全/隐私保护
小课堂 -- cookie注入(base64加密)
小课堂 -- cookie注入(base64加密)
25 0
|
1月前
|
数据安全/隐私保护 C++
c++实现http客户端和服务端的开源库以及Base64加密密码
c++实现http客户端和服务端的开源库以及Base64加密密码
|
3天前
|
SQL 安全 算法
网络安全与信息安全:漏洞、加密技术与安全意识
在当今数字化时代,网络安全与信息安全成为至关重要的议题。本文从网络安全漏洞的定义和类型入手,探讨了常见的加密技术及其应用,以及提升个人和组织安全意识的重要性。通过深入分析这些方面,旨在帮助读者全面了解和应对日益复杂的网络安全挑战。
19 0
|
2天前
|
安全 网络安全 区块链
网络安全之道:漏洞与加密的博弈
在当今数字化时代,网络安全问题日益突出。本文将就网络安全漏洞、加密技术以及安全意识等方面展开深入探讨,为读者呈现一场关于信息安全的精彩较量。
7 0
|
2天前
|
存储 安全 网络协议
网络安全漏洞与加密技术
网络安全一直是当今社会关注的焦点之一,而网络安全漏洞以及加密技术的应用则是网络安全领域的重要议题。本文将就网络安全漏洞的现状、加密技术的发展以及安全意识的重要性展开讨论,旨在增强读者对网络安全的认识,并提供相关领域的知识分享。
16 0