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

Cifrado asimétrico con GPG en Linux - Tutorial con ejemplos

En un post anterior vimos cómo usar gpg en Linux para cifrar datos, pero utilizamos un cifrado simétrico. Hoy, en cambio, vamos a cifrar de manera asimétrica usando GPG. Veremos cómo: Generar un par de claves públicas y privadas Exportar la clave pública para que otras personas puedan cifrar archivos con nuestra clave y solo nosotros podamos descifrarlos Importar clave pública de otra persona y cifrar datos con la misma Desencriptar un archivo con nuestra clave privada Nota: voy a usar la palabra encriptar y cifrar como sinónimos, así como desencriptar y descifrar. ...

junio 6, 2019 · 5 min · 1052 palabras · Parzibyte

Cifrado de datos en MySQL con AES

AES (Advanced encryption standard) es un algoritmo bastante fuerte y seguro, utilizado ampliamente en el mundo de la seguridad informática. MySQL permite cifrar y descifrar datos utilizando el algoritmo AES a través de las funciones aes_encrypt y aes_decrypt. De esta manera podemos proteger y asegurar datos utilizando AES. En este post vamos a ver cómo cifrar y descifrar datos con AES en MySQL. ...

junio 2, 2019 · 4 min · 721 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

ROT 13 en Java - Algoritmo y algunas variantes como ROT 1

Hoy voy a explicar el código fuente para implementar el algoritmo de cifrado ROT 13 en Java. El método de cifrado llamado ROT 13 rota las letras del alfabeto 13 posiciones. Son 13 veces porque 13 es la mitad de la longitud del alfabeto inglés (es decir, 26). Debido a que rota las letras justamente a la mitad, el método para descifrar es el mismo que se utiliza para cifrar. Es decir, al cifrar, la letra a se convierte en n. Y al cifrar de nuevo la n, se convierte en a, por lo que podemos concluir en que el mismo método sirve para cifrar y descifrar. ROT 13 es una variante del cifrado César (el cual ya implementé en Java) pero a diferencia de ROT 13, para descifrar usando el método César se necesita rotar la cadena a la izquierda. Una vez explicado esto veamos el código y la explicación para implementar ROT 13 en Java. También veremos algunas variantes de ROT 13 como ROT 1, y a partir de ello podremos ver cómo implementar ROT 2, ROT 3, etcétera (pues son rotaciones al final del día) ...

mayo 24, 2019 · 6 min · 1259 palabras · Parzibyte

Algoritmo de cifrado César en C

Anteriormente vimos cómo implementar el algoritmo de cifrado de César en Python, ahora veremos cómo cifrar y descifrar una oración usando el cifrado César igualmente, pero en el lenguaje de programación C. Implementar el algoritmo en C es un poco más complicado que en otros lenguajes, sobre todo por la manipulación de cadenas, pero eso no es un impedimento. Veamos entonces cómo codificar el algoritmo de cifrado César en C. ...

diciembre 11, 2018 · 5 min · 909 palabras · Parzibyte