En este artículo, vamos a saber cómo cifrar contraseñas en python .
Una contraseña segura proporciona seguridad. Las contraseñas de texto sin formato son extremadamente inseguras, por lo que debemos fortalecer las contraseñas mediante el hash de la contraseña. Hashing de contraseñas es un método económico y seguro que mantiene las contraseñas a salvo de actividades maliciosas. El hashing de contraseñas genera una contraseña única para cada texto, incluso si la contraseña del texto sin formato es la misma.
¿Por qué necesitamos Hash una contraseña?
Hashing se utiliza principalmente para proteger una contraseña de los piratas informáticos. Supongamos que, si se piratea un sitio web, los ciberdelincuentes no obtienen acceso a su contraseña. En cambio, solo obtienen acceso al «hash» encriptado creado por el método de hashing.
¿Qué es la sal en hashing?
En criptografía, un salt son datos aleatorios que se utilizan como entrada adicional a una función unidireccional que procesa datos, como una contraseña. Las sales se utilizan para mantener seguras las contraseñas mientras se almacenan. Históricamente, solo la función hash criptográfica de la contraseña se mantuvo en un sistema, pero con el tiempo, se desarrollaron precauciones adicionales para evitar la identificación de contraseñas duplicadas o comunes. Una tal prevención es la salazón.
Cifrado: el cifrado es el proceso de codificación de texto sin formato o cualquier información de tal manera que solo las personas autorizadas puedan leerlo con una clave correspondiente para que los datos confidenciales puedan protegerse de personas no autorizadas.
Hashing: Hashing convierte cualquier cantidad de datos en un hash de longitud fija que no se puede revertir. Es ampliamente utilizado en criptografía. El hash nos permite validar si la entrada ha cambiado aunque sea ligeramente, si se cambia el hash resultante será diferente. En este artículo, vamos a aprender la técnica Salted Password Hashing. Incluye convertir un algoritmo para mapear datos de cualquier tamaño a una longitud fija.
¿Qué es BCrypt?
El algoritmo BCrypt se utiliza para cifrar y saltear contraseñas de forma segura. BCrypt permite la creación de una capa de protección de contraseñas que puede desarrollar innovación de hardware local para proteger contra peligros o amenazas a largo plazo, como atacantes que tienen la capacidad computacional para adivinar contraseñas con el doble de eficiencia.
Instale bcrypt usando pip:
pip install bcrypt
Ejemplo: en este programa, codificaremos la contraseña mediante bcrypt.
Aquí estamos usando «GeekPassword» como entrada para convertirla en un hash.
Python
import bcrypt # Declaring our password password = b'GeekPassword' # Adding the salt to password salt = bcrypt.gensalt() # Hashing the password hashed = bcrypt.hashpw(password, salt) # printing the salt print("Salt :") print(salt) # printing the hashed print("Hashed") print(hashed)
Producción:
¿Qué es Hashlib?
Instale hashlib usando pip:
pip install hashlib
Ejemplo 2: en este programa, codificaremos la contraseña usando hashlib.
Aquí estamos usando «GeekPassword» como entrada para convertirla en un hash.
Python
import hashlib # Declaring Password password = 'GeeksPassword' # adding 5gz as password salt = "5gz" # Adding salt at the last of the password dataBase_password = password+salt # Encoding the password hashed = hashlib.md5(dataBase_password.encode()) # Printing the Hash print(hashed.hexdigest())
Producción:
Publicación traducida automáticamente
Artículo escrito por ayushcoding100 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA