< prev index next >

src/java.base/share/classes/com/sun/crypto/provider/PBEKeyFactory.java

Print this page




  39  * meaning that the password must consist of printable ASCII characters
  40  * (values 32 to 126 decimal inclusive) and only the low order 8 bits
  41  * of each password character are used.
  42  *
  43  * @author Jan Luehe
  44  *
  45  */
  46 abstract class PBEKeyFactory extends SecretKeyFactorySpi {
  47 
  48     private String type;
  49     private static HashSet<String> validTypes;
  50 
  51     /**
  52      * Simple constructor
  53      */
  54     private PBEKeyFactory(String keytype) {
  55         type = keytype;
  56     }
  57 
  58     static {
  59         validTypes = new HashSet<String>(17);
  60         validTypes.add("PBEWithMD5AndDES".toUpperCase(Locale.ENGLISH));
  61         validTypes.add("PBEWithSHA1AndDESede".toUpperCase(Locale.ENGLISH));
  62         validTypes.add("PBEWithSHA1AndRC2_40".toUpperCase(Locale.ENGLISH));
  63         validTypes.add("PBEWithSHA1AndRC2_128".toUpperCase(Locale.ENGLISH));
  64         validTypes.add("PBEWithSHA1AndRC4_40".toUpperCase(Locale.ENGLISH));
  65         validTypes.add("PBEWithSHA1AndRC4_128".toUpperCase(Locale.ENGLISH));
  66         // Proprietary algorithm.
  67         validTypes.add("PBEWithMD5AndTripleDES".toUpperCase(Locale.ENGLISH));
  68         validTypes.add("PBEWithHmacSHA1AndAES_128".toUpperCase(Locale.ENGLISH));
  69         validTypes.add("PBEWithHmacSHA224AndAES_128".toUpperCase(Locale.ENGLISH));
  70         validTypes.add("PBEWithHmacSHA256AndAES_128".toUpperCase(Locale.ENGLISH));
  71         validTypes.add("PBEWithHmacSHA384AndAES_128".toUpperCase(Locale.ENGLISH));
  72         validTypes.add("PBEWithHmacSHA512AndAES_128".toUpperCase(Locale.ENGLISH));
  73         validTypes.add("PBEWithHmacSHA1AndAES_256".toUpperCase(Locale.ENGLISH));
  74         validTypes.add("PBEWithHmacSHA224AndAES_256".toUpperCase(Locale.ENGLISH));
  75         validTypes.add("PBEWithHmacSHA256AndAES_256".toUpperCase(Locale.ENGLISH));
  76         validTypes.add("PBEWithHmacSHA384AndAES_256".toUpperCase(Locale.ENGLISH));
  77         validTypes.add("PBEWithHmacSHA512AndAES_256".toUpperCase(Locale.ENGLISH));
  78     }
  79 




  39  * meaning that the password must consist of printable ASCII characters
  40  * (values 32 to 126 decimal inclusive) and only the low order 8 bits
  41  * of each password character are used.
  42  *
  43  * @author Jan Luehe
  44  *
  45  */
  46 abstract class PBEKeyFactory extends SecretKeyFactorySpi {
  47 
  48     private String type;
  49     private static HashSet<String> validTypes;
  50 
  51     /**
  52      * Simple constructor
  53      */
  54     private PBEKeyFactory(String keytype) {
  55         type = keytype;
  56     }
  57 
  58     static {
  59         validTypes = new HashSet<>(17);
  60         validTypes.add("PBEWithMD5AndDES".toUpperCase(Locale.ENGLISH));
  61         validTypes.add("PBEWithSHA1AndDESede".toUpperCase(Locale.ENGLISH));
  62         validTypes.add("PBEWithSHA1AndRC2_40".toUpperCase(Locale.ENGLISH));
  63         validTypes.add("PBEWithSHA1AndRC2_128".toUpperCase(Locale.ENGLISH));
  64         validTypes.add("PBEWithSHA1AndRC4_40".toUpperCase(Locale.ENGLISH));
  65         validTypes.add("PBEWithSHA1AndRC4_128".toUpperCase(Locale.ENGLISH));
  66         // Proprietary algorithm.
  67         validTypes.add("PBEWithMD5AndTripleDES".toUpperCase(Locale.ENGLISH));
  68         validTypes.add("PBEWithHmacSHA1AndAES_128".toUpperCase(Locale.ENGLISH));
  69         validTypes.add("PBEWithHmacSHA224AndAES_128".toUpperCase(Locale.ENGLISH));
  70         validTypes.add("PBEWithHmacSHA256AndAES_128".toUpperCase(Locale.ENGLISH));
  71         validTypes.add("PBEWithHmacSHA384AndAES_128".toUpperCase(Locale.ENGLISH));
  72         validTypes.add("PBEWithHmacSHA512AndAES_128".toUpperCase(Locale.ENGLISH));
  73         validTypes.add("PBEWithHmacSHA1AndAES_256".toUpperCase(Locale.ENGLISH));
  74         validTypes.add("PBEWithHmacSHA224AndAES_256".toUpperCase(Locale.ENGLISH));
  75         validTypes.add("PBEWithHmacSHA256AndAES_256".toUpperCase(Locale.ENGLISH));
  76         validTypes.add("PBEWithHmacSHA384AndAES_256".toUpperCase(Locale.ENGLISH));
  77         validTypes.add("PBEWithHmacSHA512AndAES_256".toUpperCase(Locale.ENGLISH));
  78     }
  79 


< prev index next >