Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

201
Vistas
¿Cómo cifrar la contraseña de administrador?

En mi aplicación web Java, la cuenta de administrador creará una cuenta de usuario, donde se cifrará la contraseña, usando la clase StandardPasswordEncoder , eso es fácil. Pero, ¿cómo encriptar la contraseña de administrador, que ya almacené en la base de datos MySQL ?

about 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

¿Cómo encriptar la contraseña de administrador, que ya almacené en la base de datos mysql?

Puedes editar tu contraseña:

 UPDATE table_name SET pass = MD5(pass); -- --------------------------^^^------- -- This can be any Standard encryption algorithm, you can check the link above

Puede echar un vistazo a las funciones de cifrado y compresión

¿Qué pasa si solo quiero cifrar solo la contraseña de administrador? la contraseña de otros usuarios será encriptada por el administrador en la clase de controlador java.

Puede marcar su contraseña como un administrador maestro, por ejemplo, puede agregar una columna en su tabla que marque la diferencia entre el administrador y los usuarios comunes, considere que tiene una gran empresa en este caso, una cuenta de administrador no es suficiente, necesita muchos administradores cuentas, y en base a esta columna puede cifrar la cuenta de administrador con un algoritmo y las demás con otro algoritmo.


Cifrar contraseña usando SHA-256

Logré encriptar la contraseña de administrador, pero no puedo iniciar sesión en mi aplicación web porque la clase StandardPasswordEncoder en la aplicación web usa el algoritmo hash SHA-256

SHA-256 != MD5 , esto está claro, por lo que debe usar el mismo algoritmo en el código lateral y en la base de datos, en su caso, está usando SHA-256 , supongo que está usando una función como esta:

CÓDIGO

 public static String sha256(String base) { try { MessageDigest digest = MessageDigest.getInstance("SHA-256"); byte[] hash = digest.digest(base.getBytes("UTF-8")); StringBuilder hexString = new StringBuilder(); for (int i = 0; i < hash.length; i++) { String hex = Integer.toHexString(0xff & hash[i]); if (hex.length() == 1) { hexString.append('0'); } hexString.append(hex); } return hexString.toString(); } catch (UnsupportedEncodingException | NoSuchAlgorithmException ex) { throw new RuntimeException(ex); } }

Esto encriptará al administrador de esta manera:

 admin = 8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918

BASE DE DATOS

Entonces, en su base de datos, debe cifrar su contraseña de esta manera:

 SELECT SHA2('admin', 256);

La consulta de actualización debería verse así:

 UPDATE table_name SET pass = SHA2(pass, 256) WHERE admin_master = true; -- -------------Field to check if it is admin or not ---^

Entonces, cuando intenta iniciar sesión, debe verificar si es administrador o no, si el administrador encripta su contraseña con SHA-256 y verifica si el usuario existe o no, de lo contrario, si el usuario es un usuario ordinario, verifique con su algoritmo anterior.

Espero que esto pueda darte una idea.

about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda