XOR

XOR

Program: przedstawiający szyfrowanie XOR.

Jak w opisie.

Kompilator: Microsoft Visual Studio

Galeria:

Program w akcji.

Kod programu:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Szyfr_macierzowy
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] array1 = { 0, 1, 0, 0, 1, 0, 1, 0 };
            int[] array2 = { 0, 1, 0, 0, 1, 0, 0, 0 };
            int[] array3 = new int[8];
            System.Array.Clear(array3, 0, array3.Length);

            Console.WriteLine("Tablica jawna wyglada tak:");
            for (int i = 0; i <= 7; i++)
                Console.WriteLine("array1[{0}]={1}", i, array1[i]);

            Console.WriteLine("Klucz wygląda tak:");
            for (int i = 0; i <= 7; i++)    //klucz
                Console.WriteLine("array2[{0}]={1}", i, array2[i]);

            for (int i = 0; i <= 7; i++)
                array3[i] = array2[i] ^ array1[i];

            Console.WriteLine("Tablica zaszyfrowana wyglada tak:");
            for (int i = 0; i <= 7; i++)
                Console.WriteLine("array3[{0}]={1}", i, array3[i]);

            Console.ReadKey();
        }
    }
}

Słowniczek pojęć:

Historia i zastosowanie: Operacja ta jest częścią składową wielu rozbudowanych algorytmów kryptograficznych jak np. DES (Data Encryption Standard). Operacja ta sama w sobie stanowi również prosty algorytm szyfrowania, który nie zapewnia jednak większego bezpieczeństwa. Jednak przy spełnieniu kilku bardzo ważnych warunków może stanowić mimo swej prostoty algorytm niemożliwym do złamania (binarna wersja algorytmu algorytm XOR).
Opis metody: Oprócz tej nazwy możemy spotkać się z takimi nazwami jak alternatywa wykluczająca lub binarne sumowanie mod 2. W matematyce oznaczana jest często przez symbol krzyżyk w kółeczku. Operacja ta wygląda następująco: 0 XOR 0 = 0 1 XOR 1 = 0 0 XOR 1 = 1 1 XOR 0 = 1