Ich arbeite an einer Client-seitigen Kommunikation mit einem SOAP-Web-Service mit .NET Core (neueste Version im Moment 1.1.) Und C# (eigentlich Omnisharp). Anfragen sollten digital mit einem umhüllten Signatur signiert werden, RSA-SHA1 Signaturverfahren verwendet wird, enden mit Struktur wie folgt aus:Xml Digitale Signatur mit C# .NET Core 1.1
<soap:Envelope>
<soap:Body>
<MyRootElement>
<MyData>
...
</MyData>
<Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
<SignedInfo>
<CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
<SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
<Reference URI="#G0xcabf5080-4D">
<Transforms>
<Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
<Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
</Transforms>
<DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
<DigestValue>4j9JKFMvg6Mmfx7ERu8R3WkZTtQ=</DigestValue>
</Reference>
</SignedInfo>
<SignatureValue>....</SignatureValue>
<KeyInfo>
<X509Data>
<X509Certificate>....</X509Certificate>
<X509IssuerSerial>
<X509IssuerName>...</X509IssuerName>
<X509SerialNumber>72672627</X509SerialNumber>
</X509IssuerSerial>
</X509Data>
</KeyInfo>
</Signature>
</MyRootElement>
</soap:Body>
</soap:Envelope>
Die gesamte Dokumentation finde ich konnte beziehen sich auf die Verwendung SignedXml Klasse, die nicht in .NET ist Ader. Hat jemand Vorschlag oder Link zu teilen, wie kann ich diese Signatur (und erforderlichen Kanonisierung) ohne SignedXml-Klasse machen? Oder gibt es vielleicht eine inoffizielle Version von SignedXml, die mir nicht bekannt ist?