private void Button_Decrypt_Click(object sender, RoutedEventArgs e) { var rsa = new RSAWithXMLKey(); // Converter hex string til byte array, decrypter og udskriv det decrypterede tekst byte[] texttodecrypt = Textbox_Cipherbytes.Text.Split('-').Select(item => Convert.ToByte(item, 16)).ToArray(); Textbox_Decryptedtext.Text = rsa.DecryptfromXml(texttodecrypt); }
private void Button_Generate_Keys_Click(object sender, RoutedEventArgs e) { var rsa = new RSAWithXMLKey(); // updater modulus/exponent og udskriv dem som en hexidecimal teksttreng rsa.UpdateRsaKeys(); Textbox_Modulus.Text = BitConverter.ToString(rsa.GetModulus()); Textbox_Exponent.Text = BitConverter.ToString(rsa.GetExponent()); }
public void UpdateRsaKeys() { var rsa = new RSAWithXMLKey(); const string publicKeyPath = "c:\\temp\\publickey.xml"; const string privateKeyPath = "c:\\temp\\privatekey.xml"; // updater modulus/exponent rsa.AssignNewKey(publicKeyPath, privateKeyPath); }
public string DecryptfromXml(byte[] texttodecrypt) { var rsa = new RSAWithXMLKey(); const string privateKeyPath = "c:\\temp\\privatekey.xml"; // dekrypter hex-streng var decrypted = rsa.DecryptData(privateKeyPath, texttodecrypt); return(Encoding.Default.GetString(decrypted)); }
private void SetPrivateData() { var rsa = new RSAWithXMLKey(); // hent alt private data og udskriv dem som hexidecimale tekststrenge D.Text = BitConverter.ToString(rsa.GetPrivateData_D()); DP.Text = BitConverter.ToString(rsa.GetPrivateData_Dp()); DQ.Text = BitConverter.ToString(rsa.GetPrivateData_Dq()); InverseQ.Text = BitConverter.ToString(rsa.GetPrivateData_InverseQ()); P.Text = BitConverter.ToString(rsa.GetPrivateData_P()); Q.Text = BitConverter.ToString(rsa.GetPrivateData_Q()); }
public MainWindow() { InitializeComponent(); //opret og indsæt public/private key (public key indsættes) var rsa = new RSAWithXMLKey(); rsa.UpdateRsaKeys(); Textbox_Exponent.Text = BitConverter.ToString(rsa.GetExponent()); Textbox_Modulus.Text = BitConverter.ToString(rsa.GetModulus()); //indsæt private rsaParametre i tekstbokse SetPrivateData(); }
public byte[] GetPrivateData_InverseQ() { var rsa = new RSAWithXMLKey(); const string privateKeyPath = "c:\\temp\\privatekey.xml"; using (var Rsa = new RSACryptoServiceProvider(2048)) { Rsa.PersistKeyInCsp = false; Rsa.FromXmlString(File.ReadAllText(privateKeyPath)); var parameters = Rsa.ExportParameters(true); var InverseQ = parameters.InverseQ; return(InverseQ); } }
public byte[] GetExponent() { var rsa = new RSAWithXMLKey(); const string publicKeyPath = "c:\\temp\\publickey.xml"; using (var Rsa = new RSACryptoServiceProvider(2048)) { Rsa.PersistKeyInCsp = false; // læs data fra c:\\temp\\publickey.xml Rsa.FromXmlString(File.ReadAllText(publicKeyPath)); // expoter exponent fra provider og retuner den var parameters = Rsa.ExportParameters(false); var exponent = parameters.Exponent; return(exponent); } }