- PR -

ローカルのXMLに署名する方法

1
投稿者投稿内容
oki
ベテラン
会議室デビュー日: 2004/12/18
投稿数: 55
投稿日時: 2006-06-13 16:09
お世話になります。

下記のサイトを参考にXML署名に挑戦しています。
http://jx-study.net/DsigF/Dsig001.html

Detached署名でローカルにあるXMLに署名を行いたいのですが
Reference要素のURIの指定方法が分からず悩んでいます。

相対パスやfile://などを試してみたのですが
javax.xml.crypto.URIReferenceExceptionが発生します。

Detached署名はローカルファイルシステムにあるXMLには
署名することができないのでしょうか?

それとも、URIの指定方法が間違っているのでしょうか?

XML署名に詳しい方おられましたら、ご教授ください。

よろしくお願い致します。
スフレ
ぬし
会議室デビュー日: 2005/05/27
投稿数: 281
お住まい・勤務地: 東京
投稿日時: 2006-06-13 16:24
file:// の URI で動いてもいいと思うんですけどね。

独自の URIDereferencer を実装して、それを DOMSignContext に setURIDereferencer() でセットしてあげれば上手くいくかもしれません。その場合、署名を検証する場合にも独自 URIDereferencer が必要になるかと思います。
oki
ベテラン
会議室デビュー日: 2004/12/18
投稿数: 55
投稿日時: 2006-06-14 10:05
ご返信ありがとうございます。

自己レスです。

ResolverDirectHTTPでbaseURIのNullチェックが
行われていないのが原因のようでした。(バグ?)

DOMSignContextのsetBaseURIメソッドに
BaseURIを設定することで署名することができました。

ありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)