問題タブ [xml-dsig]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - XML 署名 - PHP で異なる署名値?
PHP で XML デジタル署名を実装したいと考えています。この検証者で署名の正確性をテストしています。
間違った署名値を取得しているので、何をしているのかを順を追って説明し、間違っていることを修正してください。
署名したい XML (改行なし) :
まず、XML を正規化してから、正しいダイジェスト値を生成する sha256 を使用してハッシュします。
次に、SignedInfo XML 要素の作成と正規化(改行なし) :
最後に、RSA-SHA256 を使用した SignedInfo 要素の署名。これは、誤った結果をもたらす部分です。
署名は、次のコード行を使用して計算されます。
しかし、検証者が述べたように、誤った署名値が生成されます。同じ秘密鍵を使用して C# で同じ XML に署名すると、正しい署名が得られます。それで、私は何を間違っていますか?私は何が欠けていますか?明らかに、私は間違ったものに署名していますが、何に署名すればよいでしょうか? 署名する前に SignedInfo 要素をハッシュする必要がありますか?
これは私の最終結果です(これは正しくありません):
そして、これは正しい結果です(署名値を除いてすべて同じです):
両方の結果をテストしたり、詳細を確認したりするには、ここにコピーして[署名の検証] をクリックしてください。
c# - C# .NET Core 1.1 を使用した Xml デジタル署名
私は、.NET Core (現時点での最新バージョンは 1.1.) と C# (実際には Omnisharp) を使用して、SOAP Web サービスとのクライアント側通信に取り組んでいます。要求は、RSA-SHA1 署名方法を使用してエンベロープ署名でデジタル署名する必要があり、最終的に次のような構造になります。
私が見つけたすべてのドキュメントは、.NET Core では利用できない SignedXml クラスの使用を参照しています。SignedXml クラスを使用せずにこの署名 (および必要な正規化) を作成する方法を共有するための提案やリンクはありますか? または、私が認識していない SignedXml の非公式バージョンがあるのでしょうか?
ruby - XMLドキュメントをsginingするためのモジュラスと指数を生成する方法は?
XML 文書に署名したい。署名(ruby)を生成するために次のことを行っています。
以下の signature.xml と出力を参照してください。
signature.xml
output.xml
ただし、 XML ペイロードの上に投稿すると、サードパーティ サービスはSIGNATURE MISMATCHINGを返します。問題は、Modulus と Exponent が output.xml にないためだと思います。
私の質問は、モジュラスと指数を生成する方法ですか?