Almacenar contraseñas de forma segura (o casi)

etiquetas: programación, php, seguridad, criptografía

Hace muy poco empecé a trabajar en un par de proyectos que utilizarán criptografía para garantizar la privacidad de los usuarios. De entre todo lo que esos proyectos van a implicar en cuanto a seguridad, hoy quiero hablar de las funciones hash y de su relación con las contraseñas.

1. Funciones hash

1.1. ¿Qué son?

También conocidas como «resúmenes criptográficos», funcionan tomando un conjunto variable de datos, y después de aplicar una serie de transformaciones sobre ellos, devuelven una cadena de longitud determinada, a la que podríamos llamar huella. Para que sean útiles en el campo de la criptografía, uno de sus requisitos es que debe ser computacionalmente imposible encontrar dos conjuntos de datos con el mismo hash: esto se llama resistencia a colisiones.

MD5("cadena uno") => ae9be994423206ae723bf717b6c32f96
MD5("cadena dos") => e2b8d5adcd7b0ace8a931972febd6909
El algoritmo MD5 es una de las muchas funciones hash que existen.

Se utilizan para comprobar la integridad de los datos transmitidos por cualquier medio, y también como parte fundamental en algoritmos HMAC.

Seguir leyendo...

Primeros pasos con Intel Edison en Arch (Parte I)

etiquetas: arch, intel edison, iot

Hace ya unos años que Intel está dedicando mucho tiempo, esfuerzo y dinero al desarrollo de productos orientados a los makers. Uno de estos productos es el módulo Intel Edison, con el que ofrecen una solución potente y económica a todos aquellos que quieran adentrarse en el IoT.

Por supuesto, si queremos llevar a buen puerto nuestros proyectos, tendremos que aprender a utilizar las herramientas, y para ello Intel proporciona la documentación necesaria, además de una página de ayuda con sus imprescindibles foros. Pese a todo, he querido preparar una pequeña guía muy resumida y orientada principalmente a la distribución que uso a diario: Arch Linux.

Seguir leyendo...