73장. crypto (JCE) 구성 요소

Camel 버전 2.3에서 사용 가능

Camel 암호화 끝점과 Java의 Cryptographic extension을 사용하면 Exchange용 디지털 서명을 쉽게 만들 수 있습니다. Camel은 교환 워크플로의 한 부분에서 교환용 서명을 만든 다음 워크플로의 뒷부분에서 서명을 확인하는 데 사용할 수 있는 유연한 엔드포인트 쌍을 제공합니다.

Maven 사용자는 이 구성 요소를 위해 다음 종속성을 pom.xml 에 추가해야 합니다.

<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-crypto</artifactId>
    <version>x.x.x</version>
    <!-- use the same version as your Camel core version -->
</dependency>

73.1. 소개

디지털 서명은 Asymmetric Cryptographic 기술을 사용하여 메시지에 서명합니다. (very) 높은 수준에서 알고리즘은 하나의 키로 암호화된 데이터를 다른 키로만 해독할 수 있는 특수 속성과 함께 무료 키 쌍을 사용합니다. 하나는 개인 키가 밀접하게 보호되고 다른 공개 키는 서명된 메시지를 확인하는 데 관심이 있는 모든 사용자에게 메시지 서명'에 사용됩니다. 메시지는 개인 키를 사용하여 메시지의 다이제스트를 암호화하여 서명합니다. 이 암호화된 다이제스트는 메시지와 함께 전송됩니다. 다른 측면에서 확인자는 메시지 다이제스트를 다시 계산하고 공개 키를 사용하여 서명에서 다이제스트를 해독합니다. 두 다이제스트가 모두 일치하면 확인기에서 개인 키의 소유자만 알고 있으면 서명을 만들 수 있습니다.

Camel은 Java Cryptographic Extension의 서명 서비스를 사용하여 교환 서명을 생성하는 데 필요한 많은 암호화 상승을 수행합니다. 다음은 Cryptography, 메시지 다이제스트 및 디지털 서명의 메커니즘을 설명하고 JCE와 함께 활용하는 방법을 설명하는 훌륭한 리소스입니다.

  • Bruce Schneier의 Applied Cryptography
  • David Hook에서 Java로 암호화하기
  • 신뢰할 수 있는 Wikipedia Digital_signatures