コード例 #1
0
        private void btn_onay_Click(object sender, EventArgs e)
        {
            string hashliSifre = "";
            string dosyaMac;

            kasaIsmi = listv_Kasalar.SelectedItems[0].SubItems[0].Text;
            string girilenSifre = txtBox_kasaSifre.Text;

            // girilen şifreyi hash fonksiyonu ile hashliyoruz
            girilenSifre = kripto.kasaSifreHashleme(girilenSifre);
            // daha önceden hashlenmiş şifreyi okuyoruz
            hashliSifre = vb.sifre_guvenlikOkuma(kasaIsmi)[0];
            // güvenlik derecesini alıyoruz
            guvenlik = vb.sifre_guvenlikOkuma(kasaIsmi)[1];

            dosyaMac = vb.sifre_guvenlikOkuma(kasaIsmi)[2];
            var pcMac =
                (from nic in NetworkInterface.GetAllNetworkInterfaces()
                 where nic.OperationalStatus == OperationalStatus.Up
                 select nic.GetPhysicalAddress().ToString()
                ).FirstOrDefault();

            // eğer klasörü oluşturan bilgisayarın mac adresi ile dosyaya erişmeye çalışan bilgisayarın mac adresleri farklı ise klasör açılmayacaktır
            if (pcMac != dosyaMac)
            {
                MessageBox.Show("Dosyaya başka bir bilgisayardan erişelemez!");

                return;
            }

            // eğer hashler uyuşmuyorsa şifre yanlış demektir.
            if (girilenSifre == hashliSifre)
            {
                klasor.Ac(kasaIsmi);

                path = @"C:\" + kasaIsmi;
                btn_kasaKitle.Enabled = true;
                klasorunIlkHali       = Directory.GetFiles(path, "*.*", SearchOption.AllDirectories).ToList();


                systemWatcher.Path = path;
                systemWatcher.EnableRaisingEvents = true;
                systemWatcher.NotifyFilter        = NotifyFilters.Size | NotifyFilters.LastWrite | NotifyFilters.LastAccess;

                systemWatcher.Changed += new FileSystemEventHandler(onChanged);
            }
            else
            {
                MessageBox.Show("Şifreniz Yanlış.");
            }
            lbl_sifre.Visible        = false;
            txtBox_kasaSifre.Visible = false;
            btn_onay.Visible         = false;
            txtBox_kasaSifre.Text    = "";
        }
コード例 #2
0
        private void btn_olustur_Click(object sender, EventArgs e)
        {
            bool       hata  = false;
            icerikForm iForm = new icerikForm();

            txtbox_kasaAdi.Text   = txtbox_kasaAdi.Text.Trim();
            txtbox_kasaSifre.Text = txtbox_kasaSifre.Text.Trim();
            // textboxların içi boş ise hata mesajı gönderiyoruz.
            if (txtbox_kasaAdi.Text == string.Empty || txtbox_kasaSifre.Text == string.Empty)
            {
                MessageBox.Show("Lütfen geçerli bir kasa adı veya şifre giriniz.");
            }
            // eğer herhangi bir güvenlik değeri seçilmemişse hata mesajı gönderiyoruz
            else if (rbDusuk.Checked == false && rbYuksek.Checked == false && rbOrta.Checked == false)
            {
                MessageBox.Show("Güvenlik seviyesi boş olamaz");
            }
            else
            {
                string guvenlik = "";
                var    macAdd   =
                    (from nic in NetworkInterface.GetAllNetworkInterfaces()
                     where nic.OperationalStatus == OperationalStatus.Up
                     select nic.GetPhysicalAddress().ToString()
                    ).FirstOrDefault();
                Kripto kr              = new Kripto();
                Klasor dosya           = new Klasor();
                VeriTabaniIslemleri vb = new VeriTabaniIslemleri();
                string sifre           = "";

                // radiobutton lar kontrol edilip checkli olan hangisi ise onu güvenlik değişkenine atıyoruz.
                if (rbDusuk.Checked == true)
                {
                    guvenlik = "dusuk";
                }
                else if (rbOrta.Checked == true)
                {
                    guvenlik = "orta";
                }
                else
                {
                    guvenlik = "yuksek";
                }

                //eğer textboxlrın içi boş değilse kasanın şifresini hashlemek için hashsifreleme fonksiyonunu çagırıyoruz.
                sifre = kr.kasaSifreHashleme(txtbox_kasaSifre.Text);

                // db ye ekleme yapılıyor.
                string yol = @"c\" + txtbox_kasaAdi.Text;

                // verileri veri tabanı işlemleri sınıfından fonk ile ekliyoruz, eğer hata değeri false gelirse yani herhangi hata oluşmamışsa aşağıdaki işlemleri yapıyoruz.
                hata = vb.veriEkleme(txtbox_kasaAdi.Text, sifre, yol, guvenlik, macAdd.ToString());
                if (hata == false)
                {
                    // eğer herhangi bir hata alınmamışsa kasa oluşturulup açılıyor.
                    dosya.Olustur(txtbox_kasaAdi.Text, guvenlik);
                    MessageBox.Show("Kasa oluşturuldu.");
                    kasaOlustu?.Invoke();
                    dosya.Ac(txtbox_kasaAdi.Text);
                    this.Close();
                }
            }
        }