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

Dağıtık Sistemlerde Cardinality Explosion: Prometheus ve Mimir ile Maliyet Yönetimi

Dağıtık sistemlerde metrik maliyetlerini artıran yüksek kardinalite sorununu çözmek ve Prometheus ile Grafana Mimir üzerinden depolama optimizasyonu sağlamak için teknik stratejileri keşfedin.

Devamını Oku

ClickHouse ile Yüksek Kardinaliteli IoT Akışları için Dağıtık Zaman Serisi Mimarisi: Tutarlılık ve Performans

Yüksek kardinaliteli IoT akışlarının getirdiği veri tutarlılığı ve sorgu performansı zorluklarını ClickHouse’un dağıtık zaman serisi mimarisiyle nasıl aşacağınızı keşfedin. Bu yazımızda, ClickHouse’un kolon tabanlı yapısının ve ölçeklenebilir özelliklerinin IoT verilerini nasıl optimize ettiğini inceliyoruz.

Devamını Oku

AI Kod Ajanları İçin MCP Sunucularında Context Şişmesini Önleyen 5 Tool-Use Pattern’i

Model Context Protocol (MCP) sunucularında token israfını, 20+ saniyelik TTFT gecikmelerini ve ‘Lost in the Middle’ sendromunu önleyen 5 mimari pattern.

Devamını Oku