Signing Soap / Xml Messages

0

Quando firmi un messaggio SOAP con una chiave privata, come fa il server a conoscere la tua chiave pubblica per verificarlo?

Mi sto connettendo a un'istanza di Datapower che si trova di fronte al nostro effettivo servizio web Java. Continuo a ricevere la firma di errori non validi dal server, quindi mi induce a credere che abbia qualcosa a che fare con le chiavi non sincronizzate.

    
posta Charlie Brown 16.02.2016 - 21:37
fonte

2 risposte

1

When you sign a SOAP message with a private key, how does the server know your public key in order to verify it?

Ha la chiave pubblica. Questa è l'idea con la coppia di chiavi. Mantieni quello privato (che mostra che sei veramente tu) e la chiave pubblica che dai a tutti quelli che ne hanno bisogno (in questo caso qualcuno deve installarlo sul server).

I keep getting signature not valid errors from the server, so it leads me to believe it has something to do with keys not being in sync.

Non necessariamente. SOAP significa che XML e XML sono complicati quando si tratta di firme digitali. Poiché lo stesso documento XML può avere strutture fisiche diverse, è necessario innanzitutto un modulo canonico . Sta firmando e controllando la firma eseguita con un framework o manualmente? Se lo fai manualmente, devi prima avere una forma canonica per i messaggi, altrimenti anche una sola differenza tra CR e CRLF nella terminazione di riga può darti un hash diverso.

    
risposta data 20.12.2016 - 21:10
fonte
1

Se stai parlando delle firme di sicurezza WS, credo che il certificato sia passato insieme al tuo messaggio. La firma verrà verificata rispetto a quella presumendo che abbia fiducia nel certificato.

WS-Security è un grande dolore. Se stai ottenendo la firma non valida, la mia ipotesi è che ci sia qualcosa di sbagliato nel modo in cui è stato firmato. Quando sono stato coinvolto per l'ultima volta in questo, abbiamo avuto problemi con lo spazio bianco nell'XML. Quello che ricordo è che il digest è stato generato dal messaggio rientrato, ma ciò che effettivamente inviato è stato formattato in modo diverso e quindi non è stato possibile verificarlo. Gli spazi bianchi sono significativi nelle firme XML. Il mio consiglio è di rimuovere qualsiasi spazio bianco non di contenuto (tabulazioni, spazi, newline, ecc.) Dall'XML prima di fare qualsiasi altra cosa.

    
risposta data 19.01.2017 - 22:13
fonte

Leggi altre domande sui tag