private static void StoreEncryptedFileInTemporaryMemory(Message message) { message.TemporaryDownloadId = SymmetricCryptoProvider.GenerateKeyPhrase(64); HomeController.FilePasswords.Add(message.TemporaryDownloadId, new TemporaryDownloadKey { Expires = DateTime.Now.AddSeconds(HomeController.PasswordExpiresInSeconds), MessageId = message.MessageId, Passphrase = message.EncryptionKey }); }
private void GenerateKeys(decimal keySize, decimal numberOfKeys) { StringBuilder keys = new StringBuilder(); for (int i = 1; i < numberOfKeys + 1; i++) { string key; if (chkCreatepronounceablepasswords.Checked) { key = PronounceablePasswordGenerator.Generate((int)keySize); } else { key = SymmetricCryptoProvider.GenerateKeyPhrase((int)keySize).TrimEnd(Convert.ToChar("=")); } int groupSize = (int)numGroupSize.Value; if (chkGroupIntoPairs.Checked && groupSize > 0) { string groupedKey = ""; for (int j = 0; j < key.Length; j++) { groupedKey += key[j]; if ((j + 1) % groupSize == 0) { groupedKey += "-"; } } groupedKey = groupedKey.TrimEnd('-'); keys.AppendLine(string.Format("{0}, {1}", i, groupedKey)); } else { keys.AppendLine(string.Format("{0}, {1}", i, key)); } } txtkeys.Text = keys.ToString(); }
private static void StoreEncryptedFileInTemporaryMemory(Message message) { message.TemporaryDownloadId = SymmetricCryptoProvider.GenerateKeyPhrase(64); FilePasswords.Add(message.TemporaryDownloadId, new TemporaryDownloadKey { Expires = DateTime.Now.AddSeconds(PasswordExpiresInSeconds), MessageId = message.MessageId, Passphrase = message.EncryptionKey }); // get filename byte[] decryptedArray = Convert.FromBase64String(message.MessageData); var zipStream = new MemoryStream(decryptedArray); using (ZipFile zip = ZipFile.Read(zipStream)) { message.MessageData = zip.First().FileName; } }