74장. crypto (JCE) 구성 요소
Camel 버전 2.3에서 사용 가능
Camel 암호화 끝점 및 Java의 암호화 확장을 사용하면 교환을 위한 디지털 서명을 쉽게 생성할 수 있습니다. 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>
74.1. 소개
디지털 서명은 메시지에 서명하기 위해 대칭 암호화 기술을 사용합니다. 높은 수준에서 알고리즘은 하나의 키로 암호화된 데이터를 다른 키로만 해독할 수 있는 특수 속성과 함께 무료 키 쌍을 사용합니다. 개인 키인 하나는 다른 공개 키인 동안 메시지를 "서명"하는 데 밀접하게 보호되고 서명 된 메시지를 확인하는 데 관심이 있는 모든 사용자에게 공유됩니다. 메시지는 개인 키를 사용하여 메시지의 다이제스트를 암호화하여 서명합니다. 이 암호화된 다이제스트는 메시지와 함께 전송됩니다. 다른 쪽에서 확인자는 메시지 다이제스트를 다시 계산하고 공개 키를 사용하여 서명에서 다이제스트를 해독합니다. 두 다이제스트가 모두 일치하면 확인자에서 개인 키 소유자만 알고 있으면 서명을 만들 수 있습니다.
Camel은 Java Cryptographic Extension의 서명 서비스를 사용하여 교환 서명을 생성하는 데 필요한 모든 강력한 암호화 리프팅을 수행합니다. 다음은 암호화, 메시지 다이제스트 및 디지털 서명의 메커니즘을 설명하고 JCE와 함께 활용하는 방법을 설명하기 위한 몇 가지 유용한 자료입니다.
- Bruce Schneier의 Applied Cryptography
- David Hook의 Java로 Cryptography 시작하기
- 개인 정보 보호정책