progress on validation
This commit is contained in:
51
Hashing/Hasher.cs
Normal file
51
Hashing/Hasher.cs
Normal file
@@ -0,0 +1,51 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Security.Cryptography;
|
||||
using System.Text;
|
||||
|
||||
namespace Hashing
|
||||
{
|
||||
class Hasher
|
||||
{
|
||||
static string key = "ProftaakRH-B4";
|
||||
public static string Encrypt(string text)
|
||||
{
|
||||
using (var md5 = new MD5CryptoServiceProvider())
|
||||
{
|
||||
using (var tdes = new TripleDESCryptoServiceProvider())
|
||||
{
|
||||
tdes.Key = md5.ComputeHash(UTF8Encoding.UTF8.GetBytes(key));
|
||||
tdes.Mode = CipherMode.ECB;
|
||||
tdes.Padding = PaddingMode.PKCS7;
|
||||
|
||||
using (var transform = tdes.CreateEncryptor())
|
||||
{
|
||||
byte[] textBytes = UTF8Encoding.UTF8.GetBytes(text);
|
||||
byte[] bytes = transform.TransformFinalBlock(textBytes, 0, textBytes.Length);
|
||||
return Convert.ToBase64String(bytes, 0, bytes.Length);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static string Decrypt(string cipher)
|
||||
{
|
||||
using (var md5 = new MD5CryptoServiceProvider())
|
||||
{
|
||||
using (var tdes = new TripleDESCryptoServiceProvider())
|
||||
{
|
||||
tdes.Key = md5.ComputeHash(UTF8Encoding.UTF8.GetBytes(key));
|
||||
tdes.Mode = CipherMode.ECB;
|
||||
tdes.Padding = PaddingMode.PKCS7;
|
||||
|
||||
using (var transform = tdes.CreateDecryptor())
|
||||
{
|
||||
byte[] cipherBytes = Convert.FromBase64String(cipher);
|
||||
byte[] bytes = transform.TransformFinalBlock(cipherBytes, 0, cipherBytes.Length);
|
||||
return UTF8Encoding.UTF8.GetString(bytes);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user