首頁 > Java > java教程 > 主體

Springboot基於BCrypt非對稱加密字串怎麼實現

PHPz
發布: 2023-05-22 08:25:05
轉載
1520 人瀏覽過

1 : BCrypt簡介

在使用者模組中,需要對於使用者的密碼進行保護,通常都會進行加密。
我們通常會將密碼加密,然後存放在資料庫中,在使用者登入的時候,將其輸入的密碼加密然後與資料庫中存放的密文進行比較,以驗證使用者密碼是否正確。
目前,MD5和BCrypt比較流行。相對來說,BCrypt比MD5安全。

2 : 整合BCrypt加密及驗證

2.1 : 引入POM

<dependency>
    <groupId>org.mindrot</groupId>
    <artifactId>jbcrypt</artifactId>
    <version>0.3m</version>
</dependency>
登入後複製

2.2 : 工具類別

PassWordUtil.java

package com.utils;

import org.mindrot.jbcrypt.BCrypt;

public class PassWordUtil {

    /**
     * 密码加密
     */
    public static String encrypt(String source){
        String salt = BCrypt.gensalt();
        return BCrypt.hashpw(source, salt);
    }

    /**
     * 密码校验
     */
    public static boolean check(String source, String pwdCode){
        return BCrypt.checkpw(source, pwdCode);
    }

}
登入後複製

2.3 : 驗證

public static void main(String[] args) {
    String password = "abc123&%*";
    String crypt = encrypt(password);
    System.out.println(crypt);
    System.out.println("==========");
    System.out.println(check(password, crypt));
    System.out.println(check(password + "1", crypt));
}
登入後複製

Springboot基於BCrypt非對稱加密字串怎麼實現

#

以上是Springboot基於BCrypt非對稱加密字串怎麼實現的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:yisu.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!