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