Как я могу зашифровать тело, используя apache Camel CryptoDataFormat, когда у меня есть собственный строковый ключ и алгоритм «AES / CBC / PKCS5Padding» - PullRequest
0 голосов
/ 29 марта 2019

Я использую Apache Camel CryptoDataFormat для шифрования тела, у меня есть собственный ключ шифрования для него, который является алгоритмом String и Using «AES / CBC / PKCS5Padding». Я получаю неправильное шифрование, и ни одно из них не расшифровано должным образом.

Мой код выглядит следующим образом:

pom.xml

    <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-crypto</artifactId>
        <version>2.23.1</version>
    </dependency>


camel route:
@Override
       public void configure() throws Exception {

     SecretKeySpec keySpec = new SecretKeySpec(Base64.getDecoder().decode("ABCKEY123"), "AES");

        CryptoDataFormat cryptoFormat = new CryptoDataFormat("AES/CBC/PKCS5Padding", keySpec);    

from("{{direct:ABC}}")
        .process(someprocessor)
        .marshal(xmlDataFormat)
        .log("MARSHALLED message: ${body}")
        .marshal(cryptoFormat)
        .log("Encrypted data: ${body}")
        .unmarshal(cryptoFormat)
        .log("Decrypted data: ${body}").end();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...