recently I had a look at the capabilities of the Java keytool to create PKCS#12 containers with a protected private key. According to the standard a private key is protected using a PKCS#8 shrouded key bag applying a PKCS#5 password-based encryption. I could not find any restrictions on the applicable algorithms in the PKCS#5 standard. However, it includes specifcations of some supported algorithms which more or less seem to be far from state of the art. Having a look at the popular implementations of openssl and Java keytool, it seems that the accepted default in practice is using PBEWithSHA1AndDESede. Since Triple-DES uses small keys and SHA-1 has a bad smell from other use-cases, I'm interested in using a more modern pbe-algorithm based on AES.
This led me to the Java JDK supporting algorithm identifiers like PBEWithHmacSHA256AndAES_256. While this sounds promising in practice, I was not able to find any specification or standard defining these algorithms properly.
So my question is: Where can I find the specification that defines these new algorithms and identifiers as an extension to PKCS#5? Did I miss something important in the specifications?
Thank you!