| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- using System;
- using System.IO;
- using System.Security.Cryptography;
- using System.Text;
- namespace LauncherUpdater.Function
- {
- public static class EncryptionHelper
- {
- public static string Encrypt(string clearText)
- {
- const string password = "N1PEUPQX";
- var bytes = Encoding.Unicode.GetBytes(clearText);
- using (var aes = Aes.Create())
- {
- var rfc2898DeriveBytes = new Rfc2898DeriveBytes(password, new byte[]
- {
- 73,
- 118,
- 97,
- 110,
- 32,
- 77,
- 101,
- 100,
- 118,
- 101,
- 100,
- 101,
- 118
- });
- aes.Key = rfc2898DeriveBytes.GetBytes(32);
- aes.IV = rfc2898DeriveBytes.GetBytes(16);
- using (var memoryStream = new MemoryStream())
- {
- using (
- var cryptoStream = new CryptoStream(memoryStream, aes.CreateEncryptor(), CryptoStreamMode.Write)
- )
- {
- cryptoStream.Write(bytes, 0, bytes.Length);
- cryptoStream.Close();
- }
- clearText = Convert.ToBase64String(memoryStream.ToArray());
- }
- }
- return clearText;
- }
- public static string Decrypt(string cipherText)
- {
- const string password = "N1PEUPQX";
- cipherText = cipherText.Replace(" ", "+");
- var buffer = Convert.FromBase64String(cipherText);
- using (var aes = Aes.Create())
- {
- var rfc2898DeriveBytes = new Rfc2898DeriveBytes(password, new byte[]
- {
- 73,
- 118,
- 97,
- 110,
- 32,
- 77,
- 101,
- 100,
- 118,
- 101,
- 100,
- 101,
- 118
- });
- aes.Key = rfc2898DeriveBytes.GetBytes(32);
- aes.IV = rfc2898DeriveBytes.GetBytes(16);
- using (var memoryStream = new MemoryStream())
- {
- using (
- var cryptoStream = new CryptoStream(memoryStream, aes.CreateDecryptor(), CryptoStreamMode.Write)
- )
- {
- cryptoStream.Write(buffer, 0, buffer.Length);
- cryptoStream.Close();
- }
- cipherText = Encoding.Unicode.GetString(memoryStream.ToArray());
- }
- }
- return cipherText;
- }
- }
- }
|