問題タブ [xml-signature]
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.
java - XMLSignatureから証明書チェーン(ルートおよび中間体)を取得する方法
こんにちは私はxmldsigw3c勧告に準拠するxmlからorg.apache.xml.security.signature.XMLSignatureを構築しましたが、xmlにはすべての証明書チェーンが含まれていることがわかります。
要素ですが、XMLSignature APIを使用すると、ユーザー証明書と発行者証明書にのみアクセスでき、完全なチェーンにはアクセスできないことがわかります。xmlsecAPIを使用してこれを行う簡単な方法はありますか?
java - JSR-105署名出力の参照
私は W3C ウィジェット仕様に取り組んでいます。JSR-105 の機能について質問があります。
XMLObject の参照方法を教えてください。
newXXX
これらのメソッドでXML部分を作ることができると思いましたXMLSignatureFactory
. Reference
しかし、このオブジェクトを作成する方法がわかりませんでした。インスタンスNodeSetData
用のを作成する方法が見つからなかったからです。XMLObject
私の現在の解決策は...
- 要素とその子
org.w3c.dom.Document
を含む を作成します。Object
- そして、aは要素の a を
URIDereferencer
返します。NodeSetData
これが最善の方法ですか?好ましい方法はありますか?
xml - 包括的正規化による XML デジタル署名
XML デジタル署名のルーチンを実装しようとしていますが、署名する情報のハッシュを正しく計算できます。ただし、署名する実際の文字列を作成できないため、署名自体に問題があります。
今私はこれを持っています:
CRLF の代わりに CR のみを使用します。インデント用のスペースなし (投稿のタグ間にスペースがある場合は、CR があります)
有効な署名を計算するための提案はありますか?
PD Canonicalization Algorithm を EXCLUSIVE に変更しましたが、動作しますが、要件は INCLUSIVE を使用することです。
よろしくお願いします。
xml - XMLDSIG DigestMethod 要素の内容は何ですか?
XMLDSIG-CORE 仕様では、リファレンスの DigestMethod 要素が定義されています。DigestMethod は、参照ドキュメントに適用して DigestValue を取得するアルゴリズムを指定します。
私が得られないのは、この DigestMethod がそのコンテンツに対してこれを持っている理由です (XML スキーマ内):
このコンテンツのポイントは何ですか? また、受け取った場合、どのように解釈すればよいですか?
c# - XMLドキュメント(xmldsig)に署名し、署名された要素に署名を追加し(!)、有効なままにする方法(C#はOK、Javaは不可)
XML ドキュメントに署名し、署名されている同じ要素に XML 署名を追加する必要があります。C# バリデーターは独自の結果に満足していますが、オンラインの Java バリデーターは失敗を報告しています (https://demo.bloombase.com/demo/spitfire/soa/verify.jsp)。
/msg:Envelope/msg:EnvelopeBody/cus:Message/cus:MessageFooter に署名を挿入し、/msg:Envelope/msg:EnvelopeBody/cus:Message
全体に署名する必要があります (ID 属性を使用して配置)。
これは私のコードです (2 番目の部分は xml ドキュメントを検証し、true - 有効を返します)
Java バリデーターは「無効」と報告します。
私は何かが欠けているに違いありませんが、何か:-/
ヒントをありがとう。
署名されていない xml:
さらに、SignedXmlCustomIds を使用して ID 要素を検索します。
c# - 証明書ストアから X509Certificate を取得し、xml 署名データを生成するにはどうすればよいですか?
証明書ストアから X509Certificate を取得し、.net C# で XML SignatureData を生成するにはどうすればよいですか?
xml - 高度な電子署名に XAdES ではなく CAdES を使用する理由はありますか?
XAdES 指向の電子署名ソフトウェア ソリューションよりも CAdES 指向の電子署名ソフトウェア ソリューションを実装することを好む理由を見つけることができませんでした。
インターネット上には、XAdES のオープン ライブラリや実装事例、サンプルが数多くありますが、それが CAdES よりも XAdES を使用する理由になるとは思えません。
XAdES は XML 指向であり、ソフトウェア開発者は XML 関連のものを好む傾向があるためでしょうか? XAdES よりも CAdES を使用するのが最適なオプションであるというシナリオはありますか?
参考のため:
- CAdES は高度な形式の CMS/PKCS#7 です (タイムスタンプをサポート)
- XAdES は高度な形式の XML-DSig (タイムスタンプをサポート)
java - Java アプリケーションで受け入れられるように WS-Security 証明書を取得する方法
そのため、私はしばらくの間 WS-Security に苦労してきましたが、ゆっくりと進歩しています。まず、私の設定を簡単に説明します。Webサービスエンドポイントを提供するTomcatでJavaアプリケーションを実行しています(Springを使用)。受信メッセージに署名を付けたい。SoapUI でテストしています。そのため、長い闘争の後、受信メッセージの署名をチェックする限りサーバーを取得し、送信メッセージに署名するために SoapUI も取得しました。しかし、サーバーは証明書を拒否し続け、どこで何か間違っているのかわかりません。つまり、テスト要求で間違った証明書情報を送信したり、トラストストアで証明書を正しく維持していなかったりします。リクエストの例を次に示します。
これで、トラストストア (base64 でエンコードされたバージョンの証明書) から証明書をエクスポートしたときに取得した内容と同じ内容になりました。リクエストを送信したときに表示されるエラーは次のとおりです。
何か不足していますか?何か大きい?それとも小さい?これは、実際に KeyIdentifier として送信することになっているものですか? どんな助けでも大歓迎です!
java - オープンソースXPathFilter2.0の実装
XPath Filter 2.0のオープンソース実装、できればJavaでの実装を知っている人はいますか?しかし、他の言語でも問題ありません。標準はそれほど新しいものではないので、何かが存在するはずですが、何も見つかりません...
本当に適切なものがない場合、誰かがそれを実装したことがあり、標準的な手段(DOMモデルとXPath)でそこに到達するのがどれほど難しいかを教えてくれますか?大まかな見積もりですが、2人でフルタイムで作業するのは、数日ではなく数週間でしょうか。
java - org.dom4j.Documentからorg.w3c.dom.DocumentおよびXML署名への変換に関する問題
すでにDOM4Jを使用してXMLファイルを読み取り、データにゲッターメソッドを提供しているクラスがいくつかあります。ここで、XMLデジタル署名をチェックする可能性を追加する必要があります。
org.w3c.domを使用し、http://java.sun.com/developer/technicalArticles/xml/dig_signature_api/に従うと、 すべてが正しく機能します。
そのため、DOMWriterを使用してorg.dom4j.Documentからorg.w3c.dom.Documentに変換しようとしましたが、その後、署名の検証が機能しません。DOMWiterがXMLツリーを変更しているために発生すると思います(doc4.asXML()が表示されているようです)。
ドキュメントの整合性を維持するために設定するものを見つけようとしますが、DOMWriterにはそのようなメソッドがありません。
以下は、非対称変換を示すコードです。
テストに使用されるファイルはhttp://www.robertodiasduarte.com.br/files/nfe/131090007910044_v1.10-procNFe.xmlです。
誰かがこれの理由/回避策を知っていますか?
ありがとう(そして私の貧弱な英語をごめんなさい)。
たとえば、元のXMLが次で始まる場合:
doc4.asXML()はこれを返します: