@@ -32,8 +32,14 @@ public final class OpenJCEPlus extends OpenJCEPlusProvider {
3232
3333 private static final String info = "OpenJCEPlus Provider implements the following:\n "
3434 + "Algorithm parameter : AES, ChaCha20, ChaCha20-Poly1305, DESede, DiffieHellman, DSA, EC, XEC, GCM, CCM, OAEP, RSAPSS\n "
35+ + " PBEWithHmacSHA1AndAES_128, PBEWithHmacSHA1AndAES_256, PBEWithHmacSHA224AndAES_128, PBEWithHmacSHA224AndAES_256\n "
36+ + " PBEWithHmacSHA256AndAES_128, PBEWithHmacSHA256AndAES_256, PBEWithHmacSHA384AndAES_128, PBEWithHmacSHA384AndAES_256\n "
37+ + " PBEWithHmacSHA512AndAES_128, PBEWithHmacSHA512AndAES_256\n "
3538 + "Algorithm parameter generator : DiffieHellman, DSA, EC, XEC, GCM, CCM\n "
3639 + "Cipher algorithms : AES, ChaCha20, ChaCha20-Poly1305, DESede, RSA\n "
40+ + " PBEWithHmacSHA1AndAES_128, PBEWithHmacSHA1AndAES_256, PBEWithHmacSHA224AndAES_128, PBEWithHmacSHA224AndAES_256\n "
41+ + " PBEWithHmacSHA256AndAES_128, PBEWithHmacSHA256AndAES_256, PBEWithHmacSHA384AndAES_128, PBEWithHmacSHA384AndAES_256\n "
42+ + " PBEWithHmacSHA512AndAES_128, PBEWithHmacSHA512AndAES_256\n "
3743 + "Key agreement algorithms : DiffieHellman, ECDH, XDH\n "
3844 + "Key Encapsulation Mechanisms : ML-KEM-512, ML-KEM-768, ML-KEM-1024\n "
3945 + "Key factory : DiffieHellman, DSA, EC, XEC, RSA, RSAPSS, ML-KEM-512, ML-KEM-768, ML-KEM-1024\n "
@@ -50,6 +56,9 @@ public final class OpenJCEPlus extends OpenJCEPlusProvider {
5056 + "Message digest : MD5, SHA-1, SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224, SHA-512/256, SHA3-224, SHA3-256, SHA3-384, SHA3-512\n "
5157 + "Secret key factory : AES, ChaCha20, DESede, PBKDF2WithHmacSHA1, PBKDF2WithHmacSHA224, PBKDF2WithHmacSHA256, PBKDF2WithHmacSHA384, PBKDF2WithHmacSHA512\n "
5258 + " PBKDF2WithHmacSHA512/224, PBKDF2WithHmacSHA512/256\n "
59+ + " PBEWithHmacSHA1AndAES_128, PBEWithHmacSHA1AndAES_256, PBEWithHmacSHA224AndAES_128, PBEWithHmacSHA224AndAES_256\n "
60+ + " PBEWithHmacSHA256AndAES_128, PBEWithHmacSHA256AndAES_256, PBEWithHmacSHA384AndAES_128, PBEWithHmacSHA384AndAES_256\n "
61+ + " PBEWithHmacSHA512AndAES_128, PBEWithHmacSHA512AndAES_256\n "
5362 + "Secure random : HASHDRBG, SHA256DRBG, SHA512DRBG\n "
5463 + "Signature algorithms : NONEwithDSA, SHA1withDSA, SHA224withDSA, SHA256withDSA,\n "
5564 + " SHA3-224withDSA, SHA3-256withDSA, SHA3-384withDSA, SHA3-512withDSA,\n "
@@ -154,7 +163,47 @@ private void registerAlgorithms(Provider jce) {
154163 aliases = null ;
155164 putService (new OpenJCEPlusService (jce , "AlgorithmParameters" , "OAEP" ,
156165 "com.ibm.crypto.plus.provider.OAEPParameters" , aliases ));
166+
167+ aliases = null ;
168+ putService (new OpenJCEPlusService (jce , "AlgorithmParameters" , "PBEWithHmacSHA1AndAES_128" ,
169+ "com.ibm.crypto.plus.provider.PBES2Parameters$HmacSHA1AndAES_128" , aliases ));
170+
171+ aliases = null ;
172+ putService (new OpenJCEPlusService (jce , "AlgorithmParameters" , "PBEWithHmacSHA1AndAES_256" ,
173+ "com.ibm.crypto.plus.provider.PBES2Parameters$HmacSHA1AndAES_256" , aliases ));
174+
175+ aliases = null ;
176+ putService (new OpenJCEPlusService (jce , "AlgorithmParameters" , "PBEWithHmacSHA224AndAES_128" ,
177+ "com.ibm.crypto.plus.provider.PBES2Parameters$HmacSHA224AndAES_128" , aliases ));
178+
179+ aliases = null ;
180+ putService (new OpenJCEPlusService (jce , "AlgorithmParameters" , "PBEWithHmacSHA224AndAES_256" ,
181+ "com.ibm.crypto.plus.provider.PBES2Parameters$HmacSHA224AndAES_256" , aliases ));
182+
183+ aliases = null ;
184+ putService (new OpenJCEPlusService (jce , "AlgorithmParameters" , "PBEWithHmacSHA256AndAES_128" ,
185+ "com.ibm.crypto.plus.provider.PBES2Parameters$HmacSHA256AndAES_128" , aliases ));
186+
187+ aliases = null ;
188+ putService (new OpenJCEPlusService (jce , "AlgorithmParameters" , "PBEWithHmacSHA256AndAES_256" ,
189+ "com.ibm.crypto.plus.provider.PBES2Parameters$HmacSHA256AndAES_256" , aliases ));
190+
191+ aliases = null ;
192+ putService (new OpenJCEPlusService (jce , "AlgorithmParameters" , "PBEWithHmacSHA384AndAES_128" ,
193+ "com.ibm.crypto.plus.provider.PBES2Parameters$HmacSHA384AndAES_128" , aliases ));
157194
195+ aliases = null ;
196+ putService (new OpenJCEPlusService (jce , "AlgorithmParameters" , "PBEWithHmacSHA384AndAES_256" ,
197+ "com.ibm.crypto.plus.provider.PBES2Parameters$HmacSHA384AndAES_256" , aliases ));
198+
199+ aliases = null ;
200+ putService (new OpenJCEPlusService (jce , "AlgorithmParameters" , "PBEWithHmacSHA512AndAES_128" ,
201+ "com.ibm.crypto.plus.provider.PBES2Parameters$HmacSHA512AndAES_128" , aliases ));
202+
203+ aliases = null ;
204+ putService (new OpenJCEPlusService (jce , "AlgorithmParameters" , "PBEWithHmacSHA512AndAES_256" ,
205+ "com.ibm.crypto.plus.provider.PBES2Parameters$HmacSHA512AndAES_256" , aliases ));
206+
158207 /*aliases = null;
159208 putService(new OpenJCEPlusService(jce,
160209 "AlgorithmParameters",
@@ -269,6 +318,47 @@ private void registerAlgorithms(Provider jce) {
269318 putService (new OpenJCEPlusService (jce , "Cipher" , "ChaCha20-Poly1305" ,
270319 "com.ibm.crypto.plus.provider.ChaCha20Poly1305Cipher" , aliases ));
271320
321+ aliases = null ;
322+ putService (new OpenJCEPlusService (jce , "Cipher" , "PBEWithHmacSHA1AndAES_128" ,
323+ "com.ibm.crypto.plus.provider.PBES2Core$HmacSHA1AndAES_128" , aliases ));
324+
325+ aliases = null ;
326+ putService (new OpenJCEPlusService (jce , "Cipher" , "PBEWithHmacSHA1AndAES_256" ,
327+ "com.ibm.crypto.plus.provider.PBES2Core$HmacSHA1AndAES_256" , aliases ));
328+
329+ aliases = null ;
330+ putService (new OpenJCEPlusService (jce , "Cipher" , "PBEWithHmacSHA224AndAES_128" ,
331+ "com.ibm.crypto.plus.provider.PBES2Core$HmacSHA224AndAES_128" , aliases ));
332+
333+ aliases = null ;
334+ putService (new OpenJCEPlusService (jce , "Cipher" , "PBEWithHmacSHA224AndAES_256" ,
335+ "com.ibm.crypto.plus.provider.PBES2Core$HmacSHA224AndAES_256" , aliases ));
336+
337+ aliases = null ;
338+ putService (new OpenJCEPlusService (jce , "Cipher" , "PBEWithHmacSHA256AndAES_128" ,
339+ "com.ibm.crypto.plus.provider.PBES2Core$HmacSHA256AndAES_128" , aliases ));
340+
341+ aliases = null ;
342+ putService (new OpenJCEPlusService (jce , "Cipher" , "PBEWithHmacSHA256AndAES_256" ,
343+ "com.ibm.crypto.plus.provider.PBES2Core$HmacSHA256AndAES_256" , aliases ));
344+
345+ aliases = null ;
346+ putService (new OpenJCEPlusService (jce , "Cipher" , "PBEWithHmacSHA384AndAES_128" ,
347+ "com.ibm.crypto.plus.provider.PBES2Core$HmacSHA384AndAES_128" , aliases ));
348+
349+ aliases = null ;
350+ putService (new OpenJCEPlusService (jce , "Cipher" , "PBEWithHmacSHA384AndAES_256" ,
351+ "com.ibm.crypto.plus.provider.PBES2Core$HmacSHA384AndAES_256" , aliases ));
352+
353+ aliases = null ;
354+ putService (new OpenJCEPlusService (jce , "Cipher" , "PBEWithHmacSHA512AndAES_128" ,
355+ "com.ibm.crypto.plus.provider.PBES2Core$HmacSHA512AndAES_128" , aliases ));
356+
357+ aliases = null ;
358+ putService (new OpenJCEPlusService (jce , "Cipher" , "PBEWithHmacSHA512AndAES_256" ,
359+ "com.ibm.crypto.plus.provider.PBES2Core$HmacSHA512AndAES_256" , aliases ));
360+
361+
272362 /* =======================================================================
273363 * Key agreement
274364 * =======================================================================
@@ -785,6 +875,47 @@ private void registerAlgorithms(Provider jce) {
785875 putService (new OpenJCEPlusService (jce , "SecretKeyFactory" , "ChaCha20" ,
786876 "com.ibm.crypto.plus.provider.ChaCha20KeyFactory" , aliases ));
787877
878+ aliases = null ;
879+ putService (new OpenJCEPlusService (jce , "SecretKeyFactory" , "PBEWithHmacSHA1AndAES_128" ,
880+ "com.ibm.crypto.plus.provider.PBEKeyFactory$PBEWithHmacSHA1AndAES_128" , aliases ));
881+
882+ aliases = null ;
883+ putService (new OpenJCEPlusService (jce , "SecretKeyFactory" , "PBEWithHmacSHA1AndAES_256" ,
884+ "com.ibm.crypto.plus.provider.PBEKeyFactory$PBEWithHmacSHA1AndAES_256" , aliases ));
885+
886+ aliases = null ;
887+ putService (new OpenJCEPlusService (jce , "SecretKeyFactory" , "PBEWithHmacSHA224AndAES_128" ,
888+ "com.ibm.crypto.plus.provider.PBEKeyFactory$PBEWithHmacSHA224AndAES_128" , aliases ));
889+
890+ aliases = null ;
891+ putService (new OpenJCEPlusService (jce , "SecretKeyFactory" , "PBEWithHmacSHA224AndAES_256" ,
892+ "com.ibm.crypto.plus.provider.PBEKeyFactory$PBEWithHmacSHA224AndAES_256" , aliases ));
893+
894+ aliases = null ;
895+ putService (new OpenJCEPlusService (jce , "SecretKeyFactory" , "PBEWithHmacSHA256AndAES_128" ,
896+ "com.ibm.crypto.plus.provider.PBEKeyFactory$PBEWithHmacSHA256AndAES_128" , aliases ));
897+
898+ aliases = null ;
899+ putService (new OpenJCEPlusService (jce , "SecretKeyFactory" , "PBEWithHmacSHA256AndAES_256" ,
900+ "com.ibm.crypto.plus.provider.PBEKeyFactory$PBEWithHmacSHA256AndAES_256" , aliases ));
901+
902+ aliases = null ;
903+ putService (new OpenJCEPlusService (jce , "SecretKeyFactory" , "PBEWithHmacSHA384AndAES_128" ,
904+ "com.ibm.crypto.plus.provider.PBEKeyFactory$PBEWithHmacSHA384AndAES_128" , aliases ));
905+
906+ aliases = null ;
907+ putService (new OpenJCEPlusService (jce , "SecretKeyFactory" , "PBEWithHmacSHA384AndAES_256" ,
908+ "com.ibm.crypto.plus.provider.PBEKeyFactory$PBEWithHmacSHA384AndAES_256" , aliases ));
909+
910+ aliases = null ;
911+ putService (new OpenJCEPlusService (jce , "SecretKeyFactory" , "PBEWithHmacSHA512AndAES_128" ,
912+ "com.ibm.crypto.plus.provider.PBEKeyFactory$PBEWithHmacSHA512AndAES_128" , aliases ));
913+
914+ aliases = null ;
915+ putService (new OpenJCEPlusService (jce , "SecretKeyFactory" , "PBEWithHmacSHA512AndAES_256" ,
916+ "com.ibm.crypto.plus.provider.PBEKeyFactory$PBEWithHmacSHA512AndAES_256" , aliases ));
917+
918+
788919 /* =======================================================================
789920 * SecureRandom
790921 * =======================================================================
0 commit comments