contenido - tamps.cinvestav.mxvjsosa/clases/sd/progweb_intro.pdf · delete n s borra el recurso...

23
CLIENTE/SERVIDOR EN INTERNET Programación Web: Introducción Dr. Víctor Jesús Sosa Sosa [email protected] Programación Web: Introducción CONTENIDO APLICACIONES WEB • Definiciones Básicas • URL • HTTP HTML • Formularios HTML • Manejo de sesiones • Generación dinámica de HTML CGI Módulos compilados Scripts del lado del servidor Sistemas de publicación XML

Upload: others

Post on 28-Oct-2019

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CONTENIDO - tamps.cinvestav.mxvjsosa/clases/sd/ProgWeb_Intro.pdf · DELETE N S Borra el recurso identificado por el URL. LICK N S Establecer una o más relaciones de vinculación

CLIENTE/SERVIDOREN INTERNET

Programación Web: Introducción

Dr. Víctor Jesús Sosa Sosa

[email protected]

Programación Web: Introducción

CONTENIDO�APLICACIONES WEB

• Definiciones Básicas • URL• HTTP• HTML• HTML• Formularios HTML• Manejo de sesiones• Generación dinámica de HTML

�CGI�Módulos compilados�Scripts del lado del servidor�Sistemas de publicación XML

Page 2: CONTENIDO - tamps.cinvestav.mxvjsosa/clases/sd/ProgWeb_Intro.pdf · DELETE N S Borra el recurso identificado por el URL. LICK N S Establecer una o más relaciones de vinculación

CONTENIDO�APLICACIONES WEB

• Clientes Dinámicos�DOM�Scripts (JavaScript)�AppletsActiveX�ActiveX

• Patrones de Arquitectura de Aplicaciones Web

• Seguridad

�Cliente Web Delgado�Cliente Web Grueso�Web Object

� El Web es un sistema distribuido dehiperdocumentos.

� Para observar un documento en la Web debeutilizarse una aplicación llamada visualizador y sedebe indicar el nombre del documento y el nombre de

DEFINICIONES BÁSICAS

debe indicar el nombre del documento y el nombre dela computadora donde éste puede ser encontrado.

� Las solicitudes de documentos son manipuladaspor una aplicación denominada servidor Web.

� Cuando un visualizador solicita un documento, elservidor Web busca el documento en su sistema dearchivos y lo envía al visualizador.

Page 3: CONTENIDO - tamps.cinvestav.mxvjsosa/clases/sd/ProgWeb_Intro.pdf · DELETE N S Borra el recurso identificado por el URL. LICK N S Establecer una o más relaciones de vinculación

DEFINICIONES BÁSICAS

� El término Web (telaraña) surge al observar elsistema como un conjunto de nodos con enlaces deinterconexión.

� Un sitio Web estático es aquel donde todos losdocumentos están almacenados de manera definitivadocumentos están almacenados de manera definitivaen el sistema de archivos.

� Una aplicación Web es un sitio Web que permite laejecución de lógica de trabajo por medio de unvisualizador Web.

Web

De Hipertexto

Web

Interactivo

Objetos

Web

De Objetos

Evolución de las Tecnologías del Web

- Visualizadores

Web gráficos

e hipervínculos

1994

Formatos

-Tablas

-CGIs

Transacciones

Protegidas

- SSL

- S-HTTP

- Muros de

Protección

- E-cash

1995

Web de Java:

- Applets

- Componentes

móviles

Objetos

Distribuidos

- Orblets

- Documentos

Compuestos

- ActiveX

- CORBA

- Cyberdog

1996 1997

Page 4: CONTENIDO - tamps.cinvestav.mxvjsosa/clases/sd/ProgWeb_Intro.pdf · DELETE N S Borra el recurso identificado por el URL. LICK N S Establecer una o más relaciones de vinculación

Evolución de las Tecnologías del Web

Fundamentos del Web(Protocolos y Tecnologías)

Internet, como red principal global.

Protocolos de aplicaciones sobre TCP/IP (SMTP,Telnet, FTP, NNTP,Gopher)

Internet, como red principal privada.

Detrás de Firewalls.

URLs, como forma de nombramiento y acceso global a todos los recursos del Web

HTTP, para acceder a recursos nombrados con URLs.

HTML, para incrustar hipervínculos y describir la estructura lógica de documentos.

VisualizadoresWeb, como clientes universales.

http ://www.direccion.com :8080 :/ruta/subdir/archivo.ext

Esquema

de protocoloDirección

del Servidor

Número

de puertoRecurso

destino

Page 5: CONTENIDO - tamps.cinvestav.mxvjsosa/clases/sd/ProgWeb_Intro.pdf · DELETE N S Borra el recurso identificado por el URL. LICK N S Establecer una o más relaciones de vinculación

HTTP

� Hypertext Transfer Protocol (1.0 definido en RFC1945 y 1.1 en RFC 2068).

� Define el formato y la manera en que deben sertransmitidos los mensajes y las acciones que losvisualizadores y servidores Web deben realizar envisualizadores y servidores Web deben realizar enrespuesta a estos mensajes.

� Protocolo sin estado, no orientado a sesión, ya quecada comando requiere que se establezca una nuevaconexión.

HTML

Visualizador

Web

Visualizador

Web

PCHTTP

HTTP

1

2

3

4

Interacción Cliente/Servidor en el Web

TCP/IP

InternetHTML

Web

MAC

HTTP

HTTPDocumentos

HTML

Servidor Web

Cliente Middleware Servidor

3

Page 6: CONTENIDO - tamps.cinvestav.mxvjsosa/clases/sd/ProgWeb_Intro.pdf · DELETE N S Borra el recurso identificado por el URL. LICK N S Establecer una o más relaciones de vinculación

Formato de Solicitud de HTTP

HTML y

formas

Visualizador

Web

HTTP

Solicitud

Cliente

WebDocumentos

HTML

Servidor

HTTP

Sintaxis de solicitud de HTTP

<method><resource identifier><HTTP version><crlf> Línea de <method><resource identifier><HTTP version><crlf>

[<Header> : <value>]<crlf>

--

--

[<Header> : <value>]<crlf>

blank line <crlf>

[Entity body]

GET /path/file.html HTTP/1.0

Accept: text/html

Accept: audio/x

User-agent: MacWeb

Línea de

Solicitud

Campos de

Encabezado

de solicitud

Cuerpo de

entidad

EjemploLínea de

Solicitud

Campos de

Encabezado

de solicitud

Formato de Respuesta de HTTP

HTML y

formas

Visualizador

Web

HTTP

Respuesta

Cliente

WebDocumentos

HTML

Servidor

HTTP

Sintaxis de respuesta de HTTP

<HTTP version><result code>[<explanation>]<crlf>

[<Header> : <value>]<crlf>

Encabezado (estatus)

de Respuesta[<Header> : <value>]<crlf>

--

--

[<Header> : <value>]<crlf>

blank line <crlf>

[Entity body]

HTTP/1.0 200 OK

Server: CCSA/1.3

Mime_version: 1.0

Content_type: text/html

Content_length: 2000

<HTML>

--

--

</HTML>

Campos de

Encabezado

Cuerpo de

entidad

EjemploEncabezado

re repuesta

Campos de

Encabezado

Cuerpo de

Entidad (es decir,

Documento HTML)

Page 7: CONTENIDO - tamps.cinvestav.mxvjsosa/clases/sd/ProgWeb_Intro.pdf · DELETE N S Borra el recurso identificado por el URL. LICK N S Establecer una o más relaciones de vinculación

Método HTTP/1.0 HTTP/1.1 Descripción del Método

GET S S Recuperar el URL especificado.

HEAD S S Idéntico a GET, salvo que el servidor no envía eldocumento en respuesta; solo

envía los encabezados. Los clientes lo usan para obtener metadatos de recursos o

para probar validez de vínculos de hipertexto.

POST S S Enviar estos datos al URL especificado.

PUT N S Almacenar estos datos en el URL especificado, remplazando lo anterior.

PATCH N S Similar a PUT, salvo que contiene una lista de diferencias entre la versión

original del URL y el contenido deseado tras la aplicación del método.

Métodos de HTTP

COPY N S Copiar el recurso identificado por el URL en la(s) ubicación(es) especificada (s).

MOVE N S Trasladar el recurso indicado por el URL a la(s) ubicación(es) especificada(s).

Equivalete a usar COPY/DELETE

DELETE N S Borra el recurso identificado por el URL.

LICK N S Establecer una o más relaciones de vinculación entre el recurso identificado por

el URL y otros recursos

UCLICK N S Eliminar una o más relaciones de vinculación en el URL especificado.

TRACE N S Notificar todo lo que se reciba del cliente en el cuerpo de entidad de la respuesta.

OPTIOCS N S Solicita información de opciones disponibles.

WRAPPED N S Permite que solicitudes se envuelvan en conjunto y quizá también se codifiquen

para reforzar la seguridad y/o privacidad de la solicitud. El servidor destino debe

desenvolver el mensaje y cederlo al manipulador apropiado

Encabezado HTTP/1.0 HTTP/1.1 Descripción del Método

Cache-Control N S Instrucciones de Solicitud/Respuesta de memoria caché.

Connection N S Infomación que no puede transmitirse a gateways.

Date S S Fecha y hora de origen del mensaje.

Forwarded N S Información usada por gateways para rastrear pasos intermedios y evitar lazos

Encabezados Generales de HTTP

Forwarded N Sde solicitudes.

Keep-Alive N S Información de diagnostico.

MIME-Version S S Versión de MIME empleada para codificar el mensaje.

Pragma S S Contiene instrucciones de implementación (por ejemplo, sin memoria caché)

Upgrade N S Lista protocolos de comunicación adicionales que soporta un cliente y que

querría usar previo acuerdo del servidor

Page 8: CONTENIDO - tamps.cinvestav.mxvjsosa/clases/sd/ProgWeb_Intro.pdf · DELETE N S Borra el recurso identificado por el URL. LICK N S Establecer una o más relaciones de vinculación

Encabezado HTTP/1.0 HTTP/1.1 Descripción del Método

Accept N S Lista contenido aceptable de tipo/subtipo MIME.

Accept-Chars N S Lista conjunto de caracteres aceptables

Accept-Encoding N S Lista codificaciones aceptables, como compresión y compresión con zip.

Accept-Language N S Lista de lenguajes naturales aceptables.

Authorization S S Transmite esquema de autenticación y codificación del usuario.

Encabezados de Solicitudes de HTTP

From S S Contiene dirección de correo electrónico en Internet del usuario.

Host N S Contiene nombre de anfitrión destino.

If-Modified-Since S S Contiene una fecha/hora usada por GET para la descarga condicional de

documentos.

Proxy-Authorization N S Permite a clientes prestar su identidad a un representante.

Refer S S URL del documento de origen de esta solicitud.

Unless N S Lista condiciones de encabezado que deben cumplirse para que un método sea

aplicado a un recurso.

User-Agent S S Describe al visualizador.

Encabezado HTTP/1.0 HTTP/1.1 Descripción del Método

Location S S Envía la ubicación exacta del recurso

Proxy-Authenticate N S Envía el esquema de codificación/autorización usado en esta sesión.

Public N S Lista todos los métodos no estándar soportados por un servidor.

Encabezados de Respuesta de HTTP

Retry-After N S Indica (en segundos) cuando volver a intentar un servicio.

Server S S Envía información sobre el software usado en el servidor.

WWW-Authenticate S S Envía el esquema de codificación/autorización que desea usar el

servidor en todas sus interacciones en el Web.

Page 9: CONTENIDO - tamps.cinvestav.mxvjsosa/clases/sd/ProgWeb_Intro.pdf · DELETE N S Borra el recurso identificado por el URL. LICK N S Establecer una o más relaciones de vinculación

Encabezado HTTP/1.0 HTTP/1.1 Descripción del Método

Allow S S Lista los métodos soportados por el recurso de URL.

Content-Encoding S S Especifíca codificación de respuesta, como compresión y compresión

con zip.

Content-Language N S Especifica lenguaje natural de respuesta (por ejemplo, español)

Content-Length S S Extensión en bytes del cuerpo de entidad.

Content-Type S S Tipo de contenido MIME de respuesta.

Encabezados de Entidad de HTTP

Content-Version N S Contiene un número de versión del recurso.

Derived-From N S Identifica la versión anterior.

Expires S S Contiene fecha/hora después de la cual el documento caduca.

Last-Modified S S Contien fecha/hora de la modificación más recientedel recurso.

Link N S Contiene información de vinculación del documento.

Title N S Contiene el título del documento.

Transfer-Encoding N S Identifica una transformación aplicada al documento (o cuerpo del

mensaje)

URL-Header N S Contiene la parte del nombre del recurso del URL.

Códigos de Estado

Códigos de Estado = “200” ; OK

| “201”; Creado

| “202”; Aceptado

| “204”; Sin Contenido

| “301”; Movido Permanentemente

| “302”; Movido Temporalmente

| “304”; No Modificado

| “400”; Mala Solicitud| “400”; Mala Solicitud

| “401”; No autorizado

| “403”; Prohibido

| “404”; No encontrado

| “500”; Error Interno en el Servidor

| “501”; No implementado

| “502”; Gateway equivocado

| “503”; Servicio No Disponible

| extensiones de códigos

Page 10: CONTENIDO - tamps.cinvestav.mxvjsosa/clases/sd/ProgWeb_Intro.pdf · DELETE N S Borra el recurso identificado por el URL. LICK N S Establecer una o más relaciones de vinculación

Transport Control Protocol: HTTP0.9

TCP Host A Host B

SYN

SYN

ACK

DATA

1 RTT

1 RTT

DATA

DATA

FIN

ACK

DATA

FIN

ACK

Conexión cerrada por

A

Conexión cerrada

por B

DATA

ACK

DATA

ACK

DATA

ACK

3 RTT +

2G

1 RTT +

2G

G

Host A Host B Host A Host B

Transport Control Protocol: HTTP1.0

DATA

ACK

Tamaño de Ventana 1Tamaño de Ventana 3

X1 = 1/RTTX3 = 3/RTT

Page 11: CONTENIDO - tamps.cinvestav.mxvjsosa/clases/sd/ProgWeb_Intro.pdf · DELETE N S Borra el recurso identificado por el URL. LICK N S Establecer una o más relaciones de vinculación

HTTP 1.1

HTTP 1.1 arregla muchos de los problemas que tiene HTTP 1.0,

pero es más complejo.

Características principales:

• Identifica Nombre de Host (permite host virtuales)

• Negocia Contenidos (múltiples lenguajes)• Negocia Contenidos (múltiples lenguajes)

• Conecciones Persistentes (reduce sobrecarga en conexiones

TCP)

• Transferencias en Bloques

• Rangos de Bytes (solicita partes de un documento)

• Soporte de Proxy

SISTEMAS DE PUBLICACIÓN XML

� Utilizan XML (Extensible MarkupLanguage) y XSL (Extensible StyelsheetLanguage) para la separación del contenidoy la presentación.

� Utilizan tecnologías existentes (e.g.Servlets) para el procesamiento desolicitudes HTTP.

� Ejemplos: Cocoon, Bladerunner,Relevant.

Page 12: CONTENIDO - tamps.cinvestav.mxvjsosa/clases/sd/ProgWeb_Intro.pdf · DELETE N S Borra el recurso identificado por el URL. LICK N S Establecer una o más relaciones de vinculación

SISTEMAS DE PUBLICACIÓN XML

Ventajas:� Mayor facilidad para la administración, especialmente deaplicaciones grandes.

� Separación completa de lógica, contenido y presentación.

Desventajas:Desventajas:�Mayor dificultad para crear la aplicación, ya que es máscomplicado utilizar XML/XSL que HTML directamente.

�Las herramientas no han alcanzado el nivel de madurez deotras opciones para la generación dinámica de código debido aque la tecnología de XML está constantemente evolucionandocon mucha rapidez.

PATRONES DE ARQUITECTURA PARA APLICACIONES WEB

� Cliente Web Delgado� Cliente Web Grueso� Cliente Web Grueso�Web Object

Page 13: CONTENIDO - tamps.cinvestav.mxvjsosa/clases/sd/ProgWeb_Intro.pdf · DELETE N S Borra el recurso identificado por el URL. LICK N S Establecer una o más relaciones de vinculación

CLIENTE WEB DELGADO

� Es el más utilizado en aplicacionespara la Internet� Se utiliza cuando los clientes tienenpoco poder de computación o no sepoco poder de computación o no setiene control sobre su configuración� Toda la lógica de trabajo se ejecuta enel servidor� El visualizador es simplemente uninstrumento de interfaz de usuario

ELEMENTOS DEL PATRÓN CLIENTE WEB DELGADO

� Visualizador• Cualquier visualizador capaz de mostrarformularios y aceptar galletas

� Servidor Web� Servidor Web• Los visualizadores interactúan con el sistema sólopor medio del servidor Web.• Procesan todas las solicitudes y pasan el control aotros servidores cuando las solicitudes son demódulos compilados o páginas con scripts deservidor.

Page 14: CONTENIDO - tamps.cinvestav.mxvjsosa/clases/sd/ProgWeb_Intro.pdf · DELETE N S Borra el recurso identificado por el URL. LICK N S Establecer una o más relaciones de vinculación

ELEMENTOS DEL PATRÓN CLIENTE WEB DELGADO

� Conexión HTTP• Toda la comunicación entre el cliente y el servidorse realiza con HTTP

• Cada vez que el cliente y el servidor intercambianinformación, se produce una nueva conexión HTTP

• En ocasiones se utiliza una variante llamadaHTTPS o HTTP con SSL (Secure Sockets Layer), lacual permite cifrar la información transmitidautilizando algoritmos asimétricos (clave pública/claveprivada)

ELEMENTOS DEL PATRÓN CLIENTE WEB DELGADO

� Páginas HTML estáticas• Páginas con interfaz de usuario e información queno es producto de un procesamiento por parte delservidor

• Típicamente contienen información explicativa oformularios

• Cuando el servidor Web recibe una solicitud por unade estas páginas, simplemente envía el contenidoarchivo al cliente

Page 15: CONTENIDO - tamps.cinvestav.mxvjsosa/clases/sd/ProgWeb_Intro.pdf · DELETE N S Borra el recurso identificado por el URL. LICK N S Establecer una o más relaciones de vinculación

ELEMENTOS DEL PATRÓN CLIENTE WEB DELGADO

� Páginas de Servidor• Páginas producto de un procesamiento por partedel servidor

• Típicamente implementadas mediante páginascon scripts del lado del servidor o mediantemódulos compilados

• Potencialmente tienen acceso a todos losrecursos del servidor, tales como bases de datos,otros sistemas existentes, etc.

ELEMENTOS DEL PATRÓN CLIENTE WEB DELGADO

� Servidor de Aplicaciones• Es la maquinaria que permite la ejecución de lógicadel lado del servidor• Se acopla con el servidor Web• Puede, de hecho, ser una extensión del servidorWeb, pero en algunos casos puede ser ejecutado enWeb, pero en algunos casos puede ser ejecutado enotra computadora.

� Sistemas existentes•Componentes a los cuales se tiene acceso medianteinterfaces de programación o servidores de aplicacióncorrespondientes•Ejemplos: Bases de datos, sistemas mercantiles,sistemas SCADA, etc.

Page 16: CONTENIDO - tamps.cinvestav.mxvjsosa/clases/sd/ProgWeb_Intro.pdf · DELETE N S Borra el recurso identificado por el URL. LICK N S Establecer una o más relaciones de vinculación

Visualizador

HTTP

ELEMENTOS DEL PATRÓN CLIENTEWEB DELGADO

Servidor WebServidor deAplicaciones

PáginasHTML

Objetos deNegocio/SistemasExistentes

Páginas deServidor

CLIENTE WEB GRUESO

• Extiende el patrón Cliente Web Delgado mediante eluso de scripts (JavaScript) u objetos (Applets/ActiveX)del lado del cliente

• El cliente ejecuta lógica de trabajo

• Es apropiado para ser usado en ambientes donde haycontrol sobre la configuración del visualizador (e.g.Intranets)

• Permite establecer interfaces de usuario sofisticadas

Page 17: CONTENIDO - tamps.cinvestav.mxvjsosa/clases/sd/ProgWeb_Intro.pdf · DELETE N S Borra el recurso identificado por el URL. LICK N S Establecer una o más relaciones de vinculación

ELEMENTOS DEL PATRÓN CLIENTE WEB GRUESO

� Scripts del lado del cliente• Código JavaScript, VBScript en las páginas HTML• El visualizador interpreta el script, el cual tieneacceso al DOM

� Controles ActiveX� Controles ActiveX• Objetos COM que pueden ser referenciados por elcliente• Tienen acceso a todos los recursos del cliente• Pueden ser usados para incorporar lógica detrabajo y/o implementar interfaces de usuariosofisticadas• Seguridad mediante firma digital, la cual permiteestablecer la identidad del autor del componente

ELEMENTOS DEL PATRÓN CLIENTE WEB GRUESO

� Java Applet• Componente compilado y autocontenido que seejecuta en el visualizador

• Tienen acceso limitado a los recursos del cliente• Tienen acceso limitado a los recursos del cliente

• Pueden ser usados para incorporar lógica detrabajo y/o implementar interfaces de usuariosofisticadas

• Seguridad mediante firma digital, la cual permiteaumentar el acceso a los recursos del cliente

Page 18: CONTENIDO - tamps.cinvestav.mxvjsosa/clases/sd/ProgWeb_Intro.pdf · DELETE N S Borra el recurso identificado por el URL. LICK N S Establecer una o más relaciones de vinculación

Visualizador

HTTP

Applets/ActiveX

ELEMENTOS DEL PATRÓN CLIENTE WEB GRUESO

Servidor WebServidor deAplicaciones

PáginasHTML

Objetos deNegocio/SistemasExistentes

Páginas deServidor

HTTP

� Se basa en la utilización de la tecnologíaWeb como parte de un sistema cliente/servidorde objetos distribuidos� Es apropiado para ser usado en ambientesdonde hay control sobre la configuración del

WEB OBJECT

donde hay control sobre la configuración delvisualizador y la conexión de red (e.g.Intranets)� Se utilizan protocolos de objetos distribuidospara la comunicación entre clientes yservidores

Page 19: CONTENIDO - tamps.cinvestav.mxvjsosa/clases/sd/ProgWeb_Intro.pdf · DELETE N S Borra el recurso identificado por el URL. LICK N S Establecer una o más relaciones de vinculación

ELEMENTOS DEL PATRONWEB Object

� IIOP (Internet InterORB Protocol)•Protocolo de comunicación entre objetos CORBA(Common Object Request Broker Architecture) enredes IP

� DCOM (Distributed COM)•Protocolo para objetos COM (ActiveX) distribuidos

� RMI (Remote Method Invocation)•Interfaz de programación Java para objetosdistribuidos. JRMP (Java Remote Method Protocol)es el protocolo más utilizado, pero también puedeutilizarse IIOP.

Visualizador

AppletsActiveXCliente

HTTP

ELEMENTOS DEL PATRONWEB DELIVERY

Servidor WebServidor deAplicaciones

PáginasHTML

ActiveXServidor

Objetos deNegocio

Páginas deServidor

EnterpriseJavaBeans

DCOM

RMI IIOP

Page 20: CONTENIDO - tamps.cinvestav.mxvjsosa/clases/sd/ProgWeb_Intro.pdf · DELETE N S Borra el recurso identificado por el URL. LICK N S Establecer una o más relaciones de vinculación

SEGURIDAD

� Aseguramiento físico de lascomputadoras que contienen los serviciosde la aplicación y de los equipos de redasociados.

� Aseguramiento lógico consta de lossiguientes aspectos:

• Autenticación• Confidencialidad• Integridad• No repudiación

CONCEPTOS FUNDAMENTALES

� CERTIFICADO DIGITALDocumento firmado digitalmente por unaentidad (Autoridad de Certificados) queafirma que la clave pública de otra entidadtiene un determinado valor.

� CLAVE PÚBLICANúmero asociado a una entidad que debeser conocido por cualquiera que deseeinteractuar de manera segura con dichaentidad. Se utiliza para verificar firmasdigitales.

Page 21: CONTENIDO - tamps.cinvestav.mxvjsosa/clases/sd/ProgWeb_Intro.pdf · DELETE N S Borra el recurso identificado por el URL. LICK N S Establecer una o más relaciones de vinculación

CONCEPTOS FUNDAMENTALES

� FIRMA DIGITALSecuencia corta de datos que se calculaaplicando un algoritmo sobre otra secuencia dedatos (mensaje) que se desea firmar utilizandola clave privada de la entidad firmante. Permitedeterminar si la secuencia de datos ha sidodeterminar si la secuencia de datos ha sidomodificada durante la transmisión.

� CLAVE PRIVADANúmero asociado a una entidad que sólo debeser conocido por dicha entidad. Se utiliza paracalcular firmas digitales.

MENSAJERESULTADO

HASHFUNCIÓNHASH

FUNCIÓNFIRMA

FIRMADIGITAL

CLAVEPRIVADA

MENSAJEAL DESTINATARIO

FIRMA DIGITAL

FIRMADIGITAL

MENSAJE FUNCIÓNHASH

RESULTADOHASH

FUNCIÓNVERIFICACIÓN

CLAVEPÚBLICA

VALIDEZ

PRIVADA

DEL FIRMANTE

Page 22: CONTENIDO - tamps.cinvestav.mxvjsosa/clases/sd/ProgWeb_Intro.pdf · DELETE N S Borra el recurso identificado por el URL. LICK N S Establecer una o más relaciones de vinculación

AUTENTICACION

� Identificación del cliente con el servidor

� Puede ser implementada por el servidorWeb o por la aplicación mismaWeb o por la aplicación misma

� Puede manejarse con contraseñas o concertificados digitales

CONFIDENCIALIDAD

� Cifrado de la información transmitida

� La tecnología de cifrado más utilizada esSSL

� SSL es una capa que permite cifrar lainformación entre el protocolo de la capade aplicación y la capa de transporte

Page 23: CONTENIDO - tamps.cinvestav.mxvjsosa/clases/sd/ProgWeb_Intro.pdf · DELETE N S Borra el recurso identificado por el URL. LICK N S Establecer una o más relaciones de vinculación

INTEGRIDAD

� Consiste en garantizar que lainformación transmitida no seamodificada en el camino

� Este aspecto es cubierto por SSL� Este aspecto es cubierto por SSL

� Cada mensaje cifrado por SSL tieneadicionalmente códigos de autenticaciónde mensaje (MAC), los cuales estánbasados en firmas digitales.

NO REPUDIACION

� Consiste en asegurar que ambas partesen una transacción estén de acuerdo enque ésta se ha llevado a cabo

� Es implementada mediante certificados� Es implementada mediante certificadosy firmas digitales, que permiten demostrarque el dueño del certificado estuvoinvolucrado en la transacción