123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 |
- using System;
- namespace Wayne.FDCPOSLibrary
- {
- public class MD5Crypter
- {
- System.Security.Cryptography.MD5CryptoServiceProvider cryptic;
- public static string passphrase = "DresserFusion}123";
- public MD5Crypter()
- {
- cryptic = new System.Security.Cryptography.MD5CryptoServiceProvider();
- cryptic.Initialize();
- }
- public byte[] getPassphrase()
- {
- return System.Text.Encoding.ASCII.GetBytes(MD5Crypter.passphrase);
- //return UTF8Encoding.UTF8.GetBytes(MD5Crypter.passphrase);
- }
- public string getMD5Hash(string myString)
- {
- byte[] data = System.Text.Encoding.ASCII.GetBytes(myString);
- //byte[] data = UTF8Encoding.UTF8.GetBytes(myString);
- data = cryptic.ComputeHash(data);
- return System.Text.Encoding.ASCII.GetString(data, 0, data.GetLength(0));
- //return UTF8Encoding.UTF8.GetString(data, 0, data.GetLength(0));
- }
- public string getMD5Hash(byte[] data)
- {
- data = cryptic.ComputeHash(data);
- return System.Text.Encoding.ASCII.GetString(data, 0, data.GetLength(0));
- //return UTF8Encoding.UTF8.GetString(data, 0, data.GetLength(0));
- }
- public byte[] ComputeHash(byte[] data)
- {
- return cryptic.ComputeHash(data);
- }
- // Hash an input string and return the hash as
- // a 32 character hexadecimal string.
- //public string getMd5Hash(string input)
- //{
- // // Create a new instance of the MD5CryptoServiceProvider object.
- // MD5CryptoServiceProvider md5Hasher = new MD5CryptoServiceProvider();
- // // Convert the input string to a byte array and compute the hash.
- // byte[] data = md5Hasher.ComputeHash(Encoding.Default.GetBytes(input));
- // // Create a new Stringbuilder to collect the bytes
- // // and create a string.
- // StringBuilder sBuilder = new StringBuilder();
- // // Loop through each byte of the hashed data
- // // and format each one as a hexadecimal string.
- // for (int i = 0; i < data.Length; i++)
- // {
- // sBuilder.Append(data[i].ToString("x2"));
- // }
- // // Return the hexadecimal string.
- // return sBuilder.ToString();
- //}
- // Verify a hash against a string.
- public bool verifyMD5Hash(string input, string hash)
- {
- // Hash the input.
- string hashOfInput = getMD5Hash(input);
- // Create a StringComparer an compare the hashes.
- StringComparer comparer = StringComparer.OrdinalIgnoreCase;
- if (0 == comparer.Compare(hashOfInput, hash))
- {
- return true;
- }
- else
- {
- return false;
- }
- }
- }
- }
|