Advertisement
Solsund

LockerDecryptor

May 31st, 2015
554
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.36 KB | None | 0 0
  1. using System;
  2. using System.Windows.Forms;
  3. using System.Security.Cryptography;
  4. using System.IO;
  5.  
  6. namespace LockerDecryptor
  7. {
  8. public partial class Form1 : Form
  9. {
  10. public Form1()
  11. {
  12. InitializeComponent();
  13. }
  14.  
  15. private void button1_Click(object sender, EventArgs e)
  16. {
  17. RSACryptoServiceProvider provider;
  18.  
  19. provider = new RSACryptoServiceProvider();
  20.  
  21. FileStream stream = new FileStream("Key.txt", FileMode.Open);
  22. StreamReader reader = new StreamReader(stream);
  23.  
  24. String keyData = reader.ReadLine();
  25. reader.Close();
  26. String[] parts = keyData.Split(',');
  27.  
  28. provider.FromXmlString(parts[2]);
  29.  
  30. LockerCrypt crypt = new LockerCrypt(provider);
  31.  
  32. string[] fileNames = Directory.GetFiles(Directory.GetCurrentDirectory(), "*.jpg");
  33. for (int i = 0; i < fileNames.Length; i++)
  34. {
  35. try
  36. {
  37. crypt.DecryptFile(fileNames[i]);
  38. }
  39. catch
  40. {
  41.  
  42. }
  43. }
  44.  
  45. }
  46. }
  47. }
  48.  
  49.  
  50. using System;
  51. using System.Security.Cryptography;
  52. using System.IO;
  53.  
  54. namespace LockerDecryptor
  55. {
  56. public class LockerCrypt
  57. {
  58. RSACryptoServiceProvider RSAProvider;
  59. byte[] outputBuffer;
  60. public LockerCrypt(RSACryptoServiceProvider provider)
  61. {
  62. RSAProvider = provider;
  63. }
  64.  
  65. public void DecryptFile(String fileName, String outputFolder = null)
  66. {
  67. FileStream stream = new FileStream(fileName, FileMode.Open);
  68. BinaryReader br = new BinaryReader(stream);
  69.  
  70. int length = br.ReadInt32();
  71. byte[] header = br.ReadBytes(length);
  72. byte[] encryptedBuffer = br.ReadBytes((int)br.BaseStream.Length - 4 - length);
  73. br.Close();
  74.  
  75. byte[] decryptedBuffer = RSAProvider.Decrypt(header, true);
  76.  
  77. MemoryStream ms = new MemoryStream(decryptedBuffer);
  78. br = new BinaryReader(ms);
  79. int ivLength = br.ReadInt32();
  80. byte[] ivBuffer = br.ReadBytes(ivLength);
  81. int keyLength = br.ReadInt32();
  82. byte[] keyBuffer = br.ReadBytes(keyLength);
  83. ms.Close();
  84.  
  85. RijndaelManaged rm = new RijndaelManaged();
  86. rm.BlockSize = 256;
  87. ICryptoTransform trans = rm.CreateDecryptor(keyBuffer, ivBuffer);
  88. byte[] outputBuffer = new byte[10000000];
  89. int dataWritten = trans.TransformBlock(encryptedBuffer, 0, encryptedBuffer.Length, outputBuffer, 0);
  90.  
  91. stream = new FileStream(fileName, FileMode.Create);
  92. stream.Write(outputBuffer, 0, dataWritten);
  93. stream.Close();
  94. }
  95.  
  96. public void Cleanup()
  97. {
  98. }
  99. }
  100. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement