miércoles, 2 de diciembre de 2015

2.Programación

Arduino:es una plataforma de hardware de código abierto,basada en una sencilla placa con entradas y salidas,analógicas y digitales,en un entorno de desarrollo basado en el lenguaje de programación processing.
Es un dispositivo que conecta el mundo físico y virtual,o el mundo analógico con el digital.Sus creadores son el zaragozano David Cuartielles.ingeniero electrónico y docente de la universidad de Malmo,Suecia y Massimo Banzi.italiano,diseñador y desarrollador Web.El proyecto fue concebido en Italia en el año 2005.

martes, 1 de diciembre de 2015

2. Programación.


Entornos de desarrollo de Sofware

Un entorno de desarrollo de software es una combinación de herramientas que automatiza o soporta al menos una gran parte de la tareas (o fases) del desarrollo: análisis de requisitos, diseño de arquitectura, diseño detallado, codificación, pruebas de unidades, pruebas de integración y validación, gestión de configuración, mantenimiento, etc. Las herramientas deben estar bien integradas, pudiendo interoperar unas con otras.Están formados por el conjunto de instrumentos (hardware, software, procedimientos, ...) que facilitan o automatizan las actividades de desarrollo. En el contexto de esta asignatura se consideran básicamente los instrumentos.

software.

2. Programación

El objetivo de este tema es introducir la verificación y validación del software con énfasis
en las técnicas de verificación estática y en la prueba dinámica de código. Objetivo de este
tema son:
•Comprender la diferencia entre verificación y validación del software.
•Valorar la inspección del software y el análisis estático como métodos de descubrir fallos y
mejorar la calidad del software.
• Conocer las técnicas de pruebas para descubrir fallos en el código.
•Analizar las técnicas específicas para las pruebas de componentes y pruebas de sistemas
orientados a objetos.
•Importancia de las herramientas CASE para la verificación de software y apoyar el
desarrollo de las prueba.
-Verificación y Validación (V&V): Conjunto de procesos de comprobación y
análisis que aseguran que el software que se desarrolla está acorde a su
especificación y cumple las necesidades de los clientes. 
•Validación: ¿Estamos construyendo el producto concreto? La validación es un proceso mas general. Se debe asegurar que el software cumple las expectativas del cliente. Va mas allá de comprobar si el sistema está acorde con su especificación, para probar que el software hace lo que el usuario espera a diferencia de lo que se ha especificado. Es importante llevar a cabo la validación de los requerimientos del sistema de forma inicial.
Técnicas de verificación y validacion
Pruebas del Software: „ Se contrasta dinámicamente la respuesta de prototipos ejecutables del sistema con el comportamiento operacional esperado. „ Técnicas de validación dinámicas => El sistema se ejecuta „ Requiere disponer de prototipo ejecutables, por lo que sólo pueden utilizarse en ciertas fases del proceso.
Proceso de depuración
Proceso de depuración: Proceso que localiza y corrige los errores descubiertos durante la verificación y validación. „ Es un proceso complicado pues no siempre los errores se detectan cerca del punto en que se generaron. „ Se utilizan herramientas de depuración, que facilitan el proceso. Después de reparar el error, hay que volver a probar el sistema (pruebas de regresión). „ La solución del primer fallo puede dar lugar a nuevos fallos.Es un proceso independiente que no tiene porqué estar integrado:
 • La verificación y validación establece la existencia de defectos en el programa. 
• La depuración es el proceso que localiza el origen y corrige estos defectos.

miércoles, 25 de noviembre de 2015

2.Programación.

Entornos de integrados de programación.Características y tipos:

Las actividades mejor soportadas por herramientas de desarrollo son normalmente las centrales: codificación y pruebas de unidades. El conjunto de herramientas que soportan estas actividades constituyen lo que se llama un entorno de programación. A veces se utilizan las siglas IDE (Integrated Development Environment) para designar estos entornos, aunque no son un entorno de desarrollo completo, sino sólo una parte de él.
  • Siguiendo la terminología anterior, de niveles funcionales, es el banco de trabajo del programador.
  • Da soporte a las actividades de la fase de codificación (preparación del código y prueba de unidades).
  • Los mismos productos sirven también para el diseño detallado y para las pruebas de integración.
  • Se sitúa, por tanto, en la parte central del ciclo de desarrollo.

Un entorno de programación puede estar concebido y organizado de maneras muy diferentes:
  • El editor es un editor de texto simple
  • El compilador traduce cada fichero de código fuente a código objeto
  • El montador (linker / builder / loader) combina varios ficheros objeto para generar un fichero ejecutable
  • El depurador maneja información en términos de lenguaje de máquina
  • Un entorno de programación propiamente dicho combina herramientas como éstas, mejoradas y mejor integradas. A veces se nombra con las siglas IDE (Integrated Development Environment).


2.Programación.

Estructura de datos:


En programación, una estructura de datos es una forma particular de organizar datos en una computadora para que pueda ser utilizado de manera eficiente.Diferentes tipos de estructuras de datos son adecuados para diferentes tipos de aplicaciones, y algunos son altamente especializados para tareas específicas.Las estructuras de datos son un medio para manejar grandes cantidades de datos de manera eficiente para usos tales como grandes bases de datos y servicios de indización de Internet. Por lo general, las estructuras de datos eficientes son clave para diseñar eficientes algoritmos. Algunos métodos formales de diseño y lenguajes de programación destacan las estructuras de datos, en lugar de los algoritmos, como el factor clave de organización en el diseño de software.

2. Programación.

¿Qué es un diagrama de flujo?

Un diagrama de flujo es una representación gráfica de un proceso. Cada paso del proceso es representado por un símbolo diferente que contiene una breve descripción de la etapa de proceso. Los símbolos gráficos del flujo del proceso están unidos entre sí con flechas que indican la dirección de flujo del proceso.El diagrama de flujo ofrece una descripción visual de las actividades implicadas en un proceso mostrando la relación secuencial ente ellas, facilitando la rápida comprensión de cada actividad y su relación con las demás, el flujo de la información y los materiales, las ramas en el proceso, la existencia de bucles repetitivos, el número de pasos del proceso, las operaciones de interdepartamentales… Facilita también la selección de indicadores de proceso



2.Programación

Programación orientada a objetos:

La programación orientada a objetos (POO, u OOP según sus siglas en inglés) es un paradigma de programación que usa objetos en sus interacciones, para diseñar aplicaciones y programas informáticos.
Está basada en varias técnicas, incluyendo herencia, cohesión, abstracción, polimorfismo, acoplamiento y encapsulamiento.
Su uso se popularizó a principios de la década de 1990. En la actualidad, existe una gran variedad de lenguajes de programación que soportan la orientación a objetos.Estos son algunos de los conceptos fundamentales:
-Objeto:Instancia de una clase. Entidad provista de un conjunto de propiedades o atributos (datos) y de comportamiento o funcionalidad (métodos), los mismos que consecuentemente reaccionan a eventos. Se corresponden con los objetos reales del mundo que nos rodea, o con objetos internos del sistema (del programa). Es una instancia a una clase.
-Clase: Definiciones de las propiedades y comportamiento de un tipo de objeto concreto. La instanciación es la lectura de estas definiciones y la creación de un objeto a partir de ella.
-Atributos: Características que tiene la clase.
-Métodos: Algoritmos asociados a un objeto (o a una clase de objetos), cuya ejecución se desencadena tras la recepción de un "mensaje". Desde el punto de vista del comportamiento, es lo que el objeto puede hacer. Un método puede producir un cambio en las propiedades del objeto, o la generación de un "evento" con un nuevo mensaje para otro objeto del sistema.
Lenguaje C:  es un lenguaje de programación orientado a la implementación de Sistemas Operativos, concretamente Unix. C es apreciado por la eficiencia del código que produce y es el lenguaje de programación más popular para crear software de sistemas, aunque también se utiliza para crear aplicaciones.




lunes, 23 de noviembre de 2015

3. Seguridad.

Privacidad en la red.

Identidad digital y fraude.

Identidad digital:La identidad digital consiste básicamente en una serie de datos que identifican a una única persona, y que contienen información sobre su relación con empresas y su comportamiento en la red.


El problema se origina cuando hay que establecer la conexión entre la identidad digital y la identidad física de la persona, sobre todo con la finalidad de prevenir fraudes online. La validación de esta identidad digital, es decir, que la persona sea quien dice ser, requiere bien que alguien la valide de forma manual, bien que haya un sistema automático de verificación de la identidad online asociado al proceso.

La seguridad de esta identidad se establece durante el proceso de registro y autenticación, ya sea por ejemplo a la hora de comprar en un e-commerce, al reservar un vuelo o al hacer una transacción en nuestra banca online.
La identidad digital se basa en tres factores: la verificación de la identidad, los datos personales, y la autenticación.
Por ejemplo, para un usuario es clave tener la seguridad de que los datos personales que ha proporcionado están a salvo, y que no podrá acceder a ellos ninguna persona no autorizada. Para la empresa, es fundamental poder garantizar que los datos son reales, es decir, que la persona es quien dice ser cuando se registra, que se almacenen los datos personales de forma segura, y que pueda verificar la identidad en accesos posteriores de la persona a su cuenta para que no se produzca una suplantación de identidad.

                                  


FraudePara proteger nuestro equipo en cuanto a la identidad digital en internet, hay que tener en cuenta que no todo lo que esta en internet es real. Y, al igual que no es toda la información real , tampoco lo son las identidades que deambulan por la red. Hay que ser muy precavidos a la hora de dar datos personales a gente que podemos encontrar por internet, ya que puede que no estemos hablando con quien realmente creemos y podamos dar lugar a un fraude. El fraude informático se puede dar muchas veces por esto, con gente suplantando a otras personas o incluso. Llegando a crear un personaje inexistente.


Hay muchos tipos de fraudes en internet, y estos son algunos ejemplos:

+Falsas páginas web: Pueden suplantar entidades en las que el usuario confía, para realizar, por ejemplo, actos de phishing
+Bulos: Falsas historias o leyendas urbanas que intenta conmover al usuario para que aporte dinero a la causa
+Cartas nigerianas: Correos en los que se ofrece una gran suma de dinero al usuario sin razón aparente.
+Mulas: Se le ofrece al usuario el trabajo de cobrar por realizar transferencias bancarias, siendo un timo y provocando que el usuario se vea involucrado en un delito por blanqueo de dinero

+Estafa piramidal: Ofrecen un trabajo falso que necesita una tasa de iniciación, y en vez de cobrar más por las ventas, cobras más cuantos más socios capten los iniciados.



Firma electrónica.

La firma electrónica es un conjunto de datos electrónicos que acompañan o que están asociados a un documento electrónico y cuyas funciones básicas son:
-Identificar al firmante de manera inequívoca.
-Asegurar la integridad del documento firmado. Asegura que el documento firmado es exactamente el mismo que el original y que no ha sufrido alteración o manipulación.
-Asegurar la integridad del documento firmado. Los datos que utiliza el firmante para realizar la firma son únicos y exclusivos y, por tanto, posteriormente, no puede decir que no ha firmado el documento.

3. Seguridad.

Vídeo explicativo.


3. Seguridad.


Protocolos seguros de interconexión.

SSL.

SSL significa "Secure Sockets Layer". SSL Definición, Secure Sockets Layer es un protocolo diseñado para permitir que las aplicaciones para transmitir información de ida y de manera segura hacia atrás. Las aplicaciones que utilizan el protocolo Secure Sockets Layer sí sabe cómo dar y recibir claves de cifrado con otras aplicaciones, así como la manera de cifrar y descifrar los datos enviados entre los dos.
¿Cómo funciona el SSL? Algunas aplicaciones que están configurados para ejecutarse SSL incluyen navegadores web como Internet Explorer y Firefox, los programas de correo como Outlook, Mozilla Thunderbird, Mail.app de Apple, y SFTP (Secure File Transfer Protocol) programas, etc Estos programas son capaces de recibir de forma automática SSL conexiones.

Para establecer una conexión segura SSL, sin embargo, su aplicación debe tener una clave de cifrado que le asigna una autoridad de certificación en la forma de un Certificado. Una vez que haya una única clave de su cuenta, usted puede establecer una conexión segura utilizando el protocolo SSL.


HTTPS.

El protocolo de Transferencia de Hiper-Texto (HTTPS) es la versión segura de el http (Hyper Text Transfer Protocool) que todos conocemos y utilizamos habitualmente. La diferencia es que, con HTTPS podemos desarrollar actividades de comercio electronico (e commerce), ya que permite realizar transacciones de forma segura.
En los navegadores comunes, como Firefox o Explorer, cuando estamos empleando un protocolo https podemos ver el icono de un candado, que aparece en la barra principal de nuestro navegador.Además, en la barra de direcciones podremos ver que “http://” será sustituido por “https://”.
¿Y cómo funciona la conexión exactamente? ¿Por qué es más segura? Básicamente, lo que ocurre es que la página Web codifica la sesión con certificado digital. De este modo, el usuario tiene ciertas garantías de que la información que envíe desde dicha página no podrá ser interceptada y utilizada por terceros.
Estos certificados de seguridad son conocidos como SSL.



IPV6.

IPv6 es la abreviatura de "Versión 6 del Protocolo de Internet". IPv6 es el protocolo de Internet de última generación que se ha diseñado para sustituir al protocolo de Internet actual: la Versión 4 del Protocolo de Internet.
Para poder comunicarse a través de Internet, los ordenadores y otros dispositivos deben tener direcciones de emisor y receptor. A estas direcciones numéricas se las conoce como direcciones del Protocolo de Internet. A medida que Internet y el número de personas que lo utilizan crecen exponencialmente, crece también la necesidad de contar con direcciones IP.
IPv6 permite que un mayor número de usuarios y dispositivos se comuniquen a través de Internet utilizando números de mayor tamaño para crear direcciones IP. En el protocolo IPv4, cada dirección IP se compone de 32 bits, lo que permite la existencia de 4300 millones de direcciones únicas. A continuación encontrarás un ejemplo de dirección IPv4
En comparación, las direcciones IPv6 se componen de 128 bits, lo que permite la existencia de aproximadamente 340 billones de direcciones IP únicas. A continuación encontrarás un ejemplo de dirección IPv6



Certificados digitales.

Un certificado digital' o certificado electrónico es un fichero informático generado por una entidad de servicios de certificación que asocia unos datos de identidad a una persona física, organismo o empresa confirmando de esta manera su identidad digital en Internet. El certificado digital es válido principalmente para autenticar a un usuario o sitio web en internet por lo que es necesaria la colaboración de un tercero que sea de confianza para cualquiera de las partes que participe en la comunicación. El nombre asociado a esta entidad de confianza es Autoridad Certificadora pudiendo ser un organismo público o empresa reconocida en Internet.
El certificado digital tiene como función principal autenticar al poseedor pero puede servir también para cifrar las comunicaciones y firmar digitalmente. En algunas administraciones públicas y empresas privadas es requerido para poder realizar ciertos trámites que involucren intercambio de información sensible entre las partes.

Autoridades de certificación.

Una autoridad de certificación, certificadora o certificante es una entidad de confianza, responsable de emitir y revocar los certificados digitales o certificados, utilizados en la firma electrónica, para lo cual se emplea la criptografía de clave pública. Jurídicamente es un caso particular de Prestador de Servicios de Certificación.



jueves, 19 de noviembre de 2015

3. Seguridad.


Conectividad de redes locales de forma segura a internet.



Dispositivos de hardware y software de interconexión.


Router.

Es un dispositivo de hardware para interconexión de red de ordenadores que opera en la capa tres (nivel de red). Un enrutador es un dispositivo para la interconexión de redes informáticas que permite asegurar el enrutamiento de paquetes entre redes o determinar la mejor ruta que debe tomar el paquete de datoscortafuegos corporativos.)



Switch

Un conmutador o Switch es un dispositivo digital de lógica de interconexión de redes de computadores que opera en la capa 2 (nivel de enlace de datos) del modelo OSI. Su función es interconectar dos o más segmentos de red, de manera similar a los puentes (bridges), pasando datos de un segmento a otro de acuerdo con la dirección MAC de destino de las tramas en la red.
Los conmutadores se utilizan cuando se desea conectar múltiples redes, fusionándolas en una sola. Al igual que los puentes, dado que funcionan como un filtro en la red, mejoran el rendimiento y la seguridad de las Red de Área Local.FUNCIÓN:Interconecta dos o más segmentos de red, funcionando de manera similar a los puentes (bridges), pasando datos de un segmento a otro, de acuerdo con la dirección MAC de destino de los datos de la trasmisión de velocidad en la red.) 



Hub

El hub es un dispositivo que tiene la función de interconectar las computadoras de una red local. Su funcionamiento es más simple comparado con el Switch y el router:
El hub recibe datos procedentes de una computadora, los transmite a los demás. En el momento en que esto ocurre, ninguna otra conmutadora puede enviar una señal. Su liberación surge después que la señal anterior haya sido completamente distribuida.
En un hub es posible tener varios puertos, o sea, entradas para conectar los cable de red de cada computadora. Generalmente, hay hubs con 8, 16, 24 y 32 puertos. La cantidad varía de acuerdo con el modelo, el fabricante del dispositivo.
Si el cable de una máquina es desconectado o presenta algún defecto, la red no deja de funcionar.
Actualmente, los hub están siendo reemplazados por los switchs, debido a la pequeña diferencia de costos entre ambos.



Cortafuegos corporativos.


En el entorno de redes de ordenadores, un cortafuegos es un sistema de contención que intenta impedir la diseminación de daños a través suyo. Físicamente, un cortafuegos de Internet es un sistema o grupo de sistemas informáticos situados en el perímetro de una red para proteger todas sus vías de acceso estableciendo un control del tráfico de entrada y salida. La podemos asemejar a una aduana, que vigila todo lo que la atraviesa, decidiendo qué puede o no atravesarla y bajo qué condiciones. Por consiguiente, un cortafuegos sólo protege contra la diseminación de los ataques derivados de accesos públicos, es decir, sólo puede controlar el tráfico que pasa a través de él.
Desde el punto de vista de las funciones, el cortafuegos tiene una doble misión:

  • Bloquear el tráfico proveniente de direcciones no autorizadas o que acceden aplicaciones restringidas.
  • Permitir el flujo de tráfico de las operaciones legales.




lunes, 16 de noviembre de 2015

3. Seguridad.

Seguridad informática y protección de datos.


-Seguridad informática.

 

La seguridad informática consiste en asegurar en que los recursos del sistema de información de una organización se utilizan de la manera que se decidió y que el acceso a la información allí contenida así como su modificación solo sea posible a las personas que se encuentren acreditadas y dentro de los limites de su autorización.


-Ley de protección de datos.



La Ley de Protección de Datos obliga a adoptar medidas preventivas de seguridad: copias de seguridad, auditorias para controlar el estado de las bases de datos,… con el único objetivo de proteger y preservar los datos personales de los usuarios.

El tipo de medidas de seguridad dependerá de la relevancia de los datos que tienes recopilados. Existen 3 tipos de medidas de seguridad:
- Nivel básico. Los ficheros contienen datos como el nombre, los apellidos, la dirección, el teléfono.
-Nivel medio. Cuando tratamos datos relacionados con servicios financieros, infracciones administrativas, infracciones penales, datos de la Hacienda Pública, o datos de ficheros de solvencia patrimonial o de crédito.
-Nivel alto. Solo aplicable cuando se trata de ficheros que contienen datos de carácter personal referentes a ideología, religión, creencias, afiliación sindical, origen racial o étnico, vida sexual, o datos relativos a la salud.

Seguridad activa y pasiva.

Para proteger nuestros sistemas hemos de realizar una análisis de las amenazas potenciales, las perdidas que podrían generar y la probabilidad de si ocurrencia a partir de este análisis hemos de diseñar una política de seguridad que defina responsabilidades y reglas a seguir para evitar tales amenazas o minimizar sus efectos en caso de que se produzcan, a esto se le llama mecanismo de seguridad, son la herramienta básica para garantizar la protección de los sistemas o la red. Estos mecanismo se pueden clasificar en activas o pasivas.

-Activas: evitan daños en los sistemas informáticos mediante empleo de contraseñas adecuadas en el acceso a sistemas y aplicaciones, encriptación de los datos en las comunicaciones, filtrado de conexiones en redes y el uso de software especifico en seguridad informática.


-Pasiva: minimizan el impacto y los efectos causados por accidentes mediante uso de hardware adecuado, protección física, eléctrica y ambiental, realización de copias de seguridad.



Contramedias ante riesgo.

La contramedida representa todas las acciones que se implementan para prevenir la amenaza.
Las contramedidas que deben implementarse no sólo son soluciones técnicas, sino también reflejan la capacitación y la toma de conciencia por parte del usuario, además de reglas claramente definidas.

Para que un sistema sea seguro, deben identificarse las posibles amenazas y por lo tanto, conocer y prever el curso de acción del enemigo. Por tanto, el objetivo de este informe es brindar una perspectiva general de las posibles motivaciones de los hackers, categorizarlas, y dar una idea de cómo funcionan para conocer la mejor forma de reducir el riesgo de intrusiones.




Antivirus y cortafuegos personales.


-Antivirus Los antivirus son aplicaciones de software que han sido diseñados como medida de protección y seguridad para resguardar los datos y el funcionamiento de sistemas informáticos caseros y empresariales de aquellas otras aplicaciones conocidas comúnmente como virus o malware que tienen el fin de alterar, perturbar o destruir el correcto desempeño de las computadoras. Como nuevos virus se crean en forma casi constante, siempre es preciso mantener actualizado el programa antivirus, de forma de que pueda reconocer a las nuevas versiones maliciosas. Así, el antivirus puede permanecer en ejecución durante todo el tiempo que el sistema informático permanezca encendido, o bien, registrar un archivo o serie de archivos cada vez que el usuario lo requiera. Normalmente, los antivirus también pueden revisar correos electrónicos entrantes y salientes y sitios web visitados.





-Cortafuegos: Un antivirus puede complementarse con otras aplicaciones de seguridad como los cortafuegos que se trata de un dispositivo o conjunto de dispositivos configurados para permitir, limitar, cifrar, descifrar, el tráfico entre los diferentes ámbitos sobre la base de un conjunto de normas y otros criterios. como firewalls o anti-spyware que cumplen funciones accesorias para evitar el ingreso de virus.

Los virus, gusanos, troyanos, spyware son tipos de programas informáticos que suelen ejecutarse sin el consentimiento (e incluso, conocimiento) del usuario o propietario de un ordenador y que cumplen diversas funciones dañinas para el sistema. Entre ellas, robo y pérdida de información, alteración del funcionamiento, disrupción del sistema y propagación hacia otras computadoras.