code: public static SecretKey generateKey(String algorithm, byte[] key) {
  		Assert.notBlank(algorithm, "Algorithm is blank!");
  		SecretKey secretKey = null;
  		if (algorithm.startsWith("PBE")) {
  			// PBE密钥
  			secretKey = generatePBEKey(algorithm, (null == key) ? null : StrUtil.str(key, CharsetUtil.CHARSET_UTF_8).toCharArray());
  		} else if (algorithm.startsWith("DES")) {
  			// DES密钥
  			secretKey = generateDESKey(algorithm, key);
  		} else {
  			// 其它算法密钥
  			secretKey = (null == key) ? generateKey(algorithm) : new SecretKeySpec(key, algorithm);
  		}
  		return secretKey;
  	}
docs: 生成 {@link SecretKey}，仅用于对称加密和摘要算法密钥生成
  
  @param algorithm 算法
  @param key 密钥，如果为{@code null} 自动生成随机密钥
  @return {@link SecretKey}