Jasypt使用特定算法获得了EncryptionOperationNotPossibleException

时间:2018-08-13 07:57:56

标签: spring jasypt

我正在使用本地计算机中的算法PBEWithHmacSHA256AndAES_256测试Jasypt。 我可以确认已经安装了“ jce Java 8的无限强度”,但是不理解为什么在测试解密时会出现此异常。

测试代码非常简单,如下所示:

public static void main(String[] args){
        String[] baidu = new String[]{"1300078342","9e7fc7d47c89799231378c12ed81733e4363b8ae","1300159341","31b7cfda225880f11520c8b6e2baf599db29f48c"};
        encrypt(baidu);
    }

    public static void encrypt(String[] plainTexts) {
        String key = "ePPSZxzxKSa8zZlkfzTYVQ==";

        for(String plainText: plainTexts){
            StandardPBEStringEncryptor encryptor = new StandardPBEStringEncryptor();
            encryptor.setPassword(key);                    
            encryptor.setAlgorithm("PBEWithHmacSHA256AndAES_256");

            String encryptedText = encryptor.encrypt(plainText);
            System.out.println("\nencryptedText ---> " + encryptedText);
            String decyptedText = encryptor.decrypt(encryptedText);
            System.out.println(decyptedText);
        }
    }

但是,如果尝试使用另一种算法,例如“ PBEWITHMD5ANDDES”或“ PBEWITHMD5ANDTripleDES”,则加密和解密都可以正常工作。

任何人都可以给些提示吗?谢谢。

0 个答案:

没有答案