Luis Antonio Castro Cortés
martes, 27 de octubre de 2015
Atento aviso
Hola a todos, bien desde hoy cambiaré un poco la dinámica de este blog, ya no será solamente de temas de programación, igual me dedicaré a algunos temas relacionados al nivel medio superior y tal vez superior especializándome en el área tecnológica e informática, bien, lo haré para ayudar, gracias y pronto vendré publicando los nuevos temas de este blog.
sábado, 4 de abril de 2015
SOA, SOAP, RPC, WSDL, REST, web service, XML, JSON, WPF, WCS
A partir de esta entrada serán más informales, ya que antes eran para calificación escolar, aun así, trataré de publicar lo que vaya aprendiendo a lo largo de este semestre
SOA
SOAP
RPC
WSDL
REST
Web Service
XML
JSON
WPF
WCS
SOA
¿Qué es?
Es
un paradigma de arquitectura para diseñar sistemas distribuidos.
Satisface
objetivos de negocios los cuales son
fáciles y flexibles al momento de la integración de sistemas con legados,
lineación directa a los procesos de negocios, innovación de artículos a
clientes y adaptación ágil ante cambios.
¿Cómo Funciona?
Funciona
proporcionando una metodología y un marco de trabajo para documentar las
capacidades de negocio y puede dar soporte a las actividades de integración y
consolidación, que permite la creación de sistemas de información altamente
escalables que reflejan el negocio de al organización, a su vez brinda una
forma bien definida de exposición e innovación de los servicios, facilitando la
interacción entre los servicios
SOAP
¿Qué es?
Es
un protocolo que define como dos objetos en diferentes procesos se pueden
comunicar intercambiando datos XML.
¿Cómo funciona?
Funciona
a través de una comunicación entre SOAP Sender y SOAP Reciver, esta
comunicación se lleva a cabo en nodos que varían según el rol que desempeñen.
Los nodos son:
RPC
¿Qué es?
Es
un protocolo que permite que un programa de ordenador ejecute código en una
máquina remota sin tener que preocuparse por las comunicaciones entre ambos.
¿Cómo funciona?
Inicia
con el envio de unapetición por el cliente al servidor y se queda a la espera
de un tiempo determinado, en caso de que la respuesta no llegue la ejecución
continua, en caso de que falle el cliente no sabe el porqué de ese error.
WSDL
¿Qué es?
Es
una interfaz pública a los servicios Web, este describe la forma de
comunicación, es decir los requisitos del protocolo y los formatos de los
mensajes necesarios para interactuar con los servicios listados en su catálogo
¿Cómo funciona?
Funciona por medio de protocolos. Funciona por medio de archivos XML con una estructura ya determinada. Estos se componen por una colección de puertos, un puerto con una definición abstracta (tipo de puerto) y otro con una definición concreta (lazo), los puertos funcionan como la interfaz del software, y componen diferentes operaciones que son las que definen los intercambios de mensajes, los lazos son los protocolos para cada puerto y el mensaje es el tipo de dato enviado.
REST
¿Qué es?
Es
una técnica de arquitectura de software para sistemas hipermedia distribuidos,
aunque también se refiere a un conjunto de principios de arquitectura
¿Cómo funciona?
Funciona
a través de mensajes del cliente hacia el servidor donde envía la información
necesaria para comprender la petición del cliente.
Web Service
¿Qué es?
Es
una tecnología que utiliza un conjunto de protocolos y estándares que sirven
para intercambiar datos entre aplicaciones
¿Cómo funciona?
Este
funciona mediante una aplicación del cliente vinculada con una comunicación
SOAP y/o WSDL que comunica al servicio web, este último transmite los datos del
usuario al servicio solicitado comunicado de igual manera con SOAP o WSDL.
XML
¿Qué es?
Es
un lenguaje de marcas que se utiliza para almacenar datos de forma legible
¿Cómo funciona?
Este
funciona a partir de etiquetas similares a las de html, solo que, aquí, el
usuario define las etiquetas a su gusto.
JSON
¿Qué es?
Es
un subconjunto de la notación literal de objetos de JavaScript que no requiere
el uso de XML.
¿Cómo funciona?
Funciona
mediante objetos y variables haciendo uso de javascript.
WPF
¿Qué es?
Es
un modelo de programación unificado con el que compilar experiencias de cliente
inteligentes de Windows, incorpora la interfaz de usuarios, multimedia y
documentos.
¿Cómo funciona?
Desarrolla
aplicaciones visuales atractivas por medio el lenguaje XAML, lenguajes de
programación de “.net” y con la arquitectura del modelo vista controlador para
el desarrollo de estas.
WCS
¿Qué es?
Es
una tecnología que sale junto con el “.net Framework 3.0”, este provee a los
usuarios un servicio de privacidad digital.
¿Cómo funciona?
Funciona
a través del manejo de las identidades digitales en la red, haciendo que cada
uno maneje un token de seguridad que expresa la información de dicha identidad
en un conjunto de bytes.
Disculpen la tardanza, no había tenido demasiado tiempo para completarlo.
Disculpen la tardanza, no había tenido demasiado tiempo para completarlo.
jueves, 26 de febrero de 2015
Websocket
Introducción
Los websockets son una tecnología que tiene un canal bidireccional y full-duplex, es decir, que puede enviar y recibir datos de manera simultanea (como los hilos en un socket normal), que se aplica a un socket normal. Este esta diseñado principalmente para emplearse en navegadores y servidores web, aunque, como todas las tecnologías de este tipo, se pueden implementar en las aplicaciones de cliente servidor.
Desarrollo
Los websockets son dirigidos a las aplicaciones en tiempo real, de esta manera el usuario de entera de lo que sucede en el sistema en el momento que el usuario esta usándolo. La mayoría de las aplicaciones que los usan (o los usaban en la mayoría de las aplicaciones) son juegos multijugador, aplicaciones de monitorización, chats, herramientas de trabajo colaborativo entre otras más.
Este tipo de aplicaciones solo permite una comunicación cliente servidor en tiempo real, por lo que, si se intenta una comunicación con algún usuario que no esté disponible en ese momento la comunicación podrá no fallar, pero no será la adecuada para lo que el cliente necesita, el ejemplo más sencillo de este tipo de aplicaciones es un chat, si no hay algún "cliente" y el servidor envía mensajes, el cliente a quien van dirigidos no serán recibidos y solo serán recibidos si este esta conectado al servidor en ese momento.
Conclusión
Los websockets son aplicaciones útiles en tiempo real para la comunicación cliente-servidor, el inconveniente de estos son si uno intenta comunicarse de forma urgente con un usuario y este no está en ese momento.
Los websockets son una tecnología que tiene un canal bidireccional y full-duplex, es decir, que puede enviar y recibir datos de manera simultanea (como los hilos en un socket normal), que se aplica a un socket normal. Este esta diseñado principalmente para emplearse en navegadores y servidores web, aunque, como todas las tecnologías de este tipo, se pueden implementar en las aplicaciones de cliente servidor.
Desarrollo
Los websockets son dirigidos a las aplicaciones en tiempo real, de esta manera el usuario de entera de lo que sucede en el sistema en el momento que el usuario esta usándolo. La mayoría de las aplicaciones que los usan (o los usaban en la mayoría de las aplicaciones) son juegos multijugador, aplicaciones de monitorización, chats, herramientas de trabajo colaborativo entre otras más.
Este tipo de aplicaciones solo permite una comunicación cliente servidor en tiempo real, por lo que, si se intenta una comunicación con algún usuario que no esté disponible en ese momento la comunicación podrá no fallar, pero no será la adecuada para lo que el cliente necesita, el ejemplo más sencillo de este tipo de aplicaciones es un chat, si no hay algún "cliente" y el servidor envía mensajes, el cliente a quien van dirigidos no serán recibidos y solo serán recibidos si este esta conectado al servidor en ese momento.
Conclusión
Los websockets son aplicaciones útiles en tiempo real para la comunicación cliente-servidor, el inconveniente de estos son si uno intenta comunicarse de forma urgente con un usuario y este no está en ese momento.
RMI
Introducción
RMI (Remote Method Invocation) es un mecanismo de Java que, como su nombre en inglés lo indica, llama métodos de manera remota.
RMI se caracteriza por la facilidad de su uso en la programación por estar específicamente diseñado para Java
Desarrollo
Es parte de un estándar de ejecución de Java y proporciona un mecanismo simple para la comunicación de servidores en aplicaciones distribuidas basadas exclusivamente en Java.
Con este método se crean aplicaciones distribuidas en el que los métodos de los objetos creados en Java se puedan invocar desde máquinas virtuales y hasta en hosts. Los RMI serializan los objetos para reunir parámetros que apoyen el polimorfísmo de los objetos.
En un RMI se crea un STUB (sustituto de alguna funcionalidad de código) y un esqueleto. En las aplicaciones RMI el servidor contará con los STUBs y con los esqueletos, mientras que el usuario tendrá la clase que llama esas clases para que funcionen de manera correcta.
Conclusión
Las aplicaciones RMI son aplicaciones que llaman objetos de manera remota, osea, visto desde el esquema cliente servidor, el cliente llama al servidor y el servidor le responde con un objeto, este objeto posteriormente es devuelto y convertido en algun parametro que el usuario desea.
RMI (Remote Method Invocation) es un mecanismo de Java que, como su nombre en inglés lo indica, llama métodos de manera remota.
RMI se caracteriza por la facilidad de su uso en la programación por estar específicamente diseñado para Java
Desarrollo
Es parte de un estándar de ejecución de Java y proporciona un mecanismo simple para la comunicación de servidores en aplicaciones distribuidas basadas exclusivamente en Java.
Con este método se crean aplicaciones distribuidas en el que los métodos de los objetos creados en Java se puedan invocar desde máquinas virtuales y hasta en hosts. Los RMI serializan los objetos para reunir parámetros que apoyen el polimorfísmo de los objetos.
En un RMI se crea un STUB (sustituto de alguna funcionalidad de código) y un esqueleto. En las aplicaciones RMI el servidor contará con los STUBs y con los esqueletos, mientras que el usuario tendrá la clase que llama esas clases para que funcionen de manera correcta.
Conclusión
Las aplicaciones RMI son aplicaciones que llaman objetos de manera remota, osea, visto desde el esquema cliente servidor, el cliente llama al servidor y el servidor le responde con un objeto, este objeto posteriormente es devuelto y convertido en algun parametro que el usuario desea.
martes, 24 de febrero de 2015
Certificado Digital, funcionamiento del certificado en una página web
Introducción
El certificado digital, también conocido como certificado digital, se genera en entidades de servicios de certificación que asocia.
Un certificado digital es una forma digital de identificación, como un pasaporte o el permiso de conducir. Un certificado digital es una credencial digital que proporciona información acerca de la identidad de una entidad, así como otra información auxiliar.
Desarrollo
Los certificados digitales los emiten las autoridades competentes, denominadas entidades emisoras de certificados. Como un certificado digital está emitido por una entidad emisora de certificados, dicha entidad garantiza la validez de la información contenida en el certificado. Además, un certificado digital sólo es válido durante un período específico de tiempo.
Los certificados digitales permiten la criptografía mediante claves públicas, ya que contienen la clave pública de la entidad identificada en el certificado. Como el certificado hace coincidir una clave pública con un individuo determinado y la autenticidad de ese certificado está garantizada por el emisor, el certificado digital aporta una solución al problema de cómo averiguar la clave pública de un usuario y saber que es válida. Estos problemas se resuelven cuando un usuario obtiene la clave pública de otro usuario a partir del certificado digital. El usuario sabe que es válida porque una entidad emisora de confianza ha emitido el certificado.
Además, los certificados digitales se basan en la criptografía mediante claves públicas para su propia autenticación. Cuando se emite un certificado digital, la entidad emisora firma el certificado con su propia clave privada. Para validar la autenticidad de un certificado digital, un usuario puede obtener la clave pública de dicha entidad emisora y utilizarla sobre el certificado para determinar si fue firmado por esa entidad emisora.
Para que un certificado digital sea útil, tiene que estar estructurado de una forma comprensible y confiable, de manera que la información contenida en el certificado se pueda recuperar y entender fácilmente. Por ejemplo, los pasaportes tienen una estructura similar que permite a la gente entender fácilmente la información contenida en un tipo de pasaporte que quizás nunca hayan visto antes. Del mismo modo, siempre y cuando los certificados digitales estén estandarizados, se pueden leer y entender independientemente que quién emitiera el certificado.
Conclusión
Los certificados digitales autentican que una página web es segura, aunque, es un tanto facil corromperla, pues, como hay personas de por medio, pueden dar el certificado así la página no cumpla con lo requerido. Los certificados permiten la criptogafía en los sitios web, por lo que, dan la fiabilidad de que la información que circula el el sitio estará protegida.
lunes, 16 de febrero de 2015
Diferencias entre la certificación y firma digital y examen seguridad web y aplicaciones, tambien el significado de https
Examen
1.-¿Cuáles son las diferencias entre el cifrado asimétrico y el cifrado simétrico? (4 diferencias)
a)El cifrado simétrico usa una clave secreta, el asimétrico usa una clave privada y otra pública.
b)El resultado simétrico da un texto cifrado de la misma longitud, el asimétrico da un texto cifrado de mayor longitud.
c)La seguridad del cifrado simétrico radica en la clave secreta, en el asimétrico radica en la confidencialidad de la clave privada.
d)El cifrado simétrico es rápido en cifrar, mientras que el asimétrico es lento y requiere un proceso bastante amplio
2.-¿Cuáles son las diferencias entre la autenticación y el cifrado asimétrico? (todas)
-La autenticación cifra con la calve privada y se descifra con la clave pública, en el cifrado es al revés.
Certificación y firma digital y definición de https
Introducción
Empecemos definiendo ambos términos...
Certificación: Es el comprobante de que alguna página es segura o cumple con ciertas normas que hacen más convincente la garantía del proveedor. Esta es realizada por terceros, aun así, esto no garantiza la imparcialidad o la ausencia de incompatibilidades o conflictos de interés.
Firma digital: Este es un servicio digital que identifica a la empresa o al usuario permitiendo le realizar algun trámite o cumplir con un proceso adecuado y verídico, dando a entender que la persona es quien realiza dicho proceso, en pocas palabras es un método de autenticación.
https: Significa "Hypertext Transfer Protocol Secure", esta es una combinación entre el protocolo http y protocolos criptográficos que se emplea para lograr que las conexiones en el www (world wide web) sean más seguras.
Desarrollo
Tanto la certificación como la firma digital son métodos de seguridad y atienden varias funciones importantes en la seguridad, la confidencialidad, la integridad y la autenticación.
La firma digital hace el uso de un cifrado asimétrico, mientras que los certificados son documentos digitales que verifican ambas claves (la pública y la privada) que son usadas para la autenticación.
El certificado salvaguarda la seguridad y fiabilidad de las firmas digitales, pues sin este una firma digital puede ser falsificada fácilmente.
La firma digital verifica la integridad del mensaje transmitido comprobando la identidad del remitente. Este garantiza la confidencialidad de la información transmitida mediante el empleo de un algoritmo para codificar el mensaje transmitido.
Pata https...
El uso principal de esto es en las transacciones monetarias o cuando se trata con información "sensible" que su mal uso afectará a quien la envía.
Este tipo de protocolo más seguro hace menos probable que la información sea captada por un tercero, o si es captada esta le será muy difícil obtener lo enviado, pues esta cifrada.
Se han empleado varios sistemas de cifrado en este protocolo, iniciando por el SSL, posteriormente sustituido por el TLS.
Este trabaja en la penultima capa del protocolo TCP/IP
Conclusión
La firma digital depende de la certificación para ser fiable, pero para que este se obtenga se debe demostrar que el sitio es seguro, aun así, ambas tienen casi la misma función, lo que las diferencia es la forma de obtenerlas, la certificación es por terceros y la firma es por un cifrado asimétrico
Para el https se puede decir que es un sistema de seguridad que no solo maneja cifrados, de igual manera maneja control de enrutamiento para que el dato (no se si peda ser reelevante para mi, por eso manejo dato en lugar de información) sea difícilmente obtenible, en caso contrario, este estará fuertemente cifrado. Este protocolo se lleva a cabo para proteger datos que nos son útiles en muchos ambitos.
1.-¿Cuáles son las diferencias entre el cifrado asimétrico y el cifrado simétrico? (4 diferencias)
a)El cifrado simétrico usa una clave secreta, el asimétrico usa una clave privada y otra pública.
b)El resultado simétrico da un texto cifrado de la misma longitud, el asimétrico da un texto cifrado de mayor longitud.
c)La seguridad del cifrado simétrico radica en la clave secreta, en el asimétrico radica en la confidencialidad de la clave privada.
d)El cifrado simétrico es rápido en cifrar, mientras que el asimétrico es lento y requiere un proceso bastante amplio
2.-¿Cuáles son las diferencias entre la autenticación y el cifrado asimétrico? (todas)
-La autenticación cifra con la calve privada y se descifra con la clave pública, en el cifrado es al revés.
Certificación y firma digital y definición de https
Introducción
Empecemos definiendo ambos términos...
Certificación: Es el comprobante de que alguna página es segura o cumple con ciertas normas que hacen más convincente la garantía del proveedor. Esta es realizada por terceros, aun así, esto no garantiza la imparcialidad o la ausencia de incompatibilidades o conflictos de interés.
Firma digital: Este es un servicio digital que identifica a la empresa o al usuario permitiendo le realizar algun trámite o cumplir con un proceso adecuado y verídico, dando a entender que la persona es quien realiza dicho proceso, en pocas palabras es un método de autenticación.
https: Significa "Hypertext Transfer Protocol Secure", esta es una combinación entre el protocolo http y protocolos criptográficos que se emplea para lograr que las conexiones en el www (world wide web) sean más seguras.
Desarrollo
Tanto la certificación como la firma digital son métodos de seguridad y atienden varias funciones importantes en la seguridad, la confidencialidad, la integridad y la autenticación.
La firma digital hace el uso de un cifrado asimétrico, mientras que los certificados son documentos digitales que verifican ambas claves (la pública y la privada) que son usadas para la autenticación.
El certificado salvaguarda la seguridad y fiabilidad de las firmas digitales, pues sin este una firma digital puede ser falsificada fácilmente.
La firma digital verifica la integridad del mensaje transmitido comprobando la identidad del remitente. Este garantiza la confidencialidad de la información transmitida mediante el empleo de un algoritmo para codificar el mensaje transmitido.
Pata https...
El uso principal de esto es en las transacciones monetarias o cuando se trata con información "sensible" que su mal uso afectará a quien la envía.
Este tipo de protocolo más seguro hace menos probable que la información sea captada por un tercero, o si es captada esta le será muy difícil obtener lo enviado, pues esta cifrada.
Se han empleado varios sistemas de cifrado en este protocolo, iniciando por el SSL, posteriormente sustituido por el TLS.
Este trabaja en la penultima capa del protocolo TCP/IP
Conclusión
La firma digital depende de la certificación para ser fiable, pero para que este se obtenga se debe demostrar que el sitio es seguro, aun así, ambas tienen casi la misma función, lo que las diferencia es la forma de obtenerlas, la certificación es por terceros y la firma es por un cifrado asimétrico
Para el https se puede decir que es un sistema de seguridad que no solo maneja cifrados, de igual manera maneja control de enrutamiento para que el dato (no se si peda ser reelevante para mi, por eso manejo dato en lugar de información) sea difícilmente obtenible, en caso contrario, este estará fuertemente cifrado. Este protocolo se lleva a cabo para proteger datos que nos son útiles en muchos ambitos.
domingo, 7 de septiembre de 2014
Modelo OSI de la ISO/Cliente-Servidor
Introducción a los sistemas distribuidos
Introducción
Modelo OSI
El Modelo OSI (en inglés, Open System Interconnection o sistemas de interconexión abiertos en español) es un modelo de red descriptivo, que fue creado por la Organización Internacional para la Estandarización (ISO) en el año 1980.
Este es un marco de referencia para la definición de arquitecturas en la interconexión de los sistemas de comunicaciones.
El modelo OSI se divide en 7 capas que definen las diferentes fases por las que deben pasar los datos para viajar de un dispositivo a otro sobre una red de comunicaciones.
Cliente-servidor
Un servidor es una aplicación que ofrece un servicio a usuarios de Internet; un cliente es el que pide ese servicio. Una aplicación consta de una parte de servidor y una de cliente, que se pueden ejecutar en el mismo o en diferentes sistemas.
Los usuarios invocan la parte cliente de la aplicación, que construye una solicitud para ese servicio y se la envía al servidor de la aplicación que usa TCP/IP como transporte.
El servidor es un programa que recibe una solicitud, realiza el servicio requerido y devuelve los resultados en forma de una respuesta. Generalmente un servidor puede tratar múltiples peticiones(múltiples clientes) al mismo tiempo.
Cliente-servidor
Un servidor es una aplicación que ofrece un servicio a usuarios de Internet; un cliente es el que pide ese servicio. Una aplicación consta de una parte de servidor y una de cliente, que se pueden ejecutar en el mismo o en diferentes sistemas.
Los usuarios invocan la parte cliente de la aplicación, que construye una solicitud para ese servicio y se la envía al servidor de la aplicación que usa TCP/IP como transporte.
El servidor es un programa que recibe una solicitud, realiza el servicio requerido y devuelve los resultados en forma de una respuesta. Generalmente un servidor puede tratar múltiples peticiones(múltiples clientes) al mismo tiempo.
Desarrollo
Modelo OSI
Capa 1: Capa física
Esta capa se encarga de la topología de la red y de las conexiones globales de la computadora hacia la red, tanto en lo que se refiere al medio físico como a la forma en la que se transmite la información.
En esta capa se define el medio o medios físicos por los que va a viajar la comunicación, define las características materiales y eléctricas que se van a usar en la transmisión de los datos por los medios físicos, establece las características funcionales de la interfaz, transmite el flujo de bits a través del medio, maneja las señales eléctricas del medio de transmisión y garantiza la conexión.
Capa 2: Capa de datos
Esta capa se ocupa del direccionamiento físico, del acceso al medio, de la detección de errores, de la distribución ordenada de tramas y del control del flujo. Es uno de los aspectos más importantes que revisar en el momento de conectar dos ordenadores, ya que está entre la capa 1 y 3 como parte esencial para la creación de sus protocolos básicos para regular la forma de la conexión entre computadoras así determinando el paso de tramas, verificando su integridad, y corrigiendo errores, por lo cual es importante mantener una excelente adecuación al medio físico, con el medio de red que redirecciona las conexiones mediante un router. Dadas estas situaciones cabe recalcar que el dispositivo que usa la capa de enlace es el Switch que se encarga de recibir los datos del router y enviar cada uno de estos a sus respectivos destinatarios
Capa 3: Capa de red
Se encarga de identificar el enrutamiento existente entre una o más redes. Las unidades de información se denominan paquetes, y se pueden clasificar en protocolos enrutables y protocolos de enrutamiento.
El objetivo de la capa de red es hacer que los datos lleguen desde el origen al destino, aún cuando ambos no estén conectados directamente. Los dispositivos que facilitan tal tarea se denominan encaminadores o enrutadores (o routers en ingles), estos dispositivos trabajan en esta capa, aunque pueden actuar como switch de nivel 2 en determinados casos.
Capa 4: Capa de transporte
En esta capa se efectua el transporte de datos de la máquina origen a la de destino
Capa 5: Capa de sesión
Se encarga de mantener y controlar el enlace establecido entre dos computadores que están transmitiendo cualquier tipo de datos.
Esta capa provee la capacidad de asegurar que una sesión establecida entre dos maquinas se pueda efectuar para las operaciones definidas de principio a fin, reanudándolas en caso de interrupción.
Capa 6: Capa de presentación
Se encarga de la representación de la información, de tal manera que aunque distintos equipos puedan tener diferentes representaciones internas de caracteres, los datos lleguen de manera reconocible a los diferentes equipos .
Capa 7: Capa de aplicación
Esta capa ofrece a las aplicaciones la posibilidad de acceder a los servicios de las demás capas y define los protocolos que utilizan las aplicaciones para intercambiar datos, tales como son el correo electrónico, gestores de bases de datos y servidores de ficheros (servidores que intercambian documentos e información)
Cliente servidor
El Cliente-Servidor es un sistema distribuido entre múltiples Procesadores donde hay clientes que solicitan servicios y servidores que los proporcionan. La Tecnología Cliente/Servidor, es un modelo que implica productos y servicios enmarcados en el uso de la Tecnología de punta, y que permite la distribución de la información en forma ágil y eficaz a las diversas áreas de una organización
Conclusión
Las diferentes capas ayudan a que la comunicación que exista entre el cliente y el servidor sean adecuadas y tengan el menor margen de error.
Suscribirse a:
Entradas (Atom)