Base64 ile şifrelenmiş bir metni decode ettiğimizde, örneğin QW5k ifadesinin And kelimesine eşit olduğunu görüyoruz. Peki, bilgisayar nasıl oluyor da bu şifreyi çözüp And kelimesini yazabiliyor?
Hocam Ben bunu nasıl desem bir tablosu falan var gibi zann ettim. Yani örnek veriyorum Q'nin karşılığı A gibi. O tabloya göre kendisi çözüyor falan zann ettim. Demek ki, bunu sadece bilgisayar yorumluyor. Nasıl desem ben neyi çözmek istedim biliyor musunuz?
Örneğin: 8361 / 9 = 929
Burada 8361'i 9'a bölüp nasıl kalanı bulabiliyorsak onu da aynı şekilde bulmak istiyordum. Mesela converter nasıl oluyor da bunu A yazınca sol tarafda Hex Binary kodlarını yazıyor onu anlamak istedim ve neye esasen karşılığını buluyor gibi gibi. Muhtemelen bu olay programlamaya giriyor anlaşılan ve sadece programlama çözüyor bizim çözebileceğimiz bir şey değil anlaşılan. Ben bunun alfabesi var zanne etmiştim karşılıkları orada yazıyor diye.
Hocam Ben bunu nasıl desem bir tablosu falan var gibi zann ettim. Yani örnek veriyorum Q'nin karşılığı A gibi. O tabloya göre kendisi çözüyor falan zann ettim. Demek ki, bunu sadece bilgisayar yorumluyor. Nasıl desem ben neyi çözmek istedim biliyor musunuz?
Örneğin: 8361 / 9 = 929
Burada 8361'i 9'a bölüp nasıl kalanı bulabiliyorsak onu da aynı şekilde bulmak istiyordum. Mesela converter nasıl oluyor da bunu A yazınca sol tarafda Hex Binary kodlarını yazıyor onu anlamak istedim ve neye esasen karşılığını buluyor gibi gibi. Muhtemelen bu olay programlamaya giriyor anlaşılan ve sadece programlama çözüyor bizim çözebileceğimiz bir şey değil anlaşılan. Ben bunun alfabesi var zanne etmiştim karşılıkları orada yazıyor diye.
İlk önce hash algoritmasını bulman lazım. Bulduğunda simetrik mi değil mi buna bakmak lazım. Değilse uğraşmaya değmez. Brute force dışında aklıma gelen hiçbir yöntem yok. Fakat simetrik ve global bir algoritma ise algoritmasını alıp decode edeceksin.
Diyelim hash algoritması yok. Eleman kendi algoritmasını yazmış. O zaman büyük ihtimal simetriktir. İlk yöntemim eğer kendi parametrelerimle hash üretebiliyorsam bu çok daha kolay hale gelebilir.
Eğer aynı harf aynı harfe denk geliyorsa basit chiper algoritması. Çözmek uzun sürmez.
Eğer aynı harf aynı harfe karşılık gelmiyor, fakat bir süre sonra kendini tekrar ediyorsa, harfin sayısal değerleri ile oynandığı ortadadır. Hangi uzunluktan sonra tekrar ettiği bu sayısal oynamayı sana verir. Buradan yola çıkıp algoritmayı çözebilirsin. Bu çok daha uzun sürebilir.
Eğer aynı text sürekli farklı çıktı veriyorsa, o hash içerisinde bir yerde sayısal bir değer tutuluyordur. Bu sayısal değer hash içerisinde sabit bir yerdedir. Bu hash değeri kullanan 2. yer bunun yerini biliyor ve bu sayısal değere göre şifreyi çözüyor. Peki bu nerede? Her yerde olabilir. Çözmek imkansız olmasa da yakındır.
Farklı yöntemler olabilir. 1 ve 2. adım kolay çözülen algoritmalar. 3. adımı bizzat kendim kodladım. Çözmek gerçekten imkansız olabilir.
Base64 sifreleme ya da hashing degil. Encoding.
Once terimleri ve farkliliklari bilmelisin.
Karaketlerin beirli bir map tablosu var, A yi B ye ceviriyorsun bu kadar. Benzet encoding yapan tonla metod var, neyi neye cevirecegin de amaca gore degisiyor.
Base64 sifreleme ya da hashing degil. Encoding.
Once terimleri ve farkliliklari bilmelisin.
Karaketlerin beirli bir map tablosu var, A yi B ye ceviriyorsun bu kadar. Benzet encoding yapan tonla metod var, neyi neye cevirecegin de amaca gore degisiyor.
This document describes the commonly used base 64, base 32, and base 16 encoding schemes. It also discusses the use of line-feeds in encoded data, use of padding in encoded data, use of non-alphabet characters in encoded data, use of different encoding alphabets, and canonical encodings...