Ostatnio edytowany:

keygen

Autor: Virtual Patriot

Przeznaczenie elementu keygen

Mimo że element "keygen" należy do specyfikacji języka HTML5 nie należy korzystać ze wspomnianego elementu "keygen", ponieważ istnieje duże prawdopodobieństwo, że element "keygen" zostanie usunięty w przyszłości z języka HTML.

Element keygen reprezentuje element HTML generujący parę wartości kluczy podczas procesu, który następuje po zatwierdzeniu przez użytkownika formularza HTML.

Dodatkowe techniczne informacje o elemencie keygen

kategoria ogólna
kontekst zewnętrzny
  • element HTML, który tworzy wewnętrzny kontekst frazowany

    Przykładowy Kod HTML

    <form>
      <fieldset>
        <legend>Twoje dane</legend>
    
        <label>Imię: <input></label>
        <label>Nazwisko: <input></label>
    
        <keygen>
      </fieldset>
    
      <button type="submit">zatwierdź</button>
    </form>

    Kontekstem zewnętrznym przykładowego elementu "keygen" jest element "fieldset". Wspomniany element "fieldset" jest jednym z elementów HTML, które tworzą wewnętrzny kontekst frazowany, dlatego w tej sytuacji wspomniany kontekst zewnętrzny, czyli element "fieldset", jest prawidłowym kontekstem zewnętrznym dla elementu "keygen".

kontekst wewnętrzny
  • brak
wymagane elementy dzieci
  • brak
wymagane atrybuty
  • brak
składnia HTML
  • <keygen>
pominięcie tagu na początku
  • nigdy
pominięcie tagu na końcu
  • zawsze
CSS display
  • inline-block

Dodatkowe domyślne reguły CSS elementu keygen

keygen {
  display:inline-block;
}

Interpretacja elementu keygen

Firefox

tak

Google Chrome

tak

Safari

tak

Opera

tak

Internet Explorer

nie

Edge

nie

Opis atrybutów elementu keygen

autofocus

Przeznaczenie atrybutu autofocus

Atrybut autofocus wykorzystany wraz z elementem keygen określa czy dany element keygen powinien być traktowany przez przeglądarkę internetową jako element HTML, na którym w pierwszej kolejności powinien skupić się użytkownik.

Maksymalnie tylko jeden element HTML występujący w zawartości tego samego dokumentu HTML może posiadać atrybut "autofocus".

Wartość domyślna

BRAK (gdy pominęliśmy atrybut)

wartość pusta (gdy nie podaliśmy wartości)

Wartości atrybutu autofocus

autofocus

Atrybut autofocus jest atrybutem logicznym elementu keygen.

Przykładowy Kod HTML

<!DOCTYPE HTML>
<html>
  <head>
    <meta charset="utf-8">
    <title>Darmowy Kurs HTML</title>
  </head>
  <body>

    <form action="http://webkod.pl/php/submit-result.php">
      <label>
        Podaj imię:
        <input type="text" name="imie">
      </label>

      <keygen name="klucz" autofocus>
      <button type="submit">zatwierdź</button>
    </form>

  </body>
</html>

Rezultat

Przykładowy element "keygen" jest aktywny, gdyż wspomniany element "keygen" jest traktowany przez przeglądarkę internetową jako element HTML, na którym w pierwszej kolejności powinien skupić się użytkownik, ponieważ do wspomnianego elementu "keygen" został dodany atrybut "autofocus".

challenge

Przeznaczenie atrybutu challenge

Atrybut challenge wykorzystany wraz z elementem keygen określa dodatkowy ciąg znaków, który powinien zostać wykorzystany przez przeglądarkę internetową w celu wygenerowania wartości pary kluczy w momencie zatwierdzenia formularza HTML przez użytkownika, z którym to formularzem HTML został powiązany dany element keygen.

Wartość domyślna

brak wartości domyślnej

Wartości atrybutu challenge

challenge-*

Należy podać ciąg znaków challenge- oraz dowolny ciąg znaków, który chcemy aby został wykorzystany przez przeglądarkę internetową do wygenerowania wartości pary kluczy.

Przykładowy Kod HTML

<!DOCTYPE HTML>
<html>
  <head>
    <meta charset="utf-8">
    <title>Darmowy Kurs HTML</title>
  </head>
  <body>

    <form action="http://webkod.pl/php/submit-result.php">
      <label>
        Podaj imię:
        <input type="text" name="imie">
      </label>

      <keygen name="klucz" challenge="challenge-wyraz">
      <button type="submit">zatwierdź</button>
    </form>

  </body>
</html>

Rezultat

W momencie próby zatwierdzenia formularza HTML przez użytkownika przeglądarka internetowa wygeneruje wartość klucza prywatnego oraz wartość klucza publicznego między innymi na podstawie ciągu znaków "challenge-wyraz", ponieważ do przykładowego elementu "keygen", który został powiązany ze wspomnianym formularzem HTML reprezentowanym przez element "form", został dodany atrybut "challenge" wraz z wartością "challenge-wyraz".

disabled

Przeznaczenie atrybutu disabled

Atrybut disabled wykorzystany wraz z elementem keygen określa czy dany element keygen powinien zostać wyłączony z interakcji z użytkownikiem.

Dana reprezentowana przez element "keygen", który jest wyłączony z interakcji z użytkownikiem nie jest brana pod uwagę przez jeden z mechanizmów przeglądarki internetowej podczas procesu, który następuje po zatwierdzeniu formularza HTML, z którym został powiązany wspomniany wyłączony z interakcji element "keygen".

Wartość domyślna

BRAK (gdy pominęliśmy atrybut)

wartość pusta (gdy nie podaliśmy wartości)

Wartości atrybutu disabled

disabled

Atrybut disabled jest atrybutem logicznym elementu keygen.

Przykładowy Kod HTML

<!DOCTYPE HTML>
<html>
  <head>
    <meta charset="utf-8">
    <title>Darmowy Kurs HTML</title>
  </head>
  <body>

    <form action="http://webkod.pl/php/submit-result.php">
      <label>
        Podaj imię:
        <input type="text" name="imie">
      </label>

      <keygen name="klucz" disabled>
      <button type="submit">zatwierdź</button>
    </form>

  </body>
</html>

Rezultat

Przykładowy element "keygen" został wyłączony z interakcji z użytkownikiem, ponieważ do wspomnianego elementu "keygen" został dodany atrybut "disabled".

form

Przeznaczenie atrybutu form

Atrybut form wykorzystany wraz z elementem keygen określa, z którym elementem form powinien zostać powiązany dany element keygen.

Wartość domyślna

brak wartości domyślnej

Wartości atrybutu form

form id

Należy podać wartość atrybutu id interesującego nas elementu form.

Przykładowy Kod HTML

<!DOCTYPE HTML>
<html>
  <head>
    <meta charset="utf-8">
    <title>Darmowy Kurs HTML</title>
  </head>
  <body>

    <form action="http://webkod.pl/php/submit-result.php" id="formularz-1">
      <label>
        Podaj imię:
        <input type="text" name="imie">
      </label>

      <button type="submit">zatwierdź</button>
    </form>

    <keygen name="klucz" form="formularz-1">

  </body>
</html>

Rezultat

Mimo że przykładowy element "keygen" nie znajduje się w zawartości elementu "form", wspomniany element "keygen" został powiązany z formularzem HTML reprezentowanym przez wspomniany element "form" posiadający atrybut "id" o wartości "formularz-1", ponieważ do wspomnianego elementu "keygen" został dodany atrybut "form" wraz z wartością "formularz-1".

keytype

Przeznaczenie atrybutu keytype

Atrybut keytype wykorzystany wraz z elementem keygen określa typ algorytmu, z którego powinna skorzystać przeglądarka internetowa w celu wygenerowania wartości pary kluczy w momencie zatwierdzenia formularza HTML przez użytkownika, z którym to formularzem HTML został powiązany dany element keygen.

Wartość domyślna

rsa (gdy pominęliśmy atrybut)

BRAK (gdy podaliśmy wartość nieprawidłową)

Wartości atrybutu keytype

rsa

Wartość rsa oznacza algorytm RSA.

Przykładowy Kod HTML

<!DOCTYPE HTML>
<html>
  <head>
    <meta charset="utf-8">
    <title>Darmowy Kurs HTML</title>
  </head>
  <body>

    <form action="http://webkod.pl/php/submit-result.php">
      <label>
        Podaj imię:
        <input type="text" name="imie">
      </label>

      <keygen keytype="rsa" name="klucz">
      <button type="submit">zatwierdź</button>
    </form>

  </body>
</html>

Rezultat

W momencie próby zatwierdzenia formularza HTML przez użytkownika przeglądarka internetowa wygeneruje wartość klucza prywatnego oraz wartość klucza publicznego między innymi korzystając z algorytmu typu RSA, ponieważ do przykładowego elementu "keygen", który został powiązany ze wspomnianym formularzem HTML reprezentowanym przez element "form", został dodany atrybut "keytype" wraz z wartością "rsa".

name

Przeznaczenie atrybutu name

Atrybut name wykorzystany wraz z elementem keygen określa nazwę, jaką powinna posiadać dana reprezentowana przez dany element keygen oraz która to nazwa może zostać wykorzystana przez jeden z mechanizmów przeglądarki internetowej podczas procesu, który następuje po zatwierdzeniu formularza HTML przez użytkownika, z którym to formularzem HTML został powiązany wspomniany element keygen.

Wartość domyślna

brak wartości domyślnej

Wartości atrybutu name

nazwa

Należy podać niepusty ciąg znaków, który chcemy aby został wykorzystany przez przeglądarkę internetową do określenia interesującej nas nazwy.

Przykładowy Kod HTML

<!DOCTYPE HTML>
<html>
  <head>
    <meta charset="utf-8">
    <title>Darmowy Kurs HTML</title>
  </head>
  <body>

    <form action="http://webkod.pl/php/submit-result.php">
      <label>
        Podaj imię:
        <input type="text" name="imie">
      </label>

      <keygen name="klucz">
      <button type="submit">zatwierdź</button>
    </form>

  </body>
</html>

Rezultat

Nazwą, jaka została przypisana do przykładowego elementu "keygen" jest nazwa "klucz", dlatego dana reprezentowana przez wspomniany element "keygen" będzie posiadała nazwę "klucz", ponieważ do wspomnianego elementu "keygen" został dodany atrybut "name" wraz z wartością "klucz".