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.