/// <summary> /// Pomoćna funkcija za funkciju RegistrirajKorisnika() koja zapisuje sve potrebne ključeve u bazu podataka(Javni,Privatni,2FA) /// </summary> /// <param name="connection"></param> private void ZapisiKljuceveUBazu(SqlConnection connection) { var command = new SqlCommand(); Enkripcija enkripcija = new RsaEnkripcija(); enkripcija.AssignRsaKeys(); JavniKljuc = enkripcija.DohvatiJavniKljuc(); command = new SqlCommand(); command.Connection = connection; command.CommandType = CommandType.Text; command.CommandText = "UPDATE Korisnik SET JavniKljuc = @JavniKljuc WHERE Username=@Username"; command.Parameters.AddWithValue("@JavniKljuc", JavniKljuc); command.Parameters.AddWithValue("@Username", Username); command.ExecuteNonQuery(); command = new SqlCommand(); command.Connection = connection; command.CommandType = CommandType.Text; command.CommandText = "INSERT INTO PrivatniKljucevi(Username,PrivatniKljuc) VALUES (@Username,@PrivatniKljuc)"; command.Parameters.AddWithValue("@PrivatniKljuc", enkripcija.DohvatiPrivatniKljuc()); command.Parameters.AddWithValue("@Username", Username); command.ExecuteNonQuery(); if (Kljuc2FA == "DA") { Verficiranje2FA verificiranje = new Verficiranje2FA(); Kljuc2FA = verificiranje.GenerirajKljuc2FA(); command = new SqlCommand(); command.Connection = connection; command.CommandType = CommandType.Text; command.CommandText = "UPDATE Korisnik SET Kljuc2FA = @Kljuc2FA WHERE Username=@Username"; command.Parameters.AddWithValue("@Kljuc2FA", Kljuc2FA); command.Parameters.AddWithValue("@Username", Username); command.ExecuteNonQuery(); } DropboxManager dropbox = new DropboxManager(); dropbox.CreateANewFolder(Username); }
/// <summary> /// Event handler koji se aktivira prilikom klika na gumb Generiraj. Na temelju pripadajućeg odabira vrste algoritma /// generiraju se potrebni ključevi i inicijalizacijski vektori potrebni za određenu vrsu algoritma enkripcije. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void gumbGeneriraj_Click(object sender, EventArgs e) { if (odabirAlgoritam.SelectedValue == (object)"AES") { Enkripcija aesEnkripcija = new AesEnkripcija(); aesEnkripcija.GenerirajKljucIV(); odabirPrvo.Text = Convert.ToBase64String(aesEnkripcija.DohvatiAESKljuc()); odabirDrugo.Text = Convert.ToBase64String(aesEnkripcija.DohvatiIV()); trenutna = aesEnkripcija; } if (odabirAlgoritam.SelectedValue == (object)"RSA") { Enkripcija rsaEnkripcija = new RsaEnkripcija(); rsaEnkripcija.AssignRsaKeys(); odabirPrvo.Text = rsaEnkripcija.DohvatiJavniKljuc(); odabirDrugo.Text = rsaEnkripcija.DohvatiPrivatniKljuc(); trenutna = rsaEnkripcija; } if (odabirAlgoritam.SelectedValue == (object)"DES") { Enkripcija des = new DesEnkripcija(); des.GenerirajKljucIV(); odabirPrvo.Text = Convert.ToBase64String(des.DohvatiAESKljuc()); odabirDrugo.Text = Convert.ToBase64String(des.DohvatiIV()); trenutna = des; } if (odabirAlgoritam.SelectedValue == (object)"TripleDES") { Enkripcija tripleDes = new TripleDesEnkripcija(); tripleDes.GenerirajKljucIV(); odabirPrvo.Text = Convert.ToBase64String(tripleDes.DohvatiAESKljuc()); odabirDrugo.Text = Convert.ToBase64String(tripleDes.DohvatiIV()); trenutna = tripleDes; } gumbEnkriptiraj.Enabled = true; }