cynic           Mon Feb  5 04:43:38 2001 EDT

  Added files:                 
    /phpdoc/cs/functions        openssl.xml 
  Log:
  should be completely translated
  
  

Index: phpdoc/cs/functions/openssl.xml
+++ phpdoc/cs/functions/openssl.xml
 <reference id="ref.openssl">
  <title>OpenSSL funkce</title>
  <titleabbrev>OpenSSL</titleabbrev>
  <partintro>
  <para>
   Tato extenze vyu��v� funkce <ulink url="&url.openssl;">OpenSSL</ulink> pro
   tvorbu a ov��ov�n� podpis� a pe�et�n� (k�dov�n�) a otv�r�n� (dek�dov�n�) dat.
   K pr�ci s touto extenz� pot�ebujete OpenSSL >= 0.9.6.
  </para>
  <para>
   OpenSSL nab�z� mnoho vlastnost�, kter� tato extenze v sou�asnosti nepodporuje.
   N�kter� z nich mohou b�t v budoucnu p�id�ny.
  </para>
  </partintro>

  <refentry id="function.openssl-free-key">
   <refnamediv>
    <refname>openssl_free_key</refname>
    <refpurpose>Uvolnit prost�edky kl��e</refpurpose>
   </refnamediv>
   <refsect1>
    <title>Popis</title>
    <funcsynopsis>
     <funcprototype>
      <funcdef>void <function>openssl_free_key</function></funcdef>
      <paramdef>int <parameter>key_identifier</parameter></paramdef>
     </funcprototype>
    </funcsynopsis>
    <para>
     <function>openssl_free_key</function> uvoln� kl�� asociovan� s p�edan�m
     <parameter>key_identifier</parameter> z pam�ti.
    </para>
   </refsect1>
  </refentry>

  <refentry id="function.openssl-get-privatekey">
   <refnamediv>
    <refname>openssl_get_privatekey</refname>
    <refpurpose>P�ipravit soukrom� PEM kl�� k pou�it�</refpurpose>
   </refnamediv>
   <refsect1>
    <title>Popis</title>
    <funcsynopsis>
     <funcprototype>
      <funcdef>int <function>openssl_get_privatekey</function></funcdef>
      <paramdef>string <parameter>key</parameter></paramdef>
      <paramdef>string 
<parameter><optional>passphrase</optional></parameter></paramdef>
     </funcprototype>
    </funcsynopsis>
    <para>Pri �sp�chu vrac� kl��, p�i chyb� <literal>false</literal>.
    </para>
    <para>
     <function>openssl_get_privatekey</function> rozparsuje sourkom� PEM kl��
     <parameter>key</parameter> a p�iprav� ho k pou�it� v dal��ch funkc�ch.
     Voliteln� argument <parameter>passphrase</parameter> mus� b�t p�ed�n, pokud
     je tento kl�� zak�dov�n (chr�n�n heslem).
    </para>
   </refsect1>
  </refentry>

  <refentry id="function.openssl-get-publickey">
   <refnamediv>
    <refname>openssl_get_publickey</refname>
    <refpurpose>
     Z�skat z certifik�tu ve�ejn� kl�� a p�ipravit ho k pou�it�
    </refpurpose>
   </refnamediv>
   <refsect1>
    <title>Popis</title>
    <funcsynopsis>
     <funcprototype>
      <funcdef>int <function>openssl_get_publickey</function></funcdef>
      <paramdef>string <parameter>certificate</parameter></paramdef>
     </funcprototype>
    </funcsynopsis>
    <para>
     P�i �sp�chu vrac� identifik�tor kl��e, p�i chyb� <literal>false</literal>.
    </para>
    <para>
     <function>openssl_get_publickey</function> z X.509 certifik�tu
     <parameter>certificate</parameter> vyextrahuje ve�ejn� kl�� a p�iprav� ho
     k pou�it� v dal��ch funkc�ch.
    </para>
   </refsect1>
  </refentry>

  <refentry id="function.openssl-open">
   <refnamediv>
    <refname>openssl_open</refname>
    <refpurpose>Otev��t zape�et�n� data</refpurpose>
   </refnamediv>
   <refsect1>
    <title>Popis</title>
    <funcsynopsis>
     <funcprototype>
      <funcdef>bool <function>openssl_open</function></funcdef>
      <paramdef>string <parameter>sealed_data</parameter></paramdef>
      <paramdef>string <parameter>open_data</parameter></paramdef>
      <paramdef>string <parameter>env_key</parameter></paramdef>
      <paramdef>int <parameter>priv_key_id</parameter></paramdef>
     </funcprototype>
    </funcsynopsis>
    <para>
     P�i �sp�chu vrac� <literal>true</literal>, p�i chyb� <literal>false</literal>.
     �sp�n� otev�en� data se um�st� do argumentu <parameter>open_data</parameter>.
    </para>
    <para>
     <function>openssl_open</function> otev�e (dek�duje)
     <parameter>sealed_data</parameter> pomoc� soukrom�ho kl��e asociovan�ho s
     identifik�torem <parameter>priv_key_id</parameter> a ob�lkou
     <parameter>env_key</parameter>. Tato ob�lka se generuje p�i pe�et�n� dat a
     je pou�iteln� pouze s jedn�m ut�it�m soukrom�m kl��em. V�ce informac� viz
     <function>openssl_seal</function>.
    </para>
    <para>
     <example>
      <title>Uk�zka <function>openssl_open</function></title>
      <programlisting role="php">
// $sealed a $env_key obsahuj� zape�et�n� data a ob�lku
// oboj� n�m bylo d�no t�m, kdo data zape�etil

// z�skat ze souboru soukrom� kl�� a p�ipravit ho
$fp = fopen("/src/openssl-0.9.6/demos/sign/key.pem", "r");
$priv_key = fread($fp, 8192);
fclose($fp);
$pkeyid = openssl_get_privatekey($priv_key);

// dek�dovat data a ulo�it je v $open
if (openssl_open($sealed, $open, $env_key, $pkeyid))
    echo "tady jsou otev�en� data: ", $open;
else
    echo "nepoda�ilo se otev��t data";

// uvolnit kl�� z pam�ti
openssl_free_key($pkeyid);
      </programlisting>
     </example>
    </para>
    <simpara>
     Viz tak� <function>openssl_seal</function>.
    </simpara>
   </refsect1>
  </refentry>

  <refentry id="function.openssl-seal">
   <refnamediv>
    <refname>openssl_seal</refname>
    <refpurpose>Zape�etit (zak�dovat) data</refpurpose>
   </refnamediv>
   <refsect1>
    <title>Popis</title>
    <funcsynopsis>
     <funcprototype>
      <funcdef>int <function>openssl_seal</function></funcdef>
      <paramdef>string <parameter>data</parameter></paramdef>
      <paramdef>string <parameter>sealed_data</parameter></paramdef>
      <paramdef>array <parameter>env_keys</parameter></paramdef>
      <paramdef>array <parameter>pub_key_ids</parameter></paramdef>
     </funcprototype>
    </funcsynopsis>
    <para>
     P�i �sp�chu vrac� d�lku zape�et�n�ch dat, p�i chyb� <literal>false</literal>.
     �sp�n� zape�et�n� data se um�st� do argumentu
     <parameter>sealed_data</parameter>, a ob�lka do
     <parameter>env_keys</parameter>.

    </para>
    <para>
     <function>openssl_seal</function> zape�et� (zak�duje)
     <parameter>data</parameter> pomoc� RC4 s n�hodn� generovan�m tajn�m kl��em.
     Tento kl�� se zak�duje v�emi ve�ejn�mi kl��i asociovan�mi s identifik�tory
     v <parameter>pub_key_ids</parameter> a zak�dovan� kl��e se vr�t� v
     <parameter>env_keys</parameter>. To znamen�, �e lze poslat zape�et�n� data
     v�ce p��jemc�m (za p�edpokladu, �e m�me jej�ch ve�ejn� kl��e). Ka�d� z
     p��jemc� mus� obdr�et zape�et�n� data a ob�lku, kter� byla zak�dov�na
     jeho ve�ejn�m kl��em.
    </para>
    <para>
     <example>
      <title>Uk�zka <function>openssl_seal</function></title>
      <programlisting role="php">
// $data obsahuje data ur�en� k zape�et�n�

// z�skat ve�ejn� kl��e na�ich p��jemc� a p�ipravit je
$fp = fopen("/src/openssl-0.9.6/demos/maurice/cert.pem", "r");
$cert = fread($fp, 8192);
fclose($fp);
$pk1 = openssl_get_publickey($cert);
// opakovat prodruh�ho p��jemce
$fp = fopen("/src/openssl-0.9.6/demos/sign/cert.pem", "r");
$cert = fread($fp, 8192);
fclose($fp);
$pk2 = openssl_get_publickey($cert);

// zape�etit zpr�vu, pouze majitel� $pk1 a $pk2 mohou dek�dovat $sealed pomoc�
// $ekeys[0] a $ekeys[1].
openssl_seal($data, $sealed, $ekeys, array($pk1,$pk2));

// uvolnit kl��e z pam�ti
openssl_free_key($pk1);
openssl_free_key($pk2);
      </programlisting>
     </example>
    </para>
    <simpara>
     Viz tak� <function>openssl_open</function>.
    </simpara>
   </refsect1>
  </refentry>

  <refentry id="function.openssl-sign">
   <refnamediv>
    <refname>openssl_sign</refname>
    <refpurpose>Generate signature</refpurpose>
   </refnamediv>
   <refsect1>
    <title>Popis</title>
    <funcsynopsis>
     <funcprototype>
      <funcdef>bool <function>openssl_sign</function></funcdef>
      <paramdef>string <parameter>data</parameter></paramdef>
      <paramdef>string <parameter>signature</parameter></paramdef>
      <paramdef>int <parameter>priv_key_id</parameter></paramdef>
     </funcprototype>
    </funcsynopsis>
    <para>
     P�i �sp�chu vrac� <literal>true</literal>, p�i chyb� <literal>false</literal>.
     �sp�n� vytvo�en� podpis se um�st� v <parameter>signature</parameter>.
    </para>
    <para>
     <function>openssl_sign</function> vypo��t� podpis pro dan�
     specified <parameter>data</parameter> pomoc� SHA1 hashe a n�sledn� jej
     zak�duje soukrom�m kl��em asociovan�m s
     <parameter>priv_key_id</parameter>. Pozn.: samotn� data nejsou k�dov�na.
    </para>
    <para>
     <example>
      <title><function>openssl_sign</function> example</title>
      <programlisting role="php">
// $data obsahuje data ur�en� k podpisu

// z�skat ze souboru soukrom� kl�� a p�ipravit ho
$fp = fopen("/src/openssl-0.9.6/demos/sign/key.pem", "r");
$priv_key = fread($fp, 8192);
fclose($fp);
$pkeyid = openssl_get_privatekey($priv_key);

// vytvo�it podpis
openssl_sign($data, $signature, $pkeyid);

// uvolnit kl�� z pam�ti
openssl_free_key($pkeyid);
      </programlisting>
     </example>
    </para>
    <simpara>
     Viz tak� <function>openssl_verify</function>.
    </simpara>
   </refsect1>
  </refentry>

  <refentry id="function.openssl-verify">
   <refnamediv>
    <refname>openssl_verify</refname>
    <refpurpose>Ov��it podpis</refpurpose>
   </refnamediv>
   <refsect1>
    <title>Popis</title>
    <funcsynopsis>
     <funcprototype>
      <funcdef>int <function>openssl_verify</function></funcdef>
      <paramdef>string <parameter>data</parameter></paramdef>
      <paramdef>string <parameter>signature</parameter></paramdef>
      <paramdef>int <parameter>pub_key_id</parameter></paramdef>
     </funcprototype>
    </funcsynopsis>
    <para>
     Vrac� 1, pokud je podpis spr�vn�, 0, pokud je nespr�vn�, a -1 p�i chyb�.
    </para>
    <para>
     <function>openssl_verify</function> ov��uje, zda je
     <parameter>signature</parameter> spr�vn� pro
     <parameter>data</parameter> pomoc� ve�ejn�ho kl��e asociovan�ho s
     <parameter>pub_key_id</parameter>. Mus� to b�t ve�ejn� kl�� odpov�daj�c�
     soukrom�mu kl��i pou�it�mu k podpisu.
    </para>
    <para>
     <example>
      <title>Uk�zka <function>openssl_verify</function></title>
      <programlisting role="php">
// $data a $signature obsahuj� data a podpis

// z�skat z certifik�tu ve�ejn� kl�� a p�ipravit ho
$fp = fopen("/src/openssl-0.9.6/demos/sign/cert.pem", "r");
$cert = fread($fp, 8192);
fclose($fp);
$pubkeyid = openssl_get_publickey($cert);

// zjistit, jestli je podpis v po��dku
$ok = openssl_verify($data, $signature, $pubkeyid);
if ($ok == 1)
    echo "dob�e";
elseif ($ok == 0)
    echo "�patn�";
else
    echo "nejh��, p�i kontrole podpisu do�lo k chyb�";

// uvolnit kl�� z pam�ti
openssl_free_key($pubkeyid);
      </programlisting>
     </example>
    </para>
    <simpara>
     Viz tak� <function>openssl_sign</function>.
    </simpara>
   </refsect1>
  </refentry>
 </reference>

<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
sgml-parent-document:nil
sgml-default-dtd-file:"../../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
-->

Reply via email to