lunes, 18 de febrero de 2013

Tarea 3.Experimentos de monitoreo WiFi

Para esta semana en clase se nos pidió lo siguiente:

Eligan cada quien un tipo de “ataque” WiFi a realizar de lo mencionado en http://www.sans.org/reading_room/whitepapers/detection/understanding-wireless-attacks-detection_1633 (o similar) en combinación con alguna aplicación en particular.


Bueno yo elegí espiar conversaciones de Fb Chat mediante la página Ebuddy.com

Para realizar esto, utilicé una aplicación llamada WireShark que se utiliza para analizar la red y monitorear los paquetes de las interfaces, en mi caso yo lo hice en la interfaz inalámbrica en1.


Filtre los paquetes ya que son demasiados y no me permitía buscar fácilmente la información que requería, utilicé HTTP contains POST o HTTP contains GET para filtrar.

Mi objetivo era espiar las conversaciones de Facebook pero como la página de Facebook es segura no podía hacerlo directamente desde ahí, así que se me ocurrió meterme a la página de Ebuddy donde puedes ingresar a tu msn, google talk, fb chat, etc.

Al hacer el filtro comencé a hablar por facebook y a iniciar mi búsqueda en los paquetes, al principio pensé que no se iba a poder por ser facebook chat pero la página Ebuddy es insegura así que logré conseguirlo. A continuación les pongo las capturas de pantalla.




Aquí se puede ver donde pude obtener la información del chat de Facebook. y el mensaje que contenía. Realicé el ataque conmigo misma para evitar dañar a terceros y lo hice por medio de mi computadora y la de mi hermano. Este monitoreo puede servir para muchas cosas, también se pueden descifrar algunas contraseñas de logins de páginas web no seguras, detectar que páginas están viendo y con esto también se puede hacer el bloqueo de algunas páginas.

Conclusión:
Estoy segura que hay muchas personas que no saben que muchas de las cosas que realiza por la red pueden ser vistas o atacadas, en cuanto a seguridad creo que debemos saber cuales son los riesgos que pueden haber cuando se encuentra navegando por sitios inseguros como HTTP, como en esta tarea yo creía que no se podían descifrar las conversaciones de Facebook Chat y resultó que por medio de una página donde puedes conectarte si puedes tener acceso a dichas conversaciones. También cuando estuve investigando vi que antes de las últimas versiones de Whatsapp existía un Sniffer para ver las conversaciones de Whatsapp de personas que estuvieran conectadas a tu red.



Laboratorio 3. Técnicas del modelo Conceptual

El diseño contextual se refiere a un método de diseño centrado en el usuario que permite entender de mejor forma el entorno de trabajo de los usuarios y las necesidades que tienen que cumplir los sistemas interactivos que sean desarrollados.

En el diseño contextual se investiga el contexto de uso en el que los desarrolladores se entrevistan con los usuarios que utilizarán el producto para comprender su manera de utilizarlo y trabajar con él. Ej objetivo es captar la empatía del usuario.

H. BEYER y K. HOLTZBLATT son los máximos exponentes del diseño contextual, describen el proceso que dirigen a los equipos de diseño para rediseñar el trabajo de las personas mediante al ayuda de nuevos sistemas de software. 

El diseño Centrado en el Usuario (DCU) es definido por la Usability Professionals Association (UPA) como un enfoque de diseño cuyo proceso se dirige por la información de las personas que hacen uso del producto.

Henry Dreyfuss, autor del libro Designing for people (1955) definió la concepción del diseño como proceso a partir de sus diseños de teléfonos de la serie 500 para Bell Telephones. Este diseñador, pionero del diseño centrado en el usuario, estudió como se construían los teléfonos, como se percibían y eran utilizados por las personas. Sus conclusiones se aplicaron a un nuevo diseño donde se corregían aspectos como la forma, el tamaño, las proporciones o el color.


Proceso


EL DCU es un proceso cíclico en el que las decisiones de diseño son dirigidas por el usuario, y los objetivos que pretende satisfacer el producto, y donde la usabilidad del diseño se evalúa de forma iterativa y se mejora en cada iteración.

A partir de la norma ISO 13407, se puede decir que este proceso consta de 4 fases:


  • Entender y especificar el contexto de uso: Identificar a las personas que utilizarán el producto, para que lo utilizarán y en que condiciones.
  • Especificar los requisitos: Identificar los objetivos del usuario y del proveedor del producto, los cuales deben ser satisfactorios.
  • Producir soluciones de diseño.
  • Evaluación. Fase más importante ya que se validan las soluciones de diseño o se detectan problemas de usabilidad realizando pruebas con los usuarios.





Necesidades del usuario


Las necesidades del usuario son las que motivarán el uso del producto, y estas mismas son las que motivan y condicionan el diseño. La forma de detectar y analizar estas necesidades es por medio de la observación, investigación e indagación del usuario: actividad, entorno y contexto en los que tendría lugar el uso del producto.



Metodologías

El diseño centrado en el usuario se relaciona con un conjunto de técnicas y metodologías que tienen un objetivo común: conocer y comprender las necesidades, limitaciones, comportamiento y características del usuario.

Test de Usuarios 

Esta es la mejor prueba del DCU, ya que es la mejor forma de evaluar la usabilidad de un diseño. Se basan en la observación de cómo un grupo de usuarios llevan a cabo un conjunto de tareas, analizando los problemas de usabilidad con los que se encuentran.

Según Kuniavsky algunos requisitos que deben de cumplir estas tareas son:

  • Ser razonables.
  • Estar descritas en términos de objetivos finales.
  • Ser específicas.
  • Ser factibles.


Con los test de usuarios no sólo se pretende detectar en qué momentos el usuario se equivoca o se detiene durante la realización de la tarea, sino también el porqué: qué es aquello que no entiende o qué le ha llevado a tomar decisiones equivocadas. Una forma de obtener esta información es mediante el protocolo 'think-aloud' o 'pensamiento en voz alta', que consiste en solicitar al participante que exprese verbalmente durante la prueba qué está pensando, qué no entiende, por qué lleva a cabo una acción o duda. 

Un modo de facilitar la tarea de programar actividades en el contexto de proyectos  DCU, es partir de diagramas de Gantt. En estos diagramas de referencia no se detallan los tiempos y fechas de cada actividad, pues no responden a ningún proyecto concreto, pero sí nos ofrecen una visión general del orden cronológico que debe ocupar cada actividad, así como su duración relativa al resto de actividades.

Evaluación Heurística

En esta técnica varios expertos inspeccionan y analizan el diseño en busca de potenciales problemas de usabilidad, comprobando para ello el cumplimiento de principios de diseño usable (principios heurísticos) previamente establecidos. Estos principios de diseño o ‘heurísticas’ son directrices que establecen requisitos que debe cumplir el diseño con el fin de facilitar su comprensión y uso por el usuario final.

Etnografía

La etnografía constituye una rama de estudio de la antropología que busca estudiar y describir científicamente la conducta, el comportamiento, las creencias y las acciones de los usuarios de una sociedad y una cultura específica. El investigador convive con los sujetos de la investigación para comprender, por propia experiencia y observación directa, el ámbito sociocultural donde están inmersos.

Es un campo de estudio que emplea principalmente métodos cualitativos, con el objetivo de ayudarnos a descubrir y comprender el comportamiento social de nuestros usuarios. Sus métodos nos permiten predecir o explicar acciones e interacciones que, de otro modo, podrían quedar aisladas y provocar resultados contrarios a los objetivos propuestos en nuestro sitio.

Documentos de investigación con usuarios

La técnica Persona-Escenario pretende sintetizar la información extraída en etapas de indagación de la audiencia a una serie de documentos (o fichas) que representarían arquetipos de usuarios. Mientras que la identidad de estos personajes es inventada (nombre, fotografía, etc.), la información sobre sus necesidades, motivaciones, actitudes y comportamientos debe esta basada en datos reales extraídos de usuarios potenciales o reales del sitio web a diseñar. Es decir, se trata de arquetipos de usuarios, no de estereotipos. Los personajes suelen contextualizarse con escenarios o descripciones de situaciones de uso concretas.

La función de estos documentos es potenciar en el diseñador la empatía con el usuario final, facilitando la toma de decisiones de diseño centradas en los usuarios representados, y no en suposiciones o ideas vagas acerca del público al que nos dirigimos en el sitio web. 

Referencias.

jueves, 14 de febrero de 2013

Laboratorio 2. Sal y Pimienta

Para esta semana en el laboratorio, se nos pidió realizar el efecto de sal y pimienta en una imagen y luego reducirlo con algún método. 

Sal y Pimienta
Los pasos que seguí para realizar esto son los siguientes:

  1. Para agregar sal y pimienta, establecí una probabilidad de poner puntos negros o blancos en los pixeles.
  2. Recorro los pixeles de la imagen, genero un número random entre 0 y 1 y si este es menor a la probabilidad entonces se crea un punto negro o blanco.
  3. Para establecer si será un punto negro o blanco genere otro numero random entero entre 0 y 1. Si es 0 el punto será negro y si es 1 el punto será blanco.
  4. Agrego los pixeles que cambiaron a la imagen.






Redudir Sal y Pimienta

Los pasos que seguí para realizar esto son los siguientes:

  1. Recorro todos los pixeles y genero una lista con sus vecinos norte, sur, este y oeste, esto en caso de que sea un pixel de en medio, si es de las orillas agrego a la lista el vecino correspondiente. 
  2. Al tener esta lista, la ordeno de forma descendente y obtengo la mediana, es decir cuando ya está ordenada obtengo el número de en medio de la fila, si son dos los de en medio se saca un promedio entre esos dos y ese será la mediana.
  3. En la nueva imagen pongo el resultado de la mediana en el pixel correspondiente.







Bordes
Los pasos que seguí para realizar esto son los siguientes:
  1. Calculo la diferencia de todos los pixeles de la imagen original menos la imagen difusa.
  2. Esta diferencia se la agrego a los pixeles de la nueva imagen. Los bordes se empiezan a notar pero muy tenues.
  3. Al final normalizo la imagen con el fin de hacer los bordes más notables, y al final hago la binarización.









Código:


Link a mi repositorio:
https://github.com/carmensrz/VisionComputacional/blob/master/ruido.py

martes, 12 de febrero de 2013

Laboratorio. Protocolos Alámbricos







Referencias:

http://neo.lcc.uma.es/evirtual/cdd/tutorial/red/ip.html
http://es.kioskea.net/contents/internet/tcp.php3
http://www.agendistas.com/computadoras/ftp-protocolo.html
http://es.wikipedia.org/wiki/File_Transfer_Protocol
http://es.wikipedia.org/wiki/Transmission_Control_Protocol
http://es.wikipedia.org/wiki/User_Datagram_Protocol
http://es.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol

Laboratorio 2. Proyectos emergentes


Audi Garage Pilot

Audi está desarrollando un sistema para conducción pilotada. Este sistema ayuda al conductor a estacionar el vehículo, la maniobra de estacionarse se hace de forma automática sin necesidad de que el conductor se encuentre dentro del vehículo. También a través de una aplicación en un smartphone será posible buscar lugar de estacionamiento, realizar el pago del mismo y hasta reservar servicios adicionales.

El lema de Audi para la conducción pilotada es el siguiente: "Si no quiero conducir, dejaré que el vehículo tome el mando. Si disfruto de la conducción, por ejemplo en una carretera de montaña, entonces el que dirige soy yo".

En un garage, una unidad central de control controla el proceso de estacionamiento pilotado, que establece contacto inalámbrico WLAN con el vehículo para analizar datos necesarios como el tamaño del carro. El ordenador central localiza la zona de parkin más cercana y transmite un mapa esquemático del recorrido del sistema de navegación del vehículo.  

Con esta información, el vehículo se pone en marcha y la dirección electromecánica lo guía a través del garaje a una velocidad entre 5 y 10 km/h. El objetivo es llegar a poder controlar toda la maniobra de forma segura sin tener que realizar actualizaciones técnicas en el vehículo, utilizando sensores de producción en serie ya existentes para identificar su posición, así como un algoritmo que compile una imagen completa de todo el área que rodea al vehículo y la compara con el mapa del recorrido a seguir en el garage.

Aquí un video de como se estaciona el carro de forma automática dentro de un garage.

Emergentes

Más información en el siguiente link:
http://www.vwgroupretail.es/audi/inicio/noticias/articulo/audi-garage-parking-pilot-el-primer-paso-hacia-la-conduccion-pilotada/contenido/998

Conclusión:
Este proyecto es muy interesante pensando en grande ya que cuando nuestro proyecto quede listo, podemos empezar a ver cosas como ver el espacio de la cochera, saber si hay espacio suficiente para estacionar el carro. También es relacionado a nuestro proyecto ya que queremos capturar imágenes de lo que se encuentra alrededor del garage, para saber si alguien más se encuentra estacionado afuera impidiendo el paso.

Abrir el garage a través de los faros del automóvil

LightBee tiene pensado reinventar lo que se puede hacer con la luz. Han desarrollado una tecnología que da nuevas utilidades a cualquier dispositivo que utilice luces LED. El objetivo de esta tecnología es hace que se pueda abrir la puerta del garaje con los faros del coche, o la habitación de un hotel a través del smartphone. 

Se quiere comercializar aplicaciones basadas en una tecnología emergente, la comunicación por luz visible. Permite establecer conexiones inalámbricas de forma segura, sin interferencias ni irradiar información al exterior.

Una de las soluciones que ya se encuentra en proceso es la instalación de LightKey, que permite abrir puertas en su sede, se esta implementando en un establecimiento turístico en la Gomera.  

Esta tecnología basicamente envía unos y ceros conmutando encendido y apagado los LEDs. Según cuáles se utilicen se pueden conseguir las tasas de transferencia que van desde los 6 kilobytes por segundo (suficientes para emitir audio) hasta los 2 megabytes por segundo (suficiente para transmitir imágenes). 

Para más información: (En la página también viene un video del prototipo)

http://www.elcorreo.com/innova/emprendedores/20121130/gloria-eisman-lightbee-201211301909-rc.html

Conclusión:
Esto también puede ser otra forma de comunicación para abrir la puerta del garage, utilizando solamente los faros del automóvil para enviar unos y ceros y poder abrirla. 

Laboratorio 1. Proyectos existentes

X10 Commander

El propósito de este programa es simple, permitir el control de tus dispositivos desde tus dispositivos móviles iOS/Android. Si quiere cerrar el garage mientras esta acostado en su cama o prender los focos de afuera sin tener que bajar a prenderlos, todo esto es para la comodidad de las personas y es posible mediante X10 Commander.

X10 Commander consiste en dos piezas, el servidor que corre en la computadora y el cliente que corre en el dispositivo móvil iOS, Android. La aplicación de la computadora es gratis para descargar, para MacOSX el soporte es dado por el software Thinking Home y Linux/Unix es dado por Heyu.

iOS



La aplicación de la computadora.




El precio de XCommander es de 9.99 doláres, según el fabricante de esta aplicación se pueden controlar hasta 60 elementos de su casta desde el iPhone.

Link para más información:
http://melloware.com/x10commander/

Conclusión:
Esta aplicación es muy útil para comodidad del usuario, una de sus funciones es abrir el garage, esto sirve en nuestro proyecto ya que establece comunicación con la puerta del garage para poder abrirla, utiliza un cliente y un servidor para poder establecer esta comunicación. 

KEYTOP PGS

Este sistema permite verificar si hay lugares disponibles en un estacionamiento,  los componentes del sistema son:
- CCU: Sistema de control central
- ZCU: Sistema de control de zona
- UD: Detector ultrasónico
- Indicador LED: Indicador LED Rojo/Verde
- Pantalla LED: Pantalla LED Exterior/Interior

¿Cómo funciona?
Primero, el UD utiliza las ondas ultrasónicas para detectar el espacio de los carros para ver si está ocupado por algún vehículo y transfiere el mando al indicador rojo cuando esta ocupado, o se queda en verde si está desocupado. También el UD transmite el mensaje de status al ZCU, el cual recolecta la información y se la manda al CCU. El CCU procesa la información y la manda al ZCU y a la pantalla LED.



Los beneficios de este sistema:
- Conductores: reducen el tiempo para buscar estacionamiento y no se frustran cuando no lo encuentran.
- Aumenta la satisfacción del cliente
- Reduce la congestión y el aire contaminado, así como también el estacionamiento ilegal.

El precio es de $50 a $55 dólares.

El link para más información:

Conclusión:
Esta tecnología es más que nada para estacionamientos grandes, pero tal ves en nuestro proyecto pueda ayudar a saber si ya hay carros adentro cuando tu llegas o si tu cochera es grande y caben tres carros para saber cuales lugares están ocupados y así saber donde está libre para estacionarte.

Roper Smartdoor

Esta aplicación es para Android y Blackberry, que se utiliza para abrir la puerta del garage. 

El sistema funciona vinculando la puerta al móvil mediante la lectura de código QR con una aplicación específica, 


Después de tener la configuración solo haciendo click y en un par de segundos la puerta del garage se abrirá vía bluetooth.

Más información

Conclusión:
Esta aplicación es muy parecida al objetivo de nuestro proyecto ya que una de las opciones de nuestro proyecto es hacerla mediante lectura de código QR, vía bluetooth. 

Links de ayuda a equipos:
Cama Inteligente
Intelligent Home Automation System
Carro NFC
Oficina personalizada
Garage Inteligente

Tarea 1. Detección de Bordes

Para esta tarea, se nos pidió aplicar una máscara de convolución a una matriz de pixeles de la imagen.

Por ejemplo, en la siguiente imagen podemos ver como se toma un pixel central (borde rojo) y el área de acción del kernel que son los vecinos (borde verde). El cuadro del medio muestra la máscara(kernel) que se le aplicará a la matriz de pixeles de nuestra imagen y el último cuadro muestra el resultado de la multiplicación de estas dos anteriores, es decir se multiplica el valor de cada uno de ellos por el valor correspondiente del kernel y se hace una sumatoria de los resultados

En este caso por ejemplo sería: (40*0)+(42*1)+(46*0) + (46*0)+(50*0)+(55*0) + (52*0)+(56*0)+(58*0) = 42
El procedimiento que realicé para esta tarea fue el siguiente:

1.- Convertí la imagen original en escala de grises con la subrutina que ya había hecho para el laboratorio.
2.- Apliqué la máscara Sobel horizontal y vertical para la detección de bordes
3.- Normalicé la imagen
4.- Realicé la binarización

Imagenes resultantes:

Original


Escala de grises


Máscara


Binarizado




Original


Escala de grises


Máscara


Binarizado




Original


Escala de grises


Máscara


Binarizado


Los tiempos promedio que tomaron estás imagenes para realizar este procedimiento son:

  • Primera imagen "Taz bebe": 321 x 394 pixeles tardó 4.13 segundos
  • Segunda imagen "Google": 543 x 378 pixeles tardó 6.94 segundos
  • Tercera imagen "Persona": 605 x 792 pixeles tardó 14.9 segundos



Código:


Liga a mi repositorio
https://github.com/carmensrz/VisionComputacional