Wie eine XML digitale Signatur in Cocoa überprüfen?
-
05-10-2019 - |
Frage
habe ich eine C # .NET-Anwendung, dass Verwendungen digitale XML-Signaturen Lizenzdateien zu unterzeichnen. Ich habe die Standard-Microsoft-Ansatz verwendet beschrieben hier .
Ich bin die Portierung der Anwendung auf die MAC und müssen die Signatur verifizieren. Meine allgemeine Frage ist, wie dies am besten zu tun?
Dies ist, was ich getan habe:
-
Ich habe MacPort verwendet Alekseys xmlsec1 Bibliothek zu installieren.
-
die Chilkat Bibliothek verwendet, um meine XML öffentlichen Schlüssel in eine PEM-Datei zu konvertieren
Chilkat.PublicKey pubkey = new Chilkat.PublicKey (); pubKey.LoadXml (publicKeyXml); pubKey.SaveOpenSslPemFile ( "publicKey.pem");
-
Zusammengestellt und lief das alekseys Beispielprogramm. Siehe ( http://www.aleksey.com/xmlsec/ api / xmlsec-verify-with-key.html ) ein XML-dsig zu überprüfen.
Ergebnis: meine Lizenzdateien nicht zu bestätigen. Der Aufruf von xmlSecDSigCtxVerify nicht mit dem Status = unbekannt. Jetzt für meine konkrete Frage: Was kann ich als nächstes tun
?Geoff
Lösung
Die Lösung wurde unter definieren:
\#define XMLSEC_NO_SIZE_T
, bevor einer der xmlsec Header-Dateien enthält. Andernfalls wird der Typ xmlSecSize definiert wird anders, wenn das Programm auf dem Mac und die xmlSecDSigCtx Struktur gebaut wurde, wird in die Bibliothek beschädigt angezeigt. Siehe xmlsec.h für weitere Details.