名 前
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 ク ラ ス に は
、 キ ー ス ト ア
内 の 情 報 に 対
す る ア ク セ ス
と 変 更 を 行 う
た め の 明 確 に
定 義 さ れ た イ
ン タ フ ェ ー ス
が 用 意 さ れ て
い ま す 。 キ ー
ス ト ア の 固 定
実 装 と し て は
、 そ れ ぞ れ が
特 定 の 「 タ イ
プ 」 の キ ー ス
ト ア を 対 象 と
す る 複 数 の 異
な る 実 装 が 存
在 可 能 で す 。
現 在 、 keytool と jarsigner(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 で 指 定 可 能 な 任 意 の 場 所 か ら キ ー ス ト ア を 読 み 込 む こ と が で き ま す 。
keytool と jarsigner(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
キ ー ワ ー ド の 短 縮 形 で は 、 大 文 字 と 小 文 字 は 区 別 さ れ ま せ ん 。 た と え ば 、 CN 、 cn 、 お よ び 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}
{−Jjavaoption}
鍵 の ペ ア (公 開 鍵 お よ び 関 連 す る 非 公 開 鍵 ) を 生 成 し ま す 。 公 開 鍵 は 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} {−Jjavaoption}
フ ァ イ ル 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} {−Jjavaoption}
フ ァ イ ル 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} {−Jjavaoption}
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}
{−Jjavaoption}
alias に 関 連 付 け ら れ た 証 明 書 を (キ ー ス ト ア か ら ) 読 み 込 み 、 フ ァ イ ル cert_file に 格 納 し ま す 。
フ ァ イ ル が 指 定 さ れ て い な い 場 合 は 、 標 準 出 力 に 証 明 書 が 出 力 さ れ ま す 。
デ フ ォ ル ト で は 、 バ イ ナ リ エ ン コ ー デ ィ ン グ の 証 明 書 が 出 力 さ れ ま す 。 た だ し 、 -rfc オ プ シ ョ ン を 指 定 し た 場 合 は 、 プ リ ン ト 可 能 エ ン コ ー デ ィ ン グ 方 式 の 証 明 書 が 出 力 さ れ ま す 。 プ リ ン ト 可 能 エ ン コ ー デ ィ ン グ 方 式 は 、 イ ン タ ー ネ ッ ト RFC 1421 証 明 書 エ ン コ ー デ ィ ン グ 規 格 で 定 義 さ れ て い ま す 。
alias が 、 信 頼 で き る 証 明 書 を 参 照 し て い る 場 合 は 、 該 当 す る 証 明 書 が 出 力 さ れ ま す 。 そ れ 以 外 の 場 合 、 alias は 、 関 連 付 け ら れ た 証 明 連 鎖 を 持 つ 鍵 エ ン ト リ を 参 照 し ま す 。 こ の 場 合 は 、 連 鎖 内 の 最 初 の 証 明 書 が 返 さ れ ま す 。 こ の 証 明 書 は 、 alias に よ っ て 表 さ れ る エ ン テ ィ テ ィ の 公 開 鍵 を 認 証 す る 証 明 書 で す 。
デ
ー タ の 表 示
−list {−alias alias}
{−storetype storetype}
{−keystore keystore}
[−storepass
storepass]
[−provider provider_class_name]
{−v | −rfc}
{−Jjavaoption}
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} {−Jjavaoption}
元 の エ ン ト リ と 同 じ 非 公 開 鍵 と 認 証 連 鎖 を 持 つ 、 新 し い キ ー ス ト ア エ ン ト リ を 作 成 し ま す 。
alias に は 、 元 の エ ン ト リ を 指 定 し ま す 。 alias を 指 定 し な か っ た 場 合 は 、 既 定 値 の mykey が 使 わ れ ま す 。 dest_alias に は 、 新 し い (複 製 先 の ) エ ン ト リ を 指 定 し ま す 。 コ マ ン ド 行 で 複 製 先 の 別 名 を 指 定 し な か っ た 場 合 は 、 別 名 の 入 力 を 求 め ら れ ま す 。
非 公 開 鍵 の パ ス ワ ー ド が キ ー ス ト ア の パ ス ワ ー ド と 異 な る 場 合 は 、 有 効 な keypass が 指 定 さ れ た 場 合 に の み 、 エ ン ト リ が 複 製 さ れ ま す 。 こ の と き 指 定 す る の は 、 alias に 関 連 付 け ら れ た 非 公 開 鍵 を 保 護 す る た め の パ ス ワ ー ド で す 。 コ マ ン ド 行 で こ の パ ス ワ ー ド が 指 定 さ れ ず 、 非 公 開 鍵 の パ ス ワ ー ド が キ ー ス ト ア の パ ス ワ ー ド と 異 な る 場 合 は 、 パ ス ワ ー ド の 入 力 を 求 め ら れ ま す 。 複 製 さ れ た エ ン ト リ の 非 公 開 鍵 は 、 必 要 に 応 じ て 別 の パ ス ワ ー ド で 保 護 で き ま す 。 コ マ ン ド 行 で -new オ プ シ ョ ン を 指 定 し な か っ た 場 合 は 、 新 し い エ ン ト リ の パ ス ワ ー ド の 入 力 を 求 め ら れ ま す 。 こ の と き 、 複 製 さ れ た 非 公 開 鍵 に 対 し て 同 じ パ ス ワ ー ド を 指 定 で き ま す 。
パ ス ワ ー ド の 扱 い に は 十 分 注 意 す る 必 要 が あ り ま す 。 「 パ ス ワ ー ド に 関 す る 注 意 事 項 」 を 参 照 し て く だ さ い 。
こ の サ ブ コ マ ン ド は 、 あ る 与 え ら れ た 鍵 の ペ ア に 対 応 す る 複 数 の 認 証 連 鎖 を 確 立 す る た め に 使 用 で き ま す 。 ま た 、 バ ッ ク ア ッ プ を 目 的 と し て 使 用 す る こ と も で き ま す 。
−storepasswd {−new new_storepass} {−storetype storetype}
{−keystore
keystore} [−storepass
storepass]
[−provider provider_class_name]
{−v} {−Jjavaoption}
キ ー ス ト ア の 内 容 の 完 全 性 を 保 護 す る た め に 使 う パ ス ワ ー ド を 変 更 し ま す 。 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} {−Jjavaoption}
alias に よ っ て 特 定 さ れ る 非 公 開 鍵 を 保 護 す る た め の パ ス ワ ー ド を 、 old_keypass か ら new_keypass に 変 更 し ま す 。
コ マ ン ド 行 で -keypass オ プ シ ョ ン を 指 定 し て お ら ず 、 非 公 開 鍵 の パ ス ワ ー ド が キ ー ス ト ア の パ ス ワ ー ド と 異 な る 場 合 は 、 非 公 開 鍵 の パ ス ワ ー ド の 入 力 を 求 め ら れ ま す 。
コ マ ン ド 行 で -new オ プ シ ョ ン を 指 定 し な か っ た 場 合 は 、 新 し い パ ス ワ ー ド の 入 力 を 求 め ら れ ま す 。
パ ス ワ ー ド の 扱 い に は 十 分 注 意 す る 必 要 が あ り ま す 。 「 パ ス ワ ー ド に 関 す る 注 意 事 項 」 を 参 照 し て く だ さ い 。
−delete [−alias alias] {−storetype storetype}
{−keystore
keystore} [−storepass
storepass]
[−provider provider_class_name]
{−v} {−Jjavaoption}
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
関 連 項 目
次
に つ い て は 、
java.sun.com を 参 照 ま
た は 検 索 し て
く だ さ い 。
Security in Java 2 Platform @
http://java.sun.com/docs/books/tutorial/security1.2/index.html