Advertisement
Guest User

Criptografia

a guest
Jul 23rd, 2019
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.01 KB | None | 0 0
  1. using System;
  2. using System.Security.Cryptography;
  3. using System.Text;
  4.  
  5. namespace AspNetGeeks
  6. {
  7.     public class Cryptography
  8.     {
  9.         private static readonly byte[] _salt = Encoding.UTF8.GetBytes("ASPNETGEEKS@2019");
  10.  
  11.         public static string Encrypt(string data, byte[] salt = null)
  12.         {
  13.             var saltHash = salt ?? _salt;
  14.  
  15.             using (var hashProvider = new MD5CryptoServiceProvider())
  16.             {
  17.                 var tripleDESCryptoServiceProvider = new TripleDESCryptoServiceProvider
  18.                 {
  19.                     Mode = CipherMode.ECB,
  20.                     Key = hashProvider.ComputeHash(saltHash),
  21.                     Padding = PaddingMode.PKCS7
  22.                 };
  23.  
  24.                 var crypt = tripleDESCryptoServiceProvider;
  25.  
  26.                 using (var transforme = crypt.CreateEncryptor())
  27.                 {
  28.                     var dados = Encoding.UTF8.GetBytes(data);
  29.                     return Convert.ToBase64String(transforme.TransformFinalBlock(dados, 0, dados.Length));
  30.                 }
  31.             }
  32.         }
  33.  
  34.         public static string Decrypt(string data, byte[] salt = null)
  35.         {
  36.             var saltHash = salt ?? _salt;
  37.  
  38.             using (var hashProvider = new MD5CryptoServiceProvider())
  39.             {
  40.                 var tripleDESCryptoServiceProvider = new TripleDESCryptoServiceProvider
  41.                 {
  42.                     Mode = CipherMode.ECB,
  43.                     Key = hashProvider.ComputeHash(saltHash),
  44.                     Padding = PaddingMode.PKCS7
  45.                 };
  46.                 var descriptografar = tripleDESCryptoServiceProvider;
  47.  
  48.                 using (var transforme = descriptografar.CreateDecryptor())
  49.                 {
  50.                     var dados = Convert.FromBase64String(data.Replace(" ", "+"));
  51.                     return Encoding
  52.                         .UTF8
  53.                         .GetString(transforme.TransformFinalBlock(dados, 0, dados.Length));
  54.                 }
  55.             }
  56.         }
  57.     }
  58. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement