Exemple #1
0
        public static byte[] EncryptPassword(string password, string odbiorca, string privateKey)
        {
            var data       = Encoding.ASCII.GetBytes(privateKey);
            var cryptoData = RC6.SzyfrowanieRc6Password(data, password);

            return(cryptoData);
        }
Exemple #2
0
        private void buttonOdszyfrowywanieOdszyfruj_Click(object sender, RoutedEventArgs e)
        {
            Wyjscie = textboxOdszyfrowywanieWyjscie.Text;
            Haslo   = textboxOdszyfrowywanieHaslo.Password;

            var fine = true;

            if (Wejscie == "")
            {
                listboxOdszyfrowywanieLog.Items.Add("Nie podano pliku do odszyfrowania");
                MessageBox.Show("Nie podano pliku do odszyfrowania", "błąd");
                fine = false;
            }
            else if (Wyjscie == "")
            {
                listboxOdszyfrowywanieLog.Items.Add("Nie podano miejsca zapisu");
                MessageBox.Show("Nie podano miejsca zapisu", "błąd");
                fine = false;
            }
            else if (Haslo == "")
            {
                listboxOdszyfrowywanieLog.Items.Add("Nie podano hasła");
                MessageBox.Show("Nie podano hasła", "błąd");
                fine = false;
            }
            if (fine)
            {
                listboxSzyfrowanieLog.Items.Add("rozpoczeto odszyfrowywanie");
                _odbiorca.OdszyfrowanieKlucza(Haslo);

                new Thread(
                    delegate()
                {
                    if (_odbiorca.KluczSesyjny != null)
                    {
                        RC6.OdszyfrowywanieRc6(Wejscie, Wyjscie, _odbiorca, _wczytaneDane, this);
                    }
                    else
                    {
                        RC6.FakeRc6(Wejscie, Wyjscie, Haslo, this);
                    }
                    Dispatcher.Invoke(
                        System.Windows.Threading.DispatcherPriority.Normal,
                        new Action(
                            delegate()
                    {
                        progressBarOdszyfrowywanie.Value = 100;
                        listboxSzyfrowanieLog.Items.Add("zakonczono odszyfrowywanie");
                        MessageBox.Show("zakonczono odszyfrowywanie", "Info");
                        ResetOdszyfrowywanie();
                    }
                            ));
                }
                    ).Start();
            }
        }
Exemple #3
0
        public static string DecryptPassword(string password, string odbiorca)
        {
            var data       = FileMy.PobranieDanychZPliku(odbiorca);
            var cryptoData = RC6.OdszyfrowywanieRc6Password(data, password);

            try
            {
                return(Encoding.ASCII.GetString(cryptoData));
            }
            catch (Exception)
            {
                return(null);
            }
        }
Exemple #4
0
        private void buttonSzyfrowanieSzyfruj_Click(object sender, RoutedEventArgs e)
        {
            Wejscie  = textboxSzyfrowanieWejscie.Text;
            Wyjscie  = textboxSzyfrowanieWyjscie.Text;
            DlKlucza = int.Parse(comboboxSzyfrowanieDlKlucza.Text);
            Podblok  = int.Parse(comboboxSzyfrowaniePodblok.Text);
            Blok     = 128;
            //-------------------------------------------------------//
            var kluczSesyjny   = RC6.GeneratorKluczaSesyjnego(DlKlucza);
            var iv             = RC6.GeneratorIv(Blok); //dlugosc bloku
            var listaOdbiorcow = new List <Odbiorcy>();

            foreach (var x in _odbiorcy)
            {
                listaOdbiorcow.Add(new Odbiorcy(x, kluczSesyjny));
            }

            bool fine = true;

            if (Wejscie == "")
            {
                listboxSzyfrowanieLog.Items.Add("Nie podano pliku do zaszyfrowania");
                MessageBox.Show("Nie podano pliku do zaszyfrowania", "błąd");
                fine = false;
            }
            else if (Wyjscie == "")
            {
                listboxSzyfrowanieLog.Items.Add("Nie podano miejsca zapisu");
                MessageBox.Show("Nie podano miejsca zapisu", "błąd");
                fine = false;
            }
            else if (listaOdbiorcow.Count == 0)
            {
                listboxSzyfrowanieLog.Items.Add("Nie dodano zadnego odbiorcy");
                MessageBox.Show("Nie dodano zadnego odbiorcy", "błąd");
                fine = false;
            }
            if (!fine)
            {
                return;
            }

            listboxSzyfrowanieLog.Items.Add("rozpoczeto szyfrowanie");
            NaglowekPliku naglowek = new NaglowekPliku(Blok, Tryb, iv, DlKlucza, Podblok, listaOdbiorcow);

            NaglowekPliku.Serjalizacja(naglowek, Wyjscie);
            new Thread(
                delegate()
            {
                RC6.SzyfrowanieRc6(Wejscie, Wyjscie, kluczSesyjny, naglowek, this);
                Dispatcher.Invoke(
                    System.Windows.Threading.DispatcherPriority.Normal,
                    new Action(
                        delegate()
                {
                    listboxSzyfrowanieLog.Items.Add("zakonczono szyfrowanie");
                    progressBarSzyfrowanie.Value = 100;
                    MessageBox.Show("zakonczono szyfrowanie", "Info");
                    ResetSzyfrowanie();
                }
                        ));
            }
                ).Start();
        }