public static byte[] Compute(this Hashs hash, Stream array) { using (var h = hash.Create()) { return(h.ComputeHash(array)); } }
public byte[] GetArray(Hashs hashName, byte[] bytes) { if (stoping) { stoping = false; } byte[] array = hashName.Compute(bytes); return(array); }
public byte[] GetArray(Hashs hashName, Stream stream) { if (stoping) { stoping = false; } byte[] array = hashName.Compute(stream); return(array); }
public async Task <string> GetStringFromFileAsync(Hashs hashName, string filePath) { byte[] array = null; using (FileStream stream = File.Open(filePath, FileMode.Open)) { array = await GetArrayAsync(hashName, stream); } return(string.Join(HexStringSeparator, array.Select(p => p.ToString(HexStringFormat)))); }
public string GetStringFromFile(Hashs hashName, string filePath) { byte[] array; using (FileStream stream = File.Open(filePath, FileMode.Open)) { array = GetArray(hashName, stream); } return(string.Join(HexStringSeparator, array.Select(p => p.ToString(HexStringFormat)))); }
public async Task <byte[]> GetArrayAsync(Hashs hashName, Stream stream) { if (stoping) { stoping = false; } byte[] array = null; await Task.Run(() => { array = hashName.Compute(stream); }); return(array); }
/// <summary> /// Repleace username and password account in source whit Varible seeting in config /// </summary> /// <param name="ac">Account for replace in source.</param> /// <param name="config">Config for Request.</param> /// <param name="source">The base text for replace account into it.</param> public string ReplaceAccount(Account ac, string source, Config config) { logger.AddMessage("Account:\nUsername="******"\nPassword="******"\nHit=" + ac.Hit + "\nCapture=" + ac.Capture, Log.Type.OutPut); if (config.Varible.Count != 0) { foreach (HashType Item in config.Varible) { switch (Item) { case HashType.MD5: ac.Password = Hashs.MD5(ac.Password); logger.AddMessage("Password changed to MD5 : " + ac.Password, Log.Type.Infomation); break; case HashType.SHA1: ac.Password = Hashs.SHA1(ac.Password); logger.AddMessage("Password changed to SHA1 : " + ac.Password, Log.Type.Infomation); break; case HashType.SHA256: ac.Password = Hashs.SHA256(ac.Password); logger.AddMessage("Password changed to SHA256 : " + ac.Password, Log.Type.Infomation); break; case HashType.SHA512: ac.Password = Hashs.SHA512(ac.Password); logger.AddMessage("Password changed to SHA512 : " + ac.Password, Log.Type.Infomation); break; case HashType.Base64: ac.Password = Hashs.StringToBase64(ac.Password); logger.AddMessage("Password changed to Base64 : " + ac.Password, Log.Type.Infomation); break; } } } try { string[] userpass = config.DataSet.Split('*'); source = source.Replace(userpass[0], ac.Username).Replace(userpass[1], ac.Password); } catch (Exception ex) { logger.AddMessage("Error: " + ex.Message, Log.Type.Error); } logger.AddMessage("OutPut Source: " + source, Log.Type.OutPut); return(source); }
static void Main(string[] args) { const string password = "******"; byte[] salt = Hashs.GenerateSalt(); Console.WriteLine($"Password: { password }"); Console.WriteLine($"Salt: { Convert.ToBase64String(salt) }"); Console.WriteLine(); // salt + password var hashedPassword1 = Hashs.HashPasswordWithSalt( Encoding.UTF8.GetBytes(password), salt ); // show the password with salt Console.WriteLine($"Password with salt: { Convert.ToBase64String(hashedPassword1) }"); Console.WriteLine(); Console.ReadKey(); }
public static HashAlgorithm Create(this Hashs hash) { return(HashAlgorithm.Create(hash.ToString())); }
public async Task <string> GetStringAsync(Hashs hashName, string content) { byte[] array = await GetArrayAsync(hashName, StringEncoding.GetBytes(content)); return(string.Join(HexStringSeparator, array.Select(p => p.ToString(HexStringFormat)))); }
public string GetString(Hashs hashName, string content) { byte[] array = GetArray(hashName, StringEncoding.GetBytes(content)); return(string.Join(HexStringSeparator, array.Select(p => p.ToString(HexStringFormat)))); }
public string GetString(Hashs hashName, Stream stream) { byte[] array = GetArray(hashName, stream); return(string.Join(HexStringSeparator, array.Select(p => p.ToString(HexStringFormat)))); }
public static int ComposedHashCode <T>(this IEnumerable <T> objs) { return(Hashs.ComposedHashCode(objs.Cast <object>().ToArray())); }