gravatar

Gravatar, él y su API

Cuando empezamos en el mundo de los blogs, ya sea desde el lado emisor o desde el lado receptor (con receptor me refiero a lectores), siempre y por ley va a surgir la tendencia a la socialización, que en internet no es otra cosa que empezar a dar voz para corregir, ayudar, debatir, o simplemente agradecer o felicitar, y entonces voila! … tenemos el social media.

El problema viene a dar paletazo cuando ahondamos un poco en nuestros intereses y necesidades por lo que surge el tema de la identidad en internet. Como saber que el Juan que posteó en este comentario, no es el Juan que nos ayudó en este otro?… pues fácil, identificando con un nombre, apellido, edad, dirección, etc… pero vamos, que a nosotros los lectores no nos gustan dar tantos datos… así que un mail basta y les damos el marrón.

Diversas empresas han creado sus sistemas óptimos de identificación, openID, Facebook, Twitter, Yahoo, etc etc… Hoy, y ya para no seguir con esta introducción, vengo a presentarles a Gravatar, que tiene como característico la identificación de imágenes en base a un mail, es decir, lo único que tienes que otorgar es tu email, y los sitios web lo identificarán y mostrarán la imagen asociada. Esto es común en una gran mayoría de sitios por lo que es un semi-estándar; y más desarrolladores web confían en esta herramienta pero, cuántos de los lectores conocemos a Gravatar?, pues llegaste en gran momento mi hermano/a, aquí enseñare como usarlo y/o implementarlo:
Seguir leyendo …

Crear Hash MD5 en [PHP]

Hoy mientras veía la forma de implementar Gravatar en mi proyecto (con lo que me ahorraría líneas de código en lo de subir fotos propias y mostrarlas) aprendí algo que me pareció curioso y a la vez útil, sí!, tanto como para postearlo, una manera de crear un hash MD5 en PHP.

Pero, que es un Hash MD5?…

Pues según wikipedia:

MD5 es uno de los algoritmos de reducción criptográficos diseñados por el profesor Ronald Rivest del MIT (Massachusetts Institute of Technology, Instituto Tecnológico de Massachusetts). Fue desarrollado en 1991 como reemplazo del algoritmo MD4 después de que Hans Dobbertin descubriese su debilidad.

[...]

Codificación [editar]

La codificación del MD5 de 128 bits es representada típicamente como un número de 32 dígitos hexadecimal. El siguiente código de 28 bytes ASCII será tratado con MD5 y veremos su correspondiente hash de salida:

MD5(“Esto sí es una prueba de MD5″) = e0abc159956570f76f890fec22258477

Un simple cambio en el mensaje nos da un cambio total en la codificación hash, en este caso cambiamos dos letras, el «sí» por un «no».

MD5(“Esto no es una prueba de MD5″) = 74005c07412ae92ccded2dfe5e42ce36

Otro ejemplo sería la codificación de un campo vacío:

MD5(“”) = 74e6f7298a9c2d168935f58c001bad88

Y bueno, según leía en Gravatar, lo que hacen ellos es parsear tu email para sacarlo en un hash MD5 y utilizarlo en el link, así entonces generan un url, le agregan la extensión y bajo algunos otros parámetros salía el gravatar.

Osea, si por ejemplo tu email es iHaveAn@email.com, parseado a MD5 (así tal y como está el texto plano) resultará en: 3b3be63a4c2a439b013787725dfce802, y arman el link así:

http://www.gravatar.com/avatar/3b3be63a4c2a439b013787725dfce802.jpg

Con lo que tendremos la siguiente imagen:

Y bueno, hasta que supe esto, yo pensé que implementarlo en PHP sería por medio de algún algoritmo complejo, pero no me esperaba que estuviese implementado de manera nativa (y no sólo el MD5, también vi por ahí funciones para parsear sha1 y el MD5 y sha1 para archivos, wow).

El funcionamiento es sencillo, sólo le pasan un String a la función y se puede usar de manera en un hash MD5:

<?php
   //creamos una variable cualquiera
   $variable = "informatrix, mi blog favorito!!!"

   $variable_en_md5 = md5($variable);
   //creamos el hash a partir de esa variable

   echo $variable_en_md5;
   //lo imprimimos ya en formato MD5, que en este caso sería: 78d2f7ab91c219134a707ba19cf51393
?>

Me pareció curioso, sencillo y útil, a veces PHP me sorprende, y cada vez pienso más que la gente subestima este lenguaje de programación, pero en fin.

Espero les haya servido, a mi sí!…

Saludos!!!

Mas info | PHP MD5()