- import java.security.Key;
- import javax.crypto.Cipher;
- import javax.crypto.SecretKeyFactory;
- import javax.crypto.spec.DESedeKeySpec;
- import com.sun.org.apache.xerces.internal.impl.dv.util.Base64;
- /**
- * 加密解密工具
- */
- public class DesEncrypt {
- private Key key;
- private static final String KEY_ALGORITHM = "DESede";
- private static final String CIPHER_ALGORITHM = "DESede/ECB/PKCS5Padding";
- /**
- * 默认构造函数
- */
- public DesEncrypt() {
- }
- /**
- * 构造函数,初始化Key
- * @param keyStore
- */
- public DesEncrypt(String keyStore) {
- this.toKey(keyStore);
- }
- /**
- * 初始化Key对象
- * @param keyText
- * @return
- */
- public void toKey(String keyText) {
- DESedeKeySpec dks;
- SecretKeyFactory factory =null;
- if(check(keyText)){
- try {
- dks = new DESedeKeySpec(keyText.getBytes());
- factory= SecretKeyFactory.getInstance(KEY_ALGORITHM);
- this.key = factory.generateSecret(dks);
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- }
- /**
- *
- * @param 密钥keyText
- * @return 校验密钥格式是否通过
- */
- public boolean check(String keyText){
- boolean flag = false ;
- if(keyText!=null&&!"".equals(keyText.trim())){
- if(keyText.trim().length()>=24){
- flag = true ;
- }
- }
- return flag ;
- }
用java实现3des加密
最新推荐文章于 2023-06-27 15:45:46 发布