1
0
mirror of https://github.com/php/doc-tr.git synced 2026-03-24 15:22:23 +01:00
Files
archived-doc-tr/reference/mcrypt/functions/mcrypt-encrypt.xml
2026-01-19 03:24:36 +00:00

188 lines
5.8 KiB
XML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: e849a6c4225bd992474793ec6983df7898cae0be Maintainer: nilgun Status: ready -->
<refentry xmlns="http://docbook.org/ns/docbook" xml:id="function.mcrypt-encrypt">
<refnamediv>
<refname>mcrypt_encrypt</refname>
<refpurpose>Salt metin veriyi belirtilen bağımsız değişkenlerle şifreler
</refpurpose>
</refnamediv>
<refsynopsisdiv>
&warn.deprecated.function-7-1-0.removed-7-2-0;
</refsynopsisdiv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type class="union"><type>string</type><type>false</type></type><methodname>mcrypt_encrypt</methodname>
<methodparam><type>string</type><parameter>şifre</parameter></methodparam>
<methodparam><type>string</type><parameter>anahtar</parameter></methodparam>
<methodparam><type>string</type><parameter>veri</parameter></methodparam>
<methodparam><type>string</type><parameter>kip</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>iv</parameter></methodparam>
</methodsynopsis>
<simpara>
Veriyi şifreleyip döndürür.
</simpara>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>şifre</parameter></term>
<listitem>
&mcrypt.parameter.cipher;
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>anahtar</parameter></term>
<listitem>
<simpara>
Veriyi şifreleyecek anahtar. Aanhtar şifre tarafından desteklenmiyorsa
işlev bir uyarı çıktır ve &false; döndürür.
</simpara>
<simpara>
Bir dizgeden bir anahtar oluşturmak için <link linkend="ref.hash">hash</link> işlevlerini kullanmanız önerilir.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>veri</parameter></term>
<listitem>
<simpara>
Belirtilen <parameter>şifre</parameter> ve <parameter>kip</parameter>
ile şifrelenecek veri. Veri uzunluğu desteklenen küme boyunun
katlarından farklıysa eksik kısım '<literal>\0</literal>' ile
doldurulur.
</simpara>
<simpara>
Dönen şifreli veri girilen veriden daha uzun olabilir.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>kip</parameter></term>
<listitem>
&mcrypt.parameter.mode;
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>iv</parameter></term>
<listitem>
&mcrypt.parameter.iv.strict;
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<simpara>
Şifrelenmiş veriyi bir dizge olarak döndürür,&return.falseforfailure;.
</simpara>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title>- <function>mcrypt_encrypt</function> örneği</title>
<programlisting role="php">
<![CDATA[
<?php
# --- ENCRYPTION ---
# the key should be random binary, use scrypt, bcrypt or PBKDF2 to
# convert a string into a key
# key is specified using hexadecimal
$key = pack('H*', "bcb04b7e103a0cd8b54763051cef08bc55abe029fdebae5e1d417e2ffb2a00a3");
# show key size use either 16, 24 or 32 byte keys for AES-128, 192
# and 256 respectively
$key_size = strlen($key);
echo "Key size: " . $key_size . "\n";
$plaintext = "This string was AES-256 / CBC / ZeroBytePadding encrypted.";
# create a random IV to use with CBC encoding
$iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_CBC);
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
# creates a cipher text compatible with AES (Rijndael block size = 128)
# to keep the text confidential
# only suitable for encoded input that never ends with value 00h
# (because of default zero padding)
$ciphertext = mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key,
$plaintext, MCRYPT_MODE_CBC, $iv);
# prepend the IV for it to be available for decryption
$ciphertext = $iv . $ciphertext;
# encode the resulting cipher text so it can be represented by a string
$ciphertext_base64 = base64_encode($ciphertext);
echo $ciphertext_base64 . "\n";
# === WARNING ===
# Resulting cipher text has no integrity or authenticity added
# and is not protected against padding oracle attacks.
# --- DECRYPTION ---
$ciphertext_dec = base64_decode($ciphertext_base64);
# retrieves the IV, iv_size should be created using mcrypt_get_iv_size()
$iv_dec = substr($ciphertext_dec, 0, $iv_size);
# retrieves the cipher text (everything except the $iv_size in the front)
$ciphertext_dec = substr($ciphertext_dec, $iv_size);
# may remove 00h valued characters from end of plain text
$plaintext_dec = mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $key,
$ciphertext_dec, MCRYPT_MODE_CBC, $iv_dec);
echo $plaintext_dec . "\n";
?>
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
Key size: 32
ENJW8mS2KaJoNB5E5CoSAAu0xARgsR1bdzFWpEn+poYw45q+73az5kYi4j+0haevext1dGrcW8Qi59txfCBV8BBj3bzRP3dFCp3CPQSJ8eU=
This string was AES-256 / CBC / ZeroBytePadding encrypted.
]]>
</screen>
</example>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><function>mcrypt_decrypt</function></member>
<member><function>mcrypt_module_open</function></member>
</simplelist>
</refsect1>
</refentry>
<!-- 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
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->