< prev index next >

src/solaris/doc/sun/man/man1/ja/jarsigner.1

Print this page
rev 1493 : 7182226: NLS: jdk7u6 message drop20 integration
Reviewed-by: yhuang


   3 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4 .\"
   5 .\" This code is free software; you can redistribute it and/or modify it
   6 .\" under the terms of the GNU General Public License version 2 only, as
   7 .\" published by the Free Software Foundation.
   8 .\"
   9 .\" This code is distributed in the hope that it will be useful, but WITHOUT
  10 .\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11 .\" FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  12 .\" version 2 for more details (a copy is included in the LICENSE file that
  13 .\" accompanied this code).
  14 .\"
  15 .\" You should have received a copy of the GNU General Public License version
  16 .\" 2 along with this work; if not, write to the Free Software Foundation,
  17 .\" Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  18 .\"
  19 .\" Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  20 .\" or visit www.oracle.com if you need additional information or have any
  21 .\" questions.
  22 .\" ` 
  23 .TH jarsigner 1 "2006 年 9 月 4 日" "Java SE 6" "ユーザーコマンド"
  24 .SH "名前"
  25 jarsigner \- JAR 署名および検証ツール
  26 .LP
  27 .RS 3
  28 
  29 .LP
  30 .LP
  31 Java ARchive (JAR) ファイルの署名を生成し、署名付き JAR ファイルの署名を検証します。
  32 .LP
  33 .RE
  34 .SH "形式"
  35 .B jarsigner 
  36 [ 
  37 .BI options
  38 ]  
  39 jar-file alias
  40 .br
  41 .B jarsigner
  42 .BI \-verify
  43 [


 334 .LP
 335 キーストアには、Sun が提供する組み込みのデフォルトの実装があります。これは、
 336 JKS という名前の独自のキーストアタイプ (形式) を利用するもので、キーストアを
 337 ファイルとして実装しています。この実装では、個々の非公開鍵は個別のパスワード
 338 によって保護され、キーストア全体の完全性も (非公開鍵とは別の) パスワードに
 339 よって保護されます。
 340 .LP
 341 
 342 キーストアの実装は、プロバイダベースです。具体的には、
 343 .I KeyStore
 344 クラスが提供するアプリケーションインタフェースは、Service Provider Interface (SPI) 
 345 という形で実装されています。つまり、対応する 
 346 .I KeystoreSpi
 347 抽象クラス (これも 
 348 .I java.security
 349 パッケージに含まれている) があり、このクラスが Service Provider Interface の
 350 メソッドを定義しています。これらのメソッドは、「プロバイダ」が実装しなければなりま
 351 せん。ここで、「プロバイダ」とは、Java Security API によってアクセス可能なサービス
 352 のサブセットに対し、その固定実装を提供するパッケージまたはパッケージの集合の
 353 ことです。したがって、キーストアの実装を提供するには、「Java 暗号化アーキテク
 354 チャ用プロバイダの実装方法」(http://java.sun.com/javase/6/docs/technotes/guides/security/HowToImplAProvider.html) のページで説明しているように、クライアントがプロバイダを実装し、
 355 .I KeystoreSpi 
 356 サブクラスの実装を提供する必要があります。
 357 .LP
 358 アプリケーションでは、
 359 .I KeyStore
 360 クラスが提供する 
 361 .B getInstance
 362 ファクトリメソッドを使うことで、さまざまなプロバイダから異なる「タイプ」のキーストアの
 363 実装を選択できます。キーストアのタイプは、キーストア情報の格納形式とデータ形式、
 364 およびキーストア内の非公開鍵とキーストア自体の完全性を保護するために使われる
 365 アルゴリズムを定義します。異なるタイプのキーストアの実装には、互いに互換性は
 366 ありません。keytool、jarsigner、および policytool の各ツールは、
 367 .B KeyStore
 368 が提供する共通のアプリケーションインタフェースだけを使っているので、任意の
 369 タイプのキーストアで使用できます。
 370 .LP
 371 .B keytool 
 372 は、ファイルベースのキーストア実装に対して機能します。
 373 .B keytool 
 374 は、コマンド行で渡されたキーストアの位置をファイル名として扱い、


 436 .LP
 437 .LP
 438 デフォルトのキーストアタイプは jks (Sun が提供する独自のタイプのキーストアの
 439 実装) です。これは、セキュリティプロパティファイル内の次の行によって指定されて
 440 います。
 441 .LP
 442 .RS 5
 443 .B keystore.type=jks
 444 .RE
 445 .LP
 446 注: キーストアタイプの指定では、大文字と小文字は区別されません。たとえば、「JKS」と「jks」は同じものとみなされます。
 447 .LP
 448 各ツールでデフォルト以外のキーストアの実装を使用するには、上の行を変更して
 449 別のキーストアのタイプを指定します。
 450 たとえば、pkcs12 と呼ばれるタイプのキーストアの実装を提供している
 451 プロバイダパッケージを使用するには、上の行を次のように変更します。
 452 .LP
 453 .B keystore.type=pkcs12
 454 .LP
 455 PKCS#11 プロバイダパッケージを使用する場合、その詳細については、「Java PKCS#11 Reference Guide」(
 456 http://java.sun.com/javase/6/docs/technotes/guides/security/p11guide.html#keytooljarsigner)
 457 にある
 458 「\f2KeyTool and JarSigner\fP」節を参照してください。
 459 .LP
 460 .SS 
 461 サポートされるアルゴリズム
 462 .LP
 463 .IX "jarsigner" "Supported Algorithms and Key Sizes" "\fLjarsigner\fP \(em JAR signing and verification tool "
 464 .LP
 465 デフォルトでは、
 466 .B jarsigner
 467 は次のどちらかのアルゴリズムを使って JAR ファイルに署名します。
 468 .TP 2
 469 \(bu
 470 SHA-1 ダイジェストアルゴリズムを使った DSA (デジタル署名アルゴリズム)
 471 .TP 2
 472 \(bu
 473 MD5 ダイジェストアルゴリズムを使った RSA アルゴリズム
 474 .LP
 475 具体的には、署名者の公開鍵と非公開鍵が DSA 鍵である場合、
 476 .B jarsigner


 865 のファイル名では、小文字はすべて大文字に変換されます。
 866 .LP
 867 コマンド行で 
 868 .I -sigfile 
 869 オプションを指定しなかった場合、
 870 .B .SF 
 871 ファイルと 
 872 .B .DSA
 873 ファイルのベースファイル名は、コマンド行で指定された別名の先頭の 8 文字を
 874 すべて大文字に変換したものになります。別名が 8 文字未満の場合は、別名が
 875 そのまま使われます。別名の中に、署名ファイル名に使用できない文字が含まれている
 876 場合は、該当する文字を下線 (_) に置き換えてファイル名が作成されます。
 877 .TP 3
 878 \-sigalg  algorithm 
 879 .RS 3
 880 
 881 .LP
 882 JAR ファイルの署名に使用する署名アルゴリズムの名前を指定します。 
 883 .LP
 884 標準署名アルゴリズム名の一覧については、「Java Cryptography Architecture」( 
 885 http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/CryptoSpec.html#appa)
 886 にある
 887 「
 888 .I Appendix A
 889 」を参照してください。このアルゴリズムは、JAR ファイルの署名に使用する秘密鍵と互換性のあるものでなければなりません。このオプションを指定しなかった場合、秘密鍵のタイプに応じて SHA1withDSA、MD5withRSA のいずれかが使用されます。指定されたアルゴリズムの実装を提供するプロバイダが静的にインストールされているか、あるいはユーザがそのようなプロバイダを 
 890 .I \-providerClass
 891 オプションを使って指定する必要があります。そうでない場合、コマンドの実行が失敗します。
 892 .LP
 893 .RE
 894 .TP 3
 895 \-digestalg  algorithm 
 896 .RS 3
 897 JAR ファイルのエントリをダイジェストする際に使用するメッセージダイジェストアルゴリズムの名前を指定します。 
 898 .LP
 899 標準メッセージダイジェストアルゴリズム名の一覧については、「Java Cryptography Architecture」(http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/CryptoSpec.html#appa)の
 900 「
 901 .I Appendix A
 902 」を参照してください。このオプションを指定しなかった場合、SHA\-1 が使用されます。指定されたアルゴリズムの実装を提供するプロバイダが静的にインストールされているか、あるいはユーザがそのようなプロバイダを 
 903 .I \-providerClass
 904 オプションを使って指定する必要があります。そうでない場合、コマンドの実行が失敗します。
 905 .RE
 906 .TP
 907 .B -signedjar  file
 908 署名付き JAR ファイルの名前を指定します。
 909 .RS 
 910 .LP
 911 コマンド行で名前を指定しなかった場合は、入力 JAR ファイル (署名の対象となる
 912 JAR ファイル) の名前と同じ名前が使われます。この場合、入力 JAR ファイルは署名
 913 付き JAR ファイルによって上書きされます。
 914 .RE
 915 .TP
 916 .B -verify
 917 コマンド行でこのオプションが指定されている場合は、指定された JAR ファイルが
 918 検証されます。JAR ファイルへの署名は行われません。検証が成功すると、
 919 「jar verified」というメッセージが表示されます。署名されていない JAR ファイル、


1020 .nf
1021 \f3
1022 .fl
1023 jarsigner \-keystore NONE \-storetype PKCS11 \\
1024 .fl
1025           \-providerClass sun.security.pkcs11.SunPKCS11 \\
1026 .fl
1027           \-providerArg /foo/bar/token.config \\
1028 .fl
1029           \-list
1030 .fl
1031 \fP
1032 .fi
1033 .RE
1034 .TP 3
1035 .B \-providerName providerName 
1036 \f2java.security\fP セキュリティプロパティファイル内で 2 つ以上のプロバイダが設定されている場合、\f2\-providerName\fP オプションを使って特定のプロバイダインスタンスを選択できます。このオプションの引数は、プロバイダの名前になります。 
1037 .LP
1038 Sun PKCS#11 プロバイダの場合、\f2providerName\fP は \f2SunPKCS11\-\fP\f2TokenName\fP の形式になります。ここで、\f2TokenName\fP は、プロバイダインスタンスの設定時に使用した名前のサフィックスです。詳細については、
1039 .fi
1040 http://java.sun.com/javase/6/docs/technotes/guides/security/p11guide.html#KeyToolJarSigner#ATTRS
1041 の
1042 .na
1043 「\f2configuration attributes table\fP」を参照してください。たとえば、次のコマンドは、名前サフィックス \f2SmartCard\fP を持つ PKCS#11 キーストアプロバイダインスタンスの内容を一覧表示します。 
1044 .RS 3
1045 
1046 .LP
1047 .nf
1048 \f3
1049 .fl
1050 jarsigner \-keystore NONE \-storetype PKCS11 \\
1051 .fl
1052         \-providerName SunPKCS11\-SmartCard \\
1053 .fl
1054         \-list
1055 .fl
1056 \fP
1057 .fi
1058 .RE
1059 .TP
1060 .B \-Jjavaoption




   3 .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4 .\"
   5 .\" This code is free software; you can redistribute it and/or modify it
   6 .\" under the terms of the GNU General Public License version 2 only, as
   7 .\" published by the Free Software Foundation.
   8 .\"
   9 .\" This code is distributed in the hope that it will be useful, but WITHOUT
  10 .\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11 .\" FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  12 .\" version 2 for more details (a copy is included in the LICENSE file that
  13 .\" accompanied this code).
  14 .\"
  15 .\" You should have received a copy of the GNU General Public License version
  16 .\" 2 along with this work; if not, write to the Free Software Foundation,
  17 .\" Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  18 .\"
  19 .\" Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  20 .\" or visit www.oracle.com if you need additional information or have any
  21 .\" questions.
  22 .\" ` 
  23 .TH jarsigner 1 "05 Jul 2012"
  24 .SH "名前"
  25 jarsigner \- JAR 署名および検証ツール
  26 .LP
  27 .RS 3
  28 
  29 .LP
  30 .LP
  31 Java ARchive (JAR) ファイルの署名を生成し、署名付き JAR ファイルの署名を検証します。
  32 .LP
  33 .RE
  34 .SH "形式"
  35 .B jarsigner 
  36 [ 
  37 .BI options
  38 ]  
  39 jar-file alias
  40 .br
  41 .B jarsigner
  42 .BI \-verify
  43 [


 334 .LP
 335 キーストアには、Sun が提供する組み込みのデフォルトの実装があります。これは、
 336 JKS という名前の独自のキーストアタイプ (形式) を利用するもので、キーストアを
 337 ファイルとして実装しています。この実装では、個々の非公開鍵は個別のパスワード
 338 によって保護され、キーストア全体の完全性も (非公開鍵とは別の) パスワードに
 339 よって保護されます。
 340 .LP
 341 
 342 キーストアの実装は、プロバイダベースです。具体的には、
 343 .I KeyStore
 344 クラスが提供するアプリケーションインタフェースは、Service Provider Interface (SPI) 
 345 という形で実装されています。つまり、対応する 
 346 .I KeystoreSpi
 347 抽象クラス (これも 
 348 .I java.security
 349 パッケージに含まれている) があり、このクラスが Service Provider Interface の
 350 メソッドを定義しています。これらのメソッドは、「プロバイダ」が実装しなければなりま
 351 せん。ここで、「プロバイダ」とは、Java Security API によってアクセス可能なサービス
 352 のサブセットに対し、その固定実装を提供するパッケージまたはパッケージの集合の
 353 ことです。したがって、キーストアの実装を提供するには、「Java 暗号化アーキテク
 354 チャ用プロバイダの実装方法」(http://docs.oracle.com/javase/6/docs/technotes/guides/security/crypto/HowToImplAProvider.html) のページで説明しているように、クライアントがプロバイダを実装し、
 355 .I KeystoreSpi 
 356 サブクラスの実装を提供する必要があります。
 357 .LP
 358 アプリケーションでは、
 359 .I KeyStore
 360 クラスが提供する 
 361 .B getInstance
 362 ファクトリメソッドを使うことで、さまざまなプロバイダから異なる「タイプ」のキーストアの
 363 実装を選択できます。キーストアのタイプは、キーストア情報の格納形式とデータ形式、
 364 およびキーストア内の非公開鍵とキーストア自体の完全性を保護するために使われる
 365 アルゴリズムを定義します。異なるタイプのキーストアの実装には、互いに互換性は
 366 ありません。keytool、jarsigner、および policytool の各ツールは、
 367 .B KeyStore
 368 が提供する共通のアプリケーションインタフェースだけを使っているので、任意の
 369 タイプのキーストアで使用できます。
 370 .LP
 371 .B keytool 
 372 は、ファイルベースのキーストア実装に対して機能します。
 373 .B keytool 
 374 は、コマンド行で渡されたキーストアの位置をファイル名として扱い、


 436 .LP
 437 .LP
 438 デフォルトのキーストアタイプは jks (Sun が提供する独自のタイプのキーストアの
 439 実装) です。これは、セキュリティプロパティファイル内の次の行によって指定されて
 440 います。
 441 .LP
 442 .RS 5
 443 .B keystore.type=jks
 444 .RE
 445 .LP
 446 注: キーストアタイプの指定では、大文字と小文字は区別されません。たとえば、「JKS」と「jks」は同じものとみなされます。
 447 .LP
 448 各ツールでデフォルト以外のキーストアの実装を使用するには、上の行を変更して
 449 別のキーストアのタイプを指定します。
 450 たとえば、pkcs12 と呼ばれるタイプのキーストアの実装を提供している
 451 プロバイダパッケージを使用するには、上の行を次のように変更します。
 452 .LP
 453 .B keystore.type=pkcs12
 454 .LP
 455 PKCS#11 プロバイダパッケージを使用する場合、その詳細については、「Java PKCS#11 Reference Guide」(
 456 http://docs.oracle.com/javase/6/docs/technotes/guides/security/p11guide.html#KeyToolJarSigner)
 457 にある
 458 「\f2KeyTool and JarSigner\fP」節を参照してください。
 459 .LP
 460 .SS 
 461 サポートされるアルゴリズム
 462 .LP
 463 .IX "jarsigner" "Supported Algorithms and Key Sizes" "\fLjarsigner\fP \(em JAR signing and verification tool "
 464 .LP
 465 デフォルトでは、
 466 .B jarsigner
 467 は次のどちらかのアルゴリズムを使って JAR ファイルに署名します。
 468 .TP 2
 469 \(bu
 470 SHA-1 ダイジェストアルゴリズムを使った DSA (デジタル署名アルゴリズム)
 471 .TP 2
 472 \(bu
 473 MD5 ダイジェストアルゴリズムを使った RSA アルゴリズム
 474 .LP
 475 具体的には、署名者の公開鍵と非公開鍵が DSA 鍵である場合、
 476 .B jarsigner


 865 のファイル名では、小文字はすべて大文字に変換されます。
 866 .LP
 867 コマンド行で 
 868 .I -sigfile 
 869 オプションを指定しなかった場合、
 870 .B .SF 
 871 ファイルと 
 872 .B .DSA
 873 ファイルのベースファイル名は、コマンド行で指定された別名の先頭の 8 文字を
 874 すべて大文字に変換したものになります。別名が 8 文字未満の場合は、別名が
 875 そのまま使われます。別名の中に、署名ファイル名に使用できない文字が含まれている
 876 場合は、該当する文字を下線 (_) に置き換えてファイル名が作成されます。
 877 .TP 3
 878 \-sigalg  algorithm 
 879 .RS 3
 880 
 881 .LP
 882 JAR ファイルの署名に使用する署名アルゴリズムの名前を指定します。 
 883 .LP
 884 標準署名アルゴリズム名の一覧については、「Java Cryptography Architecture」( 
 885 http://docs.oracle.com/javase/6/docs/technotes/guides/security/crypto/CryptoSpec.html#AppA)
 886 にある
 887 「
 888 .I Appendix A
 889 」を参照してください。このアルゴリズムは、JAR ファイルの署名に使用する秘密鍵と互換性のあるものでなければなりません。このオプションを指定しなかった場合、秘密鍵のタイプに応じて SHA1withDSA、MD5withRSA のいずれかが使用されます。指定されたアルゴリズムの実装を提供するプロバイダが静的にインストールされているか、あるいはユーザがそのようなプロバイダを 
 890 .I \-providerClass
 891 オプションを使って指定する必要があります。そうでない場合、コマンドの実行が失敗します。
 892 .LP
 893 .RE
 894 .TP 3
 895 \-digestalg  algorithm 
 896 .RS 3
 897 JAR ファイルのエントリをダイジェストする際に使用するメッセージダイジェストアルゴリズムの名前を指定します。 
 898 .LP
 899 標準メッセージダイジェストアルゴリズム名の一覧については、「Java Cryptography Architecture」(http://docs.oracle.com/javase/6/docs/technotes/guides/security/crypto/CryptoSpec.html#AppA)の
 900 「
 901 .I Appendix A
 902 」を参照してください。このオプションを指定しなかった場合、SHA\-1 が使用されます。指定されたアルゴリズムの実装を提供するプロバイダが静的にインストールされているか、あるいはユーザがそのようなプロバイダを 
 903 .I \-providerClass
 904 オプションを使って指定する必要があります。そうでない場合、コマンドの実行が失敗します。
 905 .RE
 906 .TP
 907 .B -signedjar  file
 908 署名付き JAR ファイルの名前を指定します。
 909 .RS 
 910 .LP
 911 コマンド行で名前を指定しなかった場合は、入力 JAR ファイル (署名の対象となる
 912 JAR ファイル) の名前と同じ名前が使われます。この場合、入力 JAR ファイルは署名
 913 付き JAR ファイルによって上書きされます。
 914 .RE
 915 .TP
 916 .B -verify
 917 コマンド行でこのオプションが指定されている場合は、指定された JAR ファイルが
 918 検証されます。JAR ファイルへの署名は行われません。検証が成功すると、
 919 「jar verified」というメッセージが表示されます。署名されていない JAR ファイル、


1020 .nf
1021 \f3
1022 .fl
1023 jarsigner \-keystore NONE \-storetype PKCS11 \\
1024 .fl
1025           \-providerClass sun.security.pkcs11.SunPKCS11 \\
1026 .fl
1027           \-providerArg /foo/bar/token.config \\
1028 .fl
1029           \-list
1030 .fl
1031 \fP
1032 .fi
1033 .RE
1034 .TP 3
1035 .B \-providerName providerName 
1036 \f2java.security\fP セキュリティプロパティファイル内で 2 つ以上のプロバイダが設定されている場合、\f2\-providerName\fP オプションを使って特定のプロバイダインスタンスを選択できます。このオプションの引数は、プロバイダの名前になります。 
1037 .LP
1038 Sun PKCS#11 プロバイダの場合、\f2providerName\fP は \f2SunPKCS11\-\fP\f2TokenName\fP の形式になります。ここで、\f2TokenName\fP は、プロバイダインスタンスの設定時に使用した名前のサフィックスです。詳細については、
1039 .fi
1040 http://docs.oracle.com/javase/6/docs/technotes/guides/security/p11guide.html#ATTRS
1041 の
1042 .na
1043 「\f2configuration attributes table\fP」を参照してください。たとえば、次のコマンドは、名前サフィックス \f2SmartCard\fP を持つ PKCS#11 キーストアプロバイダインスタンスの内容を一覧表示します。 
1044 .RS 3
1045 
1046 .LP
1047 .nf
1048 \f3
1049 .fl
1050 jarsigner \-keystore NONE \-storetype PKCS11 \\
1051 .fl
1052         \-providerName SunPKCS11\-SmartCard \\
1053 .fl
1054         \-list
1055 .fl
1056 \fP
1057 .fi
1058 .RE
1059 .TP
1060 .B \-Jjavaoption


< prev index next >