<keygen>:フォームの送信時に暗号鍵を発行する要素・HTMLタグの解説

取り扱い 廃止された要素
カテゴリー フロー・コンテンツ
フレージング・コンテンツ
インタラクティブ・コンテンツ
パルパブル・コンテンツ
親にできる要素 フレージング・コンテンツを受け入れる要素
子にできる要素 なし
対応ブラウザ caniuseで確認

このタグは非推奨または廃止になりました。新しく作るウェブサイトへの使用は避けて下さい。また、既存のソースコードの中に含まれている場合は更新をお勧めします。詳細は現行の標準仕様に従って下さい。

<keygen>タグの解説

<keygen>は、フォーム送信時に暗号鍵(キー)を発行して暗号化するために使用します。この要素は、フォームの一部として鍵の材料の生成を容易にし、情報送信の安全性を高めることを想定しています。

キーが発行される場合には、秘密キーと公開キーがペアで発行されます。秘密キーはローカル環境に保存され、公開キーはサーバーに送信されます。

keytype属性で、暗号化の種類を指定することができますが、HTML5の仕様ではブラウザがサポートすべき暗号方式は決められていません。そのため、ブラウザによって、どの暗号方式もサポートされていない場合があります。

この要素に対応しているブラウザでは、鍵の長さを設定するためのインターフェイスが表示されます。

<keygen>タグの特徴

  • この要素自体はフォームに埋め込まれる値であり、可視化されることは想定されていません。
  • この要素は空要素です。開始タグのあとに終了タグを記述する必要はありません。

<keygen>要素に指定できる属性

autofocus
自動的にフォーカスする
challenge
送信されるキーと一緒にパッケージする値を指定する
disabled
キーを操作不能にする
form
form要素のid属性と関連付ける
keytype
暗号化の種類を指定する(指定できる値はブラウザによる)
name
キーに名前を付ける

<keygen>要素の使い方とサンプルコード

この要素の最も基本的な書き方は以下の通りです。<form>の子要素に配置して送信する際の暗号鍵を定義します。


<form method="post" action="example.php" id="example">
	<keygen name="key" form="example">
	<input type="submit" value="送信する">
</form>

<keygen>に関連するHTMLタグ

非推奨または廃止になったタグ
<acronym> 略語(頭字語)であることを表す
<applet> JAVAアプレットを埋め込む
<basefont> 文字の基準となるサイズ、色、フォントの指定
<bgsound> 効果音やバックミュージックを鳴らす
<big> 文字をひと周り大きく表示する
<blink> 文字を点滅させたい範囲を指定する
<center> センタリングする
<command> ページ内のメニューに操作コマンドを設定する
<dir> ディレクトリ・リストを表す
<font> フォントの色や大きさを変える
<frame> フレームに表示するファイルを指定する
<frameset> ウィンドウを分割する
<keygen> フォーム送信時に暗号鍵を発行する
<listing> タグを解釈してソースをそのまま表示する
<marquee> 文字列をスクロールさせる(流れる文字)
<menuitem> コンテキストメニューの項目を作成する
<multicol> 段組みのレイアウトを作成する
<nobr> 自動改行を無効にする
<noembed> プラグインが利用できない環境での表示内容を指定する
<noframes> フレームが表示できない環境での表示内容を指定する
<plaintext> ソースをテキストとしてそのまま表示する
<rb> ルビをふる文字の区切りを指定する
<spacer> ホワイトスペースを挿入する
<strike> 文字列に打ち消し線・取り消し線を引く
<tt> 文字を等幅フォントで表示する
<xmp> ソースコードをそのまま表示する