私は、.NET Core (現時点での最新バージョンは 1.1.) と C# (実際には Omnisharp) を使用して、SOAP Web サービスとのクライアント側通信に取り組んでいます。要求は、RSA-SHA1 署名方法を使用してエンベロープ署名でデジタル署名する必要があり、最終的に次のような構造になります。
<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>
私が見つけたすべてのドキュメントは、.NET Core では利用できない SignedXml クラスの使用を参照しています。SignedXml クラスを使用せずにこの署名 (および必要な正規化) を作成する方法を共有するための提案やリンクはありますか? または、私が認識していない SignedXml の非公式バージョンがあるのでしょうか?