private void btnPotpis_Click(object sender, EventArgs e) { potpis p = new potpis(new SHA1Managed(), new RSACryptoServiceProvider()); StreamReader sr = new StreamReader(@"..\..\..\Files\privatni_kljuc.txt"); p.rsa.FromXmlString(sr.ReadToEnd()); string data = file.readFile("tekst"); byte[] hash = Encoding.UTF8.GetBytes(data); byte[] Bhash = p.digitalSignature(p.sha.ComputeHash(hash)); string final = Encoding.UTF8.GetString(Bhash); MessageBox.Show("Digitalni potpis: " + Convert.ToBase64String(Bhash)); file.writeIntoFile("digitalni_potpis", Bhash); }
private void btnProvjera_Click(object sender, EventArgs e) { potpis p = new potpis(new SHA1Managed(), new RSACryptoServiceProvider()); StreamReader reader = new StreamReader(@"..\..\..\Files\javni_kljuc.txt"); string hash = file.readFile("tekst"); byte[] Bhash = Encoding.UTF8.GetBytes(hash); byte[] hashing = p.sha.ComputeHash(Bhash); p.rsa.FromXmlString(reader.ReadToEnd()); if (p.checkSignature(hashing, (file.readFrom("digitalni_potpis"))) == true) { MessageBox.Show("Digitalni potpis je ispravan!", "Uspješno!"); } else { MessageBox.Show("Digitalni potpis neispravan!", "POZOR", MessageBoxButtons.OK, MessageBoxIcon.Error); } }