Yazılım Yazarı Menu

Permalink:

PHP ile Encode ve Decode (base64)

Uzun zamandır yazmıyordum, girdiğimde bir ziyaretçimin mesajını gördüm. Bunun üstüne bu konu ile yazmaya başlamak istedim.

Soru:  Sitelerdeki şifrelenip saklanmış yazıları, mesajları yada numara,e posta vb. içerikleri nasıl görebiliriz?

Cevap:

Sitelerde genelde footer yazıları geliştiriciler veya tasarımcılar tarafından şifrelenmektedir. Bu tarz şifrelemeler genelde base64 şifreleme yöntemi ile yapılmaktadır.
Çözüm ise base64 ile encode olan veriyi decode etmektir.

Bunu da PHP dilinde;

 <span style="color: #693;">string</span> <span style="color: #737373;">base64_decode</span>(<span style="color: #693;">string</span> <span style="color: #369;">$data</span> [, <span style="color: #693;">bool</span> <span style="color: #369;">$strict</span> = <span style="color: #936;">false</span> ])

Yukarıda görüldüğü üzere base64_decode fonksiyonunu kullanıyoruz. Bu fonksiyonun geri dönüş değeri string, ilk parametresi string ikinci parametresi boolean türündedir.

ParametreVeri TürüAçıklama
$datastringbase64 ile encode edilen ve base64_decode fonksiyonunun çözmesini istediğimiz şifreli metin
$strictbooleanŞifreli metin base64 karakterleri dışında karakter içeriyorsa, fonksiyonun false döndürmesini sağlar.
Aktif olması için true değeri verilmelidir. Varsayılan olarak değeri false durumundadır.

 

Öncelikle base64_encode() fonksiyonunu kullanarak “yazilimyazari.com” verisini şifreleyelim.

<span style="color: #693;">string</span>  <span style="color: #737373;">base64_encode</span> ( <span style="color: #693;">string</span> <span style="color: #369;">$data</span> )
<code class="php">
&lt;?php
echo base64_encode("yazilimyazari.com");
?&gt;
</code>

Output:

eWF6aWxpbXlhemFyaS5jb20=

Şimdi ise bu veriyi base64_decode() fonksiyonunu kullanarak çözelim;

<code class="php">
echo base64_decode('eWF6aWxpbXlhemFyaS5jb20=');
</code>

Output:

yazilimyazari.com

Bazen bu verinin varlığı başka kodlarla kontrol edilebileceğinden base64 kodlarını sildiğiniz de veya decode edip çözdüğünüz de sistem çalışmanız bozulabilir. Bu durumlar için varsa kontrol mekanizmasını bulmalı ve imha etmelisiniz.

MD5 ile Şifreleme

Bunun dışında email,şifre, telefon vb. veriler veri tabanına kullanıcı gizliliği ve güvenlik amaçlı md5 ile şifrelenip eklenir.
Bu tarz verileri çözmenin kesin bir yolu yoktur çünkü md5 algoritması geri dönüşümsüz şifreleme algoritmasıdır.
Yani bir kez üretilen bir değer bir daha çözülemez.

Yalnız son zamanlarda md5 bulut veritabanı planları dikkat çekmekte ve büyük veritabanları bulunmakta elinizdeki md5 ile üretilmiş hash’i alarak bu veritabanlarında sorgulatırsanız sonuca varabilirsiniz.

-Nasıl oluyor da çözülemeyen md5 hashlerini bu veritabanlarında bulabiliyoruz?

Şöyle ki; bu veritabanları kullanıcılar tarafından oluşturuluyor. Kullanıcı 1234 değerini şifrele dediği anda sistem verinin hem md5’li halini hemde 1234 şeklinde açık halini veri tabanına kaydediyor. Siz md5 hash’i ile sorgulama yaptığınızda değerler uyuşuyorsa size o md5’in açık halini sunuyor.
Buradan da anlaşılacağı üzere bu veritabanlarında her veriyi bulmak mümkün değil. Ancak basit veriler daha önceden bilinerek girilebilecek düzeyde veriler bulunabilir.

Bu veritabanlarına örnek vermek gerekirse;
MD5 Cracker.org
MD5 Crack.com -> rainbow veritabanı ile çalıştığı için en iyiler arasındadır.

İyi günler dilerim.
Yazılım Yazarı

(2582) kez okundu.

  • Yorum bırakıyor olduğunuz için teşekkürler.
escort bayan ankara ankara escort ankara escort bayan sıhhıye escort