Spring框架自带的加密、验证方式


1: MD5加密-依赖  spring-core

import org.springframework.util.DigestUtils;
import java.nio.charset.StandardCharsets;

DigestUtils.md5Digest("ass".getBytes(StandardCharsets.UTF_8)); // 加密
DigestUtils.md5DigestAsHex("ass".getBytes(StandardCharsets.UTF_8)); // 验证

 

2:Spring-security加密  依赖spring-boot-starter-security

  1. XXXXX

// 1. 在启动类中添加bean
@Bean
public BCryptPasswordEncoder passwordEncoder(){ return new BCryptPasswordEncoder(); }

// 在某个业务中注入才能使用
@Autowired
private BCryptPasswordEncoder passwordEncoder;
 

  2. 直接在业务逻辑中new 实例

BCryptPasswordEncoder bCryptPasswordEncoder = new BCryptPasswordEncoder();
k1是明文密码,k2为加密过的密码,返回true或false
    passwordEncoder.matches(k1,k2);
没什么好说的 传入明文密码,返回加密后密码
    passwordEncoder.encode(password);

 3:BASE64Encoder加密字符串、图片

String s = "123456789";  // 字符串
String p1 = new BASE64Encoder().encode(s.getBytes()); // 加密
System.out.println(p1);

BASE64Decoder decoder = new BASE64Decoder();
byte[] bytes = decoder.decodeBuffer(p1); 
System.out.println(new String(bytes));  // 解密
// 图片64位加密
String imagPath = "C:\\Users\\225907\\Desktop\\远古人类.jpg"; InputStream inputStream = new FileInputStream(new File(imagPath)); byte[] data = new byte[inputStream.available()]; inputStream.read(data); inputStream.close(); BASE64Encoder encoder = new BASE64Encoder(); return encoder.encode(data);
// 解密base64加密图片,输出图片
BASE64Decoder decoder = new BASE64Decoder(); String newFilePath = "C:\\Users\\225907\\Desktop\\新远古人类.jpg"; byte[] bytes = decoder.decodeBuffer(s); OutputStream outputStream = new FileOutputStream(new File(newFilePath)); outputStream.write(bytes); outputStream.flush(); outputStream.close();

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM