75장. 암호화(Java Cryptographic Extension) DataFormat

Camel 버전 2.3에서 사용 가능

Crypto Data Format은 Java Cryptographic Extension을 Camel에 통합하므로 Camel의 친숙한 marshall 및 unmarshal 형식 메커니즘을 사용하여 메시지의 간단하고 유연한 암호화 및 암호 해독을 수행할 수 있습니다. 마샬링은 cyphertext 및 unmarshalling에 암호화를 의미하여 원래 일반 텍스트로 다시 암호 해독을 의미하는 것으로 가정합니다. 이 데이터 형식은 대칭(공유 키) 암호화 및 decyption만 구현합니다.

75.1. CryptoDataFormat Options

Crypto (Java Cryptographic Extension) 데이터 형식은 아래 나열된 10 가지 옵션을 지원합니다.

이름기본값Java Type설명

algorithm

DES/CBC/PKCS5Padding

문자열

사용할 암호화 알고리즘을 나타내는 JCE 알고리즘 이름입니다. 기본적으로 DES/CBC/PKCS5Padding입니다.

cryptoProvider

 

문자열

사용할 JCE 보안 공급자의 이름입니다.

keyRef

 

문자열

사용할 레지스터에서 조회할 시크릿 키를 나타냅니다.

initVectorRef

 

문자열

Cipher를 초기화하는 데 사용할 Initialization 벡터가 포함된 바이트 배열을 나타냅니다.Represents a byte array containing the Initialization Vector that will be used to initialize the Cipher.

algorithmParameterRef

 

문자열

Cipher를 초기화하는 데 사용되는 JCE AlgorithmParameterSpec입니다. 은 지정된 이름을 java.security.spec.AlgorithmParameterSpec 유형으로 사용하여 유형을 조회합니다.

bufferSize

 

정수

서명 프로세스에서 사용되는 버퍼의 크기입니다.

macAlgorithm

HmacSHA1

문자열

Message Authentication 알고리즘을 나타내는 JCE 알고리즘입니다.

shouldAppendHMAC

false

부울

메시지 인증 코드를 계산하고 암호화된 데이터에 추가해야 함을 나타내는 플래그입니다.

inline

false

부울

구성된 IV가 암호화된 데이터 스트림으로 인라인화되어야 함을 나타내는 플래그입니다. 기본값은 false입니다.

contentTypeHeader

false

부울

데이터 형식이 데이터 형식에서 수행할 수 있는 경우 데이터 형식의 유형으로 Content-Type 헤더를 설정해야 하는지 여부입니다. 예를 들어 데이터 형식을 XML로 마샬링하거나, JSon으로 마샬링되는 데이터 형식에 대한 application/json 등이 있습니다.