Php’de Url Parametrelerini Şifrelemek

Silverday

Altın Üye
Altın Üye
Katılım
3 May 2006
Mesajlar
3,551
Reaction score
0
Puanları
0
Konum
sakarya
Php’de kod yazarken bazen url kısmında gönderdiğimiz parametreleri şifreleme gereğini duymaktayız. Yazmış olduğum class sayesinde basit bir algoritma yaparak parametreleri şifreleyerek gönderebilirsiniz.

Classın çalışma mantığı basit. Şifreleme yapabilmemiz için bir tane anahtar kelime giriyoruz. Bu şekilde o kelime yardımı ile karakterleri şifreleyebiliyoruz.

Url ‘yi şifrelemek istediğinizde “encryptUrl()” fonksiyonunu çağırıyoruz. Bize şifrelenmiş bilgiyi döndürmekte.

Şifrelenmiş bilgiyi ise “decryptUrl()” fonksiyonunu çağırarak bizim için okunabilir hale getirmekte.



PHP:
/**
 * Encrypt and Decrypt Process
 *
 * @author S. Enes Pekkaya
 *
 */
final class SecureUrl
{
 private $key = "deneme";
 
 /**
 * Crypt Value
 *
 * @param string $value
 */
 public function encryptUrl($value)
 {
 $result = '';
 
 for($i = 0; $i < strlen($value); $i++)
 {
 $char = substr($value, $i, 1);
 $keychar = substr($this->key, ($i % strlen($this->key)) - 1, 1);
 $char = chr(ord($char) + ord($keychar));
 $result .= $char;
 }
 
 return urlencode(base64_encode($result));
 }
 
 /**
 * Decrypt Value
 *
 * @param string $value
 */
 public function decryptUrl($value)
 {
 $result = '';
 $value = base64_decode(urldecode($value));
 
 for($i = 0; $i < strlen($value); $i++)
 {
 $char = substr($value, $i, 1);
 $keychar = substr($this->key, ($i % strlen($this->key)) - 1, 1);
 $char = chr(ord($char) - ord($keychar));
 $result .= $char;
 }
 
 return $result;
 }
}



Kaynak: enes pekkaya
 
Geri
Üst