public ODSecurity OpenODSecurity(string HashedPass) // Decrypts and opens ODSecurity { ODSecurity mySecurity = new ODSecurity(); FileStream fs = new FileStream("mySecFile.ods", FileMode.Open); Rijndael rijndael = Rijndael.Create(); rijndael.Key = Encoding.ASCII.GetBytes(HashedPass.Substring(0, 32)); // To be entered rijndael.IV = Encoding.ASCII.GetBytes(HashedPass.Substring(32, 16)); rijndael.Padding = PaddingMode.None; ICryptoTransform iCryptoTransform = rijndael.CreateDecryptor(); CryptoStream cryptoStream = new CryptoStream(fs, iCryptoTransform, CryptoStreamMode.Read); byte[] buffer = new byte[80]; cryptoStream.Read(buffer, 0, buffer.Length); for (int iter = 0; iter < Key.Length; iter++) { mySecurity.Key[iter] = buffer[iter]; } for (int iter = 0; iter < IV.Length; iter++) { mySecurity.IV[iter] = buffer[iter + Key.Length]; } mySecurity.guid = Encoding.ASCII.GetString(buffer).Substring(48, 32); fs.Close(); return(mySecurity); }
private void button4_Click(object sender, EventArgs e) { ODSecurity _ods = new ODSecurity(); string password = GetSha384Password(passwordTextbox.Text); _ods.SaveODSecurity(password); textBox1.Text = "Save completed!"; }
private void OpenODSButton_Click(object sender, EventArgs e) { string password = null; if (passwordTextbox.Text != null) { password = GetSha384Password(passwordTextbox.Text); } else { MessageBox.Show("Password is empty!"); return; } try { ods = new ODSecurity().OpenODSecurity(password); } catch (Exception exc) { MessageBox.Show(exc.Message); } }