Das Tag <keygen> ist für die Generierung eines Schlüsselpaares (öffentlich und privat) verantwortlich, das zum Verschlüsseln und Entschlüsseln von Daten, die beim Senden eines HTML-Formulars an den Server gesendet werden, verwendet wird. Der öffentliche Schlüssel wird zusammen mit den übermittelten Formulardaten an den Server gesendet, und der private Schlüssel wird auf dem lokalen Gerät des Benutzers gespeichert.

Das Tag wird auch zum Erstellen und Verifizieren der digitalen Signatur verwendet.

Das Element <keygen> gibt dem Benutzer die Möglichkeit, aus einer Reihe von Optionen für die Schlüsselgröße zu wählen und auch zu wählen, wo er den Schlüssel generieren möchte, zum Beispiel auf einer Smartcard oder in einer Software, die auf der Festplatte gespeichert ist. Das ist jedoch nur möglich, wenn der Browser des Benutzers kryptographische Hardware unterstützt.

Syntax

Das Tag <keygen> wird im Tag <form> geschrieben. Das Endtag ist nicht obligatorisch.

Beispiel

<!DOCTYPE html>
<html>
  <head>
    <title>Der Titel des Dokuments</title>
  </head>
  <body>
    <form action="demo_keygen.asp" method="get">
      <keygen name="rsaPublicKey" keytype="RSA">
      Benutzername: <input type="text" name="usr_name">
      <input type="submit">
    </form>
  </body>
</html>

Ergebnis

keygen beispiel

Browserunterstützung

  • Die Optionen in Chrome und Opera in Engine: 2048 (hoch), 1024 (mittel). Im Browser Opera in Engine Presto sind die Optionen 1024, 1280, 1536, 1792, 2048, 2304, 2560, 2816, 3072, 3328, 3584, 3840 und 4096 erreichbar.
  • Die Optionen in Safari 5: 2048 (hoch), 1024 (mittel), 512 (niedrig)
  • Die Optionen in Firefox und Android: hoch, Mittelstuffe.
  • iOS behauptet, es zu unterstützen, erstellt aber ein nicht funktionierendes leeres Dropdown-Menü.

Attribute

Attribut Wert Beschreibung
autofocus autofocus Es definiert, dass beim Herunterladen der Seite das Element automatisch einen Fokus bekommen muss.
Es wird in IE und Firefox nicht unterstützt.
challenge challenge Es definiert den Zeilenaufruf, der mit der öffentlichen Schlüssel übertragen wird. Der Wert des Attributes ist jede belibiege Textzeile. Wenn es kein Attribut angegeben ist, wird es voreingestellt eine Leerzeile verwendet.
disabled disabled Es bestimmt, dass das Element <keygen> muss ausgeschaltet werden.
form form_id Es bestimmt den Identifikator der Form/en, zu der das Element <keygen> gehört.
Es wird in IE nicht unterstützt.
keytype Es definiert den Algorithmus der Schlüsselcodierung.
rsa Der Benutzer kann zwischen der höhen und mittleren Sicherheitsstuffe wählen (voreingestellt).
dsa Der Benutzer kann die Schlüsselgröße wählen.
ec Der Benutzer kann zwischen der höhen und mittleren Sicherheitsstuffe wählen.
name name Es definiert den Namen des Elements <keygen>.

Das Tag <keygen> unterschtützt Globale Attribute und Globale Eventhandler.

Browser-Support

chrome firefox safari opera
1+ 1+ 1.2+ 3+

Übe dein Wissen

Was ist der Zweck des <keygen>-Tags in HTML und wie wird es verwendet?
Finden Sie das nützlich?