HTML keygen: Main Tips
- The HTML
<keygen>
element generated a private and public key pair, which was used while submitting an HTML <form>. keygen
HTML usually had attributes such asautofocus
,challenge
,disabled
, andform
.- In HTML5,
keygen
is no longer supported.
keygen Explained
After HTML <keygen>
created a public key, it was sent to a web server along with the other form inputs. The private key was stored locally. Web browsers used these keys to generate a certificate for secure data communication between a web browser and a web server.
Note: the functionality of <keygen> in HTML depended on the web browser and the corresponding web server program.
The example below defines a key-pair used while submitting an HTML <form>
.
<form action="login" method="POST">
Username: <input type="text" name="user_name">
Password: <input type="password" name="user_password">
Keygen Strength: <keygen name="login_form">
<input type="submit" value="Login">
</form>
Attributes for keygen
autofocus
It sets focus to the element after a web page loads.
<form action="login" method="POST">
Username: <input type="text" name="user_name">
Password: <input type="password" name="user_password">
Keygen Strength: <keygen name="login_form" autofocus>
<input type="submit" value="Login">
</form>
challenge
It defines a challenge
string for validation on a web server.
<form action="login" method="POST">
Username: <input type="text" name="user_name">
Password: <input type="password" name="user_password">
Keygen Strength: <keygen name="login_form" challenge="staff_login">
<input type="submit" value="Login" >
</form>
disabled
It sets the element disabled
.
<form action="login" method="POST">
Username: <input type="text" name="user_name">
Password: <input type="password" name="user_password">
Keygen Strength: <keygen name="login_form" disabled>
<input type="submit" value="Login">
</form>
form
It defines a space separated list of form ID's.
<form id="user_login" action="login" method="POST">
Username: <input type="text" name="user_name">
Password: <input type="password" name="user_password">
Keygen Strength: <keygen name="login_form" form="user_login">
<input type="submit" value="Login">
</form>
keytype
It defines the type of algorithm to be used for key generation.
<form action="login" method="POST">
Username: <input type="text" name="user_name">
Password: <input type="password" name="user_password">
Keygen Strength: <keygen name="login_form" keytype="dsa">
<input type="submit" value="Login">
</form>
name
It defines a name for the element (it is a required attribute).
<form action="login" method="POST">
Username: <input type="text" name="user_name">
Password: <input type="password" name="user_password">
Keygen Strength: <keygen name="login_form">
<input type="submit" value="Login">
</form>