Metody weryfikacji podpisu przy użyciu interfejsu API WSSVerification

Informacje o podpisywaniu lub podpisywaniu można zweryfikować przy użyciu interfejsu API WSS dla powiązania konsumenta. Metody algorytmów podpisu i kanonicalizacji są używane dla powiązania generatora. Interfejs API WSSVerification jest udostępniany w pakiecie com.ibm.websphere.wssecurity.wssapi.verification.

Aby skonfigurować informacje o podpisywaniu konsumenta w celu ochrony integralności komunikatów, należy najpierw podpisać cyfrowo, a następnie zweryfikować podpis dla komunikatów SOAP. Integralność odnosi się do podpisu cyfrowego, podczas gdy poufność odnosi się do szyfrowania. Integralność zmniejsza ryzyko modyfikacji danych podczas przesyłania danych w sieci.

Metody

Metody używane do weryfikacji podpisu obejmują:
Metoda podpisu
Służy do ustawiania metody algorytmu podpisywania.
Metoda normalizacji
Ustawia metodę algorytmu kanonicalizacji.

Algorytm określony dla konfiguracji generatora żądań musi być zgodny z algorytmem określonym dla konfiguracji konsumenta odpowiedzi.

Algorytmy podpisu

Algorytmy podpisu określają algorytm weryfikacji podpisu, który jest używany do podpisywania certyfikatu. Algorytmy podpisu określają identyfikatory URI (Uniform Resource Identifier) metody weryfikacji podpisu. Serwer WebSphere® Application Server obsługuje następujące wstępnie skonfigurowane algorytmy:

Tabela 1. Algorytmy weryfikacji podpisu . Algorytmy obejmują metody podpisywania.
Algorytm Opis
WSSVerification.HMAC_SHA1 Identyfikator URI algorytmu podpisywania, HMAC: http://www.w3.org/2000/09/xmldsig#hmac-sha1
WSSVerification.RSA_SHA1 (wartość domyślna) Identyfikator URI algorytmu podpisywania, RSA: http://www.w3.org/2000/09/xmldsig#rsa-sha1

Serwer WebSphere Application Server nie obsługuje algorytmu dla DSA-SHA1: http://www.w3.org/2000/09/xmldsig#dsa-sha1

Algorytmy normalizacji

Algorytmy normalizacji określają identyfikatory URI (Uniform Resource Identifier) metody kanonicalizacji. Serwer WebSphere Application Server obsługuje następujące wstępnie skonfigurowane algorytmy:

Tabela 2. Algorytmy normalizacji weryfikacji . Algorytmy obejmują metody normalizacji.
Algorytm Opis
WSSVerification.C14N Identyfikator URI algorytmu inkluzymacji inkluzymowej, C14N: http://www.w3.org/2001/10/xml-c14n#
WSSVerification.EXC_C14N (wartość domyślna) Identyfikator URI wyłącznego algorytmu normalizacji EXC_C14N: http://www.w3.org/2001/10/xml-exc-c14n#

W poniższym przykładzie przedstawiono przykładowy kod interfejsu API WSS, który określa znacznik zabezpieczeń znacznika X.509 na potrzeby weryfikacji podpisu:

WSSFactory factory = WSSFactory.getInstance();
WSSConsumingContext concont = factory.newWSSConsumingContext();

// X509ConsumeCallbackHandler
X509ConsumeCallbackHandler callbackHandler = new 
   X509ConsumeCallbackHandler("dsig-receiver.ks",
                              "jks",
                              "server".toCharArray(),
                              certList,
   java.security.Security.getProvider("IBMCertPath")46 );

// Set the verification component
// DEFAULT verification parts: Body, WS-Addressing header, and Timestamp
// DEFAULT data encryption algorithm: RSA-SHA1  
// DEFAULT digest algorithm: SHA1  
// DEFAULT canonicalization algorithm: exc-c14n  
WSSVerification ver = factory.newWSSVerification(X509Token.class,
                                                 callbackhandler);
concont.add(ver);

// Validate the WS-Security header
concont.validate(msgctx);