mcrypt_module_open

(PHP 4 >= 4.0.2, PHP 5, PHP 7 < 7.2.0, PECL mcrypt >= 1.0.0)

mcrypt_module_openKullanılacak kipi ve algoritma modülünü açar

Açıklama

mcrypt_module_open ( string $algoritma , string $algoritma_dizini , string $kip , string $kip_dizini ) : resource

Kullanılacak kipi ve algoritma modülünü açar. Algoritma doğrudan ismiyle belirtilebileceği gibi ("twofish" gibi), MCRYPT_şifre_adı sabitlerinden biri de belirtilebilir. Modülü kapatmak için mcrypt_module_close() kullanılır.

Değiştirgeler

algoritma

Kullanılacak algoritma.

algoritma_dizini

algorithm_dizini ve mode_dizini şifreleme modüllerinin yerlerini belirtmek için kullanılır. Bir dizin yerine boş bir dizge belirtirseniz mcrypt.algorithms_dir veya mcrypt.modes_dir php.ini yönergelerinin değerleri kullanılır. Bunlar atanmamışsa libmcrypt derlenirken kullanılan öntanımlı dizinler kullanılır (genellikle /usr/local/lib/libmcrypt).

kip

Kullanılacak kip.

kip_dizini

Dönen Değerler

Bir hata durumunda FALSE yoksa bir şifreleme tanıtıcısı döndürür.

Örnekler

Örnek 1 - mcrypt_module_open() örnekleri

<?php
    $şt 
mcrypt_module_open(MCRYPT_DES'',
        
MCRYPT_MODE_ECB'/usr/lib/mcrypt-modes');

    
$şt mcrypt_module_open('rijndael-256''''ofb''');
?>

Yukarıdaki örnekteki ilk satır öntanımlı dizindeki DES şifre modülünü ve /usr/lib/mcrypt-modes dizinindeki EBC kip modülünü açacaktır. İkinci örnekte şifre ve kip için isimleri kullanılmaktadır. Bu örnek sadece eklenti, libmcrypt 2.4.x veya 2.5.x desteğiyle derlenmişse çalışacaktır.

Örnek 2 - Şifreleme için mcrypt_module_open() kullanımı

<?php
    
/* Şifre modülünü açalım */
    
$şt mcrypt_module_open('rijndael-256''''ofb''');

    
/* IV'yi oluşturup anahtar uzunluğunu belirleyelim.
       Windows'ta bunun yerine MCRYPT_RAND kullanın */
    
$iv mcrypt_create_iv(mcrypt_enc_get_iv_size($şt), MCRYPT_DEV_RANDOM);
    
$ks mcrypt_enc_get_key_size($şt);

    
/* Anahtarı oluşturalım */
    
$tuz substr(md5('çok gizli anahtar'), 0$ks);

    
/* Şifreleme işlemini ilklendirelim */
    
mcrypt_generic_init($şt$tuz$iv);

    
/* Veriyi şifreleyelim */
    
$şifreli mcrypt_generic($şt'Bu çok önemli bir veridir.');

    
/* Şifre tanıtıcısını sonlandıralım */
    
mcrypt_generic_deinit($şt);

    
/* Şifreleme modülünü şifre çözmek için ilklendirelim */
    
mcrypt_generic_init($şt$tuz$iv);

    
/* Verinin şifresini çözelim */
    
$şifresiz mdecrypt_generic($şt$şifreli);

    
/* Şifre çözme tanıtıcısını sonlandıralım ve modülü kapatalım */
    
mcrypt_generic_deinit($şt);
    
mcrypt_module_close($şt);

    
/* Dizgeyi gösterelim */
    
echo trim($şifresiz) . "\n";
?>

Ayrıca Bakınız