1. MD5&ソルト&BCrybt
MD5 および MD5 ソルト値暗号化
メッセージ ダイジェスト アルゴリズム 5、メッセージ ダイジェスト アルゴリズム:
- 圧縮率: データの長さに関係なく、計算された MD5 値の長さは固定されます。
- 簡単な計算:元のデータからMD5値を簡単に計算できます。
- アンチモディフィケーション: 元のデータに何らかの変更が加えられた場合、たとえ 1 バイトだけが変更されたとしても、結果の MD5 値は大きく異なります。とてもむずかしいです
塩で:
- 生成された乱数と MD5 で生成された文字列を組み合わせる
- データベースには MD5 値とソルト値が同時に保存されます。正確性を検証する場合は、ソルトを使用して MD5 を実行します。
@Test
public void test01(){
// String s= DigestUtils.md5Hex("123456");
// String s1= Md5Crypt.md5Crypt("123456".getBytes(),"$1$qqqqqq");
BCryptPasswordEncoder passwordEncoder=new BCryptPasswordEncoder();
String encode=passwordEncoder.encode("123456");
boolean matches=passwordEncoder.matches("123456","$2a$10$1wj4ZKm2khXSP7KVB3Efp.lQHXLtSZcLpbOLjhvukypPaW9vqs6Cq");
System.out.println(encode);
System.out.println(matches);
// System.out.println(s);
// System.out.println(s1);
}
上記のコードによれば、このコード行を使用して暗号化、つまりユーザー データをデータベースに保存するときに使用できます。
String encode=passwordEncoder.encode("123456");
ログインする必要がある場合は、次のコード行を使用して復号化できます。
boolean matches=passwordEncoder.matches("123456","$2a$10$1wj4ZKm2khXSP7KVB3Efp.lQHXLtSZcLpbOLjhvukypPaW9vqs6Cq");
今後も随時更新していきます。。。。。ラララああ。。。。。。