public AddProfiler(Global global, Persona persona) { ProfilerMode = ProfilerMode.Edit; this.persona = persona; this.global = global; addProfileViewModel = new ViewModels.AddProfileViewModel(this, global); HashString = persona.HashString; Bitmap avaBitmap = AvatarGen.GenerateAvatar(HashString); Avatar = GetBitmapImage(avaBitmap); view = new Views.AddProfile(addProfileViewModel); Proxies = global.Proxies; //нужно сделать, чтобы если на акке был прокси, то его можно было удалить if (persona.Proxy != null) { var pr = Proxies.Where(p => p.Ip == persona.Proxy.Ip && p.Port == persona.Proxy.Port).FirstOrDefault(); if (pr != null) { Proxy = pr; } else { Proxy = persona.Proxy; } } view.ShowDialog(); }
private void UpdateAvatar() { HashString = AvatarGen.GenerateHash(); Bitmap avaBitmap = AvatarGen.GenerateAvatar(HashString); Avatar = GetBitmapImage(avaBitmap); }
public static string GenerateHash() { string salt = AvatarGen.RandomString(40); int unixTime = (int)(DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalSeconds; string name = unixTime.ToString() + salt; var message = Encoding.ASCII.GetBytes(name + Convert.ToString(DateTime.UtcNow)); // уникальная строка SHA256Managed hashString = new SHA256Managed(); string hex = ""; var hashValue = hashString.ComputeHash(message); foreach (byte x in hashValue) { hex += String.Format("{0:x2}", x); // получение уникального хэша пользователя Console.Write(x); } return(hex); }