Beispiel #1
0
        private void frmSef_Load(object sender, EventArgs e)
        {
            provjera_otvaranja = 0;
            if (File.Exists(provjera))
            {
                //poziva formu za lozinku te dekriptira fajl za trezor s tom lozinkom
                frmLozinka dialog = new frmLozinka();
                dialog.ShowDialog(this);

                if (dialog.PrenesiLozinku == null)
                {
                    MessageBox.Show("Odustao");
                    provjeraZatvaranja = true;
                    this.Close();
                }
                else
                {
                    lozinka = dialog.PrenesiLozinku;
                    SharpAESCrypt.SharpAESCrypt.Decrypt(lozinka, "trezor_r", "trezor.txt"); //dekriptira fajl za trezor te ga sprema kao trezor.txt
                    provjera_otvaranja = 1;
                    File.Delete(provjera);

                    ProcitajSadrzajDekriptiraneDatoteke();
                }
                //DekriptirajTrezor();
            }
            else //u slučaju da ne postoji fajl za trezor
            {
                using (StreamWriter sw = File.CreateText(provjera2)) //kreira fajl
                {
                    sw.WriteLine("Trezor");
                }


                //traži lozinku
                frmLozinka dialog = new frmLozinka();
                dialog.ShowDialog(this);

                if (dialog.PrenesiLozinku == null)
                {
                    MessageBox.Show("Odustao");
                    provjeraZatvaranja = true;
                    this.Close();
                }
                else //enkriptira novostvoreni fajl za trezor s unesenom lozinkom, te ga odmah otvara
                {
                    lozinka = dialog.PrenesiLozinku;
                    SharpAESCrypt.SharpAESCrypt.Encrypt(lozinka, "trezor", "trezor_r");
                    File.Delete(provjera2);

                    SharpAESCrypt.SharpAESCrypt.Decrypt(lozinka, "trezor_r", "trezor.txt");
                    provjera_otvaranja = 1;
                    File.Delete(provjera);

                    ProcitajSadrzajDekriptiraneDatoteke();
                }

                //DekriptirajTrezor();
            }
        }
Beispiel #2
0
        private void btnEnc_Click(object sender, EventArgs e)
        {
            if (provjera == 0)
            {
                MessageBox.Show("Datoteka nije odabrana");
            }
            else
            {
                //slozi da odabere file kud da spremi enkriptiranu
                string lozinka;

                if (globalVars.TipRada == 1 || globalVars.TipRada == 2)
                {
                    frmLozinka dialog = new frmLozinka();
                    dialog.ShowDialog(this);

                    if (dialog.PrenesiLozinku == null)
                    {
                        MessageBox.Show("Odustao");
                    }
                    else
                    {
                        lozinka = dialog.PrenesiLozinku;

                        if (globalVars.TipRada == 1)
                        {
                            pbarEnc.PerformStep();
                            spremanje += "_enc";
                            listFileData.Items.Add("Lozinka: " + lozinka);
                            pbarEnc.PerformStep();
                            SharpAESCrypt.SharpAESCrypt.Encrypt(lozinka, ime_dat, spremanje);
                            pbarEnc.PerformStep();
                            listFileData.Items.Add("Enkripcija uspješna");
                            listFileData.Items.Add("Datoteka je spremljena u direktoriju s aplikacijom");
                            pbarEnc.PerformStep();
                            File.Delete(putanja2);
                            pbarEnc.PerformStep();
                        }

                        if (globalVars.TipRada == 2)
                        {
                            pbarEnc.PerformStep();
                            string spremanje2 = ime_dat.Replace("_enc", "");
                            pbarEnc.PerformStep();
                            SharpAESCrypt.SharpAESCrypt.Decrypt(lozinka, ime_dat, spremanje2);
                            pbarEnc.PerformStep();
                            listFileData.Items.Add("Dekripcija uspješna");
                            pbarEnc.PerformStep();
                            listFileData.Items.Add("Datoteka je spremljena u direktoriju s aplikacijom");
                            pbarEnc.PerformStep();
                        }
                    }
                }
                if (globalVars.TipRada == 3 || globalVars.TipRada == 4)
                {
                    string prim_par_a, prim_par_b;

                    if (globalVars.TipRada == 3)
                    {
                        lozinka    = KeyGenerator.GetUniqueKey(10, 1);
                        prim_par_a = KeyGenerator.GetUniqueKey(1, 2);
                        pbarEnc.PerformStep();
                        prim_par_b = KeyGenerator.GetUniqueKey(1, 2);

                        spremanje += "_enc";
                        pbarEnc.PerformStep();
                        SharpAESCrypt.SharpAESCrypt.Encrypt(lozinka, ime_dat, spremanje);
                        listFileData.Items.Add("Enkripcija uspješna");
                        pbarEnc.PerformStep();
                        listFileData.Items.Add("Datoteka je spremljena u direktoriju s aplikacijom");
                        File.Delete(putanja2);

                        string dohvat1 = Web.GetPost("http://redtesseract.sexy/redwarden/dohvati_app.php", "tablica", "enkripcije", "id", "idenkripcije");
                        int    temp_dohvat = int.Parse(dohvat1) + 1;
                        string id_enc = temp_dohvat.ToString();
                        string dohvat2 = Web.GetPost("http://redtesseract.sexy/redwarden/dohvati_app.php", "tablica", "korisnik", "id", "repozitorij", "uvjet", "idkorisnik", "vrijednost", korisnik_id);
                        string repozitorij_temp = dohvat2, repozitorij = "";
                        pbarEnc.PerformStep();
                        foreach (char c in repozitorij_temp.ToCharArray(0, 15))
                        {
                            repozitorij += c;
                        }

                        string DataID       = Web.GetPost("http://redtesseract.sexy/redwarden/post_app.php", "tablica", "enkripcije", "id", "idenkripcije", "unos", id_enc);
                        string DataLozinka  = Web.GetPost("http://redtesseract.sexy/redwarden/post_app.php", "tablica", "enkripcije", "id", "lozinka", "unos", lozinka, "uvjet", "idenkripcije", "vrijednost", id_enc);
                        string DataA        = Web.GetPost("http://redtesseract.sexy/redwarden/post_app.php", "tablica", "enkripcije", "id", "prim_param_a", "unos", prim_par_a, "uvjet", "idenkripcije", "vrijednost", id_enc);
                        string DataB        = Web.GetPost("http://redtesseract.sexy/redwarden/post_app.php", "tablica", "enkripcije", "id", "prim_param_b", "unos", prim_par_b, "uvjet", "idenkripcije", "vrijednost", id_enc);
                        string DataNaziv    = Web.GetPost("http://redtesseract.sexy/redwarden/post_app.php", "tablica", "enkripcije", "id", "naziv_datoteke", "unos", ime_dat, "uvjet", "idenkripcije", "vrijednost", id_enc);
                        string DataVelicina = Web.GetPost("http://redtesseract.sexy/redwarden/post_app.php", "tablica", "enkripcije", "id", "velicina", "unos", velicina.ToString(), "uvjet", "idenkripcije", "vrijednost", id_enc);

                        string post_datum   = datum.Year.ToString() + "-" + datum.Month.ToString() + "-" + datum.Day.ToString() + " " + datum.Hour.ToString() + ":" + datum.Minute.ToString() + ":" + datum.Second.ToString();
                        string DataDatum    = Web.GetPost("http://redtesseract.sexy/redwarden/post_app.php", "tablica", "enkripcije", "id", "datum", "unos", post_datum, "uvjet", "idenkripcije", "vrijednost", id_enc);
                        string DataTip      = Web.GetPost("http://redtesseract.sexy/redwarden/post_app.php", "tablica", "enkripcije", "id", "tip", "unos", ekstenzija, "uvjet", "idenkripcije", "vrijednost", id_enc);
                        string DataKorisnik = Web.GetPost("http://redtesseract.sexy/redwarden/post_app.php", "tablica", "enkripcije", "id", "korisnik_idkorisnik", "unos", korisnik_id, "uvjet", "idenkripcije", "vrijednost", id_enc);

                        SharpAESCrypt.SharpAESCrypt.Decrypt(repozitorij, "repozitorij_r", "repozitorij");
                        File.Delete(provjeraR);

                        using (StreamWriter sw = File.AppendText(provjera2))
                        {
                            sw.WriteLine("idenkripcije: " + id_enc);
                            sw.WriteLine("naziv_datoteke: " + ime_dat);
                            sw.WriteLine("korisnik_idkorisnik: " + korisnik_id);
                            sw.WriteLine("prim_param_a: " + prim_par_a);
                            sw.WriteLine("prim_param_b: " + prim_par_b);
                            sw.WriteLine("lozinka: " + lozinka);
                            sw.WriteLine("velicina: " + velicina.ToString());
                            sw.WriteLine("datum: " + post_datum);
                            sw.WriteLine("tip: " + ekstenzija);
                            sw.WriteLine("-------------------------");
                        }

                        SharpAESCrypt.SharpAESCrypt.Encrypt(repozitorij, "repozitorij", "repozitorij_r");
                        pbarEnc.PerformStep();
                        File.Delete(provjera2);
                    }

                    if (globalVars.TipRada == 4)
                    {
                        frmLozinka dialog = new frmLozinka();
                        dialog.ShowDialog(this);

                        if (dialog.PrenesiLozinku == null)
                        {
                            MessageBox.Show("Odustao");
                        }
                        else
                        {
                            string dohvat2 = Web.GetPost("http://redtesseract.sexy/redwarden/dohvati_app.php", "tablica", "korisnik", "id", "repozitorij", "uvjet", "idkorisnik", "vrijednost", korisnik_id);
                            string repozitorij_temp = dohvat2, repozitorij = "";
                            pbarEnc.PerformStep();
                            foreach (char c in repozitorij_temp.ToCharArray(0, 15))
                            {
                                repozitorij += c;
                            }
                            pbarEnc.PerformStep();
                            SharpAESCrypt.SharpAESCrypt.Decrypt(repozitorij, "repozitorij_r", "repozitorij");
                            File.Delete(provjeraR);

                            string line, sprem_lozinka = "", sprem_a = "", sprem_b = "";
                            int    prebroj = 0, flag = 0;
                            pbarEnc.PerformStep();
                            string ime_replace    = ime_dat.Replace("_enc", "");
                            string provjera_imena = "naziv_datoteke: " + ime_replace;
                            using (System.IO.StreamReader file = new System.IO.StreamReader(provjera2))
                            {
                                while ((line = file.ReadLine()) != null)
                                {
                                    if (line.Contains(provjera_imena))
                                    {
                                        flag = 1;
                                    }
                                    if (flag == 1)
                                    {
                                        prebroj++;
                                    }
                                    if (prebroj == 3)
                                    {
                                        sprem_a = line;
                                        sprem_a = sprem_a.Replace("prim_param_a: ", "");
                                    }
                                    if (prebroj == 4)
                                    {
                                        sprem_b = line;
                                        sprem_b = sprem_b.Replace("prim_param_b: ", "");
                                    }
                                    if (prebroj == 5)
                                    {
                                        sprem_lozinka = line;
                                        sprem_lozinka = sprem_lozinka.Replace("lozinka: ", "");
                                    }
                                }
                            }

                            string lozinka_enc = dialog.PrenesiLozinku;
                            pbarEnc.PerformStep();
                            DateTime     datum_cest = DateTime.Now;
                            TimeZoneInfo cestZone   = TimeZoneInfo.FindSystemTimeZoneById("Central European Standard Time");
                            datum_cest = TimeZoneInfo.ConvertTime(datum_cest, TimeZoneInfo.Local, cestZone);

                            int sat = datum_cest.Hour + 1;
                            int dan = datum_cest.Day;

                            string temp_lozinka = "";

                            foreach (char c in lozinka_enc)
                            {
                                int temp_br, temp_a, temp_b;

                                temp_br = (int)c;

                                temp_a = int.Parse(sprem_a);
                                temp_b = int.Parse(sprem_b);

                                int temp_enc = temp_br - temp_a - temp_b - sat - dan;

                                if (temp_br > 47 && temp_br < 58)
                                {
                                    while (temp_enc < 48)
                                    {
                                        temp_enc += 10;
                                    }
                                }

                                if (temp_br > 64 && temp_br < 91)
                                {
                                    while (temp_enc < 65)
                                    {
                                        temp_enc += 26;
                                    }
                                }

                                if (temp_br > 96 && temp_br < 123)
                                {
                                    while (temp_enc < 97)
                                    {
                                        temp_enc += 26;
                                    }
                                }

                                temp_lozinka += (char)temp_enc;
                            }
                            string reversed_lozinka = "";
                            foreach (char c in temp_lozinka.ToCharArray(0, 10))
                            {
                                reversed_lozinka += c;
                            }

                            if (reversed_lozinka == sprem_lozinka)
                            {
                                string spremanje2 = ime_dat.Replace("_enc", "");
                                SharpAESCrypt.SharpAESCrypt.Decrypt(reversed_lozinka, ime_dat, spremanje2);
                                listFileData.Items.Add("Dekripcija uspješna");
                                listFileData.Items.Add("Datoteka je spremljena u direktoriju s aplikacijom");
                                SharpAESCrypt.SharpAESCrypt.Encrypt(repozitorij, "repozitorij", "repozitorij_r");
                                File.Delete(provjera2);
                            }
                            pbarEnc.PerformStep();
                        }
                    }
                }
            }
        }