Manpages

名 前

keytool − 鍵 と 証 明 書 の 管 理 ツ ー ル

形 式

keytool [ subcommands ]

機 能 説 明

keytool は 、 鍵 と 証 明 書 を 管 理 す る た め の ユ ー テ ィ リ テ ィ で す 。 keytool を 使 う と 、 自 分 の 公 開 鍵 と 非 公 開 鍵 の ペ ア 、 お よ び 関 連 す る 証 明 書 を 管 理 し 、 デ ジ タ ル 署 名 を 使 っ た 自 己 認 証 (ほ か の ユ ー ザ ま た は サ ー ビ ス に 対 し て 自 分 自 身 を 認 証 す る こ と ) や 、 デ ー タ の 完 全 性 と 認 証 に 関 す る サ ー ビ ス に 利 用 す る こ と が で き ま す 。 keytool で は 、 通 信 相 手 の 公 開 鍵 を (証 明 書 の 形 で ) キ ャ ッ シ ュ す る こ と も で き ま す 。

「 証 明 書 」 と は 、 あ る エ ン テ ィ テ ィ か ら の デ ジ タ ル 署 名 付 き の 文 書 の こ と で す 。 証 明 書 に は 、 ほ か の あ る エ ン テ ィ テ ィ (人 物 、 会 社 な ど ) の 公 開 鍵 (お よ び そ の 他 の 情 報 ) が 特 別 な 値 を 持 っ て い る こ と が 書 か れ て い ま す (「 証 明 書 」 を 参 照 )。 デ ー タ に デ ジ タ ル 署 名 が 付 い て い る 場 合 は 、 デ ジ タ ル 署 名 を 検 証 す る こ と で 、 デ ー タ の 完 全 性 お よ び デ ー タ が 本 物 で あ る こ と を チ ェ ッ ク で き ま す 。 デ ー タ の 「 完 全 性 」 と は 、 デ ー タ が 変 更 さ れ た り 、 改 変 さ れ た り し て い な い こ と を 意 味 し ま す 。 ま た 、 デ ー タ が 「 本 物 で あ る 」 と は 、 そ の デ ー タ が 、 デ ー タ を 作 成 し て 署 名 し た と 称 す る 人 物 か ら 実 際 に 渡 さ れ た デ ー タ で あ る こ と を 意 味 し ま す 。

keytool は 、 鍵 と 証 明 書 を 「 キ ー ス ト ア 」 に 格 納 し ま す 。 デ フ ォ ル ト の キ ー ス ト ア の 実 装 は 、 キ ー ス ト ア を フ ァ イ ル と し て 実 装 し て い ま す 。 キ ー ス ト ア は 、 非 公 開 鍵 を パ ス ワ ー ド で 保 護 し ま す 。

jarsigner(1) ツ ー ル は 、 キ ー ス ト ア の 情 報 を 使 っ て Java Archive (JAR) フ ァ イ ル に 対 す る デ ジ タ ル 署 名 の 生 成 と 検 証 を 行 い ま す 。 JAR フ ァ イ ル は 、 ク ラ ス フ ァ イ ル 、 イ メ ー ジ 、 サ ウ ン ド 、 お よ び そ の 他 の デ ジ タ ル デ ー タ を 単 一 の フ ァ イ ル に パ ッ ケ ー ジ 化 し ま す 。 jarsigner(1) は 、 JAR フ ァ イ ル に 付 属 す る 証 明 書 (JAR フ ァ イ ル の 署 名 ブ ロ ッ ク フ ァ イ ル に 含 ま れ て い る 証 明 書 ) を 使 っ て JAR フ ァ イ ル の デ ジ タ ル 署 名 を 検 証 し 、 証 明 書 の 公 開 鍵 が 「 信 頼 」 で き る か ど う か 、 つ ま り 、 該 当 す る 公 開 鍵 が 、 指 定 さ れ た キ ー ス ト ア に 含 ま れ て い る か ど う か を 調 べ ま す 。

注 : keytool ツ ー ル と jarsigner(1) ツ ー ル は 、 JDK 1.1 で 提 供 さ れ て い た javakey ツ ー ル を 完 全 に 置 き 換 え る も の で す 。 こ れ ら の 新 し い ツ ー ル は javakey よ り も 多 く の 機 能 を 備 え て お り 、 キ ー ス ト ア と 非 公 開 鍵 を パ ス ワ ー ド で 保 護 す る 機 能 や 、 署 名 の 生 成 に 加 え て 署 名 を 検 証 す る 機 能 を 持 っ て い ま す 。 新 し い キ ー ス ト ア ア ー キ テ ク チ ャ は 、 javakey が 作 成 し て 管 理 し て い た ア イ デ ン テ ィ テ ィ デ ー タ ベ ー ス に 代 わ る も の で す 。 -identitydb サ ブ コ マ ン ド を 使 う と 、 ア イ デ ン テ ィ テ ィ デ ー タ ベ ー ス の 情 報 を キ ー ス ト ア に イ ン ポ ー ト で き ま す 。

キ ー ス ト ア の エ ン ト リ
キ ー ス ト ア の エ ン ト リ に は 、 次 の 2 つ の 種 類 が あ り ま す 。

1.

鍵 の エ ン ト リ - 各 エ ン ト リ は 、 非 常 に 重 要 な 暗 号 化 の 鍵 の 情 報 を 保 持 し ま す 。 こ の 情 報 は 、 許 可 し て い な い ア ク セ ス を 防 ぐ た め に 、 保 護 さ れ た 形 で 格 納 さ れ ま す 。 一 般 に 、 こ の 種 の エ ン ト リ と し て 格 納 さ れ る 鍵 は 、 秘 密 鍵 か 、 対 応 す る 公 開 鍵 の 証 明 連 鎖 を 伴 う 非 公 開 鍵 で す 。 keytool ツ ー ル と jarsigner(1) ツ ー ル は こ の う ち 後 者 の 方 、 つ ま り 非 公 開 鍵 お よ び 関 連 す る 証 明 連 鎖 だ け を 扱 い ま す 。

2.

信 頼 で き る 証 明 書 の エ ン ト リ - 各 エ ン ト リ は 、 第 三 者 か ら の 公 開 鍵 証 明 書 を 1 つ 含 ん で い ま す 。 こ の 証 明 書 は 、 「 信 頼 で き る 証 明 書 」 と 呼 ば れ ま す 。 そ れ は 、 証 明 書 内 の 公 開 鍵 が 、 証 明 書 の 「 主 体 」 (所 有 者 ) に よ っ て 特 定 さ れ る ア イ デ ン テ ィ テ ィ に 由 来 す る も の で あ る こ と を 、 キ ー ス ト ア の 所 有 者 が 信 頼 す る か ら で す 。 証 明 書 の 発 行 者 は 、 証 明 書 に 署 名 を 付 け る こ と に よ っ て 、 そ の 内 容 を 保 証 し ま す 。

キ ー ス ト ア の 別 名
キ ー ス ト ア の す べ て の エ ン ト リ (鍵 お よ び 信 頼 で き る 証 明 書 ) は 、 一 意 の 「 別 名 」 を 介 し て ア ク セ ス さ れ ま す 。 別 名 で は 、 大 文 字 と 小 文 字 は 区 別 さ れ ま せ ん 。 し た が っ て 、 別 名 Hugo と hugo は 、 ど ち ら も 同 じ キ ー ス ト ア エ ン ト リ を 指 し ま す 。

-genkey サ ブ コ マ ン ド を 使 っ て 鍵 の ペ ア (公 開 鍵 と 非 公 開 鍵 ) を 生 成 し た り 、 -import サ ブ コ マ ン ド を 使 っ て 、 信 頼 で き る 証 明 書 の リ ス ト に 証 明 書 ま た は 証 明 連 鎖 を 追 加 す る な ど 、 キ ー ス ト ア に エ ン テ ィ テ ィ を 追 加 す る と き は 、 別 名 を 指 定 し ま す 。 こ れ 以 後 、 keytool コ マ ン ド で エ ン テ ィ テ ィ を 参 照 す る 場 合 は 、 こ の と き に 指 定 し た 別 名 を 使 用 す る 必 要 が あ り ま す 。

た と え ば 、 duke と い う 別 名 を 使 っ て 新 し い 公 開 鍵 と 非 公 開 鍵 の ペ ア を 生 成 し 、 公 開 鍵 を 自 己 署 名 証 明 書 (証 明 連 鎖 を 参 照 ) で ラ ッ プ す る と し ま す 。 こ の 場 合 は 、 次 の コ マ ン ド を 実 行 し ま す 。

example% keytool -genkey -alias duke -keypass dukekeypasswd

こ こ で は 、 初 期 パ ス ワ ー ド と し て dukekeypasswd を 指 定 し て い ま す 。 以 後 、 別 名 duke に 関 連 付 け ら れ た 非 公 開 鍵 に ア ク セ ス す る コ マ ン ド を 実 行 す る と き は 、 こ の パ ス ワ ー ド が 必 要 に な り ま す 。 duke の 非 公 開 鍵 の パ ス ワ ー ド を あ と か ら 変 更 す る に は 、 次 の コ マ ン ド を 実 行 し ま す 。

example% keytool -keypasswd -alias duke -keypass dukekeypasswd -new newpass

パ ス ワ ー ド が 、 dukekeypasswd か ら newpass に 変 更 さ れ ま す 。

注 : テ ス ト を 目 的 と す る 場 合 、 ま た は 安 全 で あ る こ と が わ か っ て い る シ ス テ ム で 実 行 す る 場 合 以 外 は 、 コ マ ン ド 行 や ス ク リ プ ト で パ ス ワ ー ド を 指 定 し な い で く だ さ い 。 必 要 な パ ス ワ ー ド の オ プ シ ョ ン を コ マ ン ド 行 で 指 定 し な か っ た 場 合 は 、 パ ス ワ ー ド の 入 力 を 求 め ら れ ま す 。 password プ ロ ン プ ト で パ ス ワ ー ド を 入 力 す る と 、 入 力 し た パ ス ワ ー ド が エ コ ー さ れ 、 そ の ま ま 画 面 に 表 示 さ れ ま す 。 こ の た め 、 周 囲 に ほ か の ユ ー ザ が い る 場 合 は 、 パ ス ワ ー ド を 見 ら れ な い よ う に 注 意 し て く だ さ い 。

キ ー ス ト ア の 場 所
keytool
の 各 コ マ ン ド に は 、 -keystore オ プ シ ョ ン が あ り ま す 。 こ の オ プ シ ョ ン で は 、 keytool で 管 理 す る キ ー ス ト ア に 対 応 す る 永 続 的 な キ ー ス ト ア フ ァ イ ル の 名 前 と 場 所 を 指 定 し ま す 。 キ ー ス ト ア は 、 デ フ ォ ル ト で は ユ ー ザ の ホ ー ム デ ィ レ ク ト リ の .keystore と い う 名 前 の フ ァ イ ル に 格 納 さ れ ま す 。 ユ ー ザ の ホ ー ム デ ィ レ ク ト リ は 、 user.home シ ス テ ム プ ロ パ テ ィ に よ っ て 決 ま り ま す 。

キ ー ス ト ア の 作 成
ま だ 存 在 し て い な い キ ー ス ト ア に 対 し 、 -genkey-import 、 ま た は -identitydb サ ブ コ マ ン ド を 使 っ て デ ー タ を 追 加 す る と 、 キ ー ス ト ア が 作 成 さ れ ま す 。

具 体 的 に は 、 -keystore オ プ シ ョ ン で キ ー ス ト ア を 指 定 し て い て 、 こ の キ ー ス ト ア が ま だ 存 在 し て い な い 場 合 は 、 指 定 し た キ ー ス ト ア が 作 成 さ れ ま す 。

-keystore オ プ シ ョ ン を 指 定 し な か っ た 場 合 、 デ フ ォ ル ト の キ ー ス ト ア は 、 ホ ー ム デ ィ レ ク ト リ 内 の .keystore と い う 名 前 の フ ァ イ ル に な り ま す 。 こ の フ ァ イ ル が ま だ 存 在 し て い な い 場 合 は 作 成 さ れ ま す 。

キ ー ス ト ア の 実 装
java.security パ ッ ケ ー ジ で 提 供 さ れ る KeyStore ク ラ ス に は 、 キ ー ス ト ア 内 の 情 報 に 対 す る ア ク セ ス と 変 更 を 行 う た め の 明 確 に 定 義 さ れ た イ ン タ フ ェ ー ス が 用 意 さ れ て い ま す 。 キ ー ス ト ア の 固 定 実 装 と し て は 、 そ れ ぞ れ が 特 定 の 「 タ イ プ 」 の キ ー ス ト ア を 対 象 と す る 複 数 の 異 な る 実 装 が 存 在 可 能 で す 。

現 在 、 keytooljarsigner(1) の 2 つ の コ マ ン ド 行 ツ ー ル と 、 policytool と い う 名 前 の 1 つ の GUI ベ ー ス の ツ ー ル が あ り ま す 。 KeyStore は public と し て 使 用 可 能 な の で 、 JDK ユ ー ザ は KeyStore を 使 っ た ほ か の セ キ ュ リ テ ィ ア プ リ ケ ー シ ョ ン も 作 成 で き ま す 。

キ ー ス ト ア に は 、 Sun が 提 供 す る 組 み 込 み の デ フ ォ ル ト の 実 装 が あ り ま す 。 こ れ は 、 JKS と い う 名 前 の 独 自 の キ ー ス ト ア タ イ プ (形 式 ) を 利 用 す る も の で 、 キ ー ス ト ア を フ ァ イ ル と し て 実 装 し て い ま す 。 こ の 実 装 で は 、 個 々 の 非 公 開 鍵 は 個 別 の パ ス ワ ー ド に よ っ て 保 護 さ れ 、 キ ー ス ト ア 全 体 の 完 全 性 も (非 公 開 鍵 と は 別 の ) パ ス ワ ー ド に よ っ て 保 護 さ れ ま す 。

キ ー ス ト ア の 実 装 は 、 プ ロ バ イ ダ ベ ー ス で す 。 具 体 的 に は 、 KeyStore が 提 供 す る ア プ リ ケ ー シ ョ ン イ ン タ フ ェ ー ス は 、 Service Provider Interface (SPI) と い う 形 で 実 装 さ れ て い ま す 。 つ ま り 、 対 応 す る KeystoreSpi 抽 象 ク ラ ス (こ れ も java.security パ ッ ケ ー ジ に 含 ま れ て い る ) が あ り 、 こ の ク ラ ス が Service Provider Interface の メ ソ ッ ド を 定 義 し て い ま す 。 こ れ ら の メ ソ ッ ド は 、 「 プ ロ バ イ ダ 」 が 実 装 し な け れ ば な り ま せ ん 。 こ こ で 、 「 プ ロ バ イ ダ 」 と は 、 Java Security API に よ っ て ア ク セ ス 可 能 な サ ー ビ ス の サ ブ セ ッ ト に 対 し 、 そ の 固 定 実 装 を 提 供 す る パ ッ ケ ー ジ ま た は パ ッ ケ ー ジ の 集 合 の こ と で す 。 し た が っ て 、 キ ー ス ト ア の 実 装 を 提 供 す る に は 、 「 Java 暗 号 化 ア ー キ テ ク チ ャ 用 プ ロ バ イ ダ の 実 装 方 法 」 で 説 明 し て い る よ う に 、 ク ラ イ ア ン ト が 「 プ ロ バ イ ダ 」 を 実 装 し 、 KeystoreSpi サ ブ ク ラ ス の 実 装 を 提 供 す る 必 要 が あ り ま す 。

ア プ リ ケ ー シ ョ ン で は 、 KeyStore ク ラ ス が 提 供 す る getInstance フ ァ ク ト リ メ ソ ッ ド を 使 う こ と で 、 さ ま ざ ま な プ ロ バ イ ダ か ら 異 な る 「 タ イ プ 」 の キ ー ス ト ア の 実 装 を 選 択 で き ま す 。 キ ー ス ト ア の タ イ プ は 、 キ ー ス ト ア 情 報 の 格 納 形 式 と デ ー タ 形 式 、 お よ び キ ー ス ト ア 内 の 非 公 開 鍵 と キ ー ス ト ア 自 体 の 完 全 性 を 保 護 す る た め に 使 わ れ る ア ル ゴ リ ズ ム を 定 義 し ま す 。 異 な る タ イ プ の キ ー ス ト ア の 実 装 に は 、 互 い に 互 換 性 は あ り ま せ ん 。

keytool は 、 任 意 の フ ァ イ ル ベ ー ス の キ ー ス ト ア 実 装 で 動 作 し ま す 。 keytool は 、 コ マ ン ド 行 か ら 渡 さ れ た キ ー ス ト ア の 場 所 を フ ァ イ ル 名 と し て 扱 い 、 こ れ を FileInputStream に 変 換 し て 、 FileInputStream か ら キ ー ス ト ア の 情 報 を ロ ー ド し ま す 。 一 方 、 jarsigner(1) ツ ー ル と policytool ツ ー ル は 、 URL で 指 定 可 能 な 任 意 の 場 所 か ら キ ー ス ト ア を 読 み 込 む こ と が で き ま す 。

keytooljarsigner(1) の 場 合 、 -storetype オ プ シ ョ ン を 使 っ て コ マ ン ド 行 で キ ー ス ト ア の タ イ プ を 指 定 で き ま す 。 Policy Tool の 場 合 は 、 [Edit] メ ニ ュ ー の [Change Keystore] コ マ ン ド を 使 っ て キ ー ス ト ア の タ イ プ を 指 定 で き ま す 。

キ ー ス ト ア の タ イ プ を 明 示 的 に 指 定 し な い 場 合 、 keytool、 jarsigner、 お よ び policytool の 各 ツ ー ル は 、 セ キ ュ リ テ ィ プ ロ パ テ ィ フ ァ イ ル 内 で 指 定 さ れ た keystore.type プ ロ パ テ ィ の 値 に 基 づ い て キ ー ス ト ア の 実 装 を 選 択 し ま す 。 セ キ ュ リ テ ィ プ ロ パ テ ィ フ ァ イ ル は 、 java.security と い う 名 前 で JDK セ キ ュ リ テ ィ プ ロ パ テ ィ デ ィ レ ク ト リ java.home/lib/security に 置 か れ て い ま す 。 java.home は 、 JDK の イ ン ス ト ー ル 先 デ ィ レ ク ト リ で す 。

各 ツ ー ル は 、 keystore.type の 値 を 取 得 し 、 こ の 値 で 指 定 さ れ た タ イ プ の キ ー ス ト ア を 実 装 し て い る プ ロ バ イ ダ が 見 つ か る ま で 、 現 在 イ ン ス ト ー ル さ れ て い る す べ て の プ ロ バ イ ダ を 調 べ ま す 。 目 的 の プ ロ バ イ ダ が 見 つ か る と 、 そ の プ ロ バ イ ダ か ら の キ ー ス ト ア の 実 装 を 使 い ま す 。

KeyStore ク ラ ス で は getDefaultType と い う 名 前 の static メ ソ ッ ド が 定 義 さ れ て お り 、 ア プ リ ケ ー シ ョ ン と ア プ レ ッ ト は こ の メ ソ ッ ド を 使 う こ と で keystore.type プ ロ パ テ ィ の 値 を 取 得 で き ま す 。 次 の コ ー ド は 、 デ フ ォ ル ト の キ ー ス ト ア タ イ プ ( keystore.type プ ロ パ テ ィ で 指 定 さ れ た タ イ プ ) の イ ン ス タ ン ス を 生 成 し ま す 。

KeyStore keyStore = KeyStore.getInstance(KeyStore.getDefaultType());

デ フ ォ ル ト の キ ー ス ト ア タ イ プ は jks (Sun が 提 供 す る 独 自 の タ イ プ の キ ー ス ト ア の 実 装 ) で す 。 こ れ は 、 セ キ ュ リ テ ィ プ ロ パ テ ィ フ ァ イ ル 内 の 次 の 行 に よ っ て 指 定 さ れ て い ま す 。

keystore.type=jks

各 ツ ー ル で デ フ ォ ル ト 以 外 の キ ー ス ト ア の 実 装 を 使 用 す る に は 、 上 の 行 を 変 更 し て 別 の キ ー ス ト ア の タ イ プ を 指 定 し ま す 。

た と え ば 、 pkcs12 と 呼 ば れ る タ イ プ の キ ー ス ト ア の 実 装 を 提 供 し て い る プ ロ バ イ ダ パ ッ ケ ー ジ を 使 用 す る に は 、 上 の 行 を 次 の よ う に 変 更 し ま す 。

keystore.type=pkcs12

注 : キ ー ス ト ア の タ イ プ の 指 定 で は 、 大 文 字 と 小 文 字 は 区 別 さ れ ま せ ん 。 た と え ば 、 JKS と jks は 同 じ も の と し て 扱 わ れ ま す 。

サ ポ ー ト さ れ る ア ル ゴ リ ズ ム と 鍵 の サ イ ズ
keytool
で は 、 登 録 さ れ て い る 暗 号 化 サ ー ビ ス プ ロ バ イ ダ が 提 供 す る 鍵 の ペ ア 生 成 お よ び 署 名 ア ル ゴ リ ズ ム の う ち 、 任 意 の ア ル ゴ リ ズ ム を 指 定 で き ま す 。 つ ま り 、 さ ま ざ ま な コ マ ン ド で 指 定 す る -keyalg オ プ シ ョ ン と -sigalg オ プ シ ョ ン は 、 プ ロ バ イ ダ 実 装 に よ っ て サ ポ ー ト さ れ て い な け れ ば な り ま せ ん 。 デ フ ォ ル ト の 鍵 の ペ ア 生 成 ア ル ゴ リ ズ ム は DSA で す 。 署 名 ア ル ゴ リ ズ ム は 、 基 に な る 非 公 開 鍵 の ア ル ゴ リ ズ ム か ら 派 生 し ま す 。 基 に な る 非 公 開 鍵 が DSA タ イ プ で あ る 場 合 、 デ フ ォ ル ト の 署 名 ア ル ゴ リ ズ ム は SHA1withDSA に な り 、 基 に な る 非 公 開 鍵 が RSA タ イ プ で あ る 場 合 は 、 デ フ ォ ル ト の 署 名 ア ル ゴ リ ズ ム は MD5withRSA に な り ま す

DSA 鍵 の ペ ア を 生 成 す る 場 合 、 鍵 の サ イ ズ は 512 〜 1024 ビ ッ ト で あ る 必 要 が あ り ま す 。 ま た 、 鍵 の サ イ ズ は 、 64 の 倍 数 で あ る 必 要 が あ り ま す 。 デ フ ォ ル ト の 鍵 の サ イ ズ は 、 ど の ア ル ゴ リ ズ ム の 場 合 で も 1024 ビ ッ ト で す 。

証 明 書
証 明 書 (公 開 鍵 証 明 書 と も 呼 ぶ ) と は 、 あ る エ ン テ ィ テ ィ (「 発 行 者 」 ) か ら の デ ジ タ ル 署 名 付 き の 文 書 の こ と で す 。 証 明 書 に は 、 ほ か の あ る エ ン テ ィ テ ィ ( 「 署 名 者 」 ) の 公 開 鍵 (お よ び そ の 他 の 情 報 ) が 特 別 な 値 を 持 っ て い る こ と が 書 か れ て い ま す 。

以 下 で は 、 い く つ か の 重 要 な 用 語 に つ い て 説 明 し ま す 。

公 開 鍵

公 開 鍵 は 、 特 定 の エ ン テ ィ テ ィ に 関 連 付 け ら れ た 数 で す 。 公 開 鍵 は 、 該 当 す る エ ン テ ィ テ ィ と の 間 に 信 頼 で き る 関 係 を 持 つ 必 要 が あ る す べ て の 人 に 対 し て 公 開 す る こ と を 意 図 し た も の で す 。 公 開 鍵 は 、 署 名 を 検 証 す る の に 使 わ れ ま す 。

デ ジ タ ル 署 名

デ ー タ が 「 デ ジ タ ル 署 名 」 さ れ る と 、 そ の デ ー タ は 、 エ ン テ ィ テ ィ の 「 ア イ デ ン テ ィ テ ィ 」 と 、 そ の エ ン テ ィ テ ィ が デ ー タ の 内 容 に つ い て 知 っ て い る こ と を 証 明 す る 署 名 と と も に 格 納 さ れ ま す 。 エ ン テ ィ テ ィ の 非 公 開 鍵 を 使 っ て デ ー タ に 署 名 を 付 け る と 、 デ ー タ の 偽 造 は 不 可 能 に な り ま す 。

ア イ デ ン テ ィ テ ィ

エ ン テ ィ テ ィ を 特 定 す る た め の 既 知 の 方 法 で す 。 シ ス テ ム に よ っ て は 、 公 開 鍵 を ア イ デ ン テ ィ テ ィ に す る も の が あ り ま す 。 公 開 鍵 の ほ か に も 、 Unix UID や 電 子 メ ー ル ア ド レ ス 、 X.509 識 別 名 な ど 、 さ ま ざ ま な も の を ア イ デ ン テ ィ テ ィ と す る こ と が で き ま す 。

署 名

署 名 は 、 な ん ら か の デ ー タ を 基 に エ ン テ ィ テ ィ (署 名 者 。 証 明 書 に 関 し て は 発 行 者 と も 呼 ば れ る ) の 非 公 開 鍵 を 使 っ て 計 算 さ れ ま す 。

非 公 開 鍵

非 公 開 鍵 は 特 定 の エ ン テ ィ テ ィ だ け が 知 っ て い る 数 の こ と で 、 こ の 数 の こ と を 、 そ の エ ン テ ィ テ ィ の 非 公 開 鍵 と い い ま す 。 非 公 開 鍵 は 、 ほ か に 知 ら れ な い よ う に 秘 密 に し て お く こ と が 前 提 に な っ て い ま す 。 ど の よ う な 「 公 開 鍵 暗 号 化 シ ス テ ム 」 で も 、 非 公 開 鍵 と 公 開 鍵 が 対 (ペ ア ) で 存 在 し ま す 。 DSA な ど の 典 型 的 な 公 開 鍵 暗 号 化 シ ス テ ム の 場 合 、 1 つ の 非 公 開 鍵 は 正 確 に 1 つ の 公 開 鍵 に 対 応 し ま す 。 非 公 開 鍵 は 、 署 名 を 計 算 す る の に 使 わ れ ま す 。

エ ン テ ィ テ ィ

エ ン テ ン テ ィ は 、 人 、 組 織 、 プ ロ グ ラ ム 、 コ ン ピ ュ ー タ 、 企 業 、 銀 行 な ど 、 一 定 の 度 合 い で 信 頼 の 対 象 と な る さ ま ざ ま な も の を 指 し ま す 。

公 開 鍵 暗 号 化 で は 、 そ の 性 質 上 、 ユ ー ザ の 公 開 鍵 に ア ク セ ス す る 必 要 が あ り ま す 。 大 規 模 な ネ ッ ト ワ ー ク 環 境 で は 、 互 い に 通 信 し て い る エ ン テ ィ テ ィ 間 で 以 前 の 関 係 が 引 き 続 き 確 立 さ れ て い る と 仮 定 し た り 、 使 わ れ て い る す べ て の 公 開 鍵 を 収 め た 信 頼 で き る リ ポ ジ ト リ が 存 在 す る と 仮 定 し た り す る こ と は 不 可 能 で す 。 証 明 書 は 、 こ の よ う な 公 開 鍵 配 布 の 問 題 に 対 す る 解 決 策 と し て 考 案 さ れ ま し た 。 「 証 明 書 発 行 局 」 (CA) は 、 信 頼 で き る 第 三 者 と し て 機 能 し ま す 。 CA は 、 ほ か の エ ン テ ィ テ ィ の 証 明 書 に 署 名 す る (発 行 す る ) 行 為 を 、 信 頼 し て 任 さ れ て い る エ ン テ ィ テ ィ (企 業 な ど ) で す 。 CA は 法 律 上 の 契 約 に 拘 束 さ れ る の で 、 有 効 か つ 信 頼 で き る 証 明 書 だ け を 作 成 す る も の と し て 扱 わ れ ま す 。 VeriSign、 Thawte、 Entrust を は じ め 、 多 く の CA が 存 在 し ま す 。 Netscape (TM) や Microsoft の 認 証 サ ー バ 、 Entrust の CA 製 品 な ど を 所 属 組 織 内 で 利 用 す れ ば 、 独 自 の 証 明 書 発 行 局 を 運 営 す る こ と も 可 能 で す 。

keytool を 使 う と 、 証 明 書 の 表 示 、 イ ン ポ ー ト 、 お よ び エ ク ス ポ ー ト を 行 う こ と が で き ま す 。 ま た 、 自 己 署 名 証 明 書 を 生 成 す る こ と も で き ま す 。

現 在 、 keytool は X.509 証 明 書 を 対 象 に し て い ま す 。

X.509 証 明 書
X.509 規 格 で は 、 証 明 書 に 含 め る 情 報 が 定 義 さ れ て お り 、 こ の 情 報 を 証 明 書 に 書 き 込 む 方 法 (デ ー タ 形 式 ) に つ い て も 記 述 さ れ て い ま す 。 す べ て の X.509 証 明 書 は 、 署 名 の ほ か に 次 の デ ー タ を 含 ん で い ま す 。

バ ー ジ ョ ン — 証 明 書 に 適 用 さ れ る X.509 規 格 の バ ー ジ ョ ン を 特 定 し ま す 。 証 明 書 に 指 定 で き る 情 報 は 、 バ ー ジ ョ ン に よ っ て 異 な り ま す 。 こ れ ま で に 、 3 つ の バ ー ジ ョ ン が 定 義 さ れ て い ま す 。 keytool で は 、 v1、 v2、 お よ び v3 の 証 明 書 の イ ン ポ ー ト と エ ク ス ポ ー ト が 可 能 で す 。 keytool が 生 成 す る の は 、 v1 の 証 明 書 で す 。 シ リ ア ル 番 号 — 証 明 書 を 作 成 し た エ ン テ ィ テ ィ は 、 そ の エ ン テ ィ テ ィ が 発 行 す る ほ か の 証 明 書 と 区 別 す る た め に 、 証 明 書 に シ リ ア ル 番 号 を 割 り 当 て ま す 。 こ の 情 報 は 、 さ ま ざ ま な 方 法 で 使 わ れ ま す 。 た と え ば 、 証 明 書 が 取 り 消 さ れ る と 、 シ リ ア ル 番 号 が 証 明 書 の 取 り 消 し リ ス ト (CRL) に 格 納 さ れ ま す 。 署 名 ア ル ゴ リ ズ ム 識 別 子 — 証 明 書 に 署 名 を 付 け る と き に CA が 使 っ た ア ル ゴ リ ズ ム を 特 定 し ま す 。 発 行 者 名 — 証 明 書 に 署 名 を 付 け た エ ン テ ィ テ ィ の X.500 識 別 名 で す 。 エ ン テ ィ テ ィ は 、 通 常 は CA で す 。 こ の 証 明 書 を 使 う こ と は 、 証 明 書 に 署 名 を 付 け た エ ン テ ィ テ ィ を 信 頼 す る こ と を 意 味 し ま す 。 「 ル ー ト 」 つ ま り ト ッ プ レ ベ ル の CA の 証 明 書 な ど 、 場 合 に よ っ て は 発 行 者 が 自 身 の 証 明 書 に 署 名 を 付 け る こ と が あ る 点 に 注 意 し て く だ さ い 。 有 効 期 間 — 各 証 明 書 は 、 限 ら れ た 期 間 だ け 有 効 に な り ま す 。 こ の 期 間 は 開 始 の 日 時 と 終 了 の 日 時 に よ っ て 指 定 さ れ 、 数 秒 の 短 い 期 間 か ら 100 年 と い う 長 期 に わ た る こ と も あ り ま す 。 有 効 期 間 は 、 証 明 書 の 署 名 に 使 わ れ た 非 公 開 鍵 の 強 度 や 証 明 書 に 対 し て 支 払 わ れ る 金 額 な ど 、 さ ま ざ ま な 要 因 を 考 慮 し て 選 択 さ れ ま す 。 関 連 付 け ら れ て い る 非 公 開 鍵 が 他 人 に 知 ら れ な い 限 り 、 エ ン テ ィ テ ィ が 証 明 書 を 信 頼 で き る 期 間 が 有 効 期 間 で す 。 主 体 名 — 証 明 書 に 関 連 付 け ら れ た 公 開 鍵 を 所 有 し て い る エ ン テ ィ テ ィ の 名 前 で す 。 イ ン タ ー ネ ッ ト 上 で 一 意 の 名 前 に す る た め 、 こ の 名 前 に は X.500 規 格 が 使 わ れ ま す 。 こ れ は 、 エ ン テ ィ テ ィ の X.500 識 別 名 (DN) で す 。 た と え ば 、 次 の よ う に な り ま す 。

CN=Java Duke, OU=Java Software Division, O=Sun Microsystems Inc, C=US

こ れ ら は そ れ ぞ れ 主 体 の 通 称 、 組 織 単 位 、 組 織 、 国 を 表 し ま す 。 主 体 の 公 開 鍵 情 報 — 名 前 を 付 け ら れ た エ ン テ ィ テ ィ の 公 開 鍵 と ア ル ゴ リ ズ ム 識 別 子 で す 。 ア ル ゴ リ ズ ム 識 別 子 で は 、 公 開 鍵 に 対 し て 使 わ れ て い る 公 開 鍵 暗 号 化 シ ス テ ム お よ び 関 連 す る 鍵 パ ラ メ ー タ が 指 定 さ れ て い ま す 。

X.509 Version 1 は 、 1988 年 か ら 利 用 さ れ て 広 く 普 及 し て お り 、 も っ と も 一 般 的 で す 。

X.509 Version 2 で は 、 主 体 や 発 行 者 の 名 前 を あ と で 再 利 用 で き る よ う に す る た め に 、 主 体 と 発 行 者 と に 一 意 識 別 子 の 概 念 が 導 入 さ れ ま し た 。 た だ し 、 ほ と ん ど の 証 明 書 プ ロ フ ァ イ ル 文 書 で は 、 名 前 の 再 利 用 お よ び 証 明 書 で の 一 意 識 別 子 の 利 用 を 推 奨 し て い ま せ ん 。 Version 2 の 証 明 書 は 、 広 く 普 及 し て い る と は い え ま せ ん 。

X.509 Version 3 は も っ と も 新 し い (1996 年 ) 規 格 で 、 エ ク ス テ ン シ ョ ン の 概 念 を サ ポ ー ト し て い ま す 。 エ ク ス テ ン シ ョ ン は 誰 で も 定 義 す る こ と が で き 、 証 明 書 に 含 め る こ と が で き ま す 。 現 在 使 わ れ て い る 一 般 的 な エ ク ス テ ン シ ョ ン と し て は 、 KeyUsage (「 署 名 専 用 」 な ど 、 鍵 の 使 用 を 特 定 の 目 的 に 制 限 す る )、 AlternativeNames (た と え ば 、 DNS 名 、 電 子 メ ー ル ア ド レ ス 、 IP ア ド レ ス な ど 、 ほ か の ア イ デ ン テ ィ テ ィ を 公 開 鍵 に 関 連 付 け る こ と が で き る ) な ど が あ り ま す 。 エ ク ス テ ン シ ョ ン に は 、 critical と い う マ ー ク を 付 け て 、 そ の エ ク ス テ ン シ ョ ン の チ ェ ッ ク と 使 用 を 義 務 づ け る こ と が で き ま す 。 た と え ば 、 critical と マ ー ク さ れ 、 KeyCertSign が 設 定 さ れ た KeyUsage エ ク ス テ ン シ ョ ン が 証 明 書 に 含 ま れ て い る 場 合 、 こ の 証 明 書 を SSL 通 信 中 に 提 示 す る と 、 証 明 書 が 拒 否 さ れ ま す 。 こ れ は 、 証 明 書 の エ ク ス テ ン シ ョ ン に よ っ て 、 関 連 す る 非 公 開 鍵 が 証 明 書 の 署 名 専 用 と し て 指 定 さ れ て お り 、 SSL で は 使 用 で き な い た め で す 。

証 明 書 の す べ て の デ ー タ は 、 ASN.1/DER と 呼 ば れ る 2 つ の 関 連 規 格 を 使 っ て 符 号 化 さ れ ま す 。 「 Abstract Syntax Notation 1 」 は デ ー タ に つ い て 記 述 し て い ま す 。 「 Definite Encoding Rules」 は 、 デ ー タ の 保 存 お よ び 転 送 の 方 法 に つ い て 記 述 し て い ま す 。

X.500 識 別 名
X.500 識 別 名 は 、 エ ン テ ィ テ ィ を 特 定 す る た め に 使 わ れ ま す 。 た と え ば 、 X.509 証 明 書 の subject フ ィ ー ル ド と issuer (署 名 者 ) フ ィ ー ル ド で 指 定 さ れ る 名 前 は 、 X.500 識 別 名 で す 。 keytool は 、 次 の サ ブ パ ー ト を サ ポ ー ト し て い ま す 。

commonName—人 の 通 称 。 「 Susan Jones」 な ど

organizationUnit—小 さ な 組 織 (部 、 課 な ど ) の 名 称 。 「 仕 入 部 」 な ど

organizationName—大 き な 組 織 の 名 称 。 「 ABCSystems, Inc.」 な ど

localityName—地 域 (都 市 ) 名 。 「 Palo Alto」 な ど

stateName—州 名 ま た は 地 方 名 。 「 California」 な ど

country—2 文 字 の 国 番 号 。 「 CH」 な ど

-genkey サ ブ コ マ ン ド ま た は -selfcert サ ブ コ マ ン ド の -dname オ プ シ ョ ン の 値 と し て 識 別 名 文 字 列 を 指 定 す る 場 合 は 、 次 の 形 式 で 指 定 す る 必 要 が あ り ま す 。

CN=cName, OU=orgUnit, O=org, L=city, S=state, C=countryCode

イ タ リ ッ ク 体 の 項 目 は 、 実 際 に 指 定 す る 値 を 表 し ま す 。 短 縮 形 の キ ー ワ ー ド の 意 味 は 、 次 の と お り で す 。

CN=commonName
OU=organizationUnit
O=organizationName
L=localityName
S=stateName
C=country

次 に 示 す の は 、 識 別 名 文 字 列 の 例 で す 。

CN=Mark Smith, OU=Java, O=Sun, L=Cupertino, S=California, C=US

次 は 、 こ の 文 字 列 を 使 っ た コ マ ン ド の 例 で す 。

example% keytool -genkey -dname "CN=Mark Smith, OU=Java,
O=Sun, L=Cupertino, S=California, C=US" -alias mark

キ ー ワ ー ド の 短 縮 形 で は 、 大 文 字 と 小 文 字 は 区 別 さ れ ま せ ん 。 た と え ば 、 CNcn 、 お よ び Cn は 、 ど れ も 同 じ も の と し て 扱 わ れ ま す 。

一 方 、 キ ー ワ ー ド の 指 定 順 序 に は 意 味 が あ り 、 各 サ ブ コ ン ポ ー ネ ン ト は 上 に 示 し た 順 序 で 指 定 す る 必 要 が あ り ま す 。 た だ し 、 サ ブ コ ン ポ ー ネ ン ト を す べ て 指 定 す る 必 要 は あ り ま せ ん 。 た と え ば 、 次 の よ う に 一 部 の サ ブ コ ン ポ ー ネ ン ト だ け を 指 定 で き ま す 。

CN=Steve Meier, OU=SunSoft, O=Sun, C=US

識 別 名 文 字 列 の 値 に コ ン マ が 含 ま れ る 場 合 に コ マ ン ド 行 の 文 字 列 を 指 定 す る と き に は 、 次 の よ う に 、 コ ン マ を \ 文 字 で エ ス ケ ー プ す る 必 要 が あ り ま す 。

cn=peter schuster, o=Sun Microsystems\, Inc., o=sun, c=us

識 別 名 文 字 列 を コ マ ン ド 行 で 指 定 す る 必 要 は あ り ま せ ん 。 識 別 名 を 必 要 と す る コ マ ン ド を 実 行 す る と き に 、 コ マ ン ド 行 で 識 別 名 を 指 定 し な か っ た 場 合 は 、 各 サ ブ コ ン ポ ー ネ ン ト の 入 力 を 求 め ら れ ま す 。 こ の 場 合 は 、 コ ン マ を \ 文 字 で エ ス ケ ー プ す る 必 要 は あ り ま せ ん 。

イ ン タ ー ネ ッ ト RFC 1421 証 明 書 エ ン コ ー デ ィ ン グ
多 く の 場 合 、 証 明 書 は 、 バ イ ナ リ エ ン コ ー デ ィ ン グ で は な く 、 イ ン タ ー ネ ッ ト RFC 1421 規 格 で 定 義 さ れ て い る プ リ ン ト 可 能 エ ン コ ー デ ィ ン グ 方 式 を 使 っ て 格 納 さ れ ま す 。 「 Base 64 エ ン コ ー デ ィ ン グ 」 と も 呼 ば れ る こ の 証 明 書 形 式 で は 、 電 子 メ ー ル や そ の 他 の 機 構 を 通 じ て 、 ほ か の ア プ リ ケ ー シ ョ ン に 証 明 書 を 容 易 に エ ク ス ポ ー ト で き ま す 。

-import サ ブ コ マ ン ド と -printcert サ ブ コ マ ン ド で は 、 こ の 形 式 の 証 明 書 と バ イ ナ リ エ ン コ ー デ ィ ン グ の 証 明 書 を 読 み 込 む こ と が で き ま す 。

-export サ ブ コ マ ン ド で は 、 デ フ ォ ル ト で バ イ ナ リ エ ン コ ー デ ィ ン グ の 証 明 書 が 出 力 さ れ ま す 。 た だ し 、 -rfc オ プ シ ョ ン を 指 定 し た 場 合 は 、 プ リ ン ト 可 能 エ ン コ ー デ ィ ン グ 方 式 の 証 明 書 が 出 力 さ れ ま す 。

-list サ ブ コ マ ン ド で は 、 デ フ ォ ル ト で 証 明 書 の MD5 フ ィ ン ガ ー プ リ ン ト が 出 力 さ れ ま す 。 -v オ プ シ ョ ン を 指 定 す る と 、 人 間 が 読 む こ と の で き る 形 式 で 証 明 書 が 出 力 さ れ ま す 。 一 方 、 -rfc オ プ シ ョ ン を 指 定 す る と 、 プ リ ン ト 可 能 エ ン コ ー デ ィ ン グ 方 式 で 証 明 書 が 出 力 さ れ ま す 。

プ リ ン ト 可 能 エ ン コ ー デ ィ ン グ 方 式 で 符 号 化 さ れ た 証 明 書 は 、 次 の 行 で 始 ま り ま す 。

-----BEGIN CERTIFICATE-----

最 後 は 、 次 の 行 で 終 わ り ま す 。

-----END CERTIFICATE-----

証 明 連 鎖
keytool
で は 、 非 公 開 鍵 お よ び 関 連 す る 証 明 「 連 鎖 」 を 含 む キ ー ス ト ア の 「 鍵 」 エ ン ト リ を 作 成 し 、 管 理 す る こ と が で き ま す 。 こ の よ う な エ ン ト リ で は 、 非 公 開 鍵 に 対 応 す る 公 開 鍵 は 、 連 鎖 の 最 初 の 証 明 書 に 含 ま れ て い ま す 。

鍵 を 初 め て 作 成 す る と ( -genkey サ ブ コ マ ン ド を 参 照 )、 「 自 己 署 名 証 明 書 」 と い う 1 つ の 要 素 だ け を 含 む 連 鎖 が 開 始 さ れ ま す 。 自 己 署 名 証 明 書 と は 、 発 行 者 (署 名 者 ) と 主 体 (証 明 書 に よ っ て 認 証 さ れ る 公 開 鍵 を 所 有 し て い る エ ン テ ィ テ ィ ) と が 同 一 の 証 明 書 の こ と で す 。 -genkey サ ブ コ マ ン ド を 呼 び 出 し て 新 し い 公 開 鍵 と 非 公 開 鍵 の ペ ア を 作 成 す る と 、 公 開 鍵 は 常 に 自 己 署 名 証 明 書 で ラ ッ プ さ れ ま す 。

こ の あ と 、 証 明 書 署 名 要 求 (CSR) が 生 成 さ れ て ( -certreq サ ブ コ マ ン ド を 参 照 )、 CSR が 証 明 書 発 行 局 (CA) に 送 信 さ れ る と 、 CA か ら の 応 答 が イ ン ポ ー ト さ れ ( -import コ マ ン ド を 参 照 )、 元 の 自 己 署 名 証 明 書 は 証 明 連 鎖 に よ っ て 置 き 換 え ら れ ま す 。 連 鎖 の 最 後 に あ る の は 、 主 体 の 公 開 鍵 を 認 証 し た CA が 発 行 し た 証 明 書 (応 答 ) で す 。 連 鎖 内 の そ の 前 の 証 明 書 は 、 「 CA」 の 公 開 鍵 を 認 証 す る 証 明 書 で す 。

CA の 公 開 鍵 を 認 証 す る 証 明 書 は 、 多 く の 場 合 、 自 己 署 名 証 明 書 (つ ま り CA が 自 身 の 公 開 鍵 を 認 証 し た 証 明 書 ) で あ り 、 こ れ は 連 鎖 の 最 初 の 証 明 書 に な り ま す 。 場 合 に よ っ て は 、 CA が 証 明 の 連 鎖 を 返 す こ と も あ り ま す 。 こ の 場 合 、 連 鎖 内 の 最 後 の 証 明 書 (CA に よ っ て 署 名 さ れ 、 鍵 エ ン ト リ の 公 開 鍵 を 認 証 す る 証 明 書 ) に 変 わ り は あ り ま せ ん が 、 連 鎖 内 の そ の 前 の 証 明 書 は 、 CSR の 送 信 先 の CA と は 「 別 の 」 CA に よ っ て 署 名 さ れ 、 CSR の 送 信 先 の CA の 公 開 鍵 を 認 証 す る 証 明 書 に な り ま す 。 さ ら に 、 連 鎖 内 の そ の 前 の 証 明 書 は 、 次 の CA の 鍵 を 認 証 す る 証 明 書 に な り ま す 。 以 下 同 様 に 、 自 己 署 名 さ れ た 「 ル ー ト 」 証 明 書 に 達 す る ま で 連 鎖 が 続 き ま す 。 し た が っ て 、 連 鎖 内 の (最 初 の 証 明 書 以 後 の ) 各 証 明 書 で は 、 連 鎖 内 の 次 の 証 明 書 の 署 名 者 の 公 開 鍵 が 認 証 さ れ て い る こ と に な り ま す 。

多 く の CA は 、 連 鎖 を サ ポ ー ト せ ず に 発 行 済 み の 証 明 書 だ け を 返 し ま す 。 特 に 、 中 間 の CA が 存 在 し な い フ ラ ッ ト な 階 層 構 造 の 場 合 は 、 そ の 傾 向 が 顕 著 で す 。 こ の よ う な 場 合 は 、 キ ー ス ト ア に す で に 格 納 さ れ て い る 信 頼 で き る 証 明 書 情 報 か ら 、 証 明 連 鎖 を 確 立 す る 必 要 が あ り ま す 。

別 の 応 答 形 式 (PKCS#7 で 定 義 さ れ て い る 形 式 ) で も 、 発 行 済 み 証 明 書 に 加 え 、 証 明 書 連 鎖 の サ ポ ー ト が 含 ま れ て い ま す 。 keytool で は 、 ど ち ら の 応 答 形 式 も 扱 う こ と が で き ま す 。

ト ッ プ レ ベ ル (ル ー ト ) CA の 証 明 書 は 、 自 己 署 名 証 明 書 で す 。 た だ し 、 ル ー ト の 公 開 鍵 に 対 す る 信 頼 は 、 ル ー ト の 証 明 書 自 体 か ら 導 き 出 さ れ る も の で は な く (た と え ば 、 VeriSign ル ー ト CA の よ う な 有 名 な 識 別 名 を 使 っ た 自 己 署 名 証 明 書 を 作 成 す る こ と 自 体 は 誰 で も 可 能 )、 新 聞 な ど の ほ か の 情 報 源 に 由 来 す る も の で す 。 ル ー ト CA の 公 開 鍵 は 広 く 知 ら れ て い ま す 。 ル ー ト CA の 公 開 鍵 を 証 明 書 に 格 納 す る 理 由 は 、 証 明 書 と い う 形 式 に す る こ と で 多 く の ツ ー ル か ら 利 用 で き る よ う に な る か ら に す ぎ ま せ ん 。 つ ま り 、 証 明 書 は 、 ル ー ト CA の 公 開 鍵 を 運 ぶ 「 媒 体 」 と し て 利 用 さ れ る だ け で す 。 ル ー ト CA の 証 明 書 を キ ー ス ト ア に 追 加 す る と き は 、 そ の 前 に 証 明 書 の 内 容 を 表 示 し (-printcert オ プ シ ョ ン を 使 用 )、 表 示 さ れ た フ ィ ン ガ ー プ リ ン ト と 、 新 聞 や ル ー ト CA の Web ペ ー ジ な ど か ら 入 手 し た 既 知 の フ ィ ン ガ ー プ リ ン ト と を 比 較 す る 必 要 が あ り ま す 。

証 明 書 の イ ン ポ ー ト
証 明 書 を フ ァ イ ル か ら イ ン ポ ー ト す る に は 、 -import サ ブ コ マ ン ド を 使 い ま す 。 た と え ば 、 次 の よ う に し ま す 。

example% keytool -import -alias joe -file jcertfile.cer

こ の 例 は 、 フ ァ イ ル jcertfile.cer の 証 明 書 を イ ン ポ ー ト し 、 別 名 joe に よ っ て 特 定 さ れ る キ ー ス ト ア エ ン ト リ に 証 明 書 を 格 納 し ま す 。

証 明 書 の イ ン ポ ー ト に は 、 次 の 2 つ の 目 的 が あ り ま す 。

1.

信 頼 で き る 証 明 書 の リ ス ト に 証 明 書 を 追 加 す る

2.

CA に 証 明 書 署 名 要 求 ( -certreq サ ブ コ マ ン ド を 参 照 ) を 送 信 し た 結 果 と し て 、 CA か ら 受 け 取 っ た 証 明 書 応 答 を イ ン ポ ー ト す る

ど ち ら の 種 類 の イ ン ポ ー ト を 行 う か は 、 -alias オ プ シ ョ ン の 値 に よ っ て 指 定 し ま す 。 指 定 し た 別 名 が デ ー タ ベ ー ス 内 に 存 在 し 、 そ の 別 名 に よ っ て 非 公 開 鍵 を 持 つ エ ン ト リ が 特 定 さ れ る 場 合 は 、 証 明 書 応 答 の イ ン ポ ー ト が 指 定 さ れ た も の と み な さ れ ま す 。 keytool は 、 証 明 書 応 答 内 の 公 開 鍵 が 、 指 定 さ れ た 別 名 で 格 納 さ れ た 公 開 鍵 と 一 致 す る か ど う か を 調 べ 、 一 致 し な い 場 合 は 処 理 を 行 い ま せ ん 。 指 定 さ れ た 別 名 で 特 定 さ れ る キ ー ス ト ア エ ン ト リ が 、 上 記 以 外 の 種 類 の エ ン ト リ で あ る 場 合 、 証 明 書 は イ ン ポ ー ト さ れ ま せ ん 。 指 定 さ れ た 別 名 が 存 在 し な い 場 合 は 、 別 名 が 作 成 さ れ 、 作 成 さ れ た 別 名 は 、 イ ン ポ ー ト さ れ た 証 明 書 に 関 連 付 け ら れ ま す 。

信 頼 で き る 証 明 書 の イ ン ポ ー ト に 関 す る 注 意 事 項

重 要 : 信 頼 で き る 証 明 書 と し て 証 明 書 を イ ン ポ ー ト す る 前 に 、 証 明 書 の 内 容 を 慎 重 に 調 べ て く だ さ い 。

ま ず 、 証 明 書 の 内 容 を 表 示 し ( -printcert サ ブ コ マ ン ド を 使 用 す る か 、 ま た は -noprompt オ プ シ ョ ン を 指 定 し な い で -import サ ブ コ マ ン ド を 使 用 )、 表 示 さ れ た 証 明 書 の フ ィ ン ガ ー プ リ ン ト が 、 期 待 さ れ る フ ィ ン ガ ー プ リ ン ト と 一 致 す る か ど う か を 確 認 し ま す 。 た と え ば 、 あ る ユ ー ザ か ら 証 明 書 が 送 ら れ て き て 、 こ の 証 明 書 を /tmp/cert と い う 名 前 で フ ァ イ ル に 格 納 し て い る と し ま す 。 こ の 場 合 は 、 信 頼 で き る 証 明 書 の リ ス ト に こ の 証 明 書 を 追 加 す る 前 に 、 -printcert サ ブ コ マ ン ド を 実 行 し て フ ィ ン ガ ー プ リ ン ト を 表 示 で き ま す 。 た と え ば 、 次 の よ う に し ま す 。

example% keytool -printcert -file /tmp/cert
Owner: CN=ll, OU=ll, O=ll, L=ll, S=ll, C=ll
Issuer: CN=ll, OU=ll, O=ll, L=ll, S=ll, C=ll
Serial Number: 59092b34
Valid from: Thu Sep 25 18:01:13 PDT 1997 until: Wed Dec 24 17:01:13 PST 1997
Certificate Fingerprints:
MD5: 11:81:AD:92:C8:E5:0E:A2:01:2E:D4:7A:D7:5F:07:6F
SHA1: 20:B6:17:FA:EF:E5:55:8A:D0:71:1F:E8:D6:9D:C0:37:13:0E:5E:FE

次 に 、 証 明 書 を 送 信 し た 人 物 に 連 絡 し 、 こ の 人 物 が 提 示 し た フ ィ ン ガ ー プ リ ン ト と 、 上 の コ マ ン ド で 表 示 さ れ た フ ィ ン ガ ー プ リ ン ト と を 比 較 し ま す 。 フ ィ ン ガ ー プ リ ン ト が 一 致 す れ ば 、 送 信 途 中 で ほ か の 何 者 か (攻 撃 者 な ど ) に よ る 証 明 書 の す り 替 え が 行 わ れ て い な い こ と を 確 認 で き ま す 。 送 信 途 中 で こ の 種 の 攻 撃 が 行 わ れ て い た 場 合 、 チ ェ ッ ク を 行 わ ず に 証 明 書 を イ ン ポ ー ト す る と 、 攻 撃 者 に よ っ て 署 名 さ れ た す べ て の も の (攻 撃 的 意 図 を 持 つ ク ラ ス フ ァ イ ル を 含 ん だ JAR フ ァ イ ル な ど ) を 信 頼 す る こ と に な り ま す 。

注 : 証 明 書 を イ ン ポ ー ト す る 前 に 必 ず -printcert サ ブ コ マ ン ド を 実 行 し な け れ ば な ら な い わ け で は あ り ま せ ん 。 -import サ ブ コ マ ン ド を 実 行 す る と 、 キ ー ス ト ア 内 の 信 頼 で き る 証 明 書 の リ ス ト に 証 明 書 を 追 加 す る 前 に 、 証 明 書 の 情 報 が 表 示 さ れ 、 確 認 を 求 め る メ ッ セ ー ジ が 表 示 さ れ ま す 。 イ ン ポ ー ト 操 作 は 、 こ の 時 点 で 中 止 で き ま す 。 た だ し 、 確 認 メ ッ セ ー ジ が 表 示 さ れ る の は 、 -import サ ブ コ マ ン ド を -noprompt オ プ シ ョ ン を 指 定 せ ず に 実 行 し た 場 合 だ け で す 。 -noprompt オ プ シ ョ ン が 指 定 さ れ て い る 場 合 、 ユ ー ザ と の 対 話 は 行 わ れ ま せ ん 。

証 明 書 の エ ク ス ポ ー ト
証 明 書 を フ ァ イ ル に エ ク ス ポ ー ト す る に は 、 -export サ ブ コ マ ン ド を 使 い ま す 。 た と え ば 、 次 の よ う に し ま す 。

example% keytool -export -alias jane -file janecertfile.cer

こ の 例 は 、 jane の 証 明 書 を フ ァ イ ル janecertfile.cer に エ ク ス ポ ー ト し ま す 。 jane が 鍵 エ ン ト リ の 別 名 で あ る 場 合 は 、 指 定 さ れ た キ ー ス ト ア エ ン ト リ の 証 明 連 鎖 の 最 後 の 証 明 書 を エ ク ス ポ ー ト し ま す 。 こ の 証 明 書 は 、 jane の 公 開 鍵 を 認 証 す る 証 明 書 で す 。

一 方 、 jane が 、 信 頼 で き る 証 明 書 の エ ン ト リ の 別 名 で あ る 場 合 は 、 該 当 す る 信 頼 で き る 証 明 書 が エ ク ス ポ ー ト さ れ ま す 。

証 明 書 の 表 示
キ ー ス ト ア エ ン ト リ の 内 容 を 表 示 す る に は 、 -list サ ブ コ マ ン ド を 使 い ま す 。 た と え ば 、 次 の よ う に し ま す 。

example% keytool -list -alias joe

次 は 、 別 名 を 指 定 し な い 例 で す 。

example% keytool -list

別 名 を 指 定 し な い 場 合 は 、 キ ー ス ト ア 全 体 の 内 容 が 表 示 さ れ ま す 。

フ ァ イ ル に 格 納 さ れ て い る 証 明 書 の 内 容 を 表 示 す る に は 、 -printcert サ ブ コ マ ン ド を 使 い ま す 。 た と え ば 、 次 の よ う に し ま す 。

example% keytool -printcert -file certfile.cer

こ の 例 で は 、 フ ァ イ ル certfile.cer に 格 納 さ れ て い る 証 明 書 の 情 報 が 表 示 さ れ ま す 。

注 : こ の コ マ ン ド は 、 キ ー ス ト ア と は 関 係 な く 動 作 し ま す 。 つ ま り 、 キ ー ス ト ア が な い 場 合 で も 、 フ ァ イ ル に 格 納 さ れ た 証 明 書 を 表 示 で き ま す 。

自 己 署 名 証 明 書 の 生 成
「 自 己 署 名 証 明 書 」 と は 、 発 行 者 (署 名 者 ) と 主 体 (証 明 書 に よ っ て 認 証 さ れ る 公 開 鍵 を 所 有 し て い る エ ン テ ィ テ ィ ) と が 同 一 の 証 明 書 の こ と で す 。 -genkey サ ブ コ マ ン ド を 呼 び 出 し て 新 し い 公 開 鍵 と 非 公 開 鍵 の ペ ア を 作 成 す る と 、 公 開 鍵 は 常 に 自 己 署 名 証 明 書 で ラ ッ プ さ れ ま す 。

場 合 に よ っ て は 、 新 し い 自 己 署 名 証 明 書 を 作 成 し た い こ と が あ り ま す 。 た と え ば 、 同 じ 鍵 の ペ ア を 別 の ア イ デ ン テ ィ テ ィ (識 別 名 ) で 使 い た い 場 合 な ど で す 。 例 と し て 、 所 属 部 課 が 変 更 に な っ た と し ま す 。 こ の 場 合 は 、 次 の よ う に し ま す 。

1.

元 の 鍵 エ ン ト リ を コ ピ ー (複 製 ) す る ( -keyclone を 参 照 )

2.

新 し い 識 別 名 を 使 っ て 、 複 製 し た エ ン ト リ の 新 し い 自 己 署 名 証 明 書 を 生 成 す る (以 下 を 参 照 )

3.

複 製 し た エ ン ト リ の 証 明 書 署 名 要 求 を 生 成 し 、 応 答 と し て 送 ら れ て き た 証 明 書 ま た は 証 明 連 鎖 を イ ン ポ ー ト す る ( -certreq サ ブ コ マ ン ド と -import サ ブ コ マ ン ド を 参 照 )

4.

元 の (不 要 に な っ た ) エ ン ト リ を 削 除 す る ( -delete コ マ ン ド を 参 照 )

自 己 署 名 証 明 書 を 生 成 す る に は 、 -selfcert サ ブ コ マ ン ド を 使 い ま す 。 た と え ば 、 次 の よ う に し ま す 。

example% keytool -selfcert -alias dukeNew -keypass b92kqmp
-dname "cn=Duke Smith, ou=Purchasing, o=BlueSoft, c=US"

生 成 さ れ た 証 明 書 は 、 指 定 し た 別 名 (こ の 例 で は dukeNew) に よ っ て 特 定 さ れ る キ ー ス ト ア エ ン ト リ に 、 要 素 を 1 つ だ け 持 つ 証 明 連 鎖 と し て 格 納 さ れ ま す 。 該 当 す る キ ー ス ト ア エ ン ト リ の 既 存 の 証 明 連 鎖 は 、 新 し い 証 明 連 鎖 に よ っ て 置 き 換 え ら れ ま す 。

使 用 法

以 下 で は 、 サ ブ コ マ ン ド と そ の オ プ シ ョ ン に つ い て 説 明 し ま す 。 コ マ ン ド と オ プ シ ョ ン を 指 定 す る と き は 、 次 の 点 に 注 意 し て く だ さ い 。

ど の コ マ ン ド 名 お よ び オ プ シ ョ ン 名 に も 先 頭 に マ イ ナ ス 記 号 (-) が 付 く

各 コ マ ン ド の オ プ シ ョ ン は 任 意 の 順 序 で 指 定 で き る

イ タ リ ッ ク 体 に な っ て い な い す べ て の 項 目 、 ま た は 中 括 弧 か 角 括 弧 で 囲 ま れ て い る す べ て の 項 目 は 、 そ の と お り に 指 定 す る 必 要 が あ る

オ プ シ ョ ン を 囲 む 中 括 弧 は 、 一 般 に 、 そ の オ プ シ ョ ン を コ マ ン ド 行 で 指 定 し な か っ た 場 合 に 、 既 定 値 が 使 わ れ る こ と を 意 味 す る 。 中 括 弧 は 、 -v-rfc 、 お よ び -J オ プ シ ョ ン を 囲 む の に も 使 わ れ る が 、 こ れ ら の オ プ シ ョ ン は コ マ ン ド 行 で 指 定 さ れ た 場 合 に の み 意 味 を 持 つ (つ ま り 、 こ れ ら の オ プ シ ョ ン に は 、 オ プ シ ョ ン 自 体 を 指 定 し な い こ と 以 外 に 「 既 定 値 」 は 存 在 し な い )

オ プ シ ョ ン を 囲 む 角 括 弧 は 、 そ の オ プ シ ョ ン を コ マ ン ド 行 で 指 定 し な か っ た 場 合 に 、 値 の 入 力 を 求 め ら れ る こ と を 意 味 す る 。 た だ し 、 -keypass オ プ シ ョ ン を コ マ ン ド 行 で 指 定 し な か っ た 場 合 は 、 keytool が キ ー ス ト ア の パ ス ワ ー ド か ら 非 公 開 鍵 の 復 元 を 試 み る 。 ユ ー ザ は 、 こ の 試 み が 失 敗 し た 場 合 に 非 公 開 鍵 の 入 力 を 求 め ら れ る

イ タ リ ッ ク 体 の 項 目 の 実 際 の 値 (オ プ シ ョ ン の 値 ) は 、 ユ ー ザ が 指 定 す る 必 要 が あ る 。 た と え ば 、 -printcert サ ブ コ マ ン ド の 形 式 は 次 の と お り で あ る

example% keytool -printcert {-file cert_file} {-v}

-printcert サ ブ コ マ ン ド を 指 定 す る と き は 、 cert_file の 代 わ り に 実 際 の フ ァ イ ル 名 を 指 定 す る 。 次 に 例 を 示 す

example% keytool -printcert -file VScert.cer

オ プ シ ョ ン の 値 に 空 白 (ス ペ ー ス ) が 含 ま れ て い る 場 合 は 、 値 を 引 用 符 で 囲 む 必 要 が あ る

-help サ ブ コ マ ン ド は デ フ ォ ル ト の コ マ ン ド で あ る 。 た と え ば 、 次 の よ う に コ マ ン ド 行 を 指 定 し た と す る

example% keytool

こ れ は 、 次 の よ う に 指 定 す る こ と と 同 じ で あ る

example% keytool -help

オ プ シ ョ ン の 既 定 値
オ プ シ ョ ン の 既 定 値 は 、 次 の と お り で す 。

-alias "mykey"
-keyalg "DSA"
-keysize 1024
-validity 90
-keystore ユ ー ザ の ホ ー ム デ ィ レ ク ト リ の .keystore と い う フ ァ イ ル
-file 読 み 込 み の 場 合 は 標 準 入 力 、 書 き 込 み の 場 合 は 標 準 出 力

署 名 ア ル ゴ リ ズ ム ( -sigalg オ プ シ ョ ン ) は 、 基 に な る 非 公 開 鍵 の ア ル ゴ リ ズ ム か ら 派 生 し ま す 。 基 に な る 非 公 開 鍵 の タ イ プ が DSA で あ り 、 -sigalg 非 公 開 鍵 の タ イ プ が RSA で あ る 場 合 、 -sigalg は 既 定 値 で MD5withRSA に な り ま す 。

ほ と ん ど の サ ブ コ マ ン ド で 使 わ れ る オ プ シ ョ ン
-v
オ プ シ ョ ン は 、 -help を 除 く す べ て の サ ブ コ マ ン ド で 使 用 で き ま す 。 こ の オ プ シ ョ ン を 指 定 し た 場 合 、 コ マ ン ド は 「 冗 長 」 モ ー ド で 実 行 さ れ 、 詳 細 な 証 明 書 情 報 が 出 力 さ れ ま す 。

ま た 、 -Jjavaoption オ プ シ ョ ン も 、 任 意 の サ ブ コ マ ン ド で 使 用 で き ま す 。 こ の オ プ シ ョ ン を 指 定 し た 場 合 、 指 定 さ れ た -javaoption 文 字 列 が Java イ ン タ プ リ タ に 直 接 渡 さ れ ま す 。 keytool は 、 実 際 に は Java イ ン タ プ リ タ に 対 す る 「 ラ ッ パ ー 」 で す 。 こ の オ プ シ ョ ン に は 、 空 白 を 含 め る こ と は で き ま せ ん 。 こ の オ プ シ ョ ン は 、 実 行 環 境 ま た は メ モ リ 使 用 を 調 整 す る 場 合 に 便 利 で す 。 指 定 で き る イ ン タ プ リ タ オ プ シ ョ ン を 一 覧 表 示 す る に は 、 コ マ ン ド 行 で java -h ま た は java -X と 入 力 し て く だ さ い 。

次 の 3 つ の オ プ シ ョ ン は 、 キ ー ス ト ア に 対 す る 操 作 を 行 う す べ て の コ マ ン ド で 指 定 で き ま す 。
-storetype
storetype

こ の 修 飾 子 は 、 イ ン ス タ ン ス を 生 成 す る キ ー ス ト ア の タ イ プ を 指 定 し ま す 。 デ フ ォ ル ト の キ ー ス ト ア タ イ プ は 、 セ キ ュ リ テ ィ プ ロ パ テ ィ フ ァ イ ル 内 の keystore.type プ ロ パ テ ィ の 値 で 指 定 さ れ た タ イ プ で す 。 こ の 値 は 、 java.security.KeyStore の static getDefaultType メ ソ ッ ド で 取 得 で き ま す 。

-keystore keystore

キ ー ス ト ア (デ ー タ ベ ー ス フ ァ イ ル ) の 場 所 を 指 定 し ま す 。 デ フ ォ ル ト は 、 ユ ー ザ の ホ ー ム デ ィ レ ク ト リ 内 の フ ァ イ ル .keystore で す 。 ユ ー ザ の ホ ー ム デ ィ レ ク ト リ は 、 user.home シ ス テ ム プ ロ パ テ ィ に よ っ て 決 ま り ま す 。

-storepass storepass

キ ー ス ト ア の 完 全 性 を 保 護 す る た め に 使 う パ ス ワ ー ド を 指 定 し ま す 。 storepass は 、 6 文 字 以 上 で な け れ ば な り ま せ ん 。 指 定 し た パ ス ワ ー ド は 、 キ ー ス ト ア の 内 容 に ア ク セ ス す る す べ て の サ ブ コ マ ン ド で 使 わ れ ま す 。 こ の 種 の サ ブ コ マ ン ド を 実 行 す る と き に 、 コ マ ン ド 行 で -storepass オ プ シ ョ ン を 指 定 し な か っ た 場 合 は 、 パ ス ワ ー ド の 入 力 を 求 め ら れ ま す 。

−provider provider_class_name

サ ー ビ ス プ ロ バ イ ダ が セ キ ュ リ テ ィ プ ロ パ テ ィ フ ァ イ ル の リ ス ト に 入 っ て い な い と き に 、 暗 号 化 サ ー ビ ス プ ロ バ イ ダ の マ ス タ ー ク ラ ス フ ァ イ ル の 名 前 を 指 定 し ま す 。

キ ー ス ト ア か ら 情 報 を 取 り 出 す 場 合 は 、 パ ス ワ ー ド を 省 略 で き ま す 。 パ ス ワ ー ド を 省 略 す る と 、 取 り 出 す 情 報 の 完 全 性 を チ ェ ッ ク で き な い の で 、 警 告 が 表 示 さ れ ま す 。

パ ス ワ ー ド の 扱 い に は 十 分 注 意 す る 必 要 が あ り ま す 。 「 パ ス ワ ー ド に 関 す る 注 意 事 項 」 を 参 照 し て く だ さ い 。

パ ス ワ ー ド に 関 す る 注 意 事 項
キ ー ス ト ア に 対 す る 操 作 を 行 う ほ と ん ど の サ ブ コ マ ン ド で は 、 ス ト ア の パ ス ワ ー ド が 必 要 で す 。 ま た 、 一 部 の サ ブ コ マ ン ド で は 、 非 公 開 鍵 の パ ス ワ ー ド が 必 要 に な る こ と が あ り ま す 。

パ ス ワ ー ド は コ マ ン ド 行 で 指 定 で き ま す (ス ト ア の パ ス ワ ー ド に は -storepass オ プ シ ョ ン 、 非 公 開 鍵 の パ ス ワ ー ド に は -keypass オ プ シ ョ ン を 使 用 )。 た だ し 、 テ ス ト を 目 的 と す る 場 合 、 ま た は 安 全 で あ る こ と が わ か っ て い る シ ス テ ム で 実 行 す る 場 合 以 外 は 、 コ マ ン ド 行 や ス ク リ プ ト で パ ス ワ ー ド を 指 定 し な い で く だ さ い 。

必 要 な パ ス ワ ー ド の オ プ シ ョ ン を コ マ ン ド 行 で 指 定 し な か っ た 場 合 は 、 パ ス ワ ー ド の 入 力 を 求 め ら れ ま す 。 password プ ロ ン プ ト で パ ス ワ ー ド を 入 力 す る と 、 入 力 し た パ ス ワ ー ド が エ コ ー さ れ 、 そ の ま ま 画 面 に 表 示 さ れ ま す 。 こ の た め 、 周 囲 に ほ か の ユ ー ザ が い る 場 合 は 、 パ ス ワ ー ド を 見 ら れ な い よ う に 注 意 し て く だ さ い 。

サ ブ コ マ ン ド
使 用 法 も 参 照 し て く だ さ い 。

キ ー ス ト ア へ の デ ー タ の 追 加
−genkey {−alias
alias} {−keyalg keyalg} {−keysize keysize}

{−sigalg sigalg} [−dname dname] [−keypass keypass]
{−validity
valDays} {−storetype storetype}
{−keystore
keystore} [−storepass storepass]
[−provider
provider_class_name] {−v}
{−J
javaoption}

鍵 の ペ ア (公 開 鍵 お よ び 関 連 す る 非 公 開 鍵 ) を 生 成 し ま す 。 公 開 鍵 は X.509 v1 自 己 署 名 証 明 書 で ラ ッ プ さ れ ま す 。 証 明 書 は 、 単 一 の 要 素 を 持 つ 証 明 連 鎖 と し て 格 納 さ れ ま す 。 こ の 証 明 連 鎖 と 非 公 開 鍵 は 、 alias で 特 定 さ れ る 新 し い キ ー ス ト ア エ ン ト リ に 格 納 さ れ ま す 。

keyalg に は 、 鍵 の ペ ア を 生 成 す る の に 使 う ア ル ゴ リ ズ ム を 指 定 し 、 keysize に は 、 生 成 す る 各 鍵 の サ イ ズ を 指 定 し ま す 。 sigalg に は 、 自 己 署 名 証 明 書 に 署 名 を 付 け る と き に 使 う ア ル ゴ リ ズ ム を 指 定 し ま す 。 こ の ア ル ゴ リ ズ ム は 、 keyalg と 互 換 性 の あ る も の で な け れ ば な り ま せ ん 。 「 サ ポ ー ト さ れ る ア ル ゴ リ ズ ム と 鍵 の サ イ ズ 」 を 参 照 し て く だ さ い 。

dname に は 、 alias に 関 連 付 け 、 自 己 署 名 証 明 書 の issuer フ ィ ー ル ド と subject フ ィ ー ル ド と し て 使 う X.500 識 別 名 を 指 定 し ま す 。 コ マ ン ド 行 で 識 別 名 を 指 定 し な か っ た 場 合 は 、 識 別 名 の 入 力 を 求 め ら れ ま す 。

keypass に は 、 生 成 さ れ る 鍵 の ペ ア の う ち 、 非 公 開 鍵 を 保 護 す る の に 使 う パ ス ワ ー ド を 指 定 し ま す 。 パ ス ワ ー ド を 指 定 し な か っ た 場 合 は 、 パ ス ワ ー ド の 入 力 を 求 め ら れ ま す 。 こ の と き 、 Enter キ ー を 押 す と 、 キ ー ス ト ア の パ ス ワ ー ド と 同 じ パ ス ワ ー ド が 鍵 の パ ス ワ ー ド に 設 定 さ れ ま す 。 keypass は 、 6 文 字 以 上 で な け れ ば な り ま せ ん 。 パ ス ワ ー ド の 扱 い に は 十 分 注 意 す る 必 要 が あ り ま す 。 「 パ ス ワ ー ド に 関 す る 注 意 事 項 」 を 参 照 し て く だ さ い 。

valDays に は 、 証 明 書 の 有 効 日 数 を 指 定 し ま す 。

−import {−alias alias} {−file cert_file} [−keypass keypass]

{−noprompt} {−trustcacerts} {−storetype storetype}
{−keystore
keystore} [−storepass storepass]
[−provider
provider_class_name]
{−v} {−J
javaoption}

フ ァ イ ル cert_file か ら 証 明 書 ま た は 証 明 連 鎖 (証 明 連 鎖 の 場 合 は 、 PKCS#7 形 式 の 応 答 で 提 供 さ れ る も の ) を 読 み 込 み 、 alias に よ っ て 特 定 さ れ る キ ー ス ト ア エ ン ト リ に 格 納 し ま す 。 証 明 書 ま た は PKCS#7 応 答 を 標 準 入 力 か ら 読 み 込 み ま す 。 keytool で は 、 X.509 v1、 v2、 v3 の 証 明 書 、 お よ び 、 PKCS#7 形 式 の 証 明 書 か ら 構 成 さ れ て い る PKCS#7 形 式 の 証 明 連 鎖 を イ ン ポ ー ト で き ま す 。 イ ン ポ ー ト す る デ ー タ は 、 バ イ ナ リ エ ン コ ー デ ィ ン グ 方 式 、 ま た は プ リ ン ト 可 能 エ ン コ ー デ ィ ン グ 方 式 (Base64 エ ン コ ー デ ィ ン グ と も 呼 ば れ る ) の ど ち ら か で 提 供 す る 必 要 が あ り ま す 。 プ リ ン ト 可 能 エ ン コ ー デ ィ ン グ 方 式 は 、 イ ン タ ー ネ ッ ト RFC 1421 証 明 書 エ ン コ ー デ ィ ン グ 規 格 で 定 義 さ れ て い ま す 。 こ の エ ン コ ー デ ィ ン グ 方 式 の 場 合 、 証 明 書 は 「 -----BEGIN」 で 始 ま る 文 字 列 で 開 始 さ れ 、 「 -----END」 で 始 ま る 文 字 列 で 終 了 し な け れ ば な り ま せ ん 。

新 し く 信 頼 で き る 証 明 書 を イ ン ポ ー ト す る 場 合 、 キ ー ス ト ア に alias が 存 在 し て い て は い け ま せ ん 。 keytool は 、 キ ー ス ト ア に 証 明 書 を 追 加 す る 前 に 、 キ ー ス ト ア 内 に す で に 存 在 す る 信 頼 で き る 証 明 書 を 使 っ て 、 イ ン ポ ー ト す る 証 明 書 か ら (ル ー ト CA の ) 自 己 署 名 証 明 書 に 至 る ま で の 信 頼 の 連 鎖 の 構 築 を 試 み ま す 。

-trustcacerts オ プ シ ョ ン が 指 定 さ れ て い る 場 合 は 、 信 頼 の 連 鎖 を 構 築 す る と き に 、 ほ か の 証 明 書 も 考 慮 さ れ ま す 。 考 慮 の 対 象 と な る 証 明 書 は 、 cacerts と い う 名 前 の フ ァ イ ル に 含 ま れ る 証 明 書 で す 。 こ の フ ァ イ ル は 、 JDK セ キ ュ リ テ ィ プ ロ パ テ ィ デ ィ レ ク ト リ java.home/lib/security に あ り ま す 。 java.home は 、 JDK の イ ン ス ト ー ル 先 デ ィ レ ク ト リ で す 。 cacerts フ ァ イ ル は 、 CA の 証 明 書 を 含 む 、 シ ス テ ム 全 体 の キ ー ス ト ア で す 。 シ ス テ ム 管 理 者 は 、 キ ー ス ト ア タ イ プ に jks を 指 定 す る こ と で 、 keytool を 使 っ て こ の フ ァ イ ル の 構 成 と 管 理 を 行 う こ と が で き ま す 。 cacerts キ ー ス ト ア フ ァ イ ル は 、 次 に 示 す X.500 識 別 名 を 持 つ 5 つ の VeriSign ル ー ト CA 証 明 書 を 含 ん だ 状 態 で 出 荷 さ れ て い ま す 。

1.

OU=Class 1 Public Primary Certification Authority, O="VeriSign, Inc.", C=US

2.

OU=Class 2 Public Primary Certification Authority, O="VeriSign, Inc.", C=US

3.

OU=Class 3 Public Primary Certification Authority, O="VeriSign, Inc.", C=US

4.

OU=Class 4 Public Primary Certification Authority, O="VeriSign, Inc.", C=US

5.

OU=Secure Server Certification Authority, O="RSA Data Security, Inc.", C=US

cacerts キ ー ス ト ア フ ァ イ ル の 初 期 パ ス ワ ー ド は 、 changeit で す 。 シ ス テ ム 管 理 者 は 、 JDK の イ ン ス ト ー ル 後 、 こ の フ ァ イ ル の パ ス ワ ー ド と デ フ ォ ル ト ア ク セ ス 権 を 変 更 す る 必 要 が あ り ま す 。

keytool が 、 イ ン ポ ー ト す る 証 明 書 か ら 自 己 署 名 証 明 書 (キ ー ス ト ア ま た は cacerts フ ァ イ ル に 含 ま れ て い る 自 己 署 名 証 明 書 ) に 至 る ま で の 信 頼 の パ ス の 構 築 に 失 敗 し た 場 合 は 、 イ ン ポ ー ト す る 証 明 書 の 情 報 を 表 示 し 、 ユ ー ザ に 確 認 を 求 め ま す 。 こ の 場 合 は 、 表 示 さ れ た 証 明 書 の フ ィ ン ガ ー プ リ ン ト と 、 ほ か の な ん ら か の (信 頼 で き る ) 情 報 源 (証 明 書 の 所 有 者 本 人 な ど ) か ら 入 手 し た フ ィ ン ガ ー プ リ ン ト と を 比 較 し ま す 。 「 信 頼 で き る 証 明 書 」 と し て 証 明 書 を イ ン ポ ー ト す る と き は 、 証 明 書 が 有 効 で あ る こ と を 慎 重 に 確 認 す る 必 要 が あ り ま す 。 詳 細 は 、 「 信 頼 で き る 証 明 書 の イ ン ポ ー ト に 関 す る 注 意 事 項 」 を 参 照 し て く だ さ い 。 イ ン ポ ー ト 操 作 は 、 証 明 書 を 確 認 す る 時 点 で 中 止 で き ま す 。 た だ し 、 -noprompt オ プ シ ョ ン が 指 定 さ れ て い る 場 合 、 ユ ー ザ と の 対 話 は 行 わ れ ま せ ん 。

証 明 書 応 答 を イ ン ポ ー ト す る と き は 、 キ ー ス ト ア 内 の 信 頼 で き る 証 明 書 、 お よ び ( -trustcacerts オ プ シ ョ ン が 指 定 さ れ て い る 場 合 は ) cacerts キ ー ス ト ア フ ァ イ ル で 構 成 さ れ た 証 明 書 を 使 っ て 証 明 書 応 答 が 検 査 さ れ ま す 。

証 明 書 応 答 が 単 一 の X.509 証 明 書 で あ る 場 合 、 keytool は 、 証 明 書 応 答 か ら (ル ー ト CA の ) 自 己 署 名 証 明 書 に 至 る ま で の 信 頼 連 鎖 の 確 立 を 試 み ま す 。 証 明 書 応 答 と 、 証 明 書 応 答 の 認 証 に 使 わ れ る 証 明 書 の 階 層 構 造 は 、 alias の 新 し い 証 明 書 連 鎖 を 形 成 し ま す 。

証 明 書 応 答 が PKCS#7 形 式 の 証 明 連 鎖 で あ る 場 合 、 keytool は 、 ま ず 連 鎖 を 並 べ 替 え て 、 ユ ー ザ の 証 明 書 が 最 初 に 、 ル ー ト CA の 自 己 署 名 証 明 書 が 最 後 に く る よ う に し た あ と 、 証 明 書 応 答 に 含 ま れ る ル ー ト CA の 証 明 書 と 、 キ ー ス ト ア 内 ま た は ( -trustcacerts オ プ シ ョ ン が 指 定 さ れ て い る 場 合 は ) cacerts キ ー ス ト ア フ ァ イ ル 内 の 信 頼 で き る 証 明 書 と を す べ て 比 較 し 、 一 致 す る も の が あ る か ど う か を 調 べ ま す 。 一 致 す る も の が 見 つ か ら な か っ た 場 合 は 、 ル ー ト CA の 証 明 書 の 情 報 を 表 示 し 、 ユ ー ザ に 確 認 を 求 め ま す 。 こ の 場 合 は 、 表 示 さ れ た 証 明 書 の フ ィ ン ガ ー プ リ ン ト と 、 ほ か の な ん ら か の (信 頼 で き る ) 情 報 源 (ル ー ト CA 自 身 な ど ) か ら 入 手 し た フ ィ ン ガ ー プ リ ン ト と を 比 較 し ま す 。 イ ン ポ ー ト 操 作 は 、 証 明 書 を 確 認 す る 時 点 で 中 止 で き ま す 。 た だ し 、 -noprompt オ プ シ ョ ン が 指 定 さ れ て い る 場 合 、 ユ ー ザ と の 対 話 は 行 わ れ ま せ ん 。

alias に 関 連 付 け ら れ た 以 前 の 証 明 連 鎖 は 、 新 し い 証 明 連 鎖 に よ っ て 置 き 換 え ら れ ま す 。 以 前 の 証 明 連 鎖 を 新 し い 証 明 連 鎖 で 置 き 換 え る こ と が で き る の は 、 有 効 な keypass、 つ ま り 該 当 す る エ ン ト リ の 非 公 開 鍵 を 保 護 す る た め の パ ス ワ ー ド を 指 定 し た 場 合 だ け で す 。 パ ス ワ ー ド を 指 定 し て お ら ず 、 非 公 開 鍵 の パ ス ワ ー ド が キ ー ス ト ア の パ ス ワ ー ド と 異 な る 場 合 は 、 非 公 開 鍵 の パ ス ワ ー ド の 入 力 を 求 め ら れ ま す 。 パ ス ワ ー ド の 扱 い に は 十 分 注 意 す る 必 要 が あ り ま す 。 「 パ ス ワ ー ド に 関 す る 注 意 事 項 」 を 参 照 し て く だ さ い 。

−selfcert {−alias alias} {−sigalg sigalg} {−dname dname}

{−validity valDays} [−keypass keypass]
{−storetype
storetype} {−keystore keystore}
[−storepass
storepass]
[−provider
provider_class_name]
{−v} {−Jjavaoption}

alias に 関 連 付 け ら れ た 非 公 開 鍵 と 公 開 鍵 を 含 む キ ー ス ト ア の 情 報 を 使 っ て 、 X.509 v1 自 己 署 名 証 明 書 を 生 成 し ま す 。 コ マ ン ド 行 で dname が 指 定 さ れ て い る 場 合 は 、 証 明 書 の issuer フ ィ ー ル ド と subject フ ィ ー ル ド の 両 方 に 対 し て 、 dname が X.500 識 別 名 と し て 使 わ れ ま す 。 dname が 指 定 さ れ て い な い 場 合 は 、 (既 存 の 証 明 連 鎖 の 最 後 の ) alias に 関 連 付 け ら れ た X.500 識 別 名 が 使 わ れ ま す 。

生 成 さ れ た 証 明 書 は 、 単 一 の 要 素 を 持 つ 証 明 連 鎖 と し て 、 alias で 特 定 さ れ る キ ー ス ト ア エ ン ト リ に 格 納 さ れ ま す 。 該 当 す る エ ン ト リ の 既 存 の 証 明 連 鎖 は 、 新 し い 証 明 連 鎖 に よ っ て 置 き 換 え ら れ ま す 。

sigalg に は 、 証 明 書 に 署 名 を 付 け る と き に 使 う ア ル ゴ リ ズ ム を 指 定 し ま す 。 「 サ ポ ー ト さ れ る ア ル ゴ リ ズ ム と 鍵 の サ イ ズ 」 を 参 照 し て く だ さ い 。

非 公 開 鍵 は キ ー ス ト ア 内 で は パ ス ワ ー ド に よ っ て 保 護 さ れ て い る の で 、 非 公 開 鍵 に ア ク セ ス す る に は 、 適 切 な パ ス ワ ー ド を 提 供 す る 必 要 が あ り ま す 。 コ マ ン ド 行 で keypass を 指 定 し て お ら ず 、 非 公 開 鍵 の パ ス ワ ー ド が キ ー ス ト ア の パ ス ワ ー ド と 異 な る 場 合 は 、 非 公 開 鍵 の パ ス ワ ー ド の 入 力 を 求 め ら れ ま す 。 パ ス ワ ー ド の 扱 い に は 十 分 注 意 す る 必 要 が あ り ま す 。 「 パ ス ワ ー ド に 関 す る 注 意 事 項 」 を 参 照 し て く だ さ い 。

valDays に は 、 証 明 書 の 有 効 日 数 を 指 定 し ま す 。

−identitydb {−file idb_file} {−storetype storetype}

{−keystore keystore} [−storepass storepass]
[−provider
provider_class_name]
{−v} {−J
javaoption}

フ ァ イ ル idb_file か ら JDK 1.1.x 形 式 の ア イ デ ン テ ィ テ ィ デ ー タ ベ ー ス を 読 み 込 み 、 ア イ デ ン テ ィ テ ィ デ ー タ ベ ー ス の エ ン ト リ を キ ー ス ト ア に 追 加 し ま す 。 フ ァ イ ル が 指 定 さ れ て い な い 場 合 は 、 標 準 入 力 か ら ア イ デ ン テ ィ テ ィ デ ー タ ベ ー ス を 読 み 込 み ま す 。 キ ー ス ト ア が 存 在 し な い 場 合 は 、 作 成 さ れ ま す 。

ア イ デ ン テ ィ テ ィ デ ー タ ベ ー ス の エ ン ト リ (「 ア イ デ ン テ ィ テ ィ 」 ) の う ち 、 キ ー ス ト ア に イ ン ポ ー ト さ れ る の は 、 信 頼 で き る も の と し て マ ー ク さ れ た エ ン ト リ だ け で す 。 そ の 他 の す べ て の エ ン ト リ は 無 視 さ れ ま す 。 信 頼 で き る ア イ デ ン テ ィ テ ィ ご と に 、 キ ー ス ト ア エ ン ト リ が 1 つ 作 成 さ れ ま す 。 ア イ デ ン テ ィ テ ィ の 名 前 は 、 キ ー ス ト ア エ ン ト リ の 「 別 名 」 と し て 使 わ れ ま す 。

信 頼 で き る ア イ デ ン テ ィ テ ィ か ら の す べ て の 非 公 開 鍵 は 、 ど れ も 同 じ パ ス ワ ー ド storepass で 暗 号 化 さ れ ま す 。 こ の パ ス ワ ー ド は 、 キ ー ス ト ア の 完 全 性 を 保 護 す る た め に 使 わ れ る パ ス ワ ー ド と 同 じ で す 。 keytool-keypasswd コ マ ン ド の オ プ シ ョ ン を 使 え ば 、 あ と で 個 別 に 非 公 開 鍵 に パ ス ワ ー ド を 割 り 当 て る こ と が で き ま す 。

ア イ デ ン テ ィ テ ィ デ ー タ ベ ー ス 内 の ア イ デ ン テ ィ テ ィ は 、 そ れ ぞ れ が 同 じ 公 開 鍵 を 認 証 す る 複 数 の 証 明 書 を 含 ん で い る こ と が あ り ま す 。 一 方 、 非 公 開 鍵 を 格 納 す る キ ー ス ト ア の 鍵 エ ン ト リ に 含 ま れ る の は 、 そ の 非 公 開 鍵 と 、 単 一 の 「 証 明 連 鎖 」 (最 初 は 単 一 の 証 明 書 だ け ) で あ り 、 非 公 開 鍵 に 対 応 す る 公 開 鍵 は 連 鎖 内 の 最 初 の 証 明 書 に 含 ま れ て い ま す 。 ア イ デ ン テ ィ テ ィ か ら 情 報 を イ ン ポ ー ト す る 場 合 は 、 ア イ デ ン テ ィ テ ィ の 最 初 の 証 明 書 だ け が キ ー ス ト ア に 格 納 さ れ ま す 。 こ れ は 、 ア イ デ ン テ ィ テ ィ デ ー タ ベ ー ス 内 の ア イ デ ン テ ィ テ ィ の 名 前 が 、 対 応 す る キ ー ス ト ア エ ン ト リ の 別 名 と し て 使 わ れ 、 別 名 は キ ー ス ト ア 内 で 一 意 で あ る た め で す 。

デ ー タ の エ ク ス ポ ー ト
−certreq {−alias
alias} {−sigalg sigalg} {−file certreq_file}

[−keypass keypass]
{−storetype
storetype} {−keystore keystore}
[−storepass
storepass]
[−provider
provider_class_name]
{−v} {−J
javaoption}

PKCS#10 形 式 を 使 っ て 証 明 書 署 名 要 求 (CSR) を 生 成 し ま す 。

CSR は 、 証 明 書 発 行 局 (CA) に 送 信 す る こ と を 目 的 と し た も の で す 。 CA は 、 証 明 書 要 求 者 を (通 常 は オ フ ラ イ ン で ) 認 証 し 、 証 明 書 ま た は 証 明 連 鎖 を 送 り 返 し ま す 。 こ の 証 明 書 ま た は 証 明 連 鎖 は 、 キ ー ス ト ア 内 の 既 存 の 証 明 連 鎖 (最 初 は 1 つ の 自 己 署 名 証 明 書 か ら 構 成 さ れ る ) に 置 き 換 え て 使 い ま す 。

alias に 関 連 付 け ら れ た 非 公 開 鍵 と X.500 識 別 名 は 、 PKCS#10 証 明 書 要 求 を 作 成 す る の に 使 わ れ ま す 。 非 公 開 鍵 は キ ー ス ト ア 内 で は パ ス ワ ー ド に よ っ て 保 護 さ れ て い る の で 、 非 公 開 鍵 に ア ク セ ス す る に は 、 適 切 な パ ス ワ ー ド を 提 供 す る 必 要 が あ り ま す 。 コ マ ン ド 行 で alias を 指 定 し て お ら ず 、 非 公 開 鍵 の パ ス ワ ー ド が キ ー ス ト ア の パ ス ワ ー ド と 異 な る 場 合 は 、 非 公 開 鍵 の パ ス ワ ー ド の 入 力 を 求 め ら れ ま す 。

パ ス ワ ー ド の 扱 い に は 十 分 注 意 す る 必 要 が あ り ま す 。 「 パ ス ワ ー ド に 関 す る 注 意 事 項 」 を 参 照 し て く だ さ い 。

sigalg に は 、 CSR に 署 名 を 付 け る と き に 使 う ア ル ゴ リ ズ ム を 指 定 し ま す 。 「 サ ポ ー ト さ れ る ア ル ゴ リ ズ ム と 鍵 の サ イ ズ 」 を 参 照 し て く だ さ い 。

CSR は 、 フ ァ イ ル certreq_file に 格 納 さ れ ま す 。 フ ァ イ ル が 指 定 さ れ て い な い 場 合 は 、 標 準 出 力 に CSR が 出 力 さ れ ま す 。

CA か ら の 応 答 を イ ン ポ ー ト す る に は 、 import コ マ ン ド を 使 い ま す 。

−export {−alias alias} {−file cert_file} {−storetype storetype}

{−keystore keystore} [−storepass storepass]
[−provider
provider_class_name]
{−rfc} {−v} {−J
javaoption}

alias に 関 連 付 け ら れ た 証 明 書 を (キ ー ス ト ア か ら ) 読 み 込 み 、 フ ァ イ ル cert_file に 格 納 し ま す 。

フ ァ イ ル が 指 定 さ れ て い な い 場 合 は 、 標 準 出 力 に 証 明 書 が 出 力 さ れ ま す 。

デ フ ォ ル ト で は 、 バ イ ナ リ エ ン コ ー デ ィ ン グ の 証 明 書 が 出 力 さ れ ま す 。 た だ し 、 -rfc オ プ シ ョ ン を 指 定 し た 場 合 は 、 プ リ ン ト 可 能 エ ン コ ー デ ィ ン グ 方 式 の 証 明 書 が 出 力 さ れ ま す 。 プ リ ン ト 可 能 エ ン コ ー デ ィ ン グ 方 式 は 、 イ ン タ ー ネ ッ ト RFC 1421 証 明 書 エ ン コ ー デ ィ ン グ 規 格 で 定 義 さ れ て い ま す 。

alias が 、 信 頼 で き る 証 明 書 を 参 照 し て い る 場 合 は 、 該 当 す る 証 明 書 が 出 力 さ れ ま す 。 そ れ 以 外 の 場 合 、 alias は 、 関 連 付 け ら れ た 証 明 連 鎖 を 持 つ 鍵 エ ン ト リ を 参 照 し ま す 。 こ の 場 合 は 、 連 鎖 内 の 最 初 の 証 明 書 が 返 さ れ ま す 。 こ の 証 明 書 は 、 alias に よ っ て 表 さ れ る エ ン テ ィ テ ィ の 公 開 鍵 を 認 証 す る 証 明 書 で す 。

デ ー タ の 表 示
−list {−alias
alias} {−storetype storetype} {−keystore keystore}

[−storepass storepass]
[−provider
provider_class_name]
{−v | −rfc} {−J
javaoption}

alias で 特 定 さ れ る キ ー ス ト ア エ ン ト リ の 内 容 を (標 準 出 力 に ) 出 力 し ま す 。 別 名 が 指 定 さ れ て い な い 場 合 は 、 キ ー ス ト ア 全 体 の 内 容 が 表 示 さ れ ま す 。

こ の サ ブ コ マ ン ド は 、 デ フ ォ ル ト で は 証 明 書 の MD5 フ ィ ン ガ ー プ リ ン ト を 表 示 し ま す 。 -v オ プ シ ョ ン が 指 定 さ れ て い る 場 合 は 、 所 有 者 、 発 行 者 、 シ リ ア ル 番 号 な ど の 付 加 的 な 情 報 と と も に 、 人 間 が 読 む こ と の で き る 形 式 で 証 明 書 が 表 示 さ れ ま す 。 −rfc オ プ シ ョ ン が 指 定 さ れ て い る 場 合 は 、 プ リ ン ト 可 能 な エ ン コ ー デ ィ ン グ 方 式 で 証 明 書 の 内 容 が 表 示 さ れ ま す 。 プ リ ン ト 可 能 エ ン コ ー デ ィ ン グ 方 式 は 、 イ ン タ ー ネ ッ ト RFC 1421 証 明 書 エ ン コ ー デ ィ ン グ 規 格 で 定 義 さ れ て い ま す 。

-v オ プ シ ョ ン と -rfc オ プ シ ョ ン と を 同 時 に 指 定 す る こ と は で き ま せ ん 。

-printcert {-file cert_file} {-v} {-Jjavaoption}

フ ァ イ ル cert_file か ら 証 明 書 を 読 み 込 み 、 人 間 が 読 む こ と の で き る 形 式 で 証 明 書 の 内 容 を 表 示 し ま す 。 フ ァ イ ル が 指 定 さ れ て い な い 場 合 は 、 標 準 入 力 か ら 証 明 書 を 読 み 込 み ま す 。

証 明 書 は 、 バ イ ナ リ エ ン コ ー デ ィ ン グ ま た は プ リ ン ト 可 能 エ ン コ ー デ ィ ン グ 方 式 で 表 示 で き ま す 。 プ リ ン ト 可 能 エ ン コ ー デ ィ ン グ 方 式 は 、 イ ン タ ー ネ ッ ト RFC 1421 証 明 書 エ ン コ ー デ ィ ン グ 規 格 で 定 義 さ れ て い ま す 。

注 : こ の コ マ ン ド は キ ー ス ト ア と は 関 係 な く 動 作 し ま す 。

キ ー ス ト ア の 管 理
−keyclone {−alias
alias} [−dest dest_alias] [−keypass keypass]

{−new new_keypass} {−storetype storetype}
{−keystore
keystore} [−storepass storepass]
[−provider
provider_class_name]
{−v} {−J
javaoption}

元 の エ ン ト リ と 同 じ 非 公 開 鍵 と 認 証 連 鎖 を 持 つ 、 新 し い キ ー ス ト ア エ ン ト リ を 作 成 し ま す 。

alias に は 、 元 の エ ン ト リ を 指 定 し ま す 。 alias を 指 定 し な か っ た 場 合 は 、 既 定 値 の mykey が 使 わ れ ま す 。 dest_alias に は 、 新 し い (複 製 先 の ) エ ン ト リ を 指 定 し ま す 。 コ マ ン ド 行 で 複 製 先 の 別 名 を 指 定 し な か っ た 場 合 は 、 別 名 の 入 力 を 求 め ら れ ま す 。

非 公 開 鍵 の パ ス ワ ー ド が キ ー ス ト ア の パ ス ワ ー ド と 異 な る 場 合 は 、 有 効 な keypass が 指 定 さ れ た 場 合 に の み 、 エ ン ト リ が 複 製 さ れ ま す 。 こ の と き 指 定 す る の は 、 alias に 関 連 付 け ら れ た 非 公 開 鍵 を 保 護 す る た め の パ ス ワ ー ド で す 。 コ マ ン ド 行 で こ の パ ス ワ ー ド が 指 定 さ れ ず 、 非 公 開 鍵 の パ ス ワ ー ド が キ ー ス ト ア の パ ス ワ ー ド と 異 な る 場 合 は 、 パ ス ワ ー ド の 入 力 を 求 め ら れ ま す 。 複 製 さ れ た エ ン ト リ の 非 公 開 鍵 は 、 必 要 に 応 じ て 別 の パ ス ワ ー ド で 保 護 で き ま す 。 コ マ ン ド 行 で -new オ プ シ ョ ン を 指 定 し な か っ た 場 合 は 、 新 し い エ ン ト リ の パ ス ワ ー ド の 入 力 を 求 め ら れ ま す 。 こ の と き 、 複 製 さ れ た 非 公 開 鍵 に 対 し て 同 じ パ ス ワ ー ド を 指 定 で き ま す 。

パ ス ワ ー ド の 扱 い に は 十 分 注 意 す る 必 要 が あ り ま す 。 「 パ ス ワ ー ド に 関 す る 注 意 事 項 」 を 参 照 し て く だ さ い 。

こ の サ ブ コ マ ン ド は 、 あ る 与 え ら れ た 鍵 の ペ ア に 対 応 す る 複 数 の 認 証 連 鎖 を 確 立 す る た め に 使 用 で き ま す 。 ま た 、 バ ッ ク ア ッ プ を 目 的 と し て 使 用 す る こ と も で き ま す 。

−storepasswd {−new new_storepass} {−storetype storetype}

{−keystore keystore} [−storepass storepass]
[−provider
provider_class_name]
{−v} {−J
javaoption}

キ ー ス ト ア の 内 容 の 完 全 性 を 保 護 す る た め に 使 う パ ス ワ ー ド を 変 更 し ま す 。 new_storepass に は 、 新 し い パ ス ワ ー ド を 指 定 し ま す 。 new_storepass は 、 6 文 字 以 上 で な け れ ば な り ま せ ん 。

パ ス ワ ー ド の 扱 い に は 十 分 注 意 す る 必 要 が あ り ま す 。 「 パ ス ワ ー ド に 関 す る 注 意 事 項 」 を 参 照 し て く だ さ い 。

−keypasswd {−alias alias} [−keypass old_keypass]

[−new new_keypass] {−storetype storetype}
{−keystore
keystore} [−storepass storepass]
[−provider
provider_class_name]
{−v} {−J
javaoption}

alias に よ っ て 特 定 さ れ る 非 公 開 鍵 を 保 護 す る た め の パ ス ワ ー ド を 、 old_keypass か ら new_keypass に 変 更 し ま す 。

コ マ ン ド 行 で -keypass オ プ シ ョ ン を 指 定 し て お ら ず 、 非 公 開 鍵 の パ ス ワ ー ド が キ ー ス ト ア の パ ス ワ ー ド と 異 な る 場 合 は 、 非 公 開 鍵 の パ ス ワ ー ド の 入 力 を 求 め ら れ ま す 。

コ マ ン ド 行 で -new オ プ シ ョ ン を 指 定 し な か っ た 場 合 は 、 新 し い パ ス ワ ー ド の 入 力 を 求 め ら れ ま す 。

パ ス ワ ー ド の 扱 い に は 十 分 注 意 す る 必 要 が あ り ま す 。 「 パ ス ワ ー ド に 関 す る 注 意 事 項 」 を 参 照 し て く だ さ い 。

−delete [−alias alias] {−storetype storetype}

{−keystore keystore} [−storepass storepass]
[−provider
provider_class_name]
{−v} {−J
javaoption}

alias に よ っ て 特 定 さ れ る エ ン ト リ を キ ー ス ト ア か ら 削 除 し ま す 。 コ マ ン ド 行 で 別 名 を 指 定 し な か っ た 場 合 は 、 別 名 の 入 力 を 求 め ら れ ま す 。

ヘ ル プ の 表 示

-help

使 用 例

こ こ で は 、 自 分 の 鍵 の ペ ア お よ び 信 頼 で き る エ ン テ ィ テ ィ か ら の 証 明 書 を 管 理 す る た め の キ ー ス ト ア を 作 成 す る 場 合 を 例 と し て 示 し ま す 。

鍵 の ペ ア の 生 成
ま ず 、 キ ー ス ト ア を 作 成 し て 鍵 の ペ ア を 生 成 す る 必 要 が あ り ま す 。 次 に 示 す の は 、 実 行 す る コ マ ン ド の 例 で す 。

example% keytool -genkey -dname "cn=Mark Jones, ou=Java, o=Sun, c=US"
-alias business -keypass kpi135 -keystore /working/mykeystore
-storepass ab987c -validity 180

注 : 上 の コ マ ン ド 例 は 、 読 み や す く す る た め に 複 数 の 行 に 分 け て あ り ま す が 、 実 際 に は 1 行 で 指 定 す る 必 要 が あ り ま す 。

こ の 例 で は 、 working デ ィ レ ク ト リ に mykeystore と い う 名 前 の キ ー ス ト ア を 作 成 し (キ ー ス ト ア は ま だ 存 在 し て い な い と 仮 定 す る )、 作 成 し た キ ー ス ト ア に パ ス ワ ー ド ab987c を 割 り 当 て ま す 。 生 成 す る 公 開 鍵 と 非 公 開 鍵 の ペ ア に 対 応 す る エ ン テ ィ テ ィ の 「 識 別 名 」 は 、 通 称 が MarkJones 、 組 織 単 位 が Java 、 組 織 が Sun 、 2 文 字 の 国 番 号 が US で す 。 公 開 鍵 と 非 公 開 鍵 の サ イ ズ は ど ち ら も 1024 ビ ッ ト で 、 鍵 の 作 成 に は デ フ ォ ル ト の DSA 鍵 生 成 ア ル ゴ リ ズ ム を 使 用 し ま す 。

こ の コ マ ン ド は 、 公 開 鍵 と 識 別 名 情 報 を 含 む 自 己 署 名 証 明 書 (デ フ ォ ル ト の SHA1withDSA 署 名 ア ル ゴ リ ズ ム を 使 用 ) を 作 成 し ま す 。 証 明 書 の 有 効 期 間 は 180 日 で す 。 証 明 書 は 、 別 名 business で 特 定 さ れ る キ ー ス ト ア エ ン ト リ 内 の 非 公 開 鍵 に 関 連 付 け ら れ ま す 。 非 公 開 鍵 に は パ ス ワ ー ド kpi135 が 割 り 当 て ら れ ま す 。

オ プ シ ョ ン の 既 定 値 を 使 う 場 合 は 、 上 に 示 し た コ マ ン ド を 大 幅 に 短 く す る こ と が で き ま す 。 実 際 に は 、 オ プ シ ョ ン を 1 つ も 指 定 せ ず に コ マ ン ド を 実 行 す る こ と も 可 能 で す 。 既 定 値 を 持 つ オ プ シ ョ ン で は 、 オ プ シ ョ ン を 指 定 し な け れ ば 既 定 値 が 使 わ れ 、 必 要 な 値 に つ い て は 入 力 を 求 め ら れ ま す 。 た と え ば 、 単 に 次 の よ う に 入 力 す る こ と も で き ま す 。

example% keytool -genkey

こ の 場 合 は 、 mykey と い う 別 名 で キ ー ス ト ア エ ン ト リ が 作 成 さ れ 、 新 し く 生 成 さ れ た 鍵 の ペ ア 、 お よ び 90 日 間 有 効 な 証 明 書 が こ の エ ン ト リ に 格 納 さ れ ま す 。 こ の エ ン ト リ は 、 ホ ー ム デ ィ レ ク ト リ 内 の .keystore と い う 名 前 の キ ー ス ト ア に 置 か れ ま す 。 こ の キ ー ス ト ア が ま だ 存 在 し て い な い 場 合 は 、 作 成 さ れ ま す 。 識 別 名 情 報 、 キ ー ス ト ア の パ ス ワ ー ド 、 お よ び 非 公 開 鍵 の パ ス ワ ー ド に つ い て は 、 入 力 を 求 め ら れ ま す 。

以 下 で は 、 オ プ シ ョ ン を 指 定 し な い で -genkey コ マ ン ド を 実 行 し た も の と し て 例 を 示 し ま す 。 情 報 の 入 力 を 求 め ら れ た 場 合 は 、 最 初 に 示 し た -genkey コ マ ン ド の 値 を 入 力 し た も の と し ま す (た と え ば 、 非 公 開 鍵 の パ ス ワ ー ド に は kpi135 と 指 定 )。

証 明 書 発 行 局 に 対 す る 署 名 付 き 証 明 書 の 要 求
現 時 点 で 手 元 に あ る の は 、 1 通 の 自 己 署 名 証 明 書 だ け で す 。 証 明 書 に 証 明 書 発 行 局 (CA) の 署 名 が 付 い て い れ ば 、 ほ か の ユ ー ザ か ら 証 明 書 が 信 頼 で き る 可 能 性 も 高 く な り ま す 。 CA の 署 名 を 取 得 す る に は 、 ま ず 、 証 明 書 署 名 要 求 (CSR) を 生 成 し ま す 。 た と え ば 、 次 の よ う に し ま す 。

example% keytool -certreq -file MarkJ.csr

CSR (デ フ ォ ル ト 別 名 mykey に よ っ て 特 定 さ れ る エ ン テ ィ テ ィ の CSR) が 作 成 さ れ 、 MarkJ.csr と い う 名 前 の フ ァ イ ル に 置 か れ ま す 。 こ の フ ァ イ ル は 、 VeriSign な ど の CA に 提 出 し ま す 。 CA は 要 求 者 を (通 常 は オ フ ラ イ ン で ) 認 証 し 、 要 求 者 の 公 開 鍵 を 認 証 し た 署 名 付 き の 証 明 書 を 送 り 返 し ま す 。 場 合 に よ っ て は 、 CA が 証 明 書 の 連 鎖 を 返 す こ と も あ り ま す 。 証 明 書 の 連 鎖 で は 、 各 証 明 書 が 連 鎖 内 の そ の 前 の 署 名 者 の 公 開 鍵 を 認 証 し ま す 。

CA か ら の 証 明 書 の イ ン ポ ー ト
作 成 し た 自 己 署 名 証 明 書 は 、 証 明 連 鎖 で 置 き 換 え る 必 要 が あ り ま す 。 証 明 連 鎖 で は 、 各 証 明 書 が 、 「 ル ー ト 」 CA を 起 点 と す る 連 鎖 内 の 次 の 証 明 書 の 署 名 者 の 公 開 鍵 を 認 証 し ま す 。

CA か ら の 証 明 書 応 答 を イ ン ポ ー ト す る に は 、 キ ー ス ト ア か 、 ( import コ マ ン ド で 説 明 し て い る よ う に ) cacerts キ ー ス ト ア フ ァ イ ル 内 に 1 つ 以 上 の 「 信 頼 で き る 証 明 書 」 を 必 要 と し ま す 。

証 明 書 応 答 が 証 明 連 鎖 の 場 合 は 、 連 鎖 の ト ッ プ の 証 明 書 (そ の CA の 公 開 鍵 を 認 証 す る 「 ル ー ト 」 CA の 証 明 書 ) だ け を 必 要 と す る

証 明 書 応 答 が 単 一 の 証 明 書 の 場 合 は 、 証 明 書 に 署 名 し た CA の 発 行 用 の 証 明 書 が 必 要 で 、 そ の 証 明 書 が 自 己 署 名 さ れ な い 場 合 は 、 さ ら に そ の 証 明 書 の 署 名 者 用 の 証 明 書 を 必 要 と す る 。 こ の よ う に し て 自 己 署 名 さ れ る 「 ル ー ト 」 CA の 証 明 書 ま で そ れ ぞ れ 証 明 書 を 必 要 と す る

cacerts キ ー ス ト ア フ ァ イ ル は 、 5 つ の VeriSign ル ー ト CA 証 明 書 を 含 ん だ 状 態 で 出 荷 さ れ て い る の で 、 VeriSign の 証 明 書 を 、 信 頼 で き る 証 明 書 と し て キ ー ス ト ア 内 に イ ン ポ ー ト す る 必 要 は な い 可 能 性 が あ り ま す 。 た だ し 、 ほ か の CA に 対 し て 署 名 付 き 証 明 書 を 要 求 し て い て 、 こ の CA の 公 開 鍵 を 認 証 す る 証 明 書 が 、 cacerts に ま だ 追 加 さ れ て い な い 場 合 は 、 該 当 す る CA か ら の 証 明 書 を 、 「 信 頼 で き る 証 明 書 」 と し て イ ン ポ ー ト す る 必 要 が あ り ま す 。

通 常 、 CA か ら の 証 明 書 は 、 自 己 署 名 証 明 書 、 ま た は ほ か の CA に よ っ て 署 名 さ れ た 証 明 書 で す (後 者 の 場 合 は 、 該 当 す る ほ か の CA の 公 開 鍵 を 認 証 す る 証 明 書 も 必 要 )。 た と え ば 、 ABC と い う 企 業 が CA だ と し ま す 。 こ の と き 、 こ の CA の 公 開 鍵 を 認 証 す る 自 己 署 名 証 明 書 と 考 え ら れ る ABCCA.cer と い う 名 前 の フ ァ イ ル を 、 ABC か ら 入 手 し た と し ま す 。

「 信 頼 で き る 証 明 書 」 と し て 証 明 書 を イ ン ポ ー ト す る 前 に 、 証 明 書 が 有 効 で あ る こ と を 必 ず 確 認 し て く だ さ い 。 ま ず 、 証 明 書 の 内 容 を 表 示 し ( -printcert サ ブ コ マ ン ド 、 ま た は -noprompt オ プ シ ョ ン な し で -import サ ブ コ マ ン ド を 使 用 )、 表 示 さ れ た 証 明 書 の フ ィ ン ガ ー プ リ ン ト が 、 期 待 さ れ る フ ィ ン ガ ー プ リ ン ト と 一 致 す る か ど う か を 確 認 し ま す 。 証 明 書 を 送 信 し た 人 物 に 連 絡 し 、 こ の 人 物 が 提 示 し た (ま た は 安 全 な 公 開 鍵 の リ ポ ジ ト リ に よ っ て 提 示 さ れ る ) フ ィ ン ガ ー プ リ ン ト と 、 上 の コ マ ン ド で 表 示 さ れ た フ ィ ン ガ ー プ リ ン ト と を 比 較 し ま す 。 フ ィ ン ガ ー プ リ ン ト が 一 致 す れ ば 、 送 信 途 中 で ほ か の 何 者 か (攻 撃 者 な ど ) に よ る 証 明 書 の す り 替 え が 行 わ れ て い な い こ と を 確 認 で き ま す 。 送 信 途 中 で こ の 種 の 攻 撃 が 行 わ れ て い た 場 合 、 チ ェ ッ ク を 行 わ ず に 証 明 書 を イ ン ポ ー ト す る と 、 攻 撃 者 に よ っ て 署 名 さ れ た す べ て の も の を 信 頼 す る こ と に な り ま す 。

ABCCA.cer を 有 効 な 証 明 書 と し て 信 頼 す る 場 合 は 、 証 明 書 を キ ー ス ト ア に 追 加 で き ま す 。 た と え ば 、 次 の よ う に し ま す 。

example% keytool -import -alias abc -file ABCCA.cer

ABCCA.cer フ ァ イ ル の デ ー タ を 含 む 「 信 頼 で き る 証 明 書 」 の エ ン ト リ が キ ー ス ト ア 内 に 作 成 さ れ 、 該 当 す る エ ン ト リ に abc と い う 別 名 が 割 り 当 て ら れ ま す 。

CA か ら の 証 明 書 応 答 の イ ン ポ ー ト
証 明 書 署 名 要 求 の 提 出 先 の CA の 公 開 鍵 を 認 証 す る 証 明 書 を イ ン ポ ー ト し た あ と は (ま た は 同 種 の 証 明 書 が す で に cacerts フ ァ イ ル 内 に 存 在 し て い る 場 合 は )、 証 明 書 応 答 を イ ン ポ ー ト し 、 自 己 署 名 証 明 書 を 証 明 連 鎖 で 置 き 換 え る こ と が で き ま す 。 こ の 証 明 連 鎖 は 、 CA の 応 答 が 連 鎖 の 場 合 、 証 明 書 署 名 要 求 に 対 す る 応 答 と し て CA か ら 送 り 返 さ れ た 証 明 連 鎖 で す 。 ま た 、 CA の 応 答 が 単 一 の 証 明 書 の 場 合 は 、 こ の 証 明 書 応 答 と 、 イ ン ポ ー ト 先 の キ ー ス ト ア 内 ま た は cacerts キ ー ス ト ア フ ァ イ ル 内 に す で に 存 在 す る 信 頼 で き る 証 明 書 と を 使 っ て 構 築 し た 証 明 連 鎖 で す 。

た と え ば 、 証 明 書 署 名 要 求 を VeriSign に 送 信 し た と し ま す 。 送 り 返 さ れ た 証 明 書 の 名 前 が VSMarkJ.cer だ と す る と 、 次 の よ う に し て 応 答 を イ ン ポ ー ト で き ま す 。

example% keytool -import -trustcacerts -file VSMarkJ.cer

公 開 鍵 を 認 証 す る 証 明 書 の エ ク ス ポ ー ト
た と え ば 、 jarsigner(1) ツ ー ル を 使 っ て Java ARchive (JAR) フ ァ イ ル に 署 名 を 付 け た と し ま す 。 こ の JAR フ ァ イ ル は ク ラ イ ア ン ト に よ っ て 使 わ れ ま す が 、 ク ラ イ ア ン ト 側 で は 署 名 を 認 証 し た い と 考 え て い ま す 。

ク ラ イ ア ン ト が 署 名 を 認 証 す る 方 法 の 1 つ に 、 ま ず 自 分 の 公 開 鍵 の 証 明 書 を 「 信 頼 で き る 」 エ ン ト リ と し て ク ラ イ ア ン ト の キ ー ス ト ア に イ ン ポ ー ト す る 方 法 が あ り ま す 。 そ の た め に は 、 証 明 書 を エ ク ス ポ ー ト し て 、 ク ラ イ ア ン ト に 提 供 し ま す 。 た と え ば 、 次 の よ う に し て 、 証 明 書 を MJ.cer と い う 名 前 の フ ァ イ ル に コ ピ ー し ま す 。 こ の エ ン ト リ に は 「 mykey 」 と い う 別 名 が 使 わ れ て い る と し ま す 。

example% keytool -export -alias mykey -file MJ.cer

証 明 書 と 署 名 付 き JAR フ ァ イ ル を 入 手 し た ク ラ イ ア ン ト は 、 jarsigner(1) ツ ー ル を 使 っ て 署 名 を 認 証 で き ま す 。

鍵 の ペ ア を 保 持 し た ま ま で の 識 別 名 の 変 更
所 属 部 課 の 変 更 や 転 勤 な ど に よ っ て 、 識 別 名 が 変 更 さ れ た と し ま す 。 こ の よ う な 場 合 は 、 識 別 名 を 更 新 す る 一 方 で 、 引 き 続 き 以 前 と 同 じ 公 開 鍵 と 非 公 開 鍵 の ペ ア を 使 用 す る こ と が で き ま す 。 た と え ば 、 名 前 が Susan Miller で 、 以 前 に sMiller と い う 別 名 で 鍵 エ ン ト リ を 作 成 し て い た と し ま す 。 識 別 名 は 、 次 の よ う に 指 定 し て い ま し た 。

"cn=Susan Miller, ou=Finance Department, o=BlueSoft, c=us"

こ こ で 、 所 属 部 課 が Finance Department か ら Accounting Department に 変 更 に な っ た と し ま す 。 こ の 場 合 、 以 前 に 生 成 し た 公 開 鍵 と 非 公 開 鍵 の ペ ア を 使 い 続 け な が ら 識 別 名 を 更 新 す る に は 、 次 の よ う に し ま す 。 ま ず 、 鍵 エ ン ト リ を コ ピ ー (複 製 ) し ま す 。

example% keytool -keyclone -alias sMiller -dest sMillerNew

こ の 例 で は 、 ス ト ア の パ ス ワ ー ド お よ び 元 の 非 公 開 鍵 の パ ス ワ ー ド と 複 製 先 の 非 公 開 鍵 の パ ス ワ ー ド を コ マ ン ド 行 で 指 定 し て い な い の で 、 パ ス ワ ー ド の 入 力 を 求 め ら れ ま す 。 鍵 エ ン ト リ を コ ピ ー し た あ と は 、 連 鎖 内 の 最 初 の 証 明 書 が 変 更 後 の 識 別 名 を 使 う よ う に す る た め に 、 コ ピ ー し た 鍵 エ ン ト リ に 関 連 付 け ら れ て い る 証 明 連 鎖 を 変 更 す る 必 要 が あ り ま す 。 ま ず 、 適 切 な 名 前 で 自 己 署 名 証 明 書 を 生 成 し ま す 。

example% keytool -selfcert -alias sMillerNew
-dname "cn=Susan Miller, ou=Accounting Department, o=BlueSoft, c=us"

次 に 、 こ の 新 し い 証 明 書 の 情 報 に 基 づ い て 証 明 書 署 名 要 求 を 生 成 し ま す 。

example% keytool -certreq -alias sMillerNew

CA の 証 明 書 応 答 を 入 手 し た ら 、 応 答 を イ ン ポ ー ト し ま す 。

example% keytool -import -alias sMillerNew -file VSSMillerNew.cer

証 明 書 応 答 の イ ン ポ ー ト 後 は 、 古 い 識 別 名 が 使 わ れ て い る 元 の 鍵 エ ン ト リ を 削 除 で き ま す 。

example% keytool -delete -alias sMiller

関 連 項 目

jar(1)jarsigner(1)

次 に つ い て は 、 java.sun.com を 参 照 ま た は 検 索 し て く だ さ い 。
Security in Java 2 Platform @

http://java.sun.com/docs/books/tutorial/security1.2/index.html