- 追加された行はこの色です。
- 削除された行はこの色です。
- DSS へ行く。
* DSS: OASIS Digital Signature Service [#DSS]
OASIS DSS-TC
&br; http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=dss
* スケジュール [#s825ef20]
** [[部会ミーティング/2006]] [#ld81957b]
- 第2回(2006.08.25) 検討開始
- 第3回(2006.09.28) シナリオ検討開始
- 第4回(2006.10.25) DSSプロファイル調査報告
* 実現方針 [#s8af274c]
まず、最低限の機能に絞って実装する。
** 実現機能 [#i69f05fe]
- 提供サービス
-- 署名サービス
-- 検証サービス
まず、署名サービスを実現する。
通常の環境であれば、検証はローカルで行なえるはず。
署名サービスの結果を利用して、検証サービスの動作確認を行なう。
- 署名対象
-- ドキュメント
--- InlineXML
--- Base64XML
--- EscapedXML
--- Base64Data
-- ハッシュ値
XMLの場合、C14Nに関する問題が発生するかも。
Base64Dataまたはハッシュ値の方が確実、且つ検証も容易だが、面白みに欠ける。
単一署名対象のみ指定可能とする。
- 署名形式
-- XML-DSig
-- CMS (ASN.1)
XML-DSigのみを扱う。
CMSは未対応で構わない。
- 署名オプション
タイムスタンプ付き署名は実現したい。
KeyInfoを引き渡し
- タイムスタンプ形式
-- RFC3161 (ASN.1)
-- 独自のXML Timestamp Token (XML-TSP)
- メッセージバインディング
-- HTTP POST
-- SOAP
-- TLS
HTTP POSTで行なう。
-
* シナリオ [#ae960aea]
** アプリケーションシナリオ [#b73ab092]
** デモシナリオ [#mb12c4bc]
- クライアントとしてWebブラウザを用いる
- 何だかよく判らないXMLデータではなく、ユーザからみて判り易い結果が欲しい。
* 実装手段 [#ne3bcd74]
** プラットフォーム言語 [#i74b61c8]
- Java 5.0
** Java/XMLバインディング [#q1d6278b]
- JAXB 2.0
&br; https://jaxb.dev.java.net/
-- SAMLなどの別スキーマで定義されているエレメントも同じpackageに取り込まれてしまう。
--- 手作業で分離する?
packageを指定しなければschema URIに応じたパッケージが自動作成される。
-- 全てのエレメントがJavaクラスにマッピングされるわけではない。
-- PoJoクラスとして作成されるので、汎用性は高そう。
- Apache XMLBeans 2.2.0
&br; http://xml.apache.org/xmlbeans/
-- 未確認
-- JSR準拠という点ではJAXBを使ったほうがよさそう?
- 自分でつくる。
-- marshallはともかく、unmarshallが面倒。
** API [#ob5667b9]
クライアント側で利用するためのAPIは必要。
** 問題点 [#s324575d]
クライアントの信憑性をどうやって確認するのか?