Matasano Crypto Challenge Set 1 (1/?)

Los retos criptográficos de Matasano están diseñados para enseñar criptografía de forma práctica. El primer set de ejercicios es simple. Implementar Base64 y funciones XOR hasta llegar a AES-128-EBC. Empecemos a resolverlos. Sigue leyendo

Anuncios

Una mirada a SQL (IV)

Para esta miradita repasaremos lo que tenemos. Ya hemos puesto en marcha los servidores SQL y http con php, hemos creado una base de datos, tablar e insertado algunos datos y contreñas seguras. Ahora continuemos con un paso muy sencillo. Rellenemos las bases de datos con mas datos asi que

INSERT INTO base_de_datos.usuarios (id, nick, pass) VALUES
 (NULL, 'pedro', MD5('algunpa$$')),
 (NULL, 'jorge', PASSWORD('0trop4$$'))
 (NULL, 'alguntroll', SHA1('123456'))

Bien como vimos en la leccion pasada podemos usar informacion especifica usando la forma padre.hijo con padre = base de datos e hijo=tabla en este caso. Por lo siguiente dentro de la seccion de valores pasamos los pares de valores (cosas entre parentesis) para cada registe que deseamos hacer, siendo en este caso 3 usuarios. Sigue leyendo

Una mirada a SQL (III)

En la parte anterior creamos nustra base de datos y su estructura basica asi que es momento de usarla. Primero debemos crear un usuario y ese primer usuario como es logico pensar, debe ser el administrador. Para crear datos debemos de usar la sentencia INSERT INTO ….. VALUES …. pasando como parametros la tabla, los campos y los valores asi que a por ello.

INSERT INTO usuarios (nick,pass) VALUES ("admin","root")

Esto no es nada seguro asi que usemos una pequeña funcion para la contraseña que sigue. Esta funcion es nada menos que la famosisima md5(). Asi nuestras proximas contraseñas seran un hash “seguro”, aunque algunos pueden preferir usar cosas como sha-1 y sha-512. Sigue leyendo

Una mirada a SQL (II)

Bien para empezar a trabajar con SQL pedire unos cuantos requisitos. El primero sera la base de datos MySql, un servidor http como Apache con soporte para PHP y el sostema de gestion de base de datos PHPMyAdmin. Estos requisitos se pueden cumplir facilmente en la mayoria de las distribuciones de Linux y en Windows con los paquetes LAMP, uno que recomiendo es el appServer. Una vez instalado y configura entramos a la interfaz de PhpMyAdmin y observamos una parte de la ventana en el lado izquierdo como si fuera un menu y en la derecha la informacion del servidor SQL y muchos datos adicionales que sirven para la administracion. Por el momento nos fijaremos en la parte que dice “Bases de datos” casi al final de la lista.

Al entrar en esta parte podremos ver una lista con las bases de datos que existen y la codificacion de caracteres, este ultimo dato por el momento no nos debe preocupar. En la parte superior vemos la pestaña SQL y la seleccionamos, lo que nos muestra un cuadro de texto para ingresar nuestra consulta y un boton de confirmar para ejecutarla. Sigue leyendo

Una mirada a SQL (I)

SQL es el lenguaje de programacion usado para obtener informacion de las bases de datos relacionales. Al darse a conocer el modelo relacional de bases de datos, aparecio un lenguaje llamado SEQUEL y este continuo su desarrollo hasta convertirse en lo que hoy conocemos como SQL.

Este lenguaje es un lenguaje declarativo de acceso a bases de datos, por lo que no ejecuta codigo. En lugar de eso genera consultas a los registros y devuelve la informacion o realiza las acciones especificadas sin tener una estructura de flujo como cualquier otro lenguaje de programacion. Sigue leyendo

Programacion orientada a objetos

¿Que es un objeto? Una silla, una mesa, una computadora, una casa. Todos los elementos tangentes en el mundo son objetos pero ademas podemos pensar en los numeros como objetos, las ideas, los modelos y cualquier abstraccion mental que se conciba. Para efectos practicos diremos que un objeto es un ente, ya sea fisico o mental, que puede tener propiedades (forma, tamaño, cantidad), estado (vivo, cerrado, marcado) y acciones (correr, pintar, sumar).

Al referirnos a la programacion basada en objetos nos referimos a una forma de programar. No es un lenguaje, no es una caracteristica, no es una plataforma. Es una filosofia propiamente y nos indica la manera en que podemos abstraer nuestras ideas para programar. La programacion es un modelo abstracto del mundo en el que se trate de resolver un problema especifico, el cual puede ser un problema fisico o abstracto. Sigue leyendo

Contribuir en el software libre

Bien puesto que hace un tiempo di una conferencia y no he publicado las diapositivas, decidi mejorar la presentacion y aqui les dejo mi presentacion de contribuir en el software libre en un nuevo formato muy interesante.

Contribuir en el software libre on Prezi

Bien debido a la pesima personalizacion de este blog, solo puedo usar la URL que arriba esta para que vean la presentacion asi que, espero la disfruten.