private void button1_Click(object sender, EventArgs e) { string pass = proxy.GetClientPassword(usId); CryptoLib.CryptoClass obj = new CryptoLib.CryptoClass(); DialogResult dr = openFileDialog1.ShowDialog(); if (dr == DialogResult.OK) { string putanja = openFileDialog1.FileName; fajl.Naziv = Path.GetFileName(putanja); if (proxy.CheckFile(usId, fajl.Naziv)) { MessageBox.Show("Ovaj vec postoji u bazi!"); } else { byte[] bajtoviFajla = new byte[File.ReadAllBytes(putanja).Length]; //bajtoviFajla = File.ReadAllBytes(putanja); bajtoviFajla = File.ReadAllBytes(putanja); string stringBajtova = System.Text.Encoding.UTF8.GetString(bajtoviFajla); string HashBajtovi = obj.MD5Hash(stringBajtova); listHashXTEA.Items.Add(HashBajtovi); string kriptovaniBajtovi = obj.XTEAEncrypt(stringBajtova, pass); fajl.Hashkod = HashBajtovi; fajl.Textfajla = File.ReadAllText(putanja); fajl.Metoda = "XTEA"; proxy.insertInFiles(kriptovaniBajtovi, fajl.Metoda, fajl.Hashkod, usId, fajl.Naziv, System.Text.Encoding.UTF8.GetString(bajtoviFajla)); } } }
private void btnSave_Click(object sender, EventArgs e) { if (!proxy.CheckFile(idUser, txtIme.Text)) { MessageBox.Show("Ne postoji taj u bazi"); } else { CryptoLib.CryptoClass obj = new CryptoLib.CryptoClass(); string pomString = proxy.GetMethod(idUser, txtIme.Text); string hashDekriptovanih; if (pomString == "Knapsack") { //MessageBox.Show(pomString); string path = txtIme.Text.Replace(@"\", string.Empty); char[] chartoTrim = { 'C', ':', '.' }; string trimedpath = path.Trim(chartoTrim); string fileName = @"D:\Fakukltet\Zastita inforamcija\EnkripcijaProjekat\" + "Knapsack" + trimedpath; StreamReader sr = new StreamReader(fileName); string podaciStr = sr.ReadLine(); byte[] dekriptovaniBajtovi = obj.DecryptKnapsack(podaciStr); hashDekriptovanih = obj.MD5Hash(dekriptovaniBajtovi); listHashKod.Items.Add(hashDekriptovanih); SaveFileDialog saveDialog = new SaveFileDialog(); //Stream stream; // saveDialog.Filter = "*.txt"; saveDialog.FileName = txtIme.Text; saveDialog.Filter = "(*.txt)|*.txt|(*.*)|*.*"; if (saveDialog.ShowDialog() == DialogResult.OK) { // string pom = proxy.GetFileText(idUser, txtIme.Text); string tekstFajla = System.Text.Encoding.UTF8.GetString(dekriptovaniBajtovi); File.WriteAllText(saveDialog.FileName, tekstFajla); } } if (pomString == "DT") { string path = txtIme.Text.Replace(@"\", string.Empty); char[] chartoTrim = { ':', '.' }; string trimedpath = path.Trim(chartoTrim); string fileName = @"D:\Fakukltet\Zastita inforamcija\EnkripcijaProjekat\" + "DT" + trimedpath; string kriptovaniBajtovi = proxy.getUserFile(idUser, txtIme.Text); StreamReader sr = new StreamReader(fileName); string podaciStr = sr.ReadLine(); string heshString = obj.DTDecrypt(kriptovaniBajtovi, podaciStr); hashDekriptovanih = obj.MD5Hash(heshString); listHashKod.Items.Add(hashDekriptovanih); SaveFileDialog sfd = new SaveFileDialog(); sfd.FileName = txtIme.Text; sfd.Filter = "(*.txt)|*.txt|(*.*)|*.*"; if (sfd.ShowDialog() == DialogResult.OK) { File.WriteAllText(sfd.FileName, heshString); } } if (pomString == "XTEA") { string pass = proxy.GetClientPassword(idUser); string kriptovaniBajtovi = proxy.getUserFile(idUser, txtIme.Text); string hesString = obj.XTEADecrypt(kriptovaniBajtovi, pass); hashDekriptovanih = obj.MD5Hash(hesString); listHashKod.Items.Add(hashDekriptovanih); SaveFileDialog sfd = new SaveFileDialog(); sfd.FileName = txtIme.Text; sfd.Filter = "(*.txt)|*.txt|(*.*)|*.*"; if (sfd.ShowDialog() == DialogResult.OK) { File.WriteAllText(sfd.FileName, hesString); } } } }
private void uploadBtn_Click(object sender, EventArgs e) { if (flag == false) { MessageBox.Show("Niste generisali kljuceve!"); } else { CryptoLib.CryptoClass obj = new CryptoLib.CryptoClass(); DialogResult dr = openFileDialog1.ShowDialog(); if (dr == DialogResult.OK) { string putanja = openFileDialog1.FileName; fajl.Naziv = Path.GetFileName(putanja); // fajl.Naziv = fajl.Naziv.Replace(@"\", string.Empty); // MessageBox.Show(fajl.Naziv); if (proxy.CheckFile(userID, fajl.Naziv)) { MessageBox.Show("Ovaj vec postoji u bazi!"); } else { byte[] pomBajtovi = new byte[File.ReadAllBytes(putanja).Length]; List <int> lista = new List <int>(); List <byte> pomlistabajtova = new List <byte>(); pomBajtovi = File.ReadAllBytes(putanja); /*StringBuilder strbil1 = new StringBuilder(); * StringBuilder strbil2 = new StringBuilder(); * for (int k = 0; k < pomBajtovi.Length; k++) * { * strbil1.Append(pomBajtovi[k].ToString("x2")); * * } * MessageBox.Show(strbil1.ToString());*/ byte[] bajtovizaSlanje = obj.KnapsackCrypt(pomBajtovi, txtPrivateim.Text, txtPrivateN.Text, txtPublicJ.Text, txtPrivateP.Text, fajl.Naziv); /*for (int p = 0; p < bajtovizaSlanje.Length; p++) * { * strbil2.Append(bajtovizaSlanje[p].ToString("x2")); * } * MessageBox.Show(strbil2.ToString());*/ string pom = obj.MD5Hash(pomBajtovi); fajl.Hashkod = pom; hashKnap.Items.Add(pom); fajl.Textfajla = File.ReadAllText(putanja); fajl.Metoda = "Knapsack"; string stringZaslanje = BitConverter.ToString(bajtovizaSlanje); proxy.insertInFiles(stringZaslanje, fajl.Metoda, fajl.Hashkod, userID, fajl.Naziv, System.Text.Encoding.UTF8.GetString(pomBajtovi)); } } } }
private void btnUpload_Click(object sender, EventArgs e) { CryptoLib.CryptoClass obj = new CryptoLib.CryptoClass(); DialogResult dr = openFileDialog1.ShowDialog(); if (dr == DialogResult.OK) { string putanja = openFileDialog1.FileName; fajl.Naziv = Path.GetFileName(putanja); if (proxy.CheckFile(userId, fajl.Naziv)) { MessageBox.Show("Fajl vec postoji u bazi!"); } else { byte[] bajtoviFajla = new byte[File.ReadAllBytes(putanja).Length]; bajtoviFajla = File.ReadAllBytes(putanja); string permutacijaX = perX.Text; string permutacijaY = perY.Text; int dimenzijaX = Convert.ToInt32(dimX.Text); int dimenzijaY = Convert.ToInt32(dimY.Text); string bajtoviString = System.Text.Encoding.UTF8.GetString(bajtoviFajla); int faktor; if (dimenzijaX > dimenzijaY) { faktor = dimenzijaX; } else { faktor = dimenzijaY; } if (bajtoviString.Length < dimenzijaX - dimenzijaY) { MessageBox.Show("Potrebno je uneti veci fajl"); } else { char[,] transponozicionaMatrica = new char[dimenzijaX, dimenzijaY]; for (int i = 0; i < dimenzijaX; i++) { for (int j = 0; j < dimenzijaY; j++) { transponozicionaMatrica[i, j] = bajtoviString[dimenzijaY * i + j]; } } string stringToHash = ""; for (int i = 0; i < dimenzijaX; i++) { for (int j = 0; j < dimenzijaY; j++) { stringToHash += transponozicionaMatrica[i, j]; } } string hesovanString = obj.MD5Hash(stringToHash); string zaslanjeString = obj.DTCrypt(transponozicionaMatrica, permutacijaX, permutacijaY, dimenzijaX, dimenzijaY, fajl.Naziv); hashList.Items.Add(hesovanString); fajl.Hashkod = hesovanString; fajl.Textfajla = File.ReadAllText(putanja); fajl.Metoda = "DT"; proxy.insertInFiles(zaslanjeString, fajl.Metoda, fajl.Hashkod, userId, fajl.Naziv, fajl.Textfajla); } } } }