@@ -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)
@@ -367,7 +375,7 @@ The current implementation of the `Argon2PasswordEncoder` requires BouncyCastle.
367
375
[source,java,role="primary"]
368
376
----
369
377
// Create an encoder with all the defaults
370
- Argon2PasswordEncoder encoder = new Argon2PasswordEncoder();
378
+ Argon2PasswordEncoder encoder = Argon2PasswordEncoder.defaultsForSpringSecurity_v5_8 ();
371
379
String result = encoder.encode("myPassword");
372
380
assertTrue(encoder.matches("myPassword", result));
373
381
----
@@ -376,7 +384,7 @@ assertTrue(encoder.matches("myPassword", result));
376
384
[source,kotlin,role="secondary"]
377
385
----
378
386
// Create an encoder with all the defaults
379
- val encoder = Argon2PasswordEncoder()
387
+ val encoder = Argon2PasswordEncoder.defaultsForSpringSecurity_v5_8 ()
380
388
val result: String = encoder.encode("myPassword")
381
389
assertTrue(encoder.matches("myPassword", result))
382
390
----
@@ -396,7 +404,7 @@ This algorithm is a good choice when FIPS certification is required.
396
404
[source,java,role="primary"]
397
405
----
398
406
// Create an encoder with all the defaults
399
- Pbkdf2PasswordEncoder encoder = new Pbkdf2PasswordEncoder();
407
+ Pbkdf2PasswordEncoder encoder = Pbkdf2PasswordEncoder.defaultsForSpringSecurity_v5_8 ();
400
408
String result = encoder.encode("myPassword");
401
409
assertTrue(encoder.matches("myPassword", result));
402
410
----
@@ -405,7 +413,7 @@ assertTrue(encoder.matches("myPassword", result));
405
413
[source,kotlin,role="secondary"]
406
414
----
407
415
// Create an encoder with all the defaults
408
- val encoder = Pbkdf2PasswordEncoder()
416
+ val encoder = Pbkdf2PasswordEncoder.defaultsForSpringSecurity_v5_8 ()
409
417
val result: String = encoder.encode("myPassword")
410
418
assertTrue(encoder.matches("myPassword", result))
411
419
----
@@ -424,7 +432,7 @@ Like other adaptive one-way functions, it should be tuned to take about 1 second
424
432
[source,java,role="primary"]
425
433
----
426
434
// Create an encoder with all the defaults
427
- SCryptPasswordEncoder encoder = new SCryptPasswordEncoder();
435
+ SCryptPasswordEncoder encoder = SCryptPasswordEncoder.defaultsForSpringSecurity_v5_8 ();
428
436
String result = encoder.encode("myPassword");
429
437
assertTrue(encoder.matches("myPassword", result));
430
438
----
@@ -433,7 +441,7 @@ assertTrue(encoder.matches("myPassword", result));
433
441
[source,kotlin,role="secondary"]
434
442
----
435
443
// Create an encoder with all the defaults
436
- val encoder = SCryptPasswordEncoder()
444
+ val encoder = SCryptPasswordEncoder.defaultsForSpringSecurity_v5_8 ()
437
445
val result: String = encoder.encode("myPassword")
438
446
assertTrue(encoder.matches("myPassword", result))
439
447
----
0 commit comments