디지털 서명 및 UDDI 레지스트리
UDDI 버전 3에서 공개자는 공개 중인 동안 디지털로 UDDI 요소를 서명할 수 있습니다. UDDI 버전 3 스키마는 businessEntity, businessServices, bindingTemplate, tModel 및 publisherAssertion 요소의 서명을 지원합니다.
디지털로 서명된 UDDI 요소를 유효성 검증하여 수정되거나 변조되지 않았고 무결성이 그대로임을 증명할 수 있습니다.
UDDI 항목 서명 및 서명 확인에 대한 전체 세부사항은 UDDI 버전 3.0.2 스펙에서 부록 I: XML 디지털 서명 지원을 참조하십시오.
서명된 요소가 공개되면 UDDI 레지스트리는 서명의 유효성을 검증하지 않습니다. 서명 있는 요소가 검색되면, 클라이언트 검색은 서명 유효성 검증 및 메커니즘 제공을 담당하여 서명자 인증이 클라이언트가 승인하고 신뢰하는 인증 기관에서 서명되었는지 확인합니다. 서명이 서명자 공개 키를 사용하여 성공적으로 복호화되면, 해당 개인 키의 소유자만이 이 요소를 서명하고 공개할 수 있음을 표시합니다.
서명 생성
요소의 속성은 요소 서명의 생성에 포함됩니다. 그러므로, 모든 엔티티 키는 서명 생성 시 사용 가능해야 합니다. 공개자는 서명 전 요소의 모든 키에 대해 공개자 지정 키를 생성할 수 있습니다. 또는, 공개자가 키 없는 요소를 공개하는 경우 레지스트리 노드는 필요한 엔티티 키를 생성한 다음 서명된 요소를 검색, 서명 및 재공개합니다.
서명 유효성 검증
유효성 검증할 서명 요소는 getXXDetails 메소드에 대한 호출이 리턴하는 최상위 레벨 요소에 있습니다. 클라이언트는 유효성 검증을 담당합니다. 클라이언트는 이전에 공개자의 X509.3 인증을 가져와서 신뢰하는 CA를 기반으로 하는 인증의 유효성을 검증했어야 합니다. 이런 방식으로, 클라이언트는 공개자가 공개 전 엔티티를 서명하는 데 사용한 개인 서명 키에 해당하는 공개자의 공용 유효성 검증 키에 대한 액세스 권한이 있습니다.
UDDI 버전 3 클라이언트를 사용하여 JAX-RPC(Java™ API for XML-based RPC) 오브젝트를 구성하고 UDDI 버전 3 웹 서비스를 호출할 수 있습니다. 이 클라이언트의 일부로, 헬퍼 클래스, com.ibm.uddi.v3.client.apilayer.xmldig.SignatureUtilities를 사용하여, 지원하는 UDDI 버전 3 엔티티에서 디지털 서명을 작성하고 유효성을 검증할 수 있습니다. 이 헬퍼 클래스의 API(Application Programming Interface) 및 SignatureUtilitiesException 예외의 세부사항은 API 정보를 참조하십시오.
UDDI의 경우, 디지털 서명은 데이터를 서명하는 데 사용됩니다. SOAP 메시지를 인증하는 데 사용되지 않습니다.