これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、MAC OS オンライン エミュレーターなど、複数の無料オンライン ワークステーションのいずれかを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド dcmsign です。
プログラム:
NAME
dcmsign - DICOM ファイルの署名と検証
SYNOPSIS
dcmsign [オプション] dcmfile-in [dcmfile-out]
DESCRIPTION
当学校区の dcmsign ユーティリティは、DICOM ファイル (dcmfile-in)、デジタル署名を実行します
変更が行われた場合は、DICOM オブジェクトを出力に書き込みます。
ファイル(dcmfile-out).
次の XNUMX つのデジタル署名操作がサポートされています。
· DICOM ファイル内のすべての署名の検証
· メイン データセットにある新しいデジタル署名の作成、
· シーケンス内に埋め込まれたアイテム内の新しいデジタル署名の作成
データセット、
· DICOM ファイルからの単一のデジタル署名の削除、および
· DICOM ファイルからのすべてのデジタル署名の削除。
パラメーター
dcmfile-in 処理する DICOM 入力ファイル名
dcmfile-outDICOM出力ファイル名
OPTIONS
一般的な オプション
-h --ヘルプ
このヘルプテキストを印刷して終了します
- バージョン
バージョン情報を印刷して終了します
-引数
拡張されたコマンドライン引数を出力する
-q -- 静かに
クワイエットモード、警告やエラーを出力しない
-v --verbose
詳細モード、印刷処理の詳細
-d --デバッグ
デバッグモード、デバッグ情報の出力
-ll --log-level [l] evel:文字列定数
(致命的、エラー、警告、情報、デバッグ、トレース)
ロガーにはレベルlを使用します
-lc --log-config [f] ilename:文字列
ロガーには設定ファイルfを使用します
オプション
入力ファイル形式:
+ f --read-file
ファイル形式またはデータセットの読み取り(デフォルト)
+ fo--read-file-only
読み取りファイル形式のみ
-f --read-dataset
ファイルメタ情報なしでデータセットを読み取る
入力転送構文:
-t = --read-xfer-auto
TS認識を使用(デフォルト)
-td--read-xfer-detect
ファイルメタヘッダーで指定されたTSを無視します
-te --read-xfer-little
明示的なVRリトルエンディアンTSで読む
-tb --read-xfer-big
明示的なVRビッグエンディアンTSで読む
-ti--read-xfer-implicit
暗黙のVRリトルエンディアンTSで読む
署名 コマンド
- 確認
すべての署名を検証する (デフォルト)
+s --sign [p]秘密鍵ファイル、[c]証明書ファイル: 文字列
メイン オブジェクトに署名を作成する
+si --sign-item [k]eyfile、[c]ertfile、[i]項目の場所: 文字列
一連の署名アイテムを作成する
+r -- [s]signature UID を削除: 文字列
署名を削除
+ra --すべて削除
データセットからすべての署名を削除
署名 創造 オプション (のみ - サイン or --署名項目):
秘密鍵のパスワード:
+ ps --std-passwd
stdinにパスワードを入力するようにユーザーに促します(デフォルト)
+ pw --use-passwd [p] assword:文字列
指定されたパスワードを使用する
-pw --null-passwd
パスワードとして空の文字列を使用する
キーと証明書のファイル形式:
-pem --pem-キー
キー/証明書を PEM ファイルとして読み取る (デフォルト)
-der --der-keys
キー/証明書を DER ファイルとして読み取る
デジタル署名プロファイル:
-pf --profile-なし
署名プロファイルを強制しない (デフォルト)
+pb --プロファイルベース
ベース RSA 署名プロファイルを強制する
+pc --プロフィール作成者
作成者 RSA 署名プロファイルを強制する
+pa --プロファイル認証
承認署名プロファイルを強制する
MAC アルゴリズム:
+mr --mac-ripemd160
RIPEMD 160 を使用 (デフォルト)
+ms --mac-sha1
SHA-1 を使用
+mm --mac-md5
MD5を使用
タグの選択:
-t --タグ
[t]ag: "gggg,eeee" または辞書名
指定されたタグのみに署名する
(このオプションは複数指定できます)
-tf --tag-file [f] ファイル名: 文字列
テキストファイルからタグのリストを読み取る
署名形式:
-fn --format-new
正しい DICOM 署名形式を使用する (デフォルト)
-fo --古いフォーマット
古い (3.5.4 より前の) DCMTK 署名形式を使用し、準拠していない
署名に圧縮されたピクセル データが含まれている場合
出力 オプション
出力転送構文:
+ t =-write-xfer-同じ
入力と同じTSで書き込む(デフォルト)
+ te --write-xfer-little
明示的なVRリトルエンディアンTSで書く
+ tb --write-xfer-big
明示的なVRビッグエンディアンTSで書く
+ ti--write-xfer-implicit
暗黙のVRリトルエンディアンTSで書く
シーケンスとアイテムの長さのエンコード:
+ e --length-explicit
明示的な長さで書き込む(デフォルト)
-e--length-未定義
未定義の長さで書き込む
その他の出力オプション:
+d --dump [f]ファイル名: 文字列
MACコーデックに供給されたバイトストリームをファイルにダンプする
(--sign または --sign-item のみ)
注意事項
技術パラメータ
当学校区の dcmsign ユーティリティは、いくつかのファイルとファイル形式を読み書きします。
このセクションで説明します。
公開鍵証明書は、PEM または DER エンコーディングを使用した X.509v3 形式である必要があります。
dcmsign ユーティリティは現在、RSA および DSA 公開キーをサポートしていますが、RSA キーのみがサポートされています。
DICOM 標準のセキュリティ プロファイルで定義されています。
秘密鍵は、PEM または DER エンコーディングであることが期待されます。 PEM が推奨されます (そしてデフォルト)。
これにより、秘密鍵を暗号化された形式で保持できます。 コマンド ライン オプションは、
の行動 dcmsign 暗号化された PEM キーが開かれたとき (上記を参照)。 一般的にはそうではありません
コマンドラインで暗号化パスワードを指定することをお勧めします。
この行は、システム内の他のプロセス (「ps -ef」など) から見える場合があります。
署名するデータ要素のリストは、ファイルから読み取るか、
コマンド ラインまたはその両方 (この場合、キーは結合されます)。
コマンド ラインでは、属性キーは次のように指定されます。
--tag "gggg,eeee" gggg と eeee は XNUMX 進数のグループです
と要素番号
--tag "Name" ここで、'Name' はシンボリック属性名です。
DICOM ディクショナリ (以下を参照)。
属性タグがファイルから読み取られるとき --タグファイル オプション、プレーンテキストファイル
最大64kバイトが予想されます。 ファイル内のタグは、データからの記号名のいずれかです
辞書または (gggg,eeee) の形式 (中かっこ付き) です。 タグは XNUMX つ以上で区切られています
空白文字。
当学校区の --署名項目 操作には、どのシーケンス項目で記述されている位置文字列が必要です
署名が作成されます。 ロケーション文字列の形式は次のとおりです。
シーケンス名[インデックス].シーケンス名[インデックス].シーケンス名[インデックス](...)
ここで、SequenceName は、データ ディクショナリからのシンボリック属性名または
(gggg,eeee) 形式の数値タグであり、index は符号なし XNUMX 進整数です。
シーケンス内の最初のアイテムのゼロから始まるアイテム番号。 例として、
次の場所の文字列
ReferencedSeriesSequence[0].ReferencedImageSequence[1]
の XNUMX 番目の項目でデジタル署名が作成されます。
の最初の項目にある ReferencedImageSequence (0008,1140)
メインの DICOM データセットにある ReferencedSeriesSequence (0008,1115)。
ロギング
さまざまなコマンドラインツールと基盤となるライブラリのログ出力のレベルは、
ユーザーが指定します。 デフォルトでは、エラーと警告のみが標準に書き込まれます
エラーストリーム。 オプションの使用 -詳細 処理の詳細などの情報メッセージもあります
報告されています。 オプション - デバッグ 内部アクティビティの詳細を取得するために使用できます。
たとえば、デバッグの目的で。 オプションを使用して、他のログレベルを選択できます - ログ-
レベル。 に - 静かな モードのみの致命的なエラーが報告されます。 このような非常に重大なエラーイベントでは、
通常、アプリケーションは終了します。 さまざまなログレベルの詳細については、
モジュール 'oflog'のドキュメントを参照してください。
ロギング出力をファイルに書き込む必要がある場合(オプションでログファイルローテーションを使用)、
syslog(Unix)またはイベントログ(Windows)オプションへ --log-config に使える。 この
構成ファイルでは、特定のメッセージのみを特定の出力に送信することもできます
ストリームおよびモジュールまたはアプリケーションに基づいて特定のメッセージをフィルタリングするため
が生成されます。 構成ファイルの例は、に提供されています。 /logger.cfg.
COMMAND LINE
すべてのコマンドラインツールは、パラメータに次の表記を使用します。角かっこで囲みます
オプションの値(0-1)、末尾のXNUMXつのドットは、複数の値が許可されていることを示します
(1-n)、両方の組み合わせは0からnの値を意味します。
コマンドラインオプションは、先頭の「+」または「-」記号によってパラメータと区別されます。
それぞれ。 通常、コマンドラインオプションの順序と位置は任意です(つまり、
どこにでも表示できます)。 ただし、オプションが相互に排他的である場合、右端の外観
使用されている。 この動作は、一般的なUnixシェルの標準的な評価ルールに準拠しています。
さらに、XNUMXつ以上のコマンドファイルは、接頭辞として「@」記号を使用して指定できます。
ファイル名(例: @ command.txt)。 このようなコマンド引数は、次の内容に置き換えられます。
対応するテキストファイル(複数の空白は、次の場合を除いて単一の区切り文字として扱われます)
さらに評価する前に、XNUMXつの引用符の間に表示されます)。 その点に注意してください
コマンドファイルに別のコマンドファイルを含めることはできません。 このシンプルだが効果的なアプローチ
オプション/パラメータの一般的な組み合わせを要約することができ、長くなり、
紛らわしいコマンドライン(例はファイルで提供されています /dumppat.txt).
ENVIRONMENT
当学校区の dcmsign ユーティリティは、で指定されたDICOMデータディクショナリを読み込もうとします。
DCMDICTPATH 環境変数。 デフォルトでは、つまり DCMDICTPATH 環境変数
設定されていない、ファイル /dicom.dic 辞書が作成されない限りロードされます
アプリケーションに(Windowsのデフォルト)。
デフォルトの動作が優先され、 DCMDICTPATH 環境変数のみ
代替データディクショナリが必要な場合に使用されます。 NS DCMDICTPATH 環境変数
Unixシェルと同じ形式です パス コロン( ':')で区切る変数
エントリ。 Windowsシステムでは、セミコロン( ';')が区切り文字として使用されます。 データディクショナリ
コードは、で指定された各ファイルをロードしようとします DCMDICTPATH 環境変数。 それ
データディクショナリをロードできない場合はエラーです。
COPYRIGHT
Copyright(C)2000-2014 by OFFIS eV、Escherweg 2、26121 Oldenburg、Germany。
onworks.net サービスを使用してオンラインで dcmsign を使用する
