¿Cómo almacenar contraseñas en bases de datos?

El día de hoy te voy a compartir un poco de mi experiencia como programador al guardar contraseñas en bases de datos, sin importar lenguaje de programación ni motor de base de datos. Te daré algunos consejos para almacenar passwords en una base de datos y que obviamente queden seguras para que ni siquiera tú sepas cuál es la contraseña pero puedas resetearla en caso de ser necesario. ...

noviembre 26, 2022 · 6 min · 1105 palabras · Parzibyte

Encriptación con JavaScript del lado del cliente usando la Web Crypto API

En este post de programación con JavaScript en el navegador veremos cómo encriptar y desencriptar datos usando una API nativa, segura y confiable. Vamos a usar la interfaz Crypto a través de window.crypto. Al final podremos encriptar y desencriptar archivos usando una contraseña, derivando una clave de la misma y usando AES para el cifrado de datos. Nota: voy a usar cifrado y encriptado como sinónimos para referirme a la encriptación de información. Por cierto, usaremos la encriptación simétrica aunque también es posible usar la asimétrica con claves públicas y privadas. ...

febrero 14, 2022 · 5 min · 980 palabras · Parzibyte

Encriptar contraseñas con Node

En este post de programación con JavaScript del lado del servidor en el entorno de Node te mostraré cómo asegurar las contraseñas de los usuarios; esto es, encriptarlas. De hecho me parece que el término correcto es hashear, pues encriptar es convertir algo plano a encriptado y luego poder hacer lo contrario; en cambio hashear es convertir algo plano a encriptado, pero ya no poder obtener el valor original a partir del encriptado. Como sea, te mostraré cómo asegurar, encriptar o cifrar las contraseñas. Vamos a usar el algoritmo bcrypt pues es perfecto para hashear contraseñas en Node. ...

agosto 14, 2020 · 4 min · 716 palabras · Parzibyte

Cifrar y descifrar información con PHP

En este artículo te voy a mostrar cómo encriptar y desencriptar datos usando PHP, para mantener los datos seguros. Veremos cómo: Cifrar datos Descifrar datos Cifrar datos usando la contraseña de un usuario Descifrar datos usando la contraseña de un usuario Estos dos últimos ejemplos funcionan muy bien para cuando queremos asegurar la información incluso para los desarrolladores de la aplicación. Recuerda que encriptar es distinto a hashear; porque cuando encriptamos un valor con PHP lo hacemos de esa manera para desencriptarlo más tarde. En cambio, al hashear una contraseña, su valor no es reversible. La librería que vamos a usar para encriptar y desencriptar datos en PHP se llama php-encryption y su repositorio en GitHub lo puedes ver aquí. Nota: voy a usar encriptar y cifrar como sinónimos para este post, al igual que desencriptar y descifrar. ...

julio 19, 2019 · 9 min · 1789 palabras · Parzibyte

Un ransomware para Linux usando GPG

Hoy vamos a ver cómo crear un ransomware programado para Linux (será un shell script) utilizando GPG y el cifrado asimétrico; será más que nada un ejercicio didáctico pero claro que se puede llevar a la práctica (cosa que no recomiendo, en serio), Si no sabes qué es un ransomware veamos lo que dice la wikipedia: Un ransomware (del inglés ransom, «rescate», y ware, acortamiento de software) o “secuestro de datos” en español, es un tipo de programa dañino que restringe el acceso a determinadas partes o archivos del sistema operativo infectado, y pide un rescate a cambio de quitar esta restricción. El ransomware que vamos a programar va a cifrar archivos con nuestra clave pública (que se va a descarga en la PC de la víctima), los cuales solo vamos a descifrar con nuestra clave privada (la cual solo posee el atacante). Será un script de bash muy sencillo pero poderoso, con la única dependencia de GPG. ...

junio 13, 2019 · 8 min · 1564 palabras · Parzibyte

Cifrar unidad de disco en Linux Ubuntu con LUKS

LUKS (Linux Unified Key Setup) es una especificación de cifrado de disco creado por Clemens Fruhwirth. Esta especificación permite cifrar discos completos en Linux utilizando AES-256 y algunas otras características de seguridad. En este post vamos a ver cómo cifrar una memoria USB aunque se puede cifrar un disco duro completo o una partición del mismo. Así, podemos guardar datos con la seguridad de que nadie sin la clave podrá leerlos, sin importar el sistema operativo. ...

mayo 28, 2019 · 3 min · 436 palabras · Parzibyte

Hashear contraseñas con Python y bcrypt

Anteriormente vimos cómo generar una contraseña segura en Python cuando necesitamos un token o una clave segura, ahora veremos cómo hashear una contraseña en Python, usando bcrypt. El algoritmo de bcrypt es usado también por PHP al hashear contraseñas. Igualmente está disponible en Go. Hashear contraseñas es un estándar que debemos seguir al implementar autenticación de usuarios, por ejemplo. Pero bueno, vamos al tutorial en donde veremos: Cómo instalar la librería de bcrypt usando pip Cómo hashear una contraseña con bcrypt y Python Cómo comprobar si una contraseña coincide con el hash de bcrypt en Python Costos y límites de bcrypt en Python ...

diciembre 6, 2018 · 4 min · 822 palabras · Parzibyte