//form del login donde registro usuarios
namespace Inicio
{
public partial class Login : Form
{
List<Usuario> lista = new List<Usuario>();
public Login()
{
InitializeComponent();
}
public static byte[] GetHash(string imputString)
{
HashAlgorithm algoritm = SHA256.Create();
return algoritm.ComputeHash(Encoding.UTF8.GetBytes(imputString));
}
public static string getHashString(string inputString)
{
StringBuilder sb = new StringBuilder();
foreach (byte b in GetHash(inputString))
sb.Append(b.ToString("X2"));
return sb.ToString();
}
private void IngresarDatos()
{
Usuario usuario = new Usuario();
usuario.login = txtUsuario.Text;
usuario.clave = getHashString(txtClave.Text.Trim());
lista.Add(usuario);
limpiar();
}
private void limpiar()
{
txtUsuario.Text = string.Empty;
txtClave.Text = string.Empty;
txtUsuario.Focus();
}
public bool autenticar()
{
foreach (var item in lista)
{
if (item.login == txtUsuario.Text.Trim() && item.clave == getHashString(txtClave.Text.Trim()))
{
return true;
}
}
return false;
}
private bool autenticar1()
{
var dato = lista.AsParallel().Where(x => x.login == txtUsuario.Text.Trim() && x.clave == getHashString(txtClave.Text.Trim())).FirstOrDefault();
if (dato != null) return true;
else return false;
}
private void btnRegistrar_Click(object sender, EventArgs e)
{
IngresarDatos();
}
}
}
//form donde deberia verificar la existencia de dichos usuarios son tres formulario en total ...un inicio --verificar y login
namespace Inicio
{
public partial class Verificar : Form
{
public Verificar()
{
InitializeComponent();
}
public static byte[] GetHash(string imputString)
{
HashAlgorithm algoritm = SHA256.Create();
return algoritm.ComputeHash(Encoding.UTF8.GetBytes(imputString));
}
public static string getHashString(string inputString)
{
StringBuilder sb = new StringBuilder();
foreach (byte b in GetHash(inputString))
sb.Append(b.ToString("X2"));
return sb.ToString();
}
public bool autenticar()
{
foreach (var item in lista)
{
if (item.login == txtVUsuario.Text.Trim() && item.clave == getHashString(txtVClave.Text.Trim()))
{
return true;
}
}
return false;
}
private void btnVerificar_Click(object sender, EventArgs e)
{
if (autenticar())
{
MessageBox.Show("AUTENTICADO");
}
else MessageBox.Show("INGRESO NO AUTORIZADO");
}
}
}
public List<Usuario> GetListusuario()
{
return lista;
}
private readonly List<Usuario> _usuarioList;
public verificar(List<Usuario> usuarioList)
{
InitializeComponent();
_usuarioList = usuarioList;
}
...
List<Usuario> usuarioList = login.GetListusuario() ;
verificar = new Verificar(usuarioList)
...