• 08-12-2024, 19:56:31
    #1
    Sezar şifrelemesi, basit bir şifreleme algoritmasıdır. Her harf, belirli bir sayıda kaydırılır. Bu kaydırma miktarına "anahtar" denir. Örneğin anahtar 3 ise, 'A' harfi 'D' olur, 'B' harfi 'E' olur ve bu şekilde devam eder.

    Örnek kodlar.

    C# örnek kod :
    using System;
    
    public class SezarSifrelemesi
    {
        public static string SezarSifrele(string metin, int anahtar)
        {
            char[] sifreliMetin = new char[metin.Length];
            
            for (int i = 0; i < metin.Length; i++)
            {
                char karakter = metin[i];
                
                // Büyük harf kontrolü
                if (char.IsUpper(karakter))
                {
                    sifreliMetin[i] = (char)((((karakter - 'A') + anahtar) % 26) + 'A');
                }
                // Küçük harf kontrolü
                else if (char.IsLower(karakter))
                {
                    sifreliMetin[i] = (char)((((karakter - 'a') + anahtar) % 26) + 'a');
                }
                else
                {
                    sifreliMetin[i] = karakter; // Boşluk veya özel karakterler
                }
            }
    
            return new string(sifreliMetin);
        }
    
        public static void Main()
        {
            string metin = "Merhaba Dunya!";
            int anahtar = 3;
            string sifreliMetin = SezarSifrele(metin, anahtar);
            Console.WriteLine("Şifrelenmiş Metin: " + sifreliMetin);
        }
    }

    VB.Net Örnek Kod :
    Imports System
    
    Public Class SezarSifrelemesi
        Public Shared Function SezarSifrele(ByVal metin As String, ByVal anahtar As Integer) As String
            Dim sifreliMetin(metin.Length - 1) As Char
    
            For i As Integer = 0 To metin.Length - 1
                Dim karakter As Char = metin(i)
    
                ' Büyük harf kontrolü
                If Char.IsUpper(karakter) Then
                    sifreliMetin(i) = Chr(((Asc(karakter) - Asc("A"c) + anahtar) Mod 26) + Asc("A"c))
                ' Küçük harf kontrolü
                ElseIf Char.IsLower(karakter) Then
                    sifreliMetin(i) = Chr(((Asc(karakter) - Asc("a"c) + anahtar) Mod 26) + Asc("a"c))
                Else
                    sifreliMetin(i) = karakter ' Boşluk veya özel karakterler
                End If
            Next
    
            Return New String(sifreliMetin)
        End Function
    
        Public Shared Sub Main()
            Dim metin As String = "Merhaba Dunya!"
            Dim anahtar As Integer = 3
            Dim sifreliMetin As String = SezarSifrele(metin, anahtar)
            Console.WriteLine("Şifrelenmiş Metin: " & sifreliMetin)
        End Sub
    End Class

    PHP Örnek Kod :
    <?php
    function sezarSifrele($metin, $anahtar) {
        $sifreliMetin = '';
        
        for ($i = 0; $i < strlen($metin); $i++) {
            $karakter = $metin[$i];
            
            // Büyük harf kontrolü
            if (ctype_upper($karakter)) {
                $sifreliMetin .= chr(((ord($karakter) - ord('A') + $anahtar) % 26) + ord('A'));
            }
            // Küçük harf kontrolü
            else if (ctype_lower($karakter)) {
                $sifreliMetin .= chr(((ord($karakter) - ord('a') + $anahtar) % 26) + ord('a'));
            }
            else {
                $sifreliMetin .= $karakter; // Boşluk veya özel karakterler
            }
        }
    
        return $sifreliMetin;
    }
    
    $metin = "Merhaba Dunya!";
    $anahtar = 3;
    $sifreliMetin = sezarSifrele($metin, $anahtar);
    echo "Şifrelenmiş Metin: " . $sifreliMetin;
    ?>
  • 08-12-2024, 19:57:43
    #2
    Wordpress & PHP Uzmanı
    Sınavda sormuştu hoca 25 puandı en iyi bildiğim algoritmalardan birisiydi aklıma şimdi geldi 25puanlık sorudan tam 5 puan vermiş iki tane harfi kaydırmadık mı şimdi yoksa başka bir iş mi vardı Allah bilir...
  • 08-12-2024, 22:58:43
    #3
    Danışman
    Efsanevi Alman şifreleme cihazı Enigma bu sistemi çok daha geliştirip
    çözülmesi aşırı zor bir sistem kurulması ile ortaya çıkarılmış
  • 08-12-2024, 23:01:53
    #4
    Fahrettin adlı üyeden alıntı: mesajı görüntüle
    Efsanevi Alman şifreleme cihazı Enigma bu sistemi çok daha geliştirip
    çözülmesi aşırı zor bir sistem kurulması ile ortaya çıkarılmış
    Enigma algoritması sezar algoritması kadar basit değildir.

    Enigma algoritması için;

    https://www.r10.net/programlama/4299...goritmasi.html
  • 08-12-2024, 23:14:02
    #5
    Danışman
    BigCoder adlı üyeden alıntı: mesajı görüntüle
    Enigma algoritması sezar algoritması kadar basit değildir.
    Evet temel Enigma sürümlerinde her tuş basımı için ayrı anahtar kullanılırdı.
    Sonrasında çıkan harfe otomatik olarak farklı anahtar ile yeniden aynı işlemi
    yapıp sonucunda klasik şifre çözme metotları ile çözülemeyecek seviyede bir
    karışıklık oluşturuluyordu. Tekrarların ve değişimlerin sayısı arttıkça 3 ayda
    bir değişen kullanım kitapçıkları olmadan deşifre işlemi yapmak neredeyse
    imkansız hale gelir.

    Hatta Enigma sisteminin çözülmesi de istihbarat servisleri tarafından elde
    edilen kod kitapçıkları ve faal Enigma makineleri sayesinde oluyor. Allan Turing
    tarafından bu uğurda geliştirilen cihazda bazı çevreler tarafından dünyanın
    ilk bilgisayarı kabul ediliyor. Kabaca Sezar a günümüz dünyasının inşa edilmesine
    neden olan şeylerin temelinde yatan şifreleme algoritması diyebiliriz
  • 08-12-2024, 23:30:30
    #6
    Fahrettin adlı üyeden alıntı: mesajı görüntüle
    Evet temel Enigma sürümlerinde her tuş basımı için ayrı anahtar kullanılırdı.
    Sonrasında çıkan harfe otomatik olarak farklı anahtar ile yeniden aynı işlemi
    yapıp sonucunda klasik şifre çözme metotları ile çözülemeyecek seviyede bir
    karışıklık oluşturuluyordu. Tekrarların ve değişimlerin sayısı arttıkça 3 ayda
    bir değişen kullanım kitapçıkları olmadan deşifre işlemi yapmak neredeyse
    imkansız hale gelir.

    Hatta Enigma sisteminin çözülmesi de istihbarat servisleri tarafından elde
    edilen kod kitapçıkları ve faal Enigma makineleri sayesinde oluyor. Allan Turing
    tarafından bu uğurda geliştirilen cihazda bazı çevreler tarafından dünyanın
    ilk bilgisayarı kabul ediliyor. Kabaca Sezar a günümüz dünyasının inşa edilmesine
    neden olan şeylerin temelinde yatan şifreleme algoritması diyebiliriz
    Tebrikler ve teşekkürler Fahrettin bey. İşin Mantığına ve Matematiğine kafa yorup çıkarımlar yapan Sizin gibi insanlara ihtiyacımız var.
  • 30-01-2025, 10:32:08
    #7
    Aes 256 şifrelemesi çözümlenmesi ne kadar zor