blob: be95a97a7e40277e042e8116c69594c4b1f01b05 [file] [log] [blame]
'\" t
.\"
.\" Copyright 2000-2006 Sun Microsystems, Inc. All Rights Reserved.
.\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
.\"
.\" This code is free software; you can redistribute it and/or modify it
.\" under the terms of the GNU General Public License version 2 only, as
.\" published by the Free Software Foundation.
.\"
.\" This code is distributed in the hope that it will be useful, but WITHOUT
.\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
.\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
.\" version 2 for more details (a copy is included in the LICENSE file that
.\" accompanied this code).
.\"
.\" You should have received a copy of the GNU General Public License version
.\" 2 along with this work; if not, write to the Free Software Foundation,
.\" Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
.\"
.\" Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
.\" CA 95054 USA or visit www.sun.com if you need additional information or
.\" have any questions.
.\"
.\"
.TH jarsigner 1 "2006 ǯ 9 ·î 4 Æü" "Java SE 6" "¥æ¡¼¥¶¡¼¥³¥Þ¥ó¥É"
.SH "̾Á°"
jarsigner \- JAR ½ð̾¤ª¤è¤Ó¸¡¾Ú¥Ä¡¼¥ë
.LP
.RS 3
.LP
.LP
Java ARchive (JAR) ¥Õ¥¡¥¤¥ë¤Î½ð̾¤òÀ¸À®¤·¡¢½ð̾ÉÕ¤­ JAR ¥Õ¥¡¥¤¥ë¤Î½ð̾¤ò¸¡¾Ú¤·¤Þ¤¹¡£
.LP
.RE
.SH "·Á¼°"
.B jarsigner
[
.BI options
]
jar-file alias
.br
.B jarsigner
.BI \-verify
[
.BI options
]
jar-file
.SH "ÀâÌÀ"
.IX "JAR signing and verification tool " "" "JAR signing and verification tool \(em \fLjarsigner\fP"
.IX "jarsigner" "" "\fLjarsigner\fP \(em JAR signing and verification tool "
.B jarsigner
¥Ä¡¼¥ë¤Ï¡¢¼¡¤Î 2 ¤Ä¤ÎÌÜŪ¤Ç»ÈÍѤ·¤Þ¤¹¡£
.TP 5
1.
Java ARchive (JAR) ¥Õ¥¡¥¤¥ë¤Ë½ð̾¤òÉÕ¤±¤ë
.TP 5
2.
½ð̾ÉÕ¤­ JAR ¥Õ¥¡¥¤¥ë¤Î½ð̾¤È´°Á´À­¤ò¸¡¾Ú¤¹¤ë
.LP
JAR µ¡Ç½¤ò»È¤¦¤È¡¢¥¯¥é¥¹¥Õ¥¡¥¤¥ë¡¢¥¤¥á¡¼¥¸¡¢¥µ¥¦¥ó¥É¡¢¤ª¤è¤Ó¤½¤Î¾¤Î¥Ç¥¸¥¿¥ë¥Ç¡¼¥¿
¤òñ°ì¤Î¥Õ¥¡¥¤¥ë¤Ë¥Ñ¥Ã¥±¡¼¥¸²½¤Ç¤­¤ë¤Î¤Ç¡¢¥Õ¥¡¥¤¥ë¤ò¿×®¤«¤ÄÍưפËÇÛÉۤǤ­¤Þ¤¹¡£
³«È¯¼Ô¤Ï¡¢
.B jar
¤È¤¤¤¦Ì¾Á°¤Î¥Ä¡¼¥ë¤ò»È¤Ã¤Æ JAR ¥Õ¥¡¥¤¥ë¤òºîÀ®¤Ç¤­¤Þ¤¹¡£µ»½ÑŪ¤Ê´ÑÅÀ¤«¤é¸À¤¨¤Ð¡¢
¤¹¤Ù¤Æ¤Î ZIP ¥Õ¥¡¥¤¥ë¤â JAR ¥Õ¥¡¥¤¥ë¤È¤ß¤Ê¤¹¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
.LP
¡Ö¥Ç¥¸¥¿¥ë½ð̾¡×¤Ï¡¢¤Ê¤ó¤é¤«¤Î¥Ç¡¼¥¿ (¡Ö½ð̾¡×¤ÎÂоݤȤʤë¥Ç¡¼¥¿) ¤È¡¢¥¨¥ó¥Æ¥£¥Æ¥£
(¿Í¡¢²ñ¼Ò¤Ê¤É) ¤ÎÈó¸ø³«¸°¤È¤Ë´ð¤Å¤¤¤Æ·×»»¤µ¤ì¤ë¥Ó¥Ã¥ÈÎó¤Ç¤¹¡£¼ê½ñ¤­¤Î½ð̾ƱÍÍ¡¢
¥Ç¥¸¥¿¥ë½ð̾¤Ë¤Ï¿¤¯¤ÎÍøÅÀ¤¬¤¢¤ê¤Þ¤¹¡£
.TP 2
\(bu
½ð̾¤ÎÀ¸À®¤Ë»È¤ï¤ì¤¿Èó¸ø³«¸°¤ÈÂФˤʤë¸ø³«¸°¤ò»È¤Ã¤Æ·×»»¤ò¹Ô¤¦¤³¤È¤Ç¡¢
¥Ç¥¸¥¿¥ë½ð̾¤¬ËÜʪ¤«¤É¤¦¤«¤ò¸¡¾Ú¤Ç¤­¤ë
.TP 2
\(bu
Èó¸ø³«¸°¤¬Â¾¿Í¤ËÃΤé¤ì¤Ê¤¤¸Â¤ê¡¢¥Ç¥¸¥¿¥ë½ð̾¤Îµ¶Â¤¤ÏÉÔ²Äǽ¤Ç¤¢¤ë
.TP 2
\(bu
¥Ç¥¸¥¿¥ë½ð̾¤Ï¡¢¤½¤Î½ð̾¤¬ÉÕ¤¤¤¿¥Ç¡¼¥¿¤À¤±¤òÂоݤȤ¹¤ë¤â¤Î¤Ç¤¢¤ê¡¢¤Û¤«¤Î¥Ç¡¼¥¿¤Î
½ð̾¤È¤·¤Æµ¡Ç½¤¹¤ë¤³¤È¤Ï¤Ê¤¤
.TP 2
\(bu
½ð̾ÉÕ¤­¤Î¥Ç¡¼¥¿¤ÏÊѹ¹¤Ç¤­¤Ê¤¤¡£¥Ç¡¼¥¿¤¬Êѹ¹¤µ¤ì¤¿¾ì¹ç¤Ï¡¢¤½¤Î½ð̾¤Ë¤è¤Ã¤Æ¥Ç¡¼¥¿
¤¬ËÜʪ¤Ç¤Ï¤Ê¤¤¤³¤È¤¬¸¡¾Ú¤µ¤ì¤ë
.LP
¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ¥¨¥ó¥Æ¥£¥Æ¥£¤Î½ð̾¤òÀ¸À®¤¹¤ë¤Ë¤Ï¡¢¤Þ¤º¡¢¤½¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤¬¸ø³«¸°¤È
Èó¸ø³«¸°¤Î¥Ú¥¢¤ò»ý¤ÄɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤Þ¤¿¡¢¸ø³«¸°¤òǧ¾Ú¤¹¤ë 1 ¤Ä°Ê¾å¤Î¾ÚÌÀ½ñ¤â
ɬÍפǤ¹¡£¡Ö¾ÚÌÀ½ñ¡×¤È¤Ï¡¢¤¢¤ë¥¨¥ó¥Æ¥£¥Æ¥£¤«¤é¤Î¥Ç¥¸¥¿¥ë½ð̾ÉÕ¤­¤Îʸ½ñ¤Î¤³¤È¤Ç¤¹¡£
¾ÚÌÀ½ñ¤Ë¤Ï¡¢¤Û¤«¤Î¤¢¤ë¥¨¥ó¥Æ¥£¥Æ¥£¤Î¸ø³«¸°¤¬ÆÃÊ̤ÊÃͤò»ý¤Ã¤Æ¤¤¤ë¤³¤È¤¬½ñ¤«¤ì¤Æ
¤¤¤Þ¤¹¡£
.LP
.B jarsigner
¤Ï¡¢¡Ö¥­¡¼¥¹¥È¥¢¡×¤Ë´Þ¤Þ¤ì¤ë¸°¤È¾ÚÌÀ½ñ¾ðÊó¤ò»È¤Ã¤Æ¡¢JAR ¥Õ¥¡¥¤¥ë¤Î¥Ç¥¸¥¿¥ë½ð̾¤ò
À¸À®¤·¤Þ¤¹¡£¥­¡¼¥¹¥È¥¢¤Ï¡¢Èó¸ø³«¸°¤È¡¢Èó¸ø³«¸°¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤¿ X.509 ¾ÚÌÀÏ¢º¿¤¬
¼ý¤á¤é¤ì¤¿¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ç¤¹¡£¾ÚÌÀÏ¢º¿¤Ï¡¢Èó¸ø³«¸°¤ËÂбþ¤¹¤ë¸ø³«¸°¤òǧ¾Ú¤·¤Þ¤¹¡£
¥­¡¼¥¹¥È¥¢¤ÎºîÀ®¤È´ÉÍý¤Ë¤Ï¡¢
.B keytool
¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤ò»È¤¤¤Þ¤¹¡£
.LP
.B jarsigner
¤Ï¡¢¥¨¥ó¥Æ¥£¥Æ¥£¤ÎÈó¸ø³«¸°¤ò»È¤Ã¤Æ½ð̾¤òÀ¸À®¤·¤Þ¤¹¡£½ð̾ÉÕ¤­ JAR ¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢
¥­¡¼¥¹¥È¥¢¤«¤é¤Î¾ÚÌÀ½ñ¤Î¥³¥Ô¡¼¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¤³¤ì¤Ï¡¢JAR ¥Õ¥¡¥¤¥ë¤Î½ð̾¤Ë»È¤ï
¤ì¤¿Èó¸ø³«¸°¤ËÂбþ¤¹¤ë¸ø³«¸°¤Î¾ÚÌÀ½ñ¤Î¥³¥Ô¡¼¤Ç¤¹¡£
.B jarsigner
¤Ï¡¢½ð̾ÉÕ¤­ JAR ¥Õ¥¡¥¤¥ë¤Î¥Ç¥¸¥¿¥ë½ð̾¤ò¡¢¥Õ¥¡¥¤¥ëÆâ (¤Î½ð̾¥Ö¥í¥Ã¥¯¥Õ¥¡¥¤¥ë) ¤Ë´Þ
¤Þ¤ì¤Æ¤¤¤ë¾ÚÌÀ½ñ¤ò»È¤Ã¤Æ¸¡¾Ú¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
.LP
J2SE 5.0 °Ê¹ß¤Î \f3jarsigner\fP ¤Ï¡¢¥¿¥¤¥à¥¹¥¿¥ó¥×¤ò´Þ¤à½ð̾¤òÀ¸À®¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤·¤¿¡£¤³¤Î¤¿¤á¡¢¥·¥¹¥Æ¥à/¥Ç¥×¥í¥¤¥ä (Java Plug\-in ¤Ê¤É) ¤Ï¡¢½ð̾ÉÕ¤­¤Î¾ÚÌÀ½ñ¤¬¤Þ¤ÀÍ­¸ú¤Ç¤¢¤ë´ü´ÖÃæ¤Ë JAR ¥Õ¥¡¥¤¥ë¤Î½ð̾¤¬¹Ô¤ï¤ì¤¿¤«¤É¤¦¤«¤ò³Îǧ¤Ç¤­¤Þ¤¹¡£¤µ¤é¤Ë¡¢¤½¤Î¥¿¥¤¥à¥¹¥¿¥ó¥×¾ðÊó¤ò¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤¬¼èÆÀ¤¹¤ë¤¿¤á¤Î API ¤¬¡¢J2SE 5.0 ¤ÇÄɲ䵤ì¤Þ¤·¤¿¡£
.LP
¸½»þÅÀ¤Ç¤Ï¡¢
.B jarsigner
¤Ç½ð̾¤Ç¤­¤ë¤Î¤Ï¡¢JDK ¤Î
.B jar
¥Ä¡¼¥ë¤ÇºîÀ®¤µ¤ì¤¿ JAR ¥Õ¥¡¥¤¥ë¡¢¤Þ¤¿¤Ï ZIP ¥Õ¥¡¥¤¥ë¤À¤±¤Ç¤¹¡£JAR ¥Õ¥¡¥¤¥ë¤Ï ZIP ¥Õ¥¡¥¤¥ë¤ÈƱ¤¸¤Ç¤¹¤¬¡¢JAR ¥Õ¥¡¥¤¥ë¤Ë¤Ï
.B META-INF/MANIFEST.MF
¥Õ¥¡¥¤¥ë¤¬´Þ¤Þ¤ì¤Æ¤¤¤ëÅÀ¤¬°Û¤Ê¤ê¤Þ¤¹¡£
.B META-INF/MANIFEST.MF
¥Õ¥¡¥¤¥ë¤Ï¡¢
.B jarsigner
¤¬ ZIP ¥Õ¥¡¥¤¥ë¤Ë½ð̾¤òÉÕ¤±¤ë¤È¤­¤Ë¼«Æ°Åª¤ËºîÀ®¤µ¤ì¤Þ¤¹¡£
.LP
¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢
.B jarsigner
¤Ï JAR ¥Õ¥¡¥¤¥ë¤Ë¡Ö½ð̾¡×¤òÉÕ¤±¤Þ¤¹¡£
½ð̾ÉÕ¤­ JAR ¥Õ¥¡¥¤¥ë¤ò¡Ö¸¡¾Ú¡×¤¹¤ë¾ì¹ç¤Ï¡¢
.I -verify
¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Þ¤¹¡£
.SS
JDK 1.1 ¤È¤Î¸ß´¹À­
.LP
.IX "jarsigner" "Compatibility with JDK 1.1" "\fLjarsigner\fP \(em JAR signing and verification tool "
.B keytool
¥Ä¡¼¥ë¤È
.B jarsigner
¥Ä¡¼¥ë¤Ï¡¢JDK 1.1 ¤ÇÄ󶡤µ¤ì¤Æ¤¤¤¿
.B javakey
¥Ä¡¼¥ë¤ò´°Á´¤ËÃÖ¤­´¹¤¨¤ë¤â¤Î¤Ç¤¹¡£¤³¤ì¤é¤Î¿·¤·¤¤¥Ä¡¼¥ë¤Ï
.B javakey
¤è¤ê¤â¿¤¯¤Îµ¡Ç½¤òÈ÷¤¨¤Æ¤ª¤ê¡¢¥­¡¼¥¹¥È¥¢¤ÈÈó¸ø³«¸°¤ò¥Ñ¥¹¥ï¡¼¥É¤ÇÊݸ¤ëµ¡Ç½¤ä¡¢
½ð̾¤ÎÀ¸À®¤À¤±¤Ç¤Ê¤¯½ð̾¤ò¸¡¾Ú¤¹¤ëµ¡Ç½¤ò»ý¤Ã¤Æ¤¤¤Þ¤¹¡£
.LP
¿·¤·¤¤¥­¡¼¥¹¥È¥¢¥¢¡¼¥­¥Æ¥¯¥Á¥ã¤Ï¡¢
.B javakey
¤¬ºîÀ®¤·¤Æ´ÉÍý¤·¤Æ¤¤¤¿¥¢¥¤¥Ç¥ó¥Æ¥£¥Æ¥£¥Ç¡¼¥¿¥Ù¡¼¥¹¤ËÂå¤ï¤ë¤â¤Î¤Ç¤¹¡£¥­¡¼¥¹¥È¥¢·Á¼°¤È¡¢JDK 1.1 ¤Î
.B javakey
¤¬»È¤Ã¤Æ¤¤¤¿¥Ç¡¼¥¿¥Ù¡¼¥¹·Á¼°¤È¤Î´Ö¤Ë¤Ï²¼°Ì¸ß´¹À­¤Ï¤¢¤ê¤Þ¤»¤ó¡£¤¿¤À¤·¡¢¼¡¤Î¤è¤¦¤Ê
¤³¤È¤Ï²Äǽ¤Ç¤¹¡£
.TP 2
\(bu
.B keytool
¤Î
.I -identitydb
¥³¥Þ¥ó¥É¤ò»È¤¦¤È¡¢¥¢¥¤¥Ç¥ó¥Æ¥£¥Æ¥£¥Ç¡¼¥¿¥Ù¡¼¥¹¤Î¾ðÊó¤ò¥­¡¼¥¹¥È¥¢¤Ë¥¤¥ó¥Ý¡¼¥È¤Ç¤­¤Þ¤¹¡£
.TP 2
\(bu
.B jarsigner
¤Ï¡¢°ÊÁ°¤Ë
.B javakey
¤ò»È¤Ã¤Æ½ð̾¤µ¤ì¤¿ JAR ¥Õ¥¡¥¤¥ë¤Ë½ð̾¤òÉÕ¤±¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
.TP 2
\(bu
.B jarsigner
¤Ï¡¢
.B javakey
¤ò»È¤Ã¤Æ½ð̾¤µ¤ì¤¿ JAR ¥Õ¥¡¥¤¥ë¤ò¸¡¾Ú¤Ç¤­¤Þ¤¹¡£¤·¤¿¤¬¤Ã¤Æ¡¢
.B jarsigner
¤Ï¡¢JDK 1.2 ¤Î¥­¡¼¥¹¥È¥¢¤Ç¤Ï¤Ê¤¯ JDK 1.1 ¤Î¥¢¥¤¥Ç¥ó¥Æ¥£¥Æ¥£¥Ç¡¼¥¿¥Ù¡¼¥¹¤«¤é¤Î½ð̾¼ÔÊÌ
̾¤òǧ¼±¤·¡¢¤³¤ì¤é¤òÂоݤ˽èÍý¤ò¹Ô¤¦¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
.LP
¼¡¤Îɽ¤Ï¡¢JDK 1.1.x ¤Ç½ð̾¤µ¤ì¤¿ JAR ¥Õ¥¡¥¤¥ë¤¬¡¢Java 2 ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¤É¤Î¤è¤¦¤Ë°·¤ï¤ì¤ë¤«¤ò
¼¨¤·¤Æ¤¤¤Þ¤¹¡£
.LP
.nf
.ft 3
1.1 ¥Ç¡¼¥¿
1.1 ¥Ç¡¼¥¿ ¥Ù¡¼¥¹¤«¤é ¥Ý¥ê¥·¡¼
JAR ¥Ù¡¼¥¹Æâ¤Î 1.2 ¥­¡¼¥¹ ¥Õ¥¡¥¤¥ë
¥Õ¥¡¥¤¥ë ¥¢¥¤¥Ç¥ó ¥È¥¢¤Ë¥¤¥ó ¤¬¥¢¥¤¥Ç¥ó Í¿¤¨¤é¤ì¤ë
¤Î¥¿¥¤¥× ¥Æ¥£¥Æ¥£ ¥Ý¡¼¥È¤µ¤ì ¥Æ¥£¥Æ¥£/ Æø¢
¤ë¿®Íê¤Ç¤­ ÊÌ̾¤ËÆø¢
¤ë¥¢¥¤¥Ç¥ó ¤òÍ¿¤¨¤ë
¥Æ¥£¥Æ¥£(4)
½ð̾ÉÕ¤­ ¤¹¤Ù¤Æ¤Î¥³¡¼¥É¤Ë
JAR x x x Í¿¤¨¤é¤ì¤ë
¥Ç¥Õ¥©¥ë¥È¤Î
Æø¢
½ð̾¤Î¤Ê¤¤ ¤¹¤Ù¤Æ¤Î¥³¡¼¥É¤Ë
JAR x x x Í¿¤¨¤é¤ì¤ë
¥Ç¥Õ¥©¥ë¥È¤Î
Æø¢
½ð̾ÉÕ¤­ ¤¹¤Ù¤Æ¤Î¥³¡¼¥É¤Ë
JAR x ¡û x Í¿¤¨¤é¤ì¤ë
¥Ç¥Õ¥©¥ë¥È¤Î
Æø¢
½ð̾ÉÕ¤­ ¤¹¤Ù¤Æ¤Î¥³¡¼¥É¤Ë
JAR ¡û/¿®Íê¤Ç x x Í¿¤¨¤é¤ì¤ë
¤­¤Ê¤¤ ¥Ç¥Õ¥©¥ë¥È¤Î
Æø¢ (3)
½ð̾ÉÕ¤­ ¤¹¤Ù¤Æ¤Î¥³¡¼¥É¤Ë
JAR ¡û/¿®Íê¤Ç x ¡û Í¿¤¨¤é¤ì¤ë
¤­¤Ê¤¤ ¥Ç¥Õ¥©¥ë¥È¤Î
Æø¢ (1,3)
½ð̾ÉÕ¤­ ¤¹¤Ù¤Æ¤Î¥³¡¼¥É¤Ë
JAR x ¡û ¡û Í¿¤¨¤é¤ì¤ë
¥Ç¥Õ¥©¥ë¥È¤Î
Æø¢¤È¥Ý¥ê¥·¡¼
¥Õ¥¡¥¤¥ëÆâ
¤ÇÍ¿¤¨¤é¤ì¤ë
Æø¢
½ð̾ÉÕ¤­ ¤¹¤Ù¤Æ¤Î¥³¡¼¥É¤Ë
JAR ¡û/¿®Íê ¡û ¡û Í¿¤¨¤é¤ì¤ë
¤Ç¤­¤ë ¥Ç¥Õ¥©¥ë¥È¤Î
Æø¢¤È¥Ý¥ê¥·¡¼
¥Õ¥¡¥¤¥ëÆâ
¤ÇÍ¿¤¨¤é¤ì¤ë
Æø¢ (2)
½ð̾ÉÕ¤­ ¤¹¤Ù¤Æ¤Î
JAR ¡û/¿®Íê x x Æø¢
¤Ç¤­¤ë
½ð̾ÉÕ¤­ ¤¹¤Ù¤Æ¤Î
JAR ¡û/¿®Íê ¡û x Æø¢ (1)
¤Ç¤­¤ë
½ð̾ÉÕ¤­ ¤¹¤Ù¤Æ¤Î
JAR ¡û/¿®Íê x ¡û Æø¢ (1)
¤Ç¤­¤ë
.fi
.ft 1
.LP
Ãí:
.TP 5
1.
¥Ý¥ê¥·¡¼¥Õ¥¡¥¤¥ëÆâ¤Ë¥¢¥¤¥Ç¥ó¥Æ¥£¥Æ¥£/ÊÌ̾¤Ë¤Ä¤¤¤Æ¤Î¸ÀµÚ¤¬¤¢¤ë¾ì¹ç¡¢
¤½¤ì¤ò¥­¡¼¥¹¥È¥¢¤Ë¥¤¥ó¥Ý¡¼¥È¤·¤Æ¡¢¥Ý¥ê¥·¡¼¥Õ¥¡¥¤¥ë¤ÎÀßÄ꤬Ϳ¤¨¤é¤ì¤¿
Æø¢¤ËÈ¿±Ç¤µ¤ì¤ë¤è¤¦¤Ë¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
.TP 5
2.
¥Ý¥ê¥·¡¼¥Õ¥¡¥¤¥ë/¥­¡¼¥¹¥È¥¢¤ÎÁȤ߹ç¤ï¤»¤Ï¡¢¥¢¥¤¥Ç¥ó¥Æ¥£¥Æ¥£¥Ç¡¼¥¿¥Ù¡¼¥¹
Æâ¤Î¿®Íê¤Ç¤­¤ë¥¢¥¤¥Ç¥ó¥Æ¥£¥Æ¥£¤è¤ê¤âÍ¥À褵¤ì¤Þ¤¹¡£
.TP 5
3.
Java 2 ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¤Ï¡¢¿®Íê¤Ç¤­¤Ê¤¤¥¢¥¤¥Ç¥ó¥Æ¥£¥Æ¥£¤Ï̵»ë¤µ¤ì¤Þ¤¹¡£
.TP 5
4.
JDK ¥­¡¼¥¹¥È¥¢¤Ë¥¤¥ó¥Ý¡¼¥È¤Ç¤­¤ë¤Î¤Ï¡¢¿®Íê¤Ç¤­¤ë¥¢¥¤¥Ç¥ó¥Æ¥£¥Æ¥£¤À¤±¤Ç¤¹¡£
.SS
¥­¡¼¥¹¥È¥¢¤ÎÊÌ̾
.LP
.IX "jarsigner" "Keystore Aliases" "\fLjarsigner\fP \(em JAR signing and verification tool "
.LP
¥­¡¼¥¹¥È¥¢¤Î¤¹¤Ù¤Æ¤Î¥¨¥ó¥È¥ê¤Ï¡¢°ì°Õ¤Î¡ÖÊÌ̾¡×¤ò²ð¤·¤Æ¥¢¥¯¥»¥¹¤µ¤ì¤Þ¤¹¡£
.LP
.B jarsigner
¤ò»È¤Ã¤Æ JAR ¥Õ¥¡¥¤¥ë¤Ë½ð̾¤òÉÕ¤±¤ë¤È¤­¤Ï¡¢½ð̾¤ÎÀ¸À®¤ËɬÍפÊÈó¸ø³«¸°¤ò
´Þ¤à¥­¡¼¥¹¥È¥¢¥¨¥ó¥È¥ê¤ÎÊÌ̾¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤ÎÎã¤Ï¡¢
working ¥Ç¥£¥ì¥¯¥È¥ê¤Î
.B mystore
¤È¤¤¤¦Ì¾Á°¤Î¥­¡¼¥¹¥È¥¢¤Ë´Þ¤Þ¤ì¤ëÊÌ̾
.B duke
¤Ë´ØÏ¢ÉÕ¤±¤é¤ì¤¿Èó¸ø³«¸°¤ò»È¤Ã¤Æ¡¢
.BR MyJARFile.jar
¤È¤¤¤¦Ì¾Á°¤Î JAR ¥Õ¥¡¥¤¥ë¤Ë½ð̾¤òÉÕ¤±¤Þ¤¹¡£½ÐÎÏ¥Õ¥¡¥¤¥ë¤Ï»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤
¤Î¤Ç¡¢
.BR MyJARFile.jar
¤Ï½ð̾ÉÕ¤­¤Î JAR ¥Õ¥¡¥¤¥ë¤Ë¤è¤Ã¤Æ¾å½ñ¤­¤µ¤ì¤Þ¤¹¡£
.LP
.ft 3
.nf
jarsigner -keystore /working/mystore -storepass
myspass -keypass dukekeypasswd MyJARFile.jar duke
.fi
.ft 1
.LP
¥­¡¼¥¹¥È¥¢¤Ï¥Ñ¥¹¥ï¡¼¥É¤ÇÊݸ¤ì¤Æ¤¤¤ë¤Î¤Ç¡¢¥¹¥È¥¢¤Î¥Ñ¥¹¥ï¡¼¥É (¾å¤ÎÎã¤Ç¤Ï
.BR myspass
) ¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥³¥Þ¥ó¥É¹Ô¤Ç¥¹¥È¥¢¤Î¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£Æ±Íͤˡ¢Èó¸ø³«¸°¤â¥­¡¼¥¹¥È¥¢Æâ¤Ç¥Ñ¥¹¥ï¡¼¥É¤Ë¤è¤Ã¤ÆÊݸ¤ì¤Æ¤¤¤ë¤Î¤Ç¡¢Èó¸ø³«¸°¤Î¥Ñ¥¹¥ï¡¼¥É (¾å¤ÎÎã¤Ç¤Ï
.BR dukekeypasswd
) ¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥³¥Þ¥ó¥É¹Ô¤ÇÈó¸ø³«¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Æ¤ª¤é¤º¡¢Èó¸ø³«¸°¤Î¥Ñ¥¹¥ï¡¼¥È¤¬¥¹¥È¥¢¤Î¥Ñ¥¹¥ï¡¼¥É¤È°ã¤Ã¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢Èó¸ø³«¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
.LP
.SS
¥­¡¼¥¹¥È¥¢¤Î¾ì½ê
.LP
.IX "jarsigner" "Keystore Location" "\fLjarsigner\fP \(em JAR signing and verification tool "
.LP
.B jarsigner
¤Ë¤Ï¡¢»ÈÍѤ¹¤ë¥­¡¼¥¹¥È¥¢¤Î̾Á°¤È¾ì½ê¤ò»ØÄꤹ¤ë
.I -keystore
¥ª¥×¥·¥ç¥ó¤¬¤¢¤ê¤Þ¤¹¡£¥­¡¼¥¹¥È¥¢¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¥æ¡¼¥¶¤Î¥Û¡¼¥à¥Ç¥£¥ì¥¯¥È¥ê¤Î
.I .keystore
¤È¤¤¤¦Ì¾Á°¤Î¥Õ¥¡¥¤¥ë¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£¥æ¡¼¥¶¤Î¥Û¡¼¥à¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢
.I user.home
¥·¥¹¥Æ¥à¥×¥í¥Ñ¥Æ¥£¤Ë¤è¤Ã¤Æ·è¤Þ¤ê¤Þ¤¹¡£
.LP
.I \-keystore
¥ª¥×¥·¥ç¥ó¤«¤é¤ÎÆþÎÏ¥¹¥È¥ê¡¼¥à¤Ï
.I KeyStore.load
¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤Þ¤¹¡£
URL ¤È¤·¤Æ NONE ¤¬»ØÄꤵ¤ì¤¿¾ì¹ç¤Ï¡¢NULL ¥¹¥È¥ê¡¼¥à¤¬
.I KeyStore.load
¥á¥½¥Ã¥É¤ËÅϤµ¤ì¤Þ¤¹¡£¥­¡¼¥¹¥È¥¢¤¬¥Ï¡¼¥É¥¦¥§¥¢¥È¡¼¥¯¥ó¥Ç¥Ð¥¤¥¹¾å¤Ë¤¢¤ë¤Ê¤É¡¢
¥Õ¥¡¥¤¥ë¥Ù¡¼¥¹¤Ç¤Ê¤¤¾ì¹ç¤Ï¡¢
.I NONE
¤ò»ØÄꤷ¤Æ¤¯¤À¤µ¤¤¡£
.SS
¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ
.LP
.IX "jarsigner" "Keystore Implementation" "\fLjarsigner\fP \(em JAR signing and verification tool "
.LP
.I java.security
¥Ñ¥Ã¥±¡¼¥¸Æâ¤Ë¤¢¤ë
.I KeyStore
¥¯¥é¥¹
¤Ç¤Ï¡¢¥­¡¼¥¹¥È¥¢Æâ¤Î¾ðÊó¤Ë¥¢¥¯¥»¥¹¤·¡¢Êѹ¹¤Ç¤­¤ë¤è¤¦¤Ë
ŬÀÚ¤ËÄêµÁ¤µ¤ì¤¿¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤¬Ä󶡤µ¤ì¤Æ¤¤¤Þ¤¹¡£
¤³¤Î¥¯¥é¥¹¤ÏÊ£¿ô¤Î¤µ¤Þ¤¶¤Þ¤Ê¸ÇÄê¼ÂÁõ¤¬²Äǽ¤Ç¡¢
¤½¤ì¤¾¤ì¤Î¼ÂÁõ¤Ï¡¢ÆÃÄê¤Î¼ïÎà¤Î¥­¡¼¥¹¥È¥¢ÍѤθÇÄê¼ÂÁõ¤Ç¤¹¡£
.LP
¸½ºß¡¢¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤ò»ÈÍѤ¹¤ë¤â¤Î¤È¤·¤Æ¡¢keytool ¤È
.BR jarsigner
¤Î 2 ¤Ä¤Î¥³¥Þ¥ó¥É¹Ô¥Ä¡¼¥ë¤È¡¢
.BR policytool
¤È¤¤¤¦Ì¾Á°¤Î 1 ¤Ä¤Î GUI ¥Ù¡¼¥¹¤Î¥Ä¡¼¥ë¤¬¤¢¤ê¤Þ¤¹¡£
.I KeyStore
¥¯¥é¥¹¤Ï public ¤È¤·¤Æ»ÈÍѲÄǽ¤Ê¤Î¤Ç¡¢JDK ¥æ¡¼¥¶¤Ï
.B KeyStore
¤ò»È¤Ã¤Æ¤Û¤«¤Î¥»¥­¥å¥ê¥Æ¥£¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤âºîÀ®¤Ç¤­¤Þ¤¹¡£
.LP
¥­¡¼¥¹¥È¥¢¤Ë¤Ï¡¢Sun ¤¬Ä󶡤¹¤ëÁȤ߹þ¤ß¤Î¥Ç¥Õ¥©¥ë¥È¤Î¼ÂÁõ¤¬¤¢¤ê¤Þ¤¹¡£¤³¤ì¤Ï¡¢
JKS ¤È¤¤¤¦Ì¾Á°¤ÎÆȼ«¤Î¥­¡¼¥¹¥È¥¢¥¿¥¤¥× (·Á¼°) ¤òÍøÍѤ¹¤ë¤â¤Î¤Ç¡¢¥­¡¼¥¹¥È¥¢¤ò
¥Õ¥¡¥¤¥ë¤È¤·¤Æ¼ÂÁõ¤·¤Æ¤¤¤Þ¤¹¡£¤³¤Î¼ÂÁõ¤Ç¤Ï¡¢¸Ä¡¹¤ÎÈó¸ø³«¸°¤Ï¸ÄÊ̤Υѥ¹¥ï¡¼¥É
¤Ë¤è¤Ã¤ÆÊݸ¤ì¡¢¥­¡¼¥¹¥È¥¢Á´ÂΤδ°Á´À­¤â (Èó¸ø³«¸°¤È¤ÏÊ̤Î) ¥Ñ¥¹¥ï¡¼¥É¤Ë
¤è¤Ã¤ÆÊݸ¤ì¤Þ¤¹¡£
.LP
¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤Ï¡¢¥×¥í¥Ð¥¤¥À¥Ù¡¼¥¹¤Ç¤¹¡£¶ñÂÎŪ¤Ë¤Ï¡¢
.I KeyStore
¥¯¥é¥¹¤¬Ä󶡤¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤Ï¡¢Service Provider Interface (SPI)
¤È¤¤¤¦·Á¤Ç¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢Âбþ¤¹¤ë
.I KeystoreSpi
Ãê¾Ý¥¯¥é¥¹ (¤³¤ì¤â
.I java.security
¥Ñ¥Ã¥±¡¼¥¸¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë) ¤¬¤¢¤ê¡¢¤³¤Î¥¯¥é¥¹¤¬ Service Provider Interface ¤Î
¥á¥½¥Ã¥É¤òÄêµÁ¤·¤Æ¤¤¤Þ¤¹¡£¤³¤ì¤é¤Î¥á¥½¥Ã¥É¤Ï¡¢¡Ö¥×¥í¥Ð¥¤¥À¡×¤¬¼ÂÁõ¤·¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ
¤»¤ó¡£¤³¤³¤Ç¡¢¡Ö¥×¥í¥Ð¥¤¥À¡×¤È¤Ï¡¢Java Security API ¤Ë¤è¤Ã¤Æ¥¢¥¯¥»¥¹²Äǽ¤Ê¥µ¡¼¥Ó¥¹
¤Î¥µ¥Ö¥»¥Ã¥È¤ËÂФ·¡¢¤½¤Î¸ÇÄê¼ÂÁõ¤òÄ󶡤¹¤ë¥Ñ¥Ã¥±¡¼¥¸¤Þ¤¿¤Ï¥Ñ¥Ã¥±¡¼¥¸¤Î½¸¹ç¤Î
¤³¤È¤Ç¤¹¡£¤·¤¿¤¬¤Ã¤Æ¡¢¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤òÄ󶡤¹¤ë¤Ë¤Ï¡¢¡ÖJava °Å¹æ²½¥¢¡¼¥­¥Æ¥¯
¥Á¥ãÍÑ¥×¥í¥Ð¥¤¥À¤Î¼ÂÁõÊýË¡¡×(http://java.sun.com/javase/6/docs/technotes/guides/security/HowToImplAProvider.html) ¤Î¥Ú¡¼¥¸¤ÇÀâÌÀ¤·¤Æ¤¤¤ë¤è¤¦¤Ë¡¢¥¯¥é¥¤¥¢¥ó¥È¤¬¥×¥í¥Ð¥¤¥À¤ò¼ÂÁõ¤·¡¢
.I KeystoreSpi
¥µ¥Ö¥¯¥é¥¹¤Î¼ÂÁõ¤òÄ󶡤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
.LP
¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ç¤Ï¡¢
.I KeyStore
¥¯¥é¥¹¤¬Ä󶡤¹¤ë
.B getInstance
¥Õ¥¡¥¯¥È¥ê¥á¥½¥Ã¥É¤ò»È¤¦¤³¤È¤Ç¡¢¤µ¤Þ¤¶¤Þ¤Ê¥×¥í¥Ð¥¤¥À¤«¤é°Û¤Ê¤ë¡Ö¥¿¥¤¥×¡×¤Î¥­¡¼¥¹¥È¥¢¤Î
¼ÂÁõ¤òÁªÂò¤Ç¤­¤Þ¤¹¡£¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤Ï¡¢¥­¡¼¥¹¥È¥¢¾ðÊó¤Î³ÊǼ·Á¼°¤È¥Ç¡¼¥¿·Á¼°¡¢
¤ª¤è¤Ó¥­¡¼¥¹¥È¥¢Æâ¤ÎÈó¸ø³«¸°¤È¥­¡¼¥¹¥È¥¢¼«ÂΤδ°Á´À­¤òÊݸ¤ë¤¿¤á¤Ë»È¤ï¤ì¤ë
¥¢¥ë¥´¥ê¥º¥à¤òÄêµÁ¤·¤Þ¤¹¡£°Û¤Ê¤ë¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤Ë¤Ï¡¢¸ß¤¤¤Ë¸ß´¹À­¤Ï
¤¢¤ê¤Þ¤»¤ó¡£keytool¡¢jarsigner¡¢¤ª¤è¤Ó policytool ¤Î³Æ¥Ä¡¼¥ë¤Ï¡¢
.B KeyStore
¤¬Ä󶡤¹¤ë¶¦Ä̤Υ¢¥×¥ê¥±¡¼¥·¥ç¥ó¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤À¤±¤ò»È¤Ã¤Æ¤¤¤ë¤Î¤Ç¡¢Ç¤°Õ¤Î
¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤Ç»ÈÍѤǤ­¤Þ¤¹¡£
.LP
.B keytool
¤Ï¡¢¥Õ¥¡¥¤¥ë¥Ù¡¼¥¹¤Î¥­¡¼¥¹¥È¥¢¼ÂÁõ¤ËÂФ·¤Æµ¡Ç½¤·¤Þ¤¹¡£
.B keytool
¤Ï¡¢¥³¥Þ¥ó¥É¹Ô¤ÇÅϤµ¤ì¤¿¥­¡¼¥¹¥È¥¢¤Î°ÌÃÖ¤ò¥Õ¥¡¥¤¥ë̾¤È¤·¤Æ°·¤¤¡¢
.BR FileInputStream
¤ËÊÑ´¹¤·¤Æ¡¢¤½¤³¤«¤é¥­¡¼¥¹¥È¥¢¾ðÊó¤ò¥í¡¼¥É¤·¤Þ¤¹¡£°ìÊý¡¢
.B jarsigner
¥Ä¡¼¥ë¤ª¤è¤Ó
.B policytool
¥Ä¡¼¥ë¤Ï¡¢URL ¤ò»È¤Ã¤Æ»ØÄꤹ¤ë¤³¤È¤¬²Äǽ¤ÊǤ°Õ¤Î°ÌÃ֤ˤ¢¤ë¥­¡¼¥¹¥È¥¢¤ò
Æɤ߼è¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
.LP
.B jarsigner
¤È
.BR keytool
¤Î¾ì¹ç¡¢
.I -storetype
¥ª¥×¥·¥ç¥ó¤ò»È¤Ã¤Æ¥³¥Þ¥ó¥É¹Ô¤Ç¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
.BR policytool
¤Î¾ì¹ç¤Ï¡¢[Edit] ¥á¥Ë¥å¡¼¤Î [Change Keystore] ¥³¥Þ¥ó¥É¤ò»È¤Ã¤Æ¥­¡¼¥¹¥È¥¢¤Î
¥¿¥¤¥×¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£
.LP
¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤òÌÀ¼¨Åª¤Ë»ØÄꤷ¤Ê¤¤¾ì¹ç¡¢
.B keytool
¡¢
.B jarsigner
¡¢¤ª¤è¤Ó
.B policytool
¤Î³Æ¥Ä¡¼¥ë¤Ï¡¢¥»¥­¥å¥ê¥Æ¥£¥×¥í¥Ñ¥Æ¥£¥Õ¥¡¥¤¥ëÆâ¤Ç»ØÄê
¤µ¤ì¤¿
.I keystore.type
¥×¥í¥Ñ¥Æ¥£¤ÎÃͤ˴ð¤Å¤¤¤Æ¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤òÁªÂò¤·¤Þ¤¹¡£¥»¥­¥å¥ê¥Æ¥£¥×¥í¥Ñ¥Æ¥£¥Õ¥¡
¥¤¥ë¤Ï¡¢
.I java.security
¤È¤¤¤¦Ì¾Á°¤Ç¥»¥­¥å¥ê¥Æ¥£¥×¥í¥Ñ¥Æ¥£¥Ç¥£¥ì¥¯¥È¥ê
.I java.home/lib/security
¤ËÃÖ¤«¤ì¤Æ¤¤¤Þ¤¹¡£
.I java.home
¤Ï¡¢JDK ¤Î¼Â¹Ô´Ä¶­¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤¹¡£(SDK Æâ¤Î jre ¥Ç¥£¥ì¥¯¥È¥ê
¤Þ¤¿¤Ï Java Runtime Environment ¤Î¥È¥Ã¥×¥ì¥Ù¥ë¤Î¥Ç¥£¥ì¥¯¥È¥ê)¡£
.LP
³Æ¥Ä¡¼¥ë¤Ï¡¢
.I keystore.type
¤ÎÃͤò¼èÆÀ¤·¡¢¤³¤ÎÃͤǻØÄꤵ¤ì¤¿¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤ò¼ÂÁõ¤·¤Æ¤¤¤ë¥×¥í¥Ð¥¤¥À¤¬
¸«¤Ä¤«¤ë¤Þ¤Ç¡¢¸½ºß¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ë¤¹¤Ù¤Æ¤Î¥×¥í¥Ð¥¤¥À¤òÄ´¤Ù¤Þ¤¹¡£ÌÜŪ¤Î
¥×¥í¥Ð¥¤¥À¤¬¸«¤Ä¤«¤ë¤È¡¢¤½¤Î¥×¥í¥Ð¥¤¥À¤«¤é¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤ò»È¤¤¤Þ¤¹¡£
.LP
.I KeyStore
¥¯¥é¥¹¤Ç¤Ï
.I getDefaultType
¤È¤¤¤¦Ì¾Á°¤Î static ¥á¥½¥Ã¥É¤¬ÄêµÁ¤µ¤ì¤Æ¤ª¤ê¡¢¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤È¥¢¥×¥ì¥Ã¥È¤Ï¤³¤Î
¥á¥½¥Ã¥É¤ò»È¤¦¤³¤È¤Ç
.I keystore.type
¥×¥í¥Ñ¥Æ¥£¤ÎÃͤò¼èÆÀ¤Ç¤­¤Þ¤¹¡£¼¡¤Î¥³¡¼¥É¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢¥¿¥¤¥× (
.I keystore.type
¥×¥í¥Ñ¥Æ¥£¤Ç»ØÄꤵ¤ì¤¿¥¿¥¤¥×) ¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤òÀ¸À®¤·¤Þ¤¹¡£
.LP
.nf
\f3
.fl
KeyStore keyStore = KeyStore.getInstance(KeyStore.getDefaultType());
.fl
\fP
.fi
.LP
.LP
¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢¥¿¥¤¥×¤Ï jks (Sun ¤¬Ä󶡤¹¤ëÆȼ«¤Î¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤Î
¼ÂÁõ) ¤Ç¤¹¡£¤³¤ì¤Ï¡¢¥»¥­¥å¥ê¥Æ¥£¥×¥í¥Ñ¥Æ¥£¥Õ¥¡¥¤¥ëÆâ¤Î¼¡¤Î¹Ô¤Ë¤è¤Ã¤Æ»ØÄꤵ¤ì¤Æ
¤¤¤Þ¤¹¡£
.LP
.RS 5
.B keystore.type=jks
.RE
.LP
Ãí: ¥­¡¼¥¹¥È¥¢¥¿¥¤¥×¤Î»ØÄê¤Ç¤Ï¡¢Âçʸ»ú¤È¾®Ê¸»ú¤Ï¶èÊ̤µ¤ì¤Þ¤»¤ó¡£¤¿¤È¤¨¤Ð¡¢¡ÖJKS¡×¤È¡Öjks¡×¤ÏƱ¤¸¤â¤Î¤È¤ß¤Ê¤µ¤ì¤Þ¤¹¡£
.LP
³Æ¥Ä¡¼¥ë¤Ç¥Ç¥Õ¥©¥ë¥È°Ê³°¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤ò»ÈÍѤ¹¤ë¤Ë¤Ï¡¢¾å¤Î¹Ô¤òÊѹ¹¤·¤Æ
Ê̤Υ­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤ò»ØÄꤷ¤Þ¤¹¡£
¤¿¤È¤¨¤Ð¡¢pkcs12 ¤È¸Æ¤Ð¤ì¤ë¥¿¥¤¥×¤Î¥­¡¼¥¹¥È¥¢¤Î¼ÂÁõ¤òÄ󶡤·¤Æ¤¤¤ë
¥×¥í¥Ð¥¤¥À¥Ñ¥Ã¥±¡¼¥¸¤ò»ÈÍѤ¹¤ë¤Ë¤Ï¡¢¾å¤Î¹Ô¤ò¼¡¤Î¤è¤¦¤ËÊѹ¹¤·¤Þ¤¹¡£
.LP
.B keystore.type=pkcs12
.LP
PKCS#11 ¥×¥í¥Ð¥¤¥À¥Ñ¥Ã¥±¡¼¥¸¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢¤½¤Î¾ÜºÙ¤Ë¤Ä¤¤¤Æ¤Ï¡¢¡ÖJava PKCS#11 Reference Guide¡×(
http://java.sun.com/javase/6/docs/technotes/guides/security/p11guide.html#keytooljarsigner)
¤Ë¤¢¤ë
¡Ö\f2KeyTool and JarSigner\fP¡×Àá¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
.LP
.SS
¥µ¥Ý¡¼¥È¤µ¤ì¤ë¥¢¥ë¥´¥ê¥º¥à
.LP
.IX "jarsigner" "Supported Algorithms and Key Sizes" "\fLjarsigner\fP \(em JAR signing and verification tool "
.LP
¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢
.B jarsigner
¤Ï¼¡¤Î¤É¤Á¤é¤«¤Î¥¢¥ë¥´¥ê¥º¥à¤ò»È¤Ã¤Æ JAR ¥Õ¥¡¥¤¥ë¤Ë½ð̾¤·¤Þ¤¹¡£
.TP 2
\(bu
SHA-1 ¥À¥¤¥¸¥§¥¹¥È¥¢¥ë¥´¥ê¥º¥à¤ò»È¤Ã¤¿ DSA (¥Ç¥¸¥¿¥ë½ð̾¥¢¥ë¥´¥ê¥º¥à)
.TP 2
\(bu
MD5 ¥À¥¤¥¸¥§¥¹¥È¥¢¥ë¥´¥ê¥º¥à¤ò»È¤Ã¤¿ RSA ¥¢¥ë¥´¥ê¥º¥à
.LP
¶ñÂÎŪ¤Ë¤Ï¡¢½ð̾¼Ô¤Î¸ø³«¸°¤ÈÈó¸ø³«¸°¤¬ DSA ¸°¤Ç¤¢¤ë¾ì¹ç¡¢
.B jarsigner
¤Ï¡ÖSHA1withDSA¡×¥¢¥ë¥´¥ê¥º¥à¤ò»È¤Ã¤Æ JAR ¥Õ¥¡¥¤¥ë¤Ë½ð̾¤òÉÕ¤±¤è¤¦¤È¤·¤Þ¤¹¡£½ð̾¼Ô¤Î
¸°¤¬ RSA ¸°¤Ç¤¢¤ë¾ì¹ç¡¢
.B jarsigner
¤Ï¡ÖMD5withRSA¡×¥¢¥ë¥´¥ê¥º¥à¤ò»È¤Ã¤Æ JAR ¥Õ¥¡¥¤¥ë¤Ë½ð̾¤òÉÕ¤±¤Þ¤¹¡£
.LP
¤³¤ì¤é¤Î¥Ç¥Õ¥©¥ë¥È¤Î½ð̾¥¢¥ë¥´¥ê¥º¥à¤Ï¡¢\f2\-sigalg\fP ¥ª¥×¥·¥ç¥ó¤ò»È¤Ã¤Æ¥ª¡¼¥Ð¡¼¥é¥¤¥É¤Ç¤­¤Þ¤¹¡£
.LP
.SS
½ð̾ÉÕ¤­ JAR ¥Õ¥¡¥¤¥ë
.LP
.IX "jarsigner" "The Signed JAR File" "\fLjarsigner\fP \(em JAR signing and verification tool "
.LP
.B jarsigner
¤ò»È¤Ã¤Æ JAR ¥Õ¥¡¥¤¥ë¤Ë½ð̾¤òÉÕ¤±¤¿¾ì¹ç¡¢½ÐÎϤµ¤ì¤ë½ð̾ÉÕ¤­ JAR ¥Õ¥¡¥¤¥ë¤Ï
ÆþÎÏ JAR ¥Õ¥¡¥¤¥ë¤ÈƱ¤¸¤Ç¤¹¤¬¡¢¼¡¤Î 2 ¤Ä¤ÎÄɲåե¡¥¤¥ë¤¬
.B META-INF
¥Ç¥£¥ì¥¯¥È¥ê¤ËÃÖ¤«¤ì¤ëÅÀ¤¬°Û¤Ê¤ê¤Þ¤¹¡£
.TP 2
\(bu
.B .SF
³ÈÄ¥»Ò¤ÎÉÕ¤¤¤¿½ð̾¥Õ¥¡¥¤¥ë
.TP 2
\(bu
.B .DSA
³ÈÄ¥»Ò¤ÎÉÕ¤¤¤¿½ð̾¥Ö¥í¥Ã¥¯¥Õ¥¡¥¤¥ë
.LP
¤³¤ì¤é 2 ¤Ä¤Î¥Õ¥¡¥¤¥ë¤Î¥Ù¡¼¥¹¥Õ¥¡¥¤¥ë̾¤Ï¡¢
.I -sigFile
¥ª¥×¥·¥ç¥ó¤ÎÃͤ«¤éºîÀ®¤µ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¤È¤·¤Þ¤¹¡£
.LP
.B -sigFile MKSIGN
.LP
¤³¤Î¾ì¹ç¡¢¥Õ¥¡¥¤¥ë̾¤Ï¤½¤ì¤¾¤ì
.B MKSIGN.SF
¤È
.BR MKSIGN.DSA
¤Ë¤Ê¤ê¤Þ¤¹¡£
.LP
¥³¥Þ¥ó¥É¹Ô¤Ë
.I -sigfile
¥ª¥×¥·¥ç¥ó¤Î»ØÄ꤬¤Ê¤¤¾ì¹ç¡¢
.B .SF
¥Õ¥¡¥¤¥ë¤È
.B .DSA
¥Õ¥¡¥¤¥ë¤Î¥Ù¡¼¥¹¥Õ¥¡¥¤¥ë̾¤Ï¡¢¥³¥Þ¥ó¥É¹Ô¤Ç»ØÄꤵ¤ì¤¿ÊÌ̾¤ÎÀèƬ¤Î 8 ʸ»ú¤ò
¤¹¤Ù¤ÆÂçʸ»ú¤ËÊÑ´¹¤·¤¿¤â¤Î¤Ë¤Ê¤ê¤Þ¤¹¡£ÊÌ̾¤¬ 8 ʸ»ṳ́Ëþ¤Î¾ì¹ç¤Ï¡¢ÊÌ̾¤¬
¤½¤Î¤Þ¤Þ»È¤ï¤ì¤Þ¤¹¡£ÊÌ̾¤ÎÃæ¤Ë¡¢½ð̾¥Õ¥¡¥¤¥ë̾¤Ë»ÈÍѤǤ­¤Ê¤¤Ê¸»ú¤¬´Þ¤Þ¤ì
¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢³ºÅö¤¹¤ëʸ»ú¤ò²¼Àþ (_) ¤ËÃÖ¤­´¹¤¨¤Æ¥Õ¥¡¥¤¥ë̾¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£
»ÈÍѤǤ­¤ëʸ»ú¤Ï¡¢¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È¡¢¿ô»ú¡¢²¼Àþ (_)¡¢¥Ï¥¤¥Õ¥ó¤Ç¤¹¡£
.LP
½ð̾ (\f3.SF\f1) ¥Õ¥¡¥¤¥ë
.LP
½ð̾¥Õ¥¡¥¤¥ë (
.B .SF
¥Õ¥¡¥¤¥ë) ¤Ï¡¢
.B jar
¥Ä¡¼¥ë¤ÇÀ¸À®¤µ¤ì¤¿ JAR ¥Õ¥¡¥¤¥ë¤Ë¾ï¤Ë´Þ¤Þ¤ì¤ë¥Þ¥Ë¥Õ¥§¥¹¥È¥Õ¥¡¥¤¥ë¤È»÷¤Æ¤¤¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¥Õ¥¡¥¤¥ëƱÍÍ¡¢
.B .SF
¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢JAR ¥Õ¥¡¥¤¥ë¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤´¤È¤Ë¡¢¼¡¤Î 3 ¤Ä¤Î¹Ô¤¬¤¢¤ê¤Þ¤¹¡£
.TP 2
\(bu
¥Õ¥¡¥¤¥ë̾
.TP 2
\(bu
»È¤ï¤ì¤Æ¤¤¤ë¥À¥¤¥¸¥§¥¹¥È¥¢¥ë¥´¥ê¥º¥à (SHA) ¤Î̾Á°
.TP 2
\(bu
SHA ¥À¥¤¥¸¥§¥¹¥È¤ÎÃÍ
.LP
¥Þ¥Ë¥Õ¥§¥¹¥È¥Õ¥¡¥¤¥ë¤Ç¤Ï¡¢SHA ¥À¥¤¥¸¥§¥¹¥È¤ÎÃͤϡ¢¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤Î¥Ð¥¤¥Ê¥ê¥Ç¡¼¥¿
¤Î¥À¥¤¥¸¥§¥¹¥È (¥Ï¥Ã¥·¥å) ¤Ç¤¹¡£°ìÊý¡¢
.B .SF
¥Õ¥¡¥¤¥ë¤Ç¤Ï¡¢¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤Î¥À¥¤¥¸¥§¥¹¥È¤ÎÃͤϡ¢¥Þ¥Ë¥Õ¥§¥¹¥È¥Õ¥¡¥¤¥ëÃæ¤Î³ºÅö¤¹¤ë
¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤ËÂбþ¤¹¤ë 3 ¹Ô¤Î¥Ï¥Ã¥·¥å¤Ç¤¹¡£
.LP
½ð̾¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Ç¥Þ¥Ë¥Õ¥§¥¹¥È¥Õ¥¡¥¤¥ëÁ´ÂΤΥϥå·¥å¤â´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£
¸å½Ò¤Î¡ÖJAR ¥Õ¥¡¥¤¥ë¤Î¸¡¾Ú¡×¤ÇÀâÌÀ¤¹¤ë¤è¤¦¤Ë¡¢¤³¤Î¥Ø¥Ã¥À¤Î¸ºß¤Ë¤è¤Ã¤Æ¸¡¾Ú¤Î
ºÇŬ²½¤¬²Äǽ¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
.LP
½ð̾¥Ö¥í¥Ã¥¯ (\f3.DSA\f1) ¥Õ¥¡¥¤¥ë
.LP
.B .SF
¥Õ¥¡¥¤¥ë¤Ë¤Ï½ð̾¤¬ÉÕ¤±¤é¤ì¡¢½ð̾¤Ï
.B .DSA
¥Õ¥¡¥¤¥ë¤ËÃÖ¤«¤ì¤Þ¤¹¡£
.B .DSA
¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¥­¡¼¥¹¥È¥¢¤«¤é¤Î¾ÚÌÀ½ñ¤Þ¤¿¤Ï¾ÚÌÀÏ¢º¿¤âÉä¹æ²½¤µ¤ì¤¿·Á¤Ç´Þ¤Þ¤ì¤Æ
¤¤¤Þ¤¹¡£¾ÚÌÀ½ñ¤Þ¤¿¤Ï¾ÚÌÀÏ¢º¿¤Ï¡¢½ð̾¤Ë»È¤ï¤ì¤¿Èó¸ø³«¸°¤ËÂбþ¤¹¤ë¸ø³«¸°¤ò
ǧ¾Ú¤·¤Þ¤¹¡£
.LP
.SS
½ð̾¥¿¥¤¥à¥¹¥¿¥ó¥×
.LP
.LP
J2SE 5.0 ¥ê¥ê¡¼¥¹¤Î
.I jarsigner
¥Ä¡¼¥ë¤Ï¡¢JAR ¥Õ¥¡¥¤¥ë¤Î½ð̾»þ¤Ë½ð̾¥¿¥¤¥à¥¹¥¿¥ó¥×¤òÀ¸À®¤ª¤è¤Ó³ÊǼ¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤·¤¿¡£¤µ¤é¤Ë¡¢
.I jarsigner
¤ÏÂåÂؤνð̾µ¡¹½¤â¥µ¥Ý¡¼¥È¤·¤Þ¤¹¡£¤³¤ÎÆ°ºî¤Ï¾Êά²Äǽ¤Ç¡¢½ð̾»þ¤Ë¼¡¤Î³Æ¥ª¥×¥·¥ç¥ó¤Ë¤è¤Ã¤ÆÀ©¸æ¤µ¤ì¤Þ¤¹¡£
.LP
.RS 3
.TP 2
o
\f2\-tsa url\fP
.TP 2
o
\f2\-tsacert alias\fP
.TP 2
o
\f2\-altsigner class\fP
.TP 2
o
\f2\-altsignerpath classpathlist\fP
.RE
.LP
.LP
¤³¤ì¤é¤Î³Æ¥ª¥×¥·¥ç¥ó¤Î¾ÜºÙ¤Ë¤Ä¤¤¤Æ¤Ï¡¢¸å½Ò¤Î¡Ö¥ª¥×¥·¥ç¥ó¡×Àá¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
.LP
.SS
JAR ¥Õ¥¡¥¤¥ë¤Î¸¡¾Ú
.LP
.IX "jarsigner" "JAR File Verification" "\fLjarsigner\fP \(em JAR signing and verification tool "
.LP
JAR ¥Õ¥¡¥¤¥ë¤Î¸¡¾Ú¤¬À®¸ù¤¹¤ë¤Î¤Ï¡¢½ð̾¤¬Í­¸ú¤Ç¤¢¤ê¡¢¤«¤Ä½ð̾¤ÎÀ¸À®°Ê¸å¤Ë
JAR ¥Õ¥¡¥¤¥ëÆâ¤Î¤É¤Î¥Õ¥¡¥¤¥ë¤âÊѹ¹¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ç¤¹¡£JAR ¥Õ¥¡¥¤¥ë¤Î¸¡¾Ú¤Ï¡¢¼¡¤Î¼ê½ç¤Ç¹Ô¤ï¤ì¤Þ¤¹¡£
.TP 5
1.
.B .SF
¥Õ¥¡¥¤¥ë¤½¤ì¼«ÂΤνð̾¤ò¸¡¾Ú¤·¤Þ¤¹¡£
.RS
.LP
¤³¤Î¼ê½ç¤Ç¤Ï¡¢³Æ½ð̾¥Ö¥í¥Ã¥¯ (
.B .DSA
) ¥Õ¥¡¥¤¥ë¤Ë³ÊǼ¤µ¤ì¤Æ¤¤¤ë½ð̾¤¬¡¢¼ÂºÝ¤Ë¡¢¸ø³«¸°¤ËÂбþ¤¹¤ëÈó¸ø³«¸°¤ò»È¤Ã¤Æ
À¸À®¤µ¤ì¤¿¤â¤Î¤Ç¤¢¤ë¤³¤È¤ò³Îǧ¤·¤Þ¤¹¡£
.B .DSA
¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¸ø³«¸°¤Î¾ÚÌÀ½ñ¤â´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¤Þ¤¿¡¢¤³¤Î¼ê½ç
¤Ç¤Ï¡¢ÌÜŪ¤Î½ð̾¤¬¡¢Âбþ¤¹¤ë½ð̾ (
.B .SF
) ¥Õ¥¡¥¤¥ëÆâ¤ÎÍ­¸ú¤Ê½ð̾¤Ç¤¢¤ë¤«¤É¤¦¤«¤òÄ´¤Ù¡¢
.B .SF
¥Õ¥¡¥¤¥ë¤¬²þÊѤµ¤ì¤Æ¤¤¤Ê¤¤¤³¤È¤â³Îǧ¤·¤Þ¤¹¡£
.RE
.TP 5
2.
.B .SF
¥Õ¥¡¥¤¥ëÆâ¤Î³Æ¥¨¥ó¥È¥ê¤Î¥À¥¤¥¸¥§¥¹¥È¤ò¥Þ¥Ë¥Õ¥§¥¹¥ÈÆâ¤ÎÂбþ¤¹¤ë³Æ¥»¥¯¥·¥ç¥ó¤ÈÆͤ­
¹ç¤ï¤»¤Æ¸¡¾Ú¤·¤Þ¤¹¡£
.RS
.LP
.B .SF
¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¥Õ¥¡¥¤¥ëÁ´ÂΤΥϥ工夬³ÊǼ¤µ¤ì¤¿¥Ø¥Ã¥À¤¬¥Ç¥Õ¥©¥ë¥È¤Ç
´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¡£¤³¤Î¥Ø¥Ã¥À¤¬Â¸ºß¤¹¤ë¾ì¹ç¤Ï¡¢¥Ø¥Ã¥ÀÆâ¤Î¥Ï¥Ã¥·¥å¤¬¼ÂºÝ¤Ë¥Þ¥Ë¥Õ¥§
¥¹¥È¥Õ¥¡¥¤¥ë¤Î¥Ï¥Ã¥·¥å¤È°ìÃפ¹¤ë¤«¤É¤¦¤«¤ò¸¡¾Ú¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¥Ï¥Ã¥·¥å¤¬°ìÃפ¹
¤ë¾ì¹ç¤Ï¡¢¼¡¤Î¼ê½ç¤Ë¿Ê¤ß¤Þ¤¹¡£
.LP
¥Ï¥Ã¥·¥å¤¬°ìÃפ·¤Ê¤¤¾ì¹ç¤Ï¡¢¸úΨŪ¤Ë¤ÏÎô¤ëÊýË¡¤ò»È¤Ã¤Æ¸¡¾Ú¤ò¹Ô¤¤¤Þ¤¹¡£¶ñÂÎŪ
¤Ë¤Ï¡¢
.B .SF
¥Õ¥¡¥¤¥ëÆâ¤Î³Æ¥½¡¼¥¹¥Õ¥¡¥¤¥ë¾ðÊ󥻥¯¥·¥ç¥ó¤Î¥Ï¥Ã¥·¥å¤¬¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¥Õ¥¡¥¤¥ëÆâ¤Î
Âбþ¤¹¤ë¥»¥¯¥·¥ç¥ó¤Î¥Ï¥Ã¥·¥å¤È°ìÃפ¹¤ë¤«¤É¤¦¤«¤ò³Îǧ¤·¤Þ¤¹ (¡Ö½ð̾ (\f3.SF\f1)
¥Õ¥¡¥¤¥ë¡×¤ò»²¾È)¡£
.LP
.B .SF
¥Õ¥¡¥¤¥ë¤Î¥Ø¥Ã¥À¤Ë³ÊǼ¤µ¤ì¤¿¥Þ¥Ë¥Õ¥§¥¹¥È¥Õ¥¡¥¤¥ë¤Î¥Ï¥Ã¥·¥å¤È¡¢¼ÂºÝ¤Î¥Þ¥Ë¥Õ¥§¥¹¥È
¥Õ¥¡¥¤¥ë¤Î¥Ï¥Ã¥·¥å¤È¤¬°ìÃפ·¤Ê¤¤¾ì¹ç¤Ï¡¢½ð̾ (¤ª¤è¤Ó
.B .SF
¥Õ¥¡¥¤¥ë) ¤ÎÀ¸À®¸å¤Ë¡¢¥Õ¥¡¥¤¥ë¤Ë 1 ¤Ä°Ê¾å¤Î¥Õ¥¡¥¤¥ë¤¬Äɲà (
.I jar
¥Ä¡¼¥ë¤ò»ÈÍÑ) ¤µ¤ì¤¿²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¡£
.I jar
¥Ä¡¼¥ë¤ò»È¤Ã¤Æ¥Õ¥¡¥¤¥ë¤òÄɲä·¤¿¾ì¹ç¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¥Õ¥¡¥¤¥ë¤ÏÊѹ¹¤µ¤ì¤Þ¤¹¤¬
(¿·¤·¤¤¥Õ¥¡¥¤¥ëÍѤΥ»¥¯¥·¥ç¥ó¤¬Äɲ䵤ì¤ë)¡¢
.B .SF
¥Õ¥¡¥¤¥ë¤ÏÊѹ¹¤µ¤ì¤Þ¤»¤ó¡£¤³¤Î¾ì¹ç¡¢
.B .SF
¥Õ¥¡¥¤¥ë¤Î¥Ø¥Ã¥À°Ê³°¤Î¥»¥¯¥·¥ç¥ó¤Ë³ÊǼ¤µ¤ì¤¿¥Ï¥Ã¥·¥å¤¬¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¥Õ¥¡¥¤¥ëÆâ¤Î
Âбþ¤¹¤ë¥»¥¯¥·¥ç¥ó¤Î¥Ï¥Ã¥·¥å¤È°ìÃפ¹¤ë¤È¤­¤Ï¡¢½ð̾¤ÎÀ¸À®»þ¤Ë JAR ¥Õ¥¡¥¤¥ëÆâ¤Ë
¸ºß¤·¤Æ¤¤¤¿¥Õ¥¡¥¤¥ë¤Î¤¦¤Á¡¢¤É¤Î¥Õ¥¡¥¤¥ë¤âÊѹ¹¤µ¤ì¤Æ¤¤¤Ê¤¤¤³¤È¤Ë¤Ê¤ê¡¢¸¡¾Ú¤ÏÀ®¸ù
¤·¤¿¤â¤Î¤È¤·¤Æ°·¤ï¤ì¤Þ¤¹¡£
.RE
.TP 5
3.
JAR ¥Õ¥¡¥¤¥ëÆâ¤Î¥Õ¥¡¥¤¥ë¤Î¤¦¤Á¡¢
.B .SF
¥Õ¥¡¥¤¥ëÆâ¤Ë¥¨¥ó¥È¥ê¤ò»ý¤Ä³Æ¥Õ¥¡¥¤¥ë¤òÆɤ߹þ¤ß¤Þ¤¹¡£Æɤ߹þ¤ßÃæ¤Ë¥Õ¥¡¥¤¥ë¤Î
¥À¥¤¥¸¥§¥¹¥È¤ò·×»»¤·¡¢·ë²Ì¤ò¥Þ¥Ë¥Õ¥§¥¹¥È¥»¥¯¥·¥ç¥óÆâ¤Î³ºÅö¤¹¤ë¥Õ¥¡¥¤¥ë¤Î
¥À¥¤¥¸¥§¥¹¥È¤ÈÈæ³Ó¤·¤Þ¤¹¡£2 ¤Ä¤Î¥À¥¤¥¸¥§¥¹¥È¤ÏƱ¤¸¤Ç¤Ê¤±¤ì¤Ð¤Ê¤é¤º¡¢¤½¤¦¤Ç¤Ê¤¤
¾ì¹ç¤Ï¸¡¾Ú¤¬¼ºÇÔ¤·¤Þ¤¹¡£
.LP
¸¡¾Ú¥×¥í¥»¥¹¤ÎÅÓÃæ¤Ç¤Ê¤ó¤é¤«¤Î½ÅÂç¤Ê¸¡¾Ú¥¨¥é¡¼¤¬È¯À¸¤·¤¿¾ì¹ç¡¢¸¡¾Ú¥×¥í¥»¥¹
¤ÏÃæ»ß¤µ¤ì¡¢¥»¥­¥å¥ê¥Æ¥£Îã³°¤¬¥¹¥í¡¼¤µ¤ì¤Þ¤¹¡£¥¹¥í¡¼¤µ¤ì¤¿¥»¥­¥å¥ê¥Æ¥£Îã³°¤Ï¡¢
.BR jarsigner
¤¬¥­¥ã¥Ã¥Á¤·¤Æɽ¼¨¤·¤Þ¤¹¡£
.LP
.SS
1 ¤Ä¤Î JAR ¥Õ¥¡¥¤¥ë¤òÂоݤȤ¹¤ëÊ£¿ô¤Î½ð̾
.LP
.IX "jarsigner" "Multiple Signatures for a JAR File" "\fLjarsigner\fP \(em JAR signing and verification tool "
.LP
1 ¤Ä¤Î JAR ¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ
.B jarsigner
¥Ä¡¼¥ë¤òÊ£¿ô²ó¼Â¹Ô¤·¡¢¼Â¹Ô¤Î¤¿¤Ó¤Ë¡¢°Û¤Ê¤ë¥æ¡¼¥¶¤ÎÊÌ̾¤ò»ØÄꤹ¤ì¤Ð¡¢JAR
¥Õ¥¡¥¤¥ë¤ËÊ£¿ô¤Î¥æ¡¼¥¶¤Î½ð̾¤òÉÕ¤±¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë¤·¤Þ¤¹¡£
.LP
.ft 3
.nf
jarsigner myBundle.jar susan
jarsigner myBundle.jar kevin
.fi
.ft 1
.LP
JAR ¥Õ¥¡¥¤¥ë¤¬Ê£¿ô²ó½ð̾¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¤½¤Î JAR ¥Õ¥¡¥¤¥ë¤Ë¤Ï
.B .SF
¥Õ¥¡¥¤¥ë¤È
.B .DSA
¥Õ¥¡¥¤¥ë¤ÎÂФ¬Ê£¿ô´Þ¤Þ¤ì¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
.B .SF
¥Õ¥¡¥¤¥ë¤È
.B .DSA
¥Õ¥¡¥¤¥ë¤ÎÂФϡ¢1 ²ó¤Î½ð̾¤ËÂФ·¤Æ 1 ¤ÄºîÀ®¤µ¤ì¤Þ¤¹¡£¤·¤¿¤¬¤Ã¤Æ¡¢¾å¤ÎÎã¤Ç½ÐÎÏ
¤µ¤ì¤ë JAR ¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¼¡¤Î̾Á°¤ò»ý¤Ä¥Õ¥¡¥¤¥ë¤¬´Þ¤Þ¤ì¤Þ¤¹¡£
.LP
.ft 3
.nf
SUSAN.SF
SUSAN.DSA
KEVIN.SF
KEVIN.DSA
.fi
.ft 1
.LP
Ãí: JDK 1.1 ¤Î
.B javakey
¥Ä¡¼¥ë¤ÇÀ¸À®¤·¤¿½ð̾¤È¡¢
.B jarsigner
¤ÇÀ¸À®¤·¤¿½ð̾¤È¤¤¤¦¤è¤¦¤Ë¡¢
1 ¤Ä¤Î JAR ¥Õ¥¡¥¤¥ë¤Ë½ð̾¤òº®ºß¤µ¤»¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
¤Ä¤Þ¤ê
.B javakey
¤Ç¤¹¤Ç¤Ë°ÊÁ°½ð̾¤·¤¿ JAR ¥Õ¥¡¥¤¥ë¤Ë½ð̾¤¹¤ë¤¿¤á¤Ë¡¢
.B jarsigner
¤ò»ÈÍѤǤ­¤Þ¤¹¡£
.SH "¥ª¥×¥·¥ç¥ó"
.LP
°Ê²¼¤Ç¤Ï¡¢
.B jarsigner
¤Î¥ª¥×¥·¥ç¥ó¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤Þ¤¹¡£¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤È¤­¤Ï¡¢¼¡¤ÎÅÀ¤ËÃí°Õ
¤·¤Æ¤¯¤À¤µ¤¤¡£
.TP 2
\(bu
¤É¤Î¥ª¥×¥·¥ç¥ó̾¤Ë¤âÀèƬ¤Ë¥Þ¥¤¥Ê¥¹µ­¹æ (-) ¤¬ÉÕ¤¯
.TP 2
\(bu
¥ª¥×¥·¥ç¥ó¤ÏǤ°Õ¤Î½ç½ø¤Ç»ØÄê¤Ç¤­¤ë
.TP 2
\(bu
¥¤¥¿¥ê¥Ã¥¯ÂΤιàÌܤμºݤÎÃÍ (¥ª¥×¥·¥ç¥ó¤ÎÃÍ) ¤Ï¡¢¥æ¡¼¥¶¤¬»ØÄꤹ¤ëɬÍפ¬¤¢¤ë
.TP 2
\(bu
.I -keystore¡¢
.I -storepass¡¢
.I -keypass¡¢
.I -sigfile¡¢
.I -sigalg¡¢
.I -digestalg¡¢
¤ª¤è¤Ó
.I -signedjar
¤Î³Æ¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤǤ­¤ë¤Î¤Ï¡¢JAR ¥Õ¥¡¥¤¥ë¤Ë½ð̾¤òÉÕ¤±¤ë¾ì¹ç¤À¤±¤Ç¤¢¤ë¡£
¤³¤ì¤é¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢JAR ¥Õ¥¡¥¤¥ë¤ò¸¡¾Ú¤¹¤ë¾ì¹ç¤Ë¤Ï»ÈÍѤǤ­¤Ê¤¤¡£Æ±Íͤˡ¢
ÊÌ̾¤ò¥³¥Þ¥ó¥É¹Ô¤Ç»ØÄꤹ¤ë¤Î¤Ï¡¢JAR ¥Õ¥¡¥¤¥ë¤Ë½ð̾¤òÉÕ¤±¤ë¾ì¹ç¤À¤±¤Ç¤¢¤ë
.LP
.RS 3
.TP 3
.B -keystore url
¥­¡¼¥¹¥È¥¢¤Î¾ì½ê¤ò¼¨¤¹ URL ¤ò»ØÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Ï¡¢¥æ¡¼¥¶¤Î¥Û¡¼¥à¥Ç¥£¥ì¥¯¥È
¥êÆâ¤Î¥Õ¥¡¥¤¥ë
.I .keystore
¤Ç¤¹¡£¥æ¡¼¥¶¤Î¥Û¡¼¥à¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¢
.I user.home
¥·¥¹¥Æ¥à¥×¥í¥Ñ¥Æ¥£¤Ë¤è¤Ã¤Æ·è¤Þ¤ê¤Þ¤¹¡£
.LP
½ð̾¤¹¤ë¤È¤­¤Ï¥­¡¼¥¹¥È¥¢¤¬É¬ÍפǤ¹¡£¤³¤Î¤¿¤á¡¢¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢¤¬Â¸ºß
¤·¤Ê¤¤¾ì¹ç¡¢¤¢¤ë¤¤¤Ï¥Ç¥Õ¥©¥ë¥È°Ê³°¤Î¤Û¤«¤Î¥­¡¼¥¹¥È¥¢¤ò»ÈÍѤ¹¤ë¾ì¹ç¤Ï¡¢
¥­¡¼¥¹¥È¥¢¤òÌÀ¼¨Åª¤Ë»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
.LP
¸¡¾Ú¤¹¤ë¤È¤­¤Ï¥­¡¼¥¹¥È¥¢¤ÏɬÍפ¢¤ê¤Þ¤»¤ó¡£¤¿¤À¤·¡¢¥­¡¼¥¹¥È¥¢¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¤«¡¢
¤¢¤ë¤¤¤Ï¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢¤¬Â¸ºß¤·¤Æ¤¤¤Æ¡¢¤µ¤é¤Ë
.I -verbose
¥ª¥×¥·¥ç¥ó¤â»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢JAR ¥Õ¥¡¥¤¥ë¤Î¸¡¾Ú¤Ë»È¤ï¤ì¤ë¾ÚÌÀ½ñ¤¬
¥­¡¼¥¹¥È¥¢¤Ë¸ºß¤¹¤ë¤«¤É¤¦¤«¤Ë¤Ä¤¤¤Æ¤ÎÄɲþðÊ󤬽ÐÎϤµ¤ì¤Þ¤¹¡£
.LP
Ãí:
.I -keystore
¤Î°ú¿ô¤Ë¤Ï¡¢URL ¤ÎÂå¤ï¤ê¤Ë¥Õ¥¡¥¤¥ë̾ (¤È¥Ñ¥¹) ¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£¥Õ¥¡¥¤¥ë̾
(¤È¥Ñ¥¹) ¤ò»ØÄꤷ¤¿¾ì¹ç¤Ï¡¢¡Öfile:¡×URL ¤È¤·¤Æ°·¤ï¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë
»ØÄê¤Ç¤­¤Þ¤¹¡£
.LP
.B -keystore filePathAndName
.LP
¤³¤ì¤Ï¡¢¼¡¤Î»ØÄê¤ÈƱ¤¸¤â¤Î¤È¤·¤Æ°·¤ï¤ì¤Þ¤¹¡£
.LP
.B -keystore file:filePathAndName
.LP
\fP
.fi
JRE ¤Î \f2$JAVA_HOME/lib/security\fP ¥Ç¥£¥ì¥¯¥È¥ê¤Ë³ÊǼ¤µ¤ì¤¿ \f2java.security\fP ¥»¥­¥å¥ê¥Æ¥£¥×¥í¥Ñ¥Æ¥£¥Õ¥¡¥¤¥ëÆâ¤Ç Sun PKCS#11 ¥×¥í¥Ð¥¤¥À¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢keytool ¤È jarsigner ¤Ï PKCS#11 ¥È¡¼¥¯¥ó¤Ë´ð¤Å¤¤¤ÆÆ°ºî¤Ç¤­¤Þ¤¹¡£¼¡¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Þ¤¹¡£
.RS 3
.TP 2
o \f2\-keystore NONE\fP
.TP 2
o \f2\-storetype PKCS11\fP
.RE
¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥³¥Þ¥ó¥É¤Ï¡¢ÀßÄꤵ¤ì¤¿ PKCS#11 ¥È¡¼¥¯¥ó¤ÎÆâÍƤò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£
.RS 3
.LP
.nf
\f3
.fl
jarsigner \-keystore NONE \-storetype PKCS11 \-list
.fl
.fl
\fP
.fi
.RE
.TP 3
.B -storetype storetype
¥¤¥ó¥¹¥¿¥ó¥¹¤òÀ¸À®¤¹¤ë¥­¡¼¥¹¥È¥¢¤Î¥¿¥¤¥×¤ò»ØÄꤷ¤Þ¤¹¡£¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢¤Î
¥¿¥¤¥×¤Ï¡¢¥»¥­¥å¥ê¥Æ¥£¥×¥í¥Ñ¥Æ¥£¥Õ¥¡¥¤¥ë¤Ç keystore.type ¥×¥í¥Ñ¥Æ¥£¤ÎÃͤȤ·¤Æ
»ØÄꤵ¤ì¤¿¥¿¥¤¥×¤Ç¡¢
.I java.security.KeyStore
¤Î static
.I getDefaultType
¥á¥½¥Ã¥É¤Ë¤è¤Ã¤ÆÊÖ¤µ¤ì¤Þ¤¹¡£
.LP
\f2\-storepass\fP ¥ª¥×¥·¥ç¥ó¤ò»È¤Ã¤Æ PCKS#11 ¥È¡¼¥¯¥ó¤Î PIN ¤ò»ØÄꤹ¤ë¤³¤È¤â
¤Ç¤­¤Þ¤¹¡£²¿¤â»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¡¢keytool ¤È jarsigner ¤Ï¥æ¡¼¥¶¤Ë¥È¡¼¥¯¥ó PIN ¤Î
ÆþÎϤòµá¤á¤Þ¤¹¡£¥È¡¼¥¯¥ó¤Îǧ¾Ú¥Ñ¥¹¤¬¡¢ÀìÍѤΠPIN ¥Ñ¥Ã¥É¤ä¥Ð¥¤¥ª¥á¥È¥ê¥Ã¥¯¥ê¡¼¥À¤Î
¤è¤¦¤ÊÊݸ¤ì¤¿¥Ñ¥¹¤Ç¤¢¤ë¾ì¹ç¡¢\f2\-protected\fP ¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
¤³¤Î¾ì¹ç¡¢¥Ñ¥¹¥ï¡¼¥É¥ª¥×¥·¥ç¥ó¤Ï»ØÄê¤Ç¤­¤Þ¤»¤ó¡£
.TP
.B -storepass password
¥­¡¼¥¹¥È¥¢¤Ë¥¢¥¯¥»¥¹¤¹¤ë¤Î¤ËɬÍפʥѥ¹¥ï¡¼¥É¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤¬É¬Í×
¤Ê¤Î¤Ï¡¢JAR ¥Õ¥¡¥¤¥ë¤Ë½ð̾¤òÉÕ¤±¤ë¤È¤­¤À¤±¤Ç¤¹ (JAR ¥Õ¥¡¥¤¥ë¤ò¸¡¾Ú¤¹¤ë¤È¤­¤Ï
ÉÔÍ×)¡£½ð̾¤òÉÕ¤±¤ë¤È¤­¤Ë¡¢¥³¥Þ¥ó¥É¹Ô¤Ç
.I -storepass
¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
.RS
.LP
Ãí: ¥Æ¥¹¥È¤òÌÜŪ¤È¤¹¤ë¾ì¹ç¡¢¤Þ¤¿¤Ï°ÂÁ´¤¬Êݾ㤵¤ì¤¿¥·¥¹¥Æ¥à¤Ç¼Â¹Ô¤¹¤ë¾ì¹ç
°Ê³°¤Ï¡¢¥³¥Þ¥ó¥É¹Ô¤ä¥¹¥¯¥ê¥×¥È¤Ç¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£¤Þ¤¿¡¢
password ¥×¥í¥ó¥×¥È¤Ç¥Ñ¥¹¥ï¡¼¥É¤òÆþÎϤ¹¤ë¤È¡¢ÆþÎϤ·¤¿¥Ñ¥¹¥ï¡¼¥É¤¬¥¨¥³¡¼¤µ¤ì¡¢
¤½¤Î¤Þ¤Þ²èÌ̤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£¤³¤Î¤¿¤á¡¢¼þ°Ï¤Ë¤Û¤«¤Î¥æ¡¼¥¶¤¬¤¤¤ë¾ì¹ç¤Ï¡¢
¥Ñ¥¹¥ï¡¼¥É¤ò¸«¤é¤ì¤Ê¤¤¤è¤¦¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£
.RE
.TP
.B -keypass password
¥³¥Þ¥ó¥É¹Ô¤Ç»ØÄꤵ¤ì¤¿ÊÌ̾¤ËÂбþ¤¹¤ë¥­¡¼¥¹¥È¥¢¥¨¥ó¥È¥ê¤ÎÈó¸ø³«¸°¤òÊݸ¤ë¤Î
¤Ë»È¤¦¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Þ¤¹¡£
.B jarsigner
¤ò»È¤Ã¤Æ JAR ¥Õ¥¡¥¤¥ë¤Ë½ð̾¤òÉÕ¤±¤ë¤È¤­¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤¬É¬ÍפǤ¹¡£¥³¥Þ¥ó¥É¹Ô¤Ç
¥Ñ¥¹¥ï¡¼¥É¤¬»ØÄꤵ¤ì¤Æ¤ª¤é¤º¡¢É¬Íפʥѥ¹¥ï¡¼¥É¤¬¥¹¥È¥¢¤Î¥Ñ¥¹¥ï¡¼¥É¤È°Û¤Ê¤ë
¾ì¹ç¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤Þ¤¹¡£
.RS
.LP
Ãí: ¥Æ¥¹¥È¤òÌÜŪ¤È¤¹¤ë¾ì¹ç¡¢¤Þ¤¿¤Ï°ÂÁ´¤Ç¤¢¤ë¤³¤È¤¬¤ï¤«¤Ã¤Æ¤¤¤ë¥·¥¹¥Æ¥à¤Ç
¼Â¹Ô¤¹¤ë¾ì¹ç°Ê³°¤Ï¡¢¥³¥Þ¥ó¥É¹Ô¤ä¥¹¥¯¥ê¥×¥È¤Ç¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤷ¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
¤Þ¤¿¡¢password ¥×¥í¥ó¥×¥È¤Ç¥Ñ¥¹¥ï¡¼¥É¤òÆþÎϤ¹¤ë¤È¡¢ÆþÎϤ·¤¿¥Ñ¥¹¥ï¡¼¥É¤¬¥¨¥³¡¼
¤µ¤ì¡¢¤½¤Î¤Þ¤Þ²èÌ̤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£¤³¤Î¤¿¤á¡¢¼þ°Ï¤Ë¤Û¤«¤Î¥æ¡¼¥¶¤¬¤¤¤ë¾ì¹ç¤Ï¡¢
¥Ñ¥¹¥ï¡¼¥É¤ò¸«¤é¤ì¤Ê¤¤¤è¤¦¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£
.RE
.TP
.B -sigfile file
SF ¥Õ¥¡¥¤¥ë¤È .DSA ¥Õ¥¡¥¤¥ë¤ÎÀ¸À®¤Ë»È¤¦¥Ù¡¼¥¹¥Õ¥¡¥¤¥ë̾¤ò»ØÄꤷ¤Þ¤¹¡£
¤¿¤È¤¨¤Ð¡¢file ¤Ë DUKESIGN ¤ò»ØÄꤹ¤ë¤È¡¢À¸À®¤µ¤ì¤ë .SF ¥Õ¥¡¥¤¥ë¤È
.DSA ¥Õ¥¡¥¤¥ë¤Î̾Á°¤Ï¡¢¤½¤ì¤¾¤ì DUKESIGN.SF ¤È DUKESIGN.DSA ¤Ë¤Ê¤ê¤Þ¤¹¡£
¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¤Ï¡¢½ð̾ÉÕ¤­ JAR ¥Õ¥¡¥¤¥ë¤Î META-INF ¥Ç¥£¥ì¥¯¥È¥ê¤ËÃÖ¤«¤ì¤Þ¤¹¡£
.RS
.LP
.I file
¤Ë»ÈÍѤǤ­¤ëʸ»ú¤Ï¡Öa-zA-Z0-9_-¡×¤Ç¤¹¡£¤Ä¤Þ¤ê¡¢Ê¸»ú¡¢¿ô»ú¡¢²¼Àþ¡¢
¤ª¤è¤Ó¥Ï¥¤¥Õ¥ó¤À¤±¤ò»ÈÍѤǤ­¤Þ¤¹¡£Ãí:
.B .SF
¤ª¤è¤Ó
.B .DSA
¤Î¥Õ¥¡¥¤¥ë̾¤Ç¤Ï¡¢¾®Ê¸»ú¤Ï¤¹¤Ù¤ÆÂçʸ»ú¤ËÊÑ´¹¤µ¤ì¤Þ¤¹¡£
.LP
¥³¥Þ¥ó¥É¹Ô¤Ç
.I -sigfile
¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¡¢
.B .SF
¥Õ¥¡¥¤¥ë¤È
.B .DSA
¥Õ¥¡¥¤¥ë¤Î¥Ù¡¼¥¹¥Õ¥¡¥¤¥ë̾¤Ï¡¢¥³¥Þ¥ó¥É¹Ô¤Ç»ØÄꤵ¤ì¤¿ÊÌ̾¤ÎÀèƬ¤Î 8 ʸ»ú¤ò
¤¹¤Ù¤ÆÂçʸ»ú¤ËÊÑ´¹¤·¤¿¤â¤Î¤Ë¤Ê¤ê¤Þ¤¹¡£ÊÌ̾¤¬ 8 ʸ»ṳ́Ëþ¤Î¾ì¹ç¤Ï¡¢ÊÌ̾¤¬
¤½¤Î¤Þ¤Þ»È¤ï¤ì¤Þ¤¹¡£ÊÌ̾¤ÎÃæ¤Ë¡¢½ð̾¥Õ¥¡¥¤¥ë̾¤Ë»ÈÍѤǤ­¤Ê¤¤Ê¸»ú¤¬´Þ¤Þ¤ì¤Æ¤¤¤ë
¾ì¹ç¤Ï¡¢³ºÅö¤¹¤ëʸ»ú¤ò²¼Àþ (_) ¤ËÃÖ¤­´¹¤¨¤Æ¥Õ¥¡¥¤¥ë̾¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£
.TP 3
\-sigalg algorithm
.RS 3
.LP
JAR ¥Õ¥¡¥¤¥ë¤Î½ð̾¤Ë»ÈÍѤ¹¤ë½ð̾¥¢¥ë¥´¥ê¥º¥à¤Î̾Á°¤ò»ØÄꤷ¤Þ¤¹¡£
.LP
ɸ½à½ð̾¥¢¥ë¥´¥ê¥º¥à̾¤Î°ìÍ÷¤Ë¤Ä¤¤¤Æ¤Ï¡¢¡ÖJava Cryptography Architecture¡×(
http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/CryptoSpec.html#appa)
¤Ë¤¢¤ë
¡Ö
.I Appendix A
¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¤³¤Î¥¢¥ë¥´¥ê¥º¥à¤Ï¡¢JAR ¥Õ¥¡¥¤¥ë¤Î½ð̾¤Ë»ÈÍѤ¹¤ëÈëÌ©¸°¤È¸ß´¹À­¤Î¤¢¤ë¤â¤Î¤Ç¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¡¢ÈëÌ©¸°¤Î¥¿¥¤¥×¤Ë±þ¤¸¤Æ SHA1withDSA¡¢MD5withRSA ¤Î¤¤¤º¤ì¤«¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£»ØÄꤵ¤ì¤¿¥¢¥ë¥´¥ê¥º¥à¤Î¼ÂÁõ¤òÄ󶡤¹¤ë¥×¥í¥Ð¥¤¥À¤¬ÀÅŪ¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ë¤«¡¢¤¢¤ë¤¤¤Ï¥æ¡¼¥¶¤¬¤½¤Î¤è¤¦¤Ê¥×¥í¥Ð¥¤¥À¤ò
.I \-providerClass
¥ª¥×¥·¥ç¥ó¤ò»È¤Ã¤Æ»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¡¢¥³¥Þ¥ó¥É¤Î¼Â¹Ô¤¬¼ºÇÔ¤·¤Þ¤¹¡£
.LP
.RE
.TP 3
\-digestalg algorithm
.RS 3
JAR ¥Õ¥¡¥¤¥ë¤Î¥¨¥ó¥È¥ê¤ò¥À¥¤¥¸¥§¥¹¥È¤¹¤ëºÝ¤Ë»ÈÍѤ¹¤ë¥á¥Ã¥»¡¼¥¸¥À¥¤¥¸¥§¥¹¥È¥¢¥ë¥´¥ê¥º¥à¤Î̾Á°¤ò»ØÄꤷ¤Þ¤¹¡£
.LP
ɸ½à¥á¥Ã¥»¡¼¥¸¥À¥¤¥¸¥§¥¹¥È¥¢¥ë¥´¥ê¥º¥à̾¤Î°ìÍ÷¤Ë¤Ä¤¤¤Æ¤Ï¡¢¡ÖJava Cryptography Architecture¡×(http://java.sun.com/javase/6/docs/technotes/guides/security/crypto/CryptoSpec.html#appa)¤Î
¡Ö
.I Appendix A
¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¡¢SHA\-1 ¤¬»ÈÍѤµ¤ì¤Þ¤¹¡£»ØÄꤵ¤ì¤¿¥¢¥ë¥´¥ê¥º¥à¤Î¼ÂÁõ¤òÄ󶡤¹¤ë¥×¥í¥Ð¥¤¥À¤¬ÀÅŪ¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤ë¤«¡¢¤¢¤ë¤¤¤Ï¥æ¡¼¥¶¤¬¤½¤Î¤è¤¦¤Ê¥×¥í¥Ð¥¤¥À¤ò
.I \-providerClass
¥ª¥×¥·¥ç¥ó¤ò»È¤Ã¤Æ»ØÄꤹ¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¡¢¥³¥Þ¥ó¥É¤Î¼Â¹Ô¤¬¼ºÇÔ¤·¤Þ¤¹¡£
.RE
.TP
.B -signedjar file
½ð̾ÉÕ¤­ JAR ¥Õ¥¡¥¤¥ë¤Î̾Á°¤ò»ØÄꤷ¤Þ¤¹¡£
.RS
.LP
¥³¥Þ¥ó¥É¹Ô¤Ç̾Á°¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢ÆþÎÏ JAR ¥Õ¥¡¥¤¥ë (½ð̾¤ÎÂоݤȤʤë
JAR ¥Õ¥¡¥¤¥ë) ¤Î̾Á°¤ÈƱ¤¸Ì¾Á°¤¬»È¤ï¤ì¤Þ¤¹¡£¤³¤Î¾ì¹ç¡¢ÆþÎÏ JAR ¥Õ¥¡¥¤¥ë¤Ï½ð̾
ÉÕ¤­ JAR ¥Õ¥¡¥¤¥ë¤Ë¤è¤Ã¤Æ¾å½ñ¤­¤µ¤ì¤Þ¤¹¡£
.RE
.TP
.B -verify
¥³¥Þ¥ó¥É¹Ô¤Ç¤³¤Î¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢»ØÄꤵ¤ì¤¿ JAR ¥Õ¥¡¥¤¥ë¤¬
¸¡¾Ú¤µ¤ì¤Þ¤¹¡£JAR ¥Õ¥¡¥¤¥ë¤Ø¤Î½ð̾¤Ï¹Ô¤ï¤ì¤Þ¤»¤ó¡£¸¡¾Ú¤¬À®¸ù¤¹¤ë¤È¡¢
¡Öjar verified¡×¤È¤¤¤¦¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£½ð̾¤µ¤ì¤Æ¤¤¤Ê¤¤ JAR ¥Õ¥¡¥¤¥ë¡¢
¤Þ¤¿¤Ï¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤¤¥¢¥ë¥´¥ê¥º¥à (RSA ¥×¥í¥Ð¥¤¥À¤¬¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Æ¤¤¤Ê¤¤
¾ì¹ç¤Î RSA ¤Ê¤É) ¤ò»È¤Ã¤Æ½ð̾¤µ¤ì¤¿ JAR ¥Õ¥¡¥¤¥ë¤ò¸¡¾Ú¤·¤è¤¦¤È¤¹¤ë¤È¡¢
¡Öjar is unsigned. (signatures missing or not parsable)¡×¤È¤¤¤¦¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
.RS
.LP
½ð̾ÉÕ¤­ JAR ¥Õ¥¡¥¤¥ë¤Ï¡¢
.B jarsigner
¤Þ¤¿¤Ï JDK 1.1 ¤Î
.B javakey
¥Ä¡¼¥ë¡¢¤¢¤ë¤¤¤Ï¤½¤ÎξÊý¤ò»È¤Ã¤Æ¸¡¾Ú¤Ç¤­¤Þ¤¹¡£
.LP
¸¡¾Ú¤Ë¤Ä¤¤¤Æ¤Î¾ÜºÙ¤Ï¡¢¡ÖJAR ¥Õ¥¡¥¤¥ë¤Î¸¡¾Ú¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
.RE
.TP
.B -certs
¥³¥Þ¥ó¥É¹Ô¤Ç¡¢
.I -verify
¤ª¤è¤Ó
.I -verbose
¥ª¥×¥·¥ç¥ó¤È¤È¤â¤Ë¤³¤Î¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢JAR ¥Õ¥¡¥¤¥ë¤Î³Æ½ð̾¼Ô
¤Î¾ÚÌÀ½ñ¾ðÊó¤â½ÐÎϤµ¤ì¤Þ¤¹¡£¾ÚÌÀ½ñ¾ðÊó¤Ë¤Ï¼¡¤Î¤â¤Î¤¬´Þ¤Þ¤ì¤Þ¤¹¡£
.RS
.TP 2
\(bu
½ð̾¼Ô¤Î¸ø³«¸°¤ò¾ÚÌÀ¤¹¤ë (
.B .DSA
¥Õ¥¡¥¤¥ë¤Ë³ÊǼ¤µ¤ì¤¿) ¾ÚÌÀ½ñ¤Î¼ïÎà¤Î̾Á°
.TP 2
\(bu
¾ÚÌÀ½ñ¤¬ X.509 ¾ÚÌÀ½ñ (¶ñÂÎŪ¤Ë¤Ï
.I java.security.cert.X509Certificate
¤Î¥¤¥ó¥¹¥¿¥ó¥¹) ¤Ç¤¢¤ë¾ì¹ç¤Ï¡¢½ð̾¼Ô¤Î¼±ÊÌ̾
.LP
¥­¡¼¥¹¥È¥¢¤Î³Îǧ¤â¹Ô¤ï¤ì¤Þ¤¹¡£¥³¥Þ¥ó¥É¹Ô¤Ç¥­¡¼¥¹¥È¥¢¤ÎÃͤ¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤
¾ì¹ç¡¢¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢¥Õ¥¡¥¤¥ë¤¬¤¢¤ì¤Ð¡¢¤½¤ì¤¬³Îǧ¤µ¤ì¤Þ¤¹¡£½ð̾¼Ô¤Î
¸ø³«¸°¤Î¾ÚÌÀ½ñ¤¬¥­¡¼¥¹¥È¥¢Æâ¤Î¥¨¥ó¥È¥ê¤È°ìÃפ·¤¿¾ì¹ç¤Ï¡¢¼¡¤Î¾ðÊó¤âɽ¼¨
¤µ¤ì¤Þ¤¹¡£
.TP 2
\(bu
½ð̾¼Ô¤Ë³ºÅö¤¹¤ë¥­¡¼¥¹¥È¥¢¥¨¥ó¥È¥ê¤ÎÊÌ̾¡£¤³¤ÎÊÌ̾¤Ï³ç¸Ì¤Ç°Ï¤Þ¤ì¤Þ¤¹¡£
¤¿¤À¤·¡¢¥­¡¼¥¹¥È¥¢¤Ç¤Ï¤Ê¤¯ JDK 1.1 ¤Î¥¢¥¤¥Ç¥ó¥Æ¥£¥Æ¥£¥Ç¡¼¥¿¥Ù¡¼¥¹¤ËͳÍ褹¤ë
½ð̾¼Ô¤Î¾ì¹ç¤Ï¡¢³ç¸Ì¤Ç¤Ï¤Ê¤¯³Ñ³ç¸Ì¤Ç°Ï¤Þ¤ì¤Þ¤¹¡£
.RE
.TP
.B -verbose
¥³¥Þ¥ó¥É¹Ô¤Ç¤³¤Î¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢
.B jarsigner
¤Ï¡Ö¾éĹ¡×¥â¡¼¥É¤ÇÆ°ºî¤·¡¢JAR ¤Î½ð̾¤Þ¤¿¤Ï¸¡¾Ú¤Î¿Ê¹Ô¾õ¶·¤Ë´Ø¤¹¤ëÄɲþðÊó¤ò½Ð
ÎϤ·¤Þ¤¹¡£
.TP
.B -internalsf
°ÊÁ°¤Ï¡¢JAR ¥Õ¥¡¥¤¥ë¤Î½ð̾»þ¤ËÀ¸À®¤µ¤ì¤¿
.B .DSA
(½ð̾¥Ö¥í¥Ã¥¯) ¥Õ¥¡¥¤¥ë¤ÎÃæ¤Ë¡¢À¸À®¤µ¤ì¤¿
.B .SF
¥Õ¥¡¥¤¥ë (½ð̾¥Õ¥¡¥¤¥ë) ¤Î´°Á´¤Ê¥³¥Ô¡¼¤¬Éä¹æ²½¤µ¤ì¤¿·Á¤Ç´Þ¤Þ¤ì¤Æ¤¤¤Þ¤·¤¿¡£¤³¤Î
Æ°ºî¤ÏÊѹ¹¤Ë¤Ê¤ê¡¢¸½ºß¤Ç¤Ï¡¢½ÐÎÏ JAR ¥Õ¥¡¥¤¥ëÁ´ÂΤΥµ¥¤¥º¤ò¾®¤µ¤¯¤¹¤ë¤¿¤á¤Ë¡¢
¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï
.B .SF
¥Õ¥¡¥¤¥ë¤¬
.B .DSA
¥Õ¥¡¥¤¥ë¤Ë´Þ¤Þ¤ì¤Ê¤¤¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£¤¿¤À¤·¡¢¥³¥Þ¥ó¥É¹Ô¤Ç
.B -internalsf
¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤È¡¢°ÊÁ°¤ÈƱ¤¸¤è¤¦¤ËÆ°ºî¤·¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥Æ¥¹¥È¤ò¹Ô¤¦
¾ì¹ç¤Ë¤ÏÊØÍø¤Ç¤¹¤¬¡¢¤½¤ì°Ê³°¤Ë¤Ï»ÈÍѤ·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë
¤È¡¢Í­±×¤ÊºÇŬ²½¤¬¹Ô¤ï¤ì¤Ê¤¯¤Ê¤ê¤Þ¤¹¡£
.TP
.B -sectionsonly
¥³¥Þ¥ó¥É¹Ô¤Ç¤³¤Î¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢JAR ¥Õ¥¡¥¤¥ë¤Î½ð̾»þ¤ËÀ¸À®¤µ¤ì¤ë
.B .SF
¥Õ¥¡¥¤¥ë (½ð̾¥Õ¥¡¥¤¥ë) ¤Ë¤Ï¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¥Õ¥¡¥¤¥ëÁ´ÂΤΥϥå·¥å¤ò´Þ¤à¥Ø¥Ã¥À¤ÏÄɲ䵤ì¤Þ¤»¤ó¡£¤³¤Î¾ì¹ç¡¢.SF ¥Õ¥¡¥¤¥ë¤Ë´Þ¤Þ¤ì¤ë¤Î¤Ï¡¢JAR ¥Õ¥¡¥¤¥ëÆâ¤Î³Æ¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤Ë´Ø¤¹¤ë¾ðÊ󤪤è¤Ó¥Ï¥Ã¥·¥å¤À¤±¤Ç¤¹¡£¾ÜºÙ¤Ï¡¢¡Ö½ð̾ (\f3.SF\f1) ¥Õ¥¡¥¤¥ë¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
.RS
.LP
¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢ºÇŬ²½¤ò¹Ô¤¦¤¿¤á¤Ë¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¥Õ¥¡¥¤¥ëÁ´ÂΤΥϥå·¥å¤ò´Þ¤à¥Ø¥Ã¥À
¤¬Äɲ䵤ì¤Þ¤¹¡£¥Ø¥Ã¥À¤¬Â¸ºß¤¹¤ë¾ì¹ç¤Ï¡¢JAR ¥Õ¥¡¥¤¥ë¤Î¸¡¾Ú»þ¤Ë¡¢¤Þ¤º¥Ø¥Ã¥ÀÆâ
¤Î¥Ï¥Ã¥·¥å¤¬¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¥Õ¥¡¥¤¥ëÁ´ÂΤΥϥå·¥å¤È¼ÂºÝ¤Ë°ìÃפ¹¤ë¤«¤É¤¦¤«¤¬³Îǧ
¤µ¤ì¤Þ¤¹¡£¥Ï¥Ã¥·¥å¤¬°ìÃפ¹¤ë¾ì¹ç¡¢¸¡¾Ú¤Ï¼¡¤Î¼ê½ç¤Ë¿Ê¤ß¤Þ¤¹¡£¥Ï¥Ã¥·¥å¤¬°ìÃ×
¤·¤Ê¤¤¾ì¹ç¤Ï¡¢¸úΨŪ¤Ë¤ÏÎô¤ëÊýË¡¤ò»È¤Ã¤Æ¸¡¾Ú¤ò¹Ô¤¤¤Þ¤¹¡£¶ñÂÎŪ¤Ë¤Ï¡¢
.B .SF
¥Õ¥¡¥¤¥ëÆâ¤Î³Æ¥½¡¼¥¹¥Õ¥¡¥¤¥ë¾ðÊ󥻥¯¥·¥ç¥ó¤Î¥Ï¥Ã¥·¥å¤¬¡¢¥Þ¥Ë¥Õ¥§¥¹¥È¥Õ¥¡¥¤¥ëÆâ¤Î
Âбþ¤¹¤ë¥»¥¯¥·¥ç¥ó¤Î¥Ï¥Ã¥·¥å¤È°ìÃפ¹¤ë¤«¤É¤¦¤«¤ò³Îǧ¤·¤Þ¤¹¡£
.LP
¾ÜºÙ¤Ï¡¢¡ÖJAR ¥Õ¥¡¥¤¥ë¤Î¸¡¾Ú¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
.LP
¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¥Æ¥¹¥È¤ò¹Ô¤¦¾ì¹ç¤Ë¤ÏÊØÍø¤Ç¤¹¤¬¡¢¤½¤ì°Ê³°¤Ë¤Ï»ÈÍѤ·¤Ê¤¤¤Ç
¤¯¤À¤µ¤¤¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¤È¡¢Í­±×¤ÊºÇŬ²½¤¬¹Ô¤ï¤ì¤Ê¤¯¤Ê¤ê¤Þ¤¹¡£
.TP
.B -protected
\f2true\fP¡¢\f2false\fP ¤Î¤¤¤º¤ì¤«¡£ÀìÍÑ PIN ¥ê¡¼¥À¤Ê¤É¤ÎÊݸ¤ì¤¿Ç§¾Ú¥Ñ¥¹¤ò²ð¤·¤Æ¥Ñ¥¹¥ï¡¼¥É¤ò»ØÄꤹ¤ëɬÍפ¬¤¢¤ë¾ì¹ç¤Ë¤Ï¡¢¤³¤ÎÃÍ¤Ë \f2true\fP ¤ò»ØÄꤷ¤Æ¤¯¤À¤µ¤¤¡£
.RE
.TP
.B \-provider provider_class_name
¥µ¡¼¥Ó¥¹¥×¥í¥Ð¥¤¥À¤¬¥»¥­¥å¥ê¥Æ¥£¥×¥í¥Ñ¥Æ¥£¥Õ¥¡¥¤¥ë (\f2java.security\fP) ¤Î¥ê¥¹¥È¤Ë
Æþ¤Ã¤Æ¤¤¤Ê¤¤¤È¤­¤Ë¡¢°Å¹æ²½¥µ¡¼¥Ó¥¹¥×¥í¥Ð¥¤¥À¤Î¥Þ¥¹¥¿¡¼¥¯¥é¥¹¥Õ¥¡¥¤¥ë¤Î
̾Á°¤ò»ØÄꤷ¤Þ¤¹¡£
.LP
\f2\-providerArg\fP \f2ConfigFilePath\fP ¥ª¥×¥·¥ç¥ó¤ÈÁȤ߹ç¤ï¤»¤Æ»ÈÍѤ·¤Þ¤¹¡£keytool ¤È jarsigner ¤Ï¥×¥í¥Ð¥¤¥À¤òưŪ¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤·¤Þ¤¹ (¤³¤³¤Ç¡¢\f2ConfigFilePath\fP ¤Ï¥È¡¼¥¯¥óÀßÄê¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤Ç¤¹)¡£¥»¥­¥å¥ê¥Æ¥£¥×¥í¥Ñ¥Æ¥£¥Õ¥¡¥¤¥ëÆâ¤Ç Sun PKCS#11 ¥×¥í¥Ð¥¤¥À¤¬ÀßÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ë PKCS#11 ¥­¡¼¥¹¥È¥¢¤ò°ìÍ÷ɽ¼¨¤¹¤ë¥³¥Þ¥ó¥É¤ÎÎã¤ò¼¡¤Ë¼¨¤·¤Þ¤¹¡£
.RS 3
.LP
.nf
\f3
.fl
jarsigner \-keystore NONE \-storetype PKCS11 \\
.fl
\-providerClass sun.security.pkcs11.SunPKCS11 \\
.fl
\-providerArg /foo/bar/token.config \\
.fl
\-list
.fl
\fP
.fi
.RE
.TP 3
.B \-providerName providerName
\f2java.security\fP ¥»¥­¥å¥ê¥Æ¥£¥×¥í¥Ñ¥Æ¥£¥Õ¥¡¥¤¥ëÆâ¤Ç 2 ¤Ä°Ê¾å¤Î¥×¥í¥Ð¥¤¥À¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢\f2\-providerName\fP ¥ª¥×¥·¥ç¥ó¤ò»È¤Ã¤ÆÆÃÄê¤Î¥×¥í¥Ð¥¤¥À¥¤¥ó¥¹¥¿¥ó¥¹¤òÁªÂò¤Ç¤­¤Þ¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Î°ú¿ô¤Ï¡¢¥×¥í¥Ð¥¤¥À¤Î̾Á°¤Ë¤Ê¤ê¤Þ¤¹¡£
.LP
Sun PKCS#11 ¥×¥í¥Ð¥¤¥À¤Î¾ì¹ç¡¢\f2providerName\fP ¤Ï \f2SunPKCS11\-\fP\f2TokenName\fP ¤Î·Á¼°¤Ë¤Ê¤ê¤Þ¤¹¡£¤³¤³¤Ç¡¢\f2TokenName\fP ¤Ï¡¢¥×¥í¥Ð¥¤¥À¥¤¥ó¥¹¥¿¥ó¥¹¤ÎÀßÄê»þ¤Ë»ÈÍѤ·¤¿Ì¾Á°¤Î¥µ¥Õ¥£¥Ã¥¯¥¹¤Ç¤¹¡£¾ÜºÙ¤Ë¤Ä¤¤¤Æ¤Ï¡¢
.fi
http://java.sun.com/javase/6/docs/technotes/guides/security/p11guide.html#KeyToolJarSigner#ATTRS
¤Î
.na
¡Ö\f2configuration attributes table\fP¡×¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¥³¥Þ¥ó¥É¤Ï¡¢Ì¾Á°¥µ¥Õ¥£¥Ã¥¯¥¹ \f2SmartCard\fP ¤ò»ý¤Ä PKCS#11 ¥­¡¼¥¹¥È¥¢¥×¥í¥Ð¥¤¥À¥¤¥ó¥¹¥¿¥ó¥¹¤ÎÆâÍƤò°ìÍ÷ɽ¼¨¤·¤Þ¤¹¡£
.RS 3
.LP
.nf
\f3
.fl
jarsigner \-keystore NONE \-storetype PKCS11 \\
.fl
\-providerName SunPKCS11\-SmartCard \\
.fl
\-list
.fl
\fP
.fi
.RE
.TP
.B \-Jjavaoption
»ØÄꤷ¤¿
.I javaoption
ʸ»úÎó¤òľÀܼ¹Իþ¥·¥¹¥Æ¥à¤ËÅϤ·¤Þ¤¹¡£
\f3jarsigner\f1 ¤Ï¡¢¼ÂºÝ¤Ë¤Ï Java ¥¤¥ó¥¿¥×¥ê¥¿¤ËÂФ¹¤ë¡Ö¥é¥Ã¥Ñ¡¼¡×¤Ç¤¹¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ë¤Ï¡¢¶õÇò¤ò´Þ¤á¤ë¤³¤È¤Ï¤Ç¤­¤Þ¤»¤ó¡£¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï¡¢¼Â¹Ô´Ä¶­¤Þ¤¿¤Ï¥á¥â¥ê»ÈÍѤòÄ´À°¤¹¤ë¾ì¹ç¤ËÊØÍø¤Ç¤¹¡£»ØÄê¤Ç¤­¤ë¥Õ¥é¥°¤ò°ìÍ÷ɽ¼¨¤¹¤ë¤Ë¤Ï¡¢¥³¥Þ¥ó¥É¹Ô¤Ç
.I java -h
¤Þ¤¿¤Ï
.I java -X
¤ÈÆþÎϤ·¤Æ¤¯¤À¤µ¤¤¡£
.LP
.TP 3
\-tsa url
JAR ¥Õ¥¡¥¤¥ë½ð̾»þ¤Ë¥³¥Þ¥ó¥É¹Ô¤Ë\f2¡Ö-tsa http://example.tsa.url¡×\fP¤ÈÆþÎϤ·¤¿¾ì¹ç¡¢½ð̾¤Î¥¿¥¤¥à¥¹¥¿¥ó¥×¤¬À¸À®¤µ¤ì¤Þ¤¹¡£\f2http://example.tsa.url\fP ¤È¤¤¤¦ URL ¤¬¡¢TSA (Time Stamping Authority) ¤Î¾ì½ê¤òÆÃÄꤷ¤Þ¤¹¡£¤³¤ì¤Ï¡¢\f2\-tsacert\fP ¥ª¥×¥·¥ç¥ó·Ðͳ¤Ç¸«¤Ä¤«¤Ã¤¿¤É¤Î URL ¤è¤ê¤âÍ¥À褵¤ì¤Þ¤¹¡£\f2\-tsa\fP ¥ª¥×¥·¥ç¥ó¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢TSA ¤Î¸ø³«¸°¾ÚÌÀ½ñ¤¬¥­¡¼¥¹¥È¥¢Æâ¤Ë¸ºß¤·¤Æ¤¤¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£
.LP
¥¿¥¤¥à¥¹¥¿¥ó¥×¤òÀ¸À®¤¹¤ë¤¿¤á¤Ë¡¢\f2jarsigner\fP ¤Ï¡¢
.fi
http://www.ietf.org/rfc/rfc3161.txt
¤Î
.na
¡Ö\f2RFC 3161\fP¡×¤Çµ¬Äꤵ¤ì¤¿ TSP (Time\-Stamp Protocol) ¤ò»È¤Ã¤Æ TSA ¤ÈÄÌ¿®¤·¤Þ¤¹¡£À®¸ù¤¹¤ë¤È¡¢TSA ¤«¤éÊÖ¤µ¤ì¤¿¥¿¥¤¥à¥¹¥¿¥ó¥×¥È¡¼¥¯¥ó¤¬¡¢½ð̾¤È¤È¤â¤Ë½ð̾¥Ö¥í¥Ã¥¯¥Õ¥¡¥¤¥ëÆâ¤Ë³ÊǼ¤µ¤ì¤Þ¤¹¡£
.LP
.TP 3
\-tsacert alias
JAR ¥Õ¥¡¥¤¥ë½ð̾»þ¤Ë¥³¥Þ¥ó¥É¹Ô¤Ë\f2¡Ö-tsacert alias¡×\fP¤Èɽ¼¨¤µ¤ì¤¿¾ì¹ç¡¢½ð̾¤Î¥¿¥¤¥à¥¹¥¿¥ó¥×¤¬À¸À®¤µ¤ì¤Þ¤¹¡£\f2alias\fP ¤Ï¡¢¥­¡¼¥¹¥È¥¢Æâ¤Ç¸½ºßÍ­¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤ë TSA ¤Î¸ø³«¸°¾ÚÌÀ½ñ¤òÆÃÄꤷ¤Þ¤¹¡£¤½¤Î¥¨¥ó¥È¥ê¤Î¾ÚÌÀ½ñÆâ¤Ç¡¢TSA ¤Î¾ì½ê¤òÆÃÄꤹ¤ë URL ¤ò´Þ¤à Subject Information Access ³ÈÄ¥¤¬¸¡º÷¤µ¤ì¤Þ¤¹¡£
.LP
\f2\-tsacert\fP ¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¢TSA ¤Î¸ø³«¸°¾ÚÌÀ½ñ¤¬¥­¡¼¥¹¥È¥¢Æâ¤Ë¸ºß¤·¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
.LP
.TP 3
\-altsigner class
»ÈÍѤ¹¤ëÂåÂؽð̾µ¡¹½¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤Î´°Á´½¤¾þ¥¯¥é¥¹Ì¾¤Ï¡¢
.I com.sun.jarsigner.ContentSigner
Ãê¾Ý¥¯¥é¥¹¤ò³ÈÄ¥¤¹¤ë¥¯¥é¥¹¥Õ¥¡¥¤¥ë¤òÆÃÄꤷ¤Þ¤¹¡£¤³¤Î¥¯¥é¥¹¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤Ï¡¢
.I \-altsignerpath
¥ª¥×¥·¥ç¥ó¤ò»È¤Ã¤ÆÄêµÁ¤·¤Þ¤¹¡£
.I \-altsigner
¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤¿¾ì¹ç¡¢
.I jarsigner
¤Ï¤½¤Î»ØÄꤵ¤ì¤¿¥¯¥é¥¹¤¬Ä󶡤¹¤ë½ð̾µ¡¹½¤ò»ÈÍѤ·¤Þ¤¹¡£¤½¤ì°Ê³°¤Î¾ì¹ç¡¢
.I jarsigner
¤Ï¥Ç¥Õ¥©¥ë¥È¤Î½ð̾µ¡¹½¤ò»ÈÍѤ·¤Þ¤¹¡£
.LP
¤¿¤È¤¨¤Ð¡¢\f2com.sun.sun.jarsigner.AuthSigner\fP ¤È¤¤¤¦Ì¾Á°¤Î¥¯¥é¥¹¤¬Ä󶡤¹¤ë½ð̾µ¡¹½¤ò»ÈÍѤ¹¤ë¤Ë¤Ï¡¢\f2jarsigner\fP ¥ª¥×¥·¥ç¥ó\f2¡Ö-altsigner com.sun.jarsigner.AuthSigner¡×\fP¤ò»ÈÍѤ·¤Þ¤¹¡£
.LP
.TP 3
\-altsignerpath classpathlist
¥¯¥é¥¹¥Õ¥¡¥¤¥ë (¤³¤Î¥¯¥é¥¹¥Õ¥¡¥¤¥ë̾¤ÏÁ°½Ò¤Î \f2\-altsigner\fP ¥ª¥×¥·¥ç¥ó¤ò»È¤Ã¤Æ»ØÄê) ¤Ø¤Î¥Ñ¥¹¤È¡¢¤½¤Î¥¯¥é¥¹¤¬°Í¸¤¹¤ë¤¹¤Ù¤Æ¤Î JAR ¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£¤½¤Î¥¯¥é¥¹¥Õ¥¡¥¤¥ë¤¬ JAR ¥Õ¥¡¥¤¥ëÆâ¤Ë¸ºß¤·¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¡¢¼¡¤ÎÎã¤Ç¼¨¤¹¤è¤¦¤Ë¡¢¤½¤Î JAR ¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤ò»ØÄꤷ¤Þ¤¹¡£
.LP
ÀäÂХѥ¹¡¢¸½ºß¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ËÂФ¹¤ëÁêÂХѥ¹¤Î¤¤¤º¤ì¤«¤ò»ØÄê¤Ç¤­¤Þ¤¹¡£Ê£¿ô¤Î¥Ñ¥¹¤Þ¤¿¤Ï JAR ¥Õ¥¡¥¤¥ë¤ò \f2classpathlist\fP ¤Ë´Þ¤á¤ë¾ì¹ç¤Ë¤Ï¡¢Solaris ¾å¤Ç¤Ï¥³¥í¥ó (\f2:\fP)¡¢Windows ¾å¤Ç¤Ï¥»¥ß¥³¥í¥ó (\f2;\fP) ¤ò¤½¤ì¤¾¤ì»È¤Ã¤Æ¥¨¥ó¥È¥ê¤ò¶èÀڤäƤ¯¤À¤µ¤¤¡£¤³¤Î¥¯¥é¥¹¤¬¤¹¤Ç¤Ë¸¡º÷¥Ñ¥¹¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£
.LP
¥¯¥é¥¹¥Õ¥¡¥¤¥ë¤ò´Þ¤à JAR ¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤ò»ØÄꤹ¤ëÎã:
.RS 3
.LP
.LP
\f2\-altsignerpath /home/user/lib/authsigner.jar\fP
.LP
.RE
.LP
JAR ¥Õ¥¡¥¤¥ë̾¤¬´Þ¤Þ¤ì¤Æ¤¤¤ëÅÀ¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£
.LP
¥¯¥é¥¹¥Õ¥¡¥¤¥ë¤ò´Þ¤à JAR ¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹¤ò»ØÄꤹ¤ëÎã:
.RS 3
.LP
\f2\-altsignerpath /home/user/classes/com/sun/tools/jarsigner/\fP
.LP
.RE
.LP
JAR ¥Õ¥¡¥¤¥ë̾¤¬´Þ¤Þ¤ì¤Æ¤¤¤Ê¤¤ÅÀ¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£
.RE
.LP
.SH "Îã"
.LP
.SS
JAR ¥Õ¥¡¥¤¥ë¤Î½ð̾
.LP
.IX "jarsigner" "Signing a JAR File" "\fLjarsigner\fP \(em JAR signing and verification tool "
.LP
.B bundle.jar
¤È¤¤¤¦Ì¾Á°¤Î JAR ¥Õ¥¡¥¤¥ë¤¬¤¢¤ê¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤Ë¡¢¥­¡¼¥¹¥È¥¢¤ÎÊÌ̾¤¬ jane ¤Ç¤¢¤ë¥æ¡¼¥¶¤ÎÈó¸ø³«¸°¤ò»È¤Ã¤Æ¡¢½ð̾¤òÉÕ¤±¤ë¤È¤·¤Þ¤¹¡£¥­¡¼¥¹¥È¥¢¤Ï¡¢mystore ¤È¤¤¤¦Ì¾Á°¤Ç working ¥Ç¥£¥ì¥¯¥È¥ê¤Ë¤¢¤ê¡¢¥­¡¼¥¹¥È¥¢¤Î¥Ñ¥¹¥ï¡¼¥É¤Ï mypass¡¢
.I jane
¤ÎÈó¸ø³«¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤Ï j638klm ¤È¤·¤Þ¤¹¡£¤³¤Î¾ì¹ç¡¢¼¡¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤È¡¢JAR ¥Õ¥¡¥¤¥ë¤Ë½ð̾¤òÉÕ¤±¤Æ sbundle.jar ¤È¤¤¤¦½ð̾ÉÕ¤­ JAR ¥Õ¥¡¥¤¥ë¤òºîÀ®¤Ç¤­¤Þ¤¹¡£
.LP
.ft 3
.nf
jarsigner \-keystore "/working/mystore" \-storepass myspass
-keypass j638klm -signedjar sbundle.jar bundle.jar jane
.fi
.ft 1
.LP
¾å¤Î¥³¥Þ¥ó¥É¤Ç¤Ï
.I \-sigfile
¥ª¥×¥·¥ç¥ó¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¤Î¤Ç¡¢½ð̾ÉÕ¤­ JAR ¥Õ¥¡¥¤¥ë¤Ë³ÊǼ¤µ¤ì¤ë
.B .SF
¥Õ¥¡¥¤¥ë¤È
.B .DSA
¥Õ¥¡¥¤¥ë¤Î̾Á°¤Ï¡¢ÊÌ̾¤Ë´ð¤Å¤¯¥Ç¥Õ¥©¥ë¥È¤Î̾Á°¤Ë¤Ê¤ê¡¢¤½¤ì¤¾¤ì
.I JANE.SF
¤È
.I JANE.DSA
¤Ë¤Ê¤ê¤Þ¤¹¡£
.LP
¥¹¥È¥¢¤Î¥Ñ¥¹¥ï¡¼¥É¤ÈÈó¸ø³«¸°¤Î¥Ñ¥¹¥ï¡¼¥É¤ò¤¢¤È¤ÇÆþÎϤ¹¤ë¾ì¹ç¤Ï¡¢
¾å¤Î¥³¥Þ¥ó¥É¤òû½Ì¤·¤Æ¼¡¤Î¤è¤¦¤ËÆþÎϤǤ­¤Þ¤¹¡£
.LP
.ft 3
.nf
jarsigner \-keystore /working/mystore
-signedjar sbundle.jar bundle.jar jane
.fi
.ft 1
.LP
¥Ç¥Õ¥©¥ë¥È¤Î¥­¡¼¥¹¥È¥¢ (¥Û¡¼¥à¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î
.B .keystore
¤È¤¤¤¦Ì¾Á°¤Î¥­¡¼¥¹¥È¥¢) ¤ò»ÈÍѤ¹¤ë¾ì¹ç¤Ï¡¢¼¡¤Ë¼¨¤¹¤è¤¦¤Ë¡¢¥­¡¼¥¹¥È¥¢¤Î»ØÄê¤ò
¾Êά¤Ç¤­¤Þ¤¹¡£
.LP
.ft 3
.nf
jarsigner \-signedjar sbundle.jar bundle.jar jane
.fi
.ft 1
.LP
¤Þ¤¿¡¢½ð̾ÉÕ¤­ JAR ¥Õ¥¡¥¤¥ë¤ÇÆþÎÏ JAR ¥Õ¥¡¥¤¥ë (
.I bundle.jar
) ¤ò¾å½ñ¤­¤¹¤ë¾ì¹ç¤Ï¡¢
.I -signedjar
¥ª¥×¥·¥ç¥ó¤Î»ØÄê¤â¾Êά¤Ç¤­¤Þ¤¹¡£
.LP
.ft 3
.nf
jarsigner bundle.jar jane
.fi
.ft 1
.LP
.SS
½ð̾ÉÕ¤­ JAR ¥Õ¥¡¥¤¥ë¤Î¸¡¾Ú
.LP
.IX "jarsigner" "Verifying a Signed JAR File" "\fLjarsigner\fP \(em JAR signing and verification tool "
.LP
¼¡¤Ë¼¨¤¹¤Î¤Ï¡¢½ð̾ÉÕ¤­ JAR ¥Õ¥¡¥¤¥ë¤ò¸¡¾Ú¤·¡¢½ð̾¤¬Í­¸ú¤Ç JAR ¥Õ¥¡¥¤¥ë¤¬
²þÊѤµ¤ì¤Æ¤¤¤Ê¤¤¤³¤È¤ò³Îǧ¤¹¤ë¤¿¤á¤Î¥³¥Þ¥ó¥ÉÎã¤Ç¤¹¡£
.LP
.ft 3
.nf
jarsigner \-verify sbundle.jar
.fi
.ft 1
.LP
¸¡¾Ú¤¬À®¸ù¤¹¤ë¤È¡¢¼¡¤Î¤è¤¦¤Ê¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
.LP
.ft 3
.nf
jar verified.
.fi
.ft 1
.LP
¸¡¾Ú¤¬À®¸ù¤·¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
.LP
.I -verbose
¥ª¥×¥·¥ç¥ó¤ò»È¤¦¤È¡¢¤è¤ê¿¤¯¤Î¾ðÊó¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£¼¡¤Ë¼¨¤¹¤Î¤Ï¡¢
.I -verbose
¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿
.B jarsigner
¤Î¼Â¹ÔÎã¤È¤½¤Î½ÐÎÏ·ë²Ì¤Ç¤¹¡£
.LP
.ft 3
.nf
jarsigner -verify -verbose sbundle.jar
198 Fri Sep 26 16:14:06 PDT 1997 META-INF/MANIFEST.MF
199 Fri Sep 26 16:22:10 PDT 1997 META-INF/JANE.SF
1013 Fri Sep 26 16:22:10 PDT 1997 META-INF/JANE.DSA
smk 2752 Fri Sep 26 16:12:30 PDT 1997 AclEx.class
smk 849 Fri Sep 26 16:12:46 PDT 1997 test.class
s = signature was verified
m = entry is listed in manifest
k = at least one certificate was found in keystore
jar verified.
.fi
.ft 1
.LP
.SS
¾ÚÌÀ½ñ¾ðÊó¤ò»È¤Ã¤¿¸¡¾Ú
.LP
.IX "jarsigner" "Verification with Certificate Information" "\fLjarsigner\fP \(em JAR signing and verification tool "
¸¡¾Ú»þ¤Ë¡¢
.I -verify
¤È
.I -verbose
¥ª¥×¥·¥ç¥ó¤Ë²Ã¤¨¤Æ
.I -certs
¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¤Ï¡¢JAR ¥Õ¥¡¥¤¥ëÆâ¤Î³Æ½ð̾¼Ô¤Î¾ÚÌÀ½ñ¾ðÊó¤â½ÐÎϤµ¤ì¤Þ
¤¹¡£¤³¤ì¤Ë¤Ï¡¢¾ÚÌÀ½ñ¤Î¥¿¥¤¥×¡¢½ð̾¼Ô¤Î¼±ÊÌ̾¾ðÊó (X.509 ¾ÚÌÀ½ñ¤Î¾ì¹ç)¡¢¤ª¤è¤Ó¡¢
JAR ¥Õ¥¡¥¤¥ë¤Î¸ø³«¸°¤Î¾ÚÌÀ½ñ¤¬¥­¡¼¥¹¥È¥¢¥¨¥ó¥È¥ê¤Î¸ø³«¸°¤Î¾ÚÌÀ½ñ¤È°ìÃפ¹¤ë¾ì¹ç
¤Ë¤Ï¡¢³ç¸Ì¤Ç°Ï¤Þ¤ì¤¿½ð̾¼Ô¤Î¥­¡¼¥¹¥È¥¢ÊÌ̾¤¬´Þ¤Þ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë
½ÐÎϤµ¤ì¤Þ¤¹¡£
.LP
.ft 3
.nf
jarsigner -keystore /working/mystore -verify -verbose -certs myTest.jar
198 Fri Sep 26 16:14:06 PDT 1997 META-INF/MANIFEST.MF
199 Fri Sep 26 16:22:10 PDT 1997 META-INF/JANE.SF
1013 Fri Sep 26 16:22:10 PDT 1997 META-INF/JANE.DSA
208 Fri Sep 26 16:23:30 PDT 1997 META-INF/JAVATEST.SF
1087 Fri Sep 26 16:23:30 PDT 1997 META-INF/JAVATEST.DSA
smk 2752 Fri Sep 26 16:12:30 PDT 1997 Tst.class
X.509, CN=Test Group, OU=Java Software, O=Sun Microsystems, L=CUP, S=CA, C=US (javatest)
X.509, CN=Jane Smith, OU=Java Software, O=Sun, L=cup, S=ca, C=us (jane)
s = signature was verified
m = entry is listed in manifest
k = at least one certificate was found in keystore
jar verified.
.fi
.ft 1
.LP
½ð̾¼Ô¤Î¾ÚÌÀ½ñ¤¬ X.509 ¾ÚÌÀ½ñ¤Ç¤Ê¤¤¾ì¹ç¤Ï¡¢¼±ÊÌ̾¾ðÊó¤Ïɽ¼¨¤µ¤ì¤º¡¢¾ÚÌÀ½ñ¤Î
¥¿¥¤¥×¤ÈÊÌ̾¤À¤±¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¾ÚÌÀ½ñ¤¬ PGP ¾ÚÌÀ½ñ¤Ç¡¢ÊÌ̾¤¬ bob ¤Î
¾ì¹ç¤Ï¡¢¼¡¤Î¤è¤¦¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£
.LP
.ft 3
.nf
PGP, (bob)
.fi
.ft 1
.LP
.SS
¥¢¥¤¥Ç¥ó¥Æ¥£¥Æ¥£¥Ç¡¼¥¿¥Ù¡¼¥¹½ð̾¼Ô¤ò´Þ¤à JAR ¥Õ¥¡¥¤¥ë¤Î¸¡¾Ú
.LP
.IX "jarsigner" "Verification of a JAR File" "\fLjarsigner\fP \(em JAR signing and verification tool "
JAR ¥Õ¥¡¥¤¥ë¤¬¡¢JDK 1.1 ¤Î
.B javakey
¥Ä¡¼¥ë¤ò»È¤Ã¤Æ½ð̾¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢½ð̾¼Ô¤Ï¥¢¥¤¥Ç¥ó¥Æ¥£¥Æ¥£¥Ç¡¼¥¿¥Ù¡¼¥¹Æâ¤Î
ÊÌ̾¤Ç¤¹¡£¤³¤Î¾ì¹ç¡¢¸¡¾Ú¤Î½ÐÎÏ¤Ë¤Ï i ¤È¤¤¤¦µ­¹æ¤¬´Þ¤Þ¤ì¤Þ¤¹¡£JAR ¥Õ¥¡¥¤¥ë¤¬¡¢
¥¢¥¤¥Ç¥ó¥Æ¥£¥Æ¥£¥Ç¡¼¥¿¥Ù¡¼¥¹Æâ¤ÎÊÌ̾¤È¥­¡¼¥¹¥È¥¢Æâ¤ÎÊÌ̾¤ÎξÊý¤Ë¤è¤Ã¤Æ½ð̾
¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢k ¤È i ¤ÎξÊý¤¬É½¼¨¤µ¤ì¤Þ¤¹¡£
.LP
.I -certs
¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢¥­¡¼¥¹¥È¥¢¤ÎÊÌ̾¤Ï³ç¸Ì¤Ç°Ï¤Þ¤ì¤ë¤Î¤ËÂФ·¡¢¥¢¥¤¥Ç¥ó¥Æ¥£
¥Æ¥£¥Ç¡¼¥¿¥Ù¡¼¥¹Æâ¤ÎÊÌ̾¤Ï³Ñ³ç¸Ì¤Ç°Ï¤Þ¤ì¤Æɽ¼¨¤µ¤ì¤Þ¤¹¡£¤¿¤È¤¨¤Ð¡¢¼¡¤Î¤è¤¦¤Ë
ɽ¼¨¤µ¤ì¤Þ¤¹¡£
.LP
.ft 3
.nf
jarsigner \-keystore /working/mystore \-verify \-verbose \-certs writeFile.jar
198 Fri Sep 26 16:14:06 PDT 1997 META-INF/MANIFEST.MF
199 Fri Sep 26 16:22:10 PDT 1997 META-INF/JANE.SF
1013 Fri Sep 26 16:22:10 PDT 1997 META-INF/JANE.DSA
199 Fri Sep 27 12:22:30 PDT 1997 META-INF/DUKE.SF
1013 Fri Sep 27 12:22:30 PDT 1997 META-INF/DUKE.DSA
smki 2752 Fri Sep 26 16:12:30 PDT 1997 writeFile.html
X.509, CN=Jane Smith, OU=Java Software, O=Sun, L=cup, S=ca, C=us (jane)
X.509, CN=Duke, OU=Java Software, O=Sun, L=cup, S=ca, C=us [duke]
s = signature was verified
m = entry is listed in manifest
k = at least one certificate was found in keystore
i = at least one certificate was found in identity scope
jar verified.
.fi
.ft 1
.LP
ÊÌ̾ duke ¤Ï³Ñ³ç¸Ì¤Ç°Ï¤Þ¤ì¤Æ¤¤¤ë¤Î¤Ç¡¢¤³¤ÎÊÌ̾¤Ï¥­¡¼¥¹¥È¥¢¤ÎÊÌ̾¤Ç¤Ï¤Ê¤¯¡¢
¥¢¥¤¥Ç¥ó¥Æ¥£¥Æ¥£¥Ç¡¼¥¿¥Ù¡¼¥¹¤ÎÊÌ̾¤Ç¤¹¡£
.SH "´ØÏ¢¹àÌÜ"
.LP
.LP
.RS 3
.TP 2
o
jar ¥Ä¡¼¥ë¤Î¥É¥­¥å¥á¥ó¥È
.TP 2
o
keytool ¥Ä¡¼¥ë¤Î¥É¥­¥å¥á¥ó¥È
.TP 2
o
\f3jarsigner\fP ¥Ä¡¼¥ë¤Î»ÈÍÑÎã¤Ë¤Ä¤¤¤Æ¤Ï¡¢¡ÖJava Tutorial¡×
(http://java.sun.com/docs/books/tutorial/trailmap.html)
¤Î¡ÖSecurity¡×( http://java.sun.com/docs/books/tutorial/security1.2/index.html)
¤ò»²¾È
.na
.RE
.LP
.LP