@@ -93,8 +93,12 @@ String idForEncode = "bcrypt";
93
93
Map encoders = new HashMap<>();
94
94
encoders.put(idForEncode, new BCryptPasswordEncoder());
95
95
encoders.put("noop", NoOpPasswordEncoder.getInstance());
96
- encoders.put("pbkdf2", new Pbkdf2PasswordEncoder());
97
- encoders.put("scrypt", new SCryptPasswordEncoder());
96
+ encoders.put("pbkdf2", Pbkdf2PasswordEncoder.defaultsForSpringSecurity_v5_5());
97
+ encoders.put("pbkdf2@SpringSecurity_v5_8", Pbkdf2PasswordEncoder.defaultsForSpringSecurity_v5_8());
98
+ encoders.put("scrypt", SCryptPasswordEncoder.defaultsForSpringSecurity_v4_1());
99
+ encoders.put("scrypt@SpringSecurity_v5_8", SCryptPasswordEncoder.defaultsForSpringSecurity_v5_8());
100
+ encoders.put("argon2", Argon2PasswordEncoder.defaultsForSpringSecurity_v5_2());
101
+ encoders.put("argon2@SpringSecurity_v5_8", Argon2PasswordEncoder.defaultsForSpringSecurity_v5_8());
98
102
encoders.put("sha256", new StandardPasswordEncoder());
99
103
100
104
PasswordEncoder passwordEncoder =
@@ -108,8 +112,12 @@ val idForEncode = "bcrypt"
108
112
val encoders: MutableMap<String, PasswordEncoder> = mutableMapOf()
109
113
encoders[idForEncode] = BCryptPasswordEncoder()
110
114
encoders["noop"] = NoOpPasswordEncoder.getInstance()
111
- encoders["pbkdf2"] = Pbkdf2PasswordEncoder()
112
- encoders["scrypt"] = SCryptPasswordEncoder()
115
+ encoders["pbkdf2"] = Pbkdf2PasswordEncoder.defaultsForSpringSecurity_v5_5()
116
+ encoders["pbkdf2@SpringSecurity_v5_8"] = Pbkdf2PasswordEncoder.defaultsForSpringSecurity_v5_8()
117
+ encoders["scrypt"] = SCryptPasswordEncoder.defaultsForSpringSecurity_v4_1()
118
+ encoders["scrypt@SpringSecurity_v5_8"] = SCryptPasswordEncoder.defaultsForSpringSecurity_v5_8()
119
+ encoders["argon2"] = Argon2PasswordEncoder.defaultsForSpringSecurity_v5_2()
120
+ encoders["argon2@SpringSecurity_v5_8"] = Argon2PasswordEncoder.defaultsForSpringSecurity_v5_8()
113
121
encoders["sha256"] = StandardPasswordEncoder()
114
122
115
123
val passwordEncoder: PasswordEncoder = DelegatingPasswordEncoder(idForEncode, encoders)
@@ -363,7 +371,7 @@ The current implementation of the `Argon2PasswordEncoder` requires BouncyCastle.
363
371
[source,java,role="primary"]
364
372
----
365
373
// Create an encoder with all the defaults
366
- Argon2PasswordEncoder encoder = new Argon2PasswordEncoder();
374
+ Argon2PasswordEncoder encoder = Argon2PasswordEncoder.defaultsForSpringSecurity_v5_8 ();
367
375
String result = encoder.encode("myPassword");
368
376
assertTrue(encoder.matches("myPassword", result));
369
377
----
@@ -372,7 +380,7 @@ assertTrue(encoder.matches("myPassword", result));
372
380
[source,kotlin,role="secondary"]
373
381
----
374
382
// Create an encoder with all the defaults
375
- val encoder = Argon2PasswordEncoder()
383
+ val encoder = Argon2PasswordEncoder.defaultsForSpringSecurity_v5_8 ()
376
384
val result: String = encoder.encode("myPassword")
377
385
assertTrue(encoder.matches("myPassword", result))
378
386
----
@@ -392,7 +400,7 @@ This algorithm is a good choice when FIPS certification is required.
392
400
[source,java,role="primary"]
393
401
----
394
402
// Create an encoder with all the defaults
395
- Pbkdf2PasswordEncoder encoder = new Pbkdf2PasswordEncoder();
403
+ Pbkdf2PasswordEncoder encoder = Pbkdf2PasswordEncoder.defaultsForSpringSecurity_v5_8 ();
396
404
String result = encoder.encode("myPassword");
397
405
assertTrue(encoder.matches("myPassword", result));
398
406
----
@@ -401,7 +409,7 @@ assertTrue(encoder.matches("myPassword", result));
401
409
[source,kotlin,role="secondary"]
402
410
----
403
411
// Create an encoder with all the defaults
404
- val encoder = Pbkdf2PasswordEncoder()
412
+ val encoder = Pbkdf2PasswordEncoder.defaultsForSpringSecurity_v5_8 ()
405
413
val result: String = encoder.encode("myPassword")
406
414
assertTrue(encoder.matches("myPassword", result))
407
415
----
@@ -420,7 +428,7 @@ Like other adaptive one-way functions, it should be tuned to take about 1 second
420
428
[source,java,role="primary"]
421
429
----
422
430
// Create an encoder with all the defaults
423
- SCryptPasswordEncoder encoder = new SCryptPasswordEncoder();
431
+ SCryptPasswordEncoder encoder = SCryptPasswordEncoder.defaultsForSpringSecurity_v5_8 ();
424
432
String result = encoder.encode("myPassword");
425
433
assertTrue(encoder.matches("myPassword", result));
426
434
----
@@ -429,7 +437,7 @@ assertTrue(encoder.matches("myPassword", result));
429
437
[source,kotlin,role="secondary"]
430
438
----
431
439
// Create an encoder with all the defaults
432
- val encoder = SCryptPasswordEncoder()
440
+ val encoder = SCryptPasswordEncoder.defaultsForSpringSecurity_v5_8 ()
433
441
val result: String = encoder.encode("myPassword")
434
442
assertTrue(encoder.matches("myPassword", result))
435
443
----
0 commit comments