【注意】keygen要素は、HTML Living Standardの仕様では削除されています。
<keygen>タグは、key generatorの略で、フォーム送信時にキーを発行して暗号化する際に使用します。
キーが発行される場合には、秘密キーと公開キーがペアで発行されます。
秘密キーはローカル環境に保存され、公開キーはサーバーに送信されます。
この仕組みにより、クライアント認証がより確実となり、情報送信の安全性が高まるでしょう。
尚、keytype属性では、暗号化の種類を指定することができますが、HTML5の仕様ではブラウザがサポートするべき暗号方式は決められていません。
ブラウザによっては、どの暗号方式もサポートされていないこともありえます。
keytype属性で指定できる可能性のある値としては、rsaなどが挙げられます。
RSAとは、公開鍵暗号方式の標準として普及している暗号アルゴリズムの名称です。
RSAでは、巨大な数の素因数分解が困難なことを利用してデータを暗号化します。
keygen要素は、HTML5から新たに追加された要素です。
<form action=”processkey.cgi” method=”post” enctype=”multipart/form-data”>
<p><keygen name=”key”></p>
<p><input type=submit value=”キーを送信する”></p>
</form>