Blog'a Dön

Buğra Şıkel

PHP ile Verileri Şifreleme (Kriptografi) ve Şifre Çözme Fonksiyonları

PHP ile şifreleme, şifre çözme fonksiyonları

Projelerimizde çoğu zaman şifrelemeler oluşturuyoruz. Bu şifrelemelerin çoğunu tek taraflı yapsak da bazı zamanlarda geri açılabilir şifreler kullanmamız gerekebiliyor. Aşağıdaki kod bloğunda php ile şifreleme ve şifrelediğimiz veriyi çözmemizi sağlayacak 2 fonksiyon göstereceğim. Bu fonksiyonları geliştirip, şifreleme algoritmasındaki anahtarı kişilere özel olarak kaydederek, o kişilerin arasındaki veriyi sadece kendilerinin görebilmesini sağlayabiliriz. Whatsapp’ta kullanılan uçtan uca şifrelemenin ilkel bir örneği olarak da tanımlayabiliriz.

İlk fonksiyonumuzda veriyi şifreliyoruz.

function encryption($data, $encryptkey)
{
    // data ile şifrelenecek veriyi gönderiyoruz.
    // encryptkey ile şifremizi daha sonra açmak için kullanacağımız anahtarı belirliyoruz.
    $cipher = 'AES-128-ECB'; // şifrelemede kullanılacak algoritmik değer.
    $encrypt = openssl_encrypt($data, $cipher, $encryptkey);
    return $encrypt;
}

Şimdi ise şifrelediğimiz veriyi geri açacağımız fonksiyonuz yazalım.

function decryption($data, $encryptkey)
{
    // şimdi ise şifrelenmiş veriyi $data değişkeni içerisinde gönderirken aynı zamanda, $encryptkey ile anahtarımızı yazıyoruz.
    $cipher = 'AES-128-ECB';
    $decrypt = openssl_decrypt($data, $cipher, $encryptkey);
    if (!$decrypt) {
        return die('Erişim Reddedildi !'); // anahtar doğru değilse işlemi durdurup, uyarıyı basıyoruz.
    }
    return $decrypt; // anahtar doğru ve şifrelenmiş verinin çözülmüş haline ulaşmış oluyoruz.
}

Yukarıdaki fonksiyonlar ile herhangi bir veriyi şifreleyip daha sonra şifreyi açabilirsiniz.

Diğer yazılarıma göz atmak için tıklayın.

Web sitesine mi ihtiyacınız var ?

Bunları da beğenebilirsiniz

jQuery ile Hızlı Filtreleme Yapımı (Türkçe Karakter Uyumlu)

Merhabalar, bu içeriğimizde Javascript dilinin kuşkusuz en önemli kütüphanelerinden biri olan jQuery ile çok hızlı çalışan ve Türkçe karakterle tamamen uyumlu bir filtreleme sistemi yapacağız….

Devamını Oku

Production’da LLM Sunumlarında Throughput Darboğazı Yaratan 5 Continuous Batching Hatası

Continuous batching LLM p99 gecikmelerini düşürür ancak KV cache fragmentasyonu ve preemption hataları throughput’u çökertir. İşte 5 yaygın hata ve çözümleri.

Devamını Oku

Multi-Tenant PostgreSQL Veritabanlarında Query Plan Kararsızlığı: AI Tabanlı Çözümler

Multi-tenant PostgreSQL mimarilerinde veri dağılımı farklılıklarından kaynaklanan sorgu planı kararsızlıklarını ve AI destekli otonom plan sabitleme yöntemlerini keşfedin.

Devamını Oku