Publicado el 19 de Junio del 2018
527 visualizaciones desde el 19 de Junio del 2018
234,7 KB
21 paginas
Creado hace 18a (06/11/2006)
Contenidos
Seguridad en Internet
Canonización
XML Signature
XML Encryption Otros vocabularios de seguridad
Seguridad en XML
Jose Emilio Labra Gayo
Noviembre 2006
Jose Emilio Labra Gayo
Seguridad en XML
Contenidos
Seguridad en Internet
Canonización
XML Signature
XML Encryption Otros vocabularios de seguridad
Contenidos
Seguridad en Internet
Canonización
XML Signature
XML Encryption
Otros vocabularios de seguridad
Jose Emilio Labra Gayo
Seguridad en XML
Contenidos
Seguridad en Internet
Canonización
XML Signature
XML Encryption Otros vocabularios de seguridad
Requisitos de seguridad
I Confidencialidad: garantizar que la información no es visible a
extraños
I Autenticación: garantiza que el acceso a la información sólo
puede ser realizado por quienes proporcionan la identidad
adecuada.
I Integridad: asegurar que el mensaje no ha sido modificado
accidental o deliberadamente
I No repudiación: garantiza que el emisor del mensaje no puede
negar haberlo enviado
Jose Emilio Labra Gayo
Seguridad en XML
Contenidos
Seguridad en Internet
Canonización
XML Signature
XML Encryption Otros vocabularios de seguridad
Claves simétricas vs asimétricas
Un sistema utiliza claves simétricas si la misma clave sirve para
cifrar y para descifrar un documento
En un sistema de claves asimétricas se utiliza una clave para cifrar
y otra para descifrar el documento
Jose Emilio Labra Gayo
Seguridad en XML
Contenidos
Seguridad en Internet
Canonización
XML Signature
XML Encryption Otros vocabularios de seguridad
Canonización
Un mismo contenido puede ser representado de varias formas en
XML
Doc1.xml
<img s r c=” pp . j p g ” a l t=” Foto de Pepe ”></ img>
Doc2.xml
<img s r c=” pp . j p g ” a l t=” Foto de Pepe ” />
Doc3.xml
<img a l t=” Foto de Pepe ” s r c=” pp . j p g ” />
Jose Emilio Labra Gayo
Seguridad en XML
Contenidos
Seguridad en Internet
Canonización
XML Signature
XML Encryption Otros vocabularios de seguridad
Canonización
Varias propuestas de W3C:
I C14N (Marzo 2001)
I Exclusive C14N (Julio 2002) soluciona algunos problemas del
anterior.
Jose Emilio Labra Gayo
Seguridad en XML
Contenidos
Seguridad en Internet
Canonización
XML Signature
XML Encryption Otros vocabularios de seguridad
XML Signature
XML Digital Signature (2002) permite demostrar la identidad y
autenticidad del documento
Objetivo: Integridad y autenticación
Es básica la canonización para identificar documentos comunes
Jose Emilio Labra Gayo
Seguridad en XML
Contenidos
Seguridad en Internet
Canonización
XML Signature
XML Encryption Otros vocabularios de seguridad
Estructura de XML SIgnature
I SignedInfo contiene la información que es firmada. Incluye:
I CanonizalizationMethod: algoritmo utilizado para canonizar
el elemento
I SignatureMethod: algoritmo para convertir signedInfo en
signatureValue
I Reference incluye el método para obtener la firma (digest)
y el valor, así como otras transformaciones realizadas
I SignatureValue incluye el valor de la firma
I KeyInfo indica la la clave a utilizar para validar la firma
Jose Emilio Labra Gayo
Seguridad en XML
Contenidos
Seguridad en Internet
Canonización
XML Signature
XML Encryption Otros vocabularios de seguridad
Estructura de XML Signature
Jose Emilio Labra Gayo
Seguridad en XML
Contenidos
Seguridad en Internet
Canonización
XML Signature
XML Encryption Otros vocabularios de seguridad
Ejemplo de XML Digital Signature (1)
<S i g n a t u r e I d=” M y F i r s t S i g n a t u r e ”
x m l n s=” h t t p : //www . w3 . o r g /2000/09/ x m l d s i g#”>
<S i g n e d I n f o>
<C a n o n i c a l i z a t i o n M e t h o d
A l g o r i t h m=” h t t p : //www . w3 . o r g /TR/2001/REC−xml−c14n −20010315 ” />
<S i g n a t u r e M e t h o d A l g o r i t h m=” h t t p : //www . w3 . o r g /2000/09/ x m l d s i g#dsa−s h a 1 ” />
<R e f e r e n c e URI=” h t t p : //www . w3 . o r g /TR/2000/REC−xhtml1 −20000126/ ”>
<T r a n s f o r m s>
<T r a n s f o r m
A l g o r i t h m=” h t t p : //www . w3 . o r g /TR/2001/REC−xml−c14n −20010315 ” />
</ T r a n s f o r m s>
<D i g e s t M e t h o d
A l g o r i t h m=” h t t p : //www . w3 . o r g /2000/09/ x m l d s i g#s h a 1 ” />
<D i g e s t V a l u e>j6lwx3rvEPO0vKtMup4NbeVu8nk=</ D i g e s t V a l u e>
</ R e f e r e n c e>
</ S i g n e d I n f o>
. . .
Jose Emilio Labra Gayo
Seguridad en XML
Contenidos
Seguridad en Internet
Canonización
XML Signature
XML Encryption Otros vocabularios de seguridad
Ejemplo de XML Digital Signature (2)
. . .
<S i g n a t u r e V a l u e>MC0CFFrVLtRlk = . . .</ S i g n a t u r e V a l u e>
<K e y I n f o>
<KeyVa lue>
<DSAKeyValue>
<p> . . . </p><Q> . . . </Q><G> . . . </G><Y> . . . </Y>
</ DSAKeyValue>
</ KeyV alue>
</ K e y I n f o>
</ S i g n a t u r e>
Jose Emilio Labra Gayo
Seguridad en XML
Contenidos
Seguridad en Internet
Canonización
XML Signature
XML Encryption Otros vocabularios de seguridad
XML Encryption
Objetivo: proteger una información que se envía del acceso no
autorizado por terceras partes
Permite cifrar:
I Un documento XML completo
I Un elemento de un documento XML
I El contenido de un elemento
I Datos textuales que no son XML
I Contenidos ya cifrados
Jose Emilio Labra Gayo
Seguridad en XML
Contenidos
Seguridad en Internet
Canonización
XML Signature
XML Encryption Otros vocabularios de seguridad
Componentes de XML Encryption
El elemento EncryptedData consta de:
I EncryptionMethod
I KeyInfo
I CipherData
Jose Emilio Labra Gayo
Seguridad en XML
Contenidos
Seguridad en Internet
Canonización
XML Signature
XML Encryption Otros vocabularios de seguridad
Ejemplo: cifrado de una parte
<p e d i d o><nombre>Pepe</ nombre>
<formaPago>< t a r j e t a t i p o=” V i s a ”>
<num>2323 4121 2445 8976</num>
< t i t u l a r>J o s e P a b l o H e r r e r a</ t i t u l a r>
<f e c h a>02/09</ f e c h a>
</ t a r j e t a></ formaPago>
</ p e d i d o>
<p e d i d o><nombre>Pepe</ nombre>
<formaPago>
<E n c r y p t e d D a t a Type=” h t t p : //www . w3 . o r g /2001/04/ x m l e n c#E l e m e n t ”
x m l n s=” h t t p : //www . w3 . o r g /2001/04/ x m l e n c#”>
<C i p h e r D a t a><C i p h e r V a l u e>C5723A . . . </ C i p h e r V a l u e></ C i p h e r D a t a>
</ E n c r y p t e d D a t a>
</ formaPago>
</ p e d i d o>
Jose Emilio Labra Gayo
Seguridad en XML
Contenidos
Seguridad en Internet
Canonización
XML Signature
XML Encryption Otros vocabularios de seguridad
Ejemplo: cifrado de un valor
Puede cifrarse únicamente el valor de un elemento. Por ejemplo el
número de tarjeta
<p e d i d o><nombre>Pepe</ nombre>
<formaPago>< t a r j e t a t i p o=” V i s a ”>
<num><E n c r y p t e d D a t a Type=” h t t p : //www . w3 . o r g /2001/04/ x m l e n c#C o n t e n t ”
x m l n s=” h t t p : //www . w3 . o r g /2001/04/ x m l e n c#”>
<C i p h e r D a t a><C i p h e r V a l u e>B6235 . . . </ C i p h e r V a l u e></ C i p h e r D a t a>
</ E n c r y p t e d D a t a>
</num>
< t i t u l a r>J o s e P a b l o H e r r e r a</ t i t u l a r>
<f e c h a>02/09</ f e c h a>
</ t a r j e t a>
</ formaPago>
</ p e d i d o>
Jose Emilio Labra Gayo
Seguridad en XML
Contenidos
Seguridad en Internet
Canonización
XML Signature
XML Encryption Otros vocabularios de seguridad
Ejemplo: cifrado de un valor
Puede cifrarse únicamente el valor de un elemento. Por ejemplo el
número de tarjeta
<E n c r y p t e d D a t a
MimeType=” t e x t / xml ”
x m l n s=” h t t p : //www . w3 . o r g /2001/04/ x m l e n c#”>
<C i p h e r D a t a><C i p h e r V a l u e>B6235 . . . </ C i p h e r V a l u e></ C i p h e r D a t a>
</ E n c r y p t e d D a t a>
Jose Emilio Labra Gayo
Seguridad en XML
Contenidos
Seguridad en Internet
Canonización
XML Signature
XML Encryption Otros vocabularios de seguridad
XKMS
Objetivo: Ocultar al usuario la complejidad subyacente en PKI
2 partes:
I Registro de clave pública
I X-KISS (XML Key Information Service Specification)
I Procesar el campo KeyInfo contenido en las firmas digitales
I Información de clave pública
I X-KRSS (XML key Registration Service Specification)
I Buscar la clave pública de alguien y comprobar si es buena
Jose Emilio Labra Gayo
Seguridad en XML
Contenidos
Seguridad en Internet
Canonización
XML Signature
XML Encryption Otros vocabularios de seguridad
SAML
SAML (Security Assertion Markup Language) permite compartir
información de autentificación entre aplicaciones
Se basa en autoridades que emiten aserciones
Transmite varios tipos de aserciones:
I Aserción de autenticación
I Aserción de atributo
Jose Emilio Labra Gayo
Seguridad en XML
Contenidos
Seguridad en Internet
Canonización
XML Signature
XML Encryption Otros vocabularios de seguridad
XACML
XACML (XML Access Control Markup Language) permite expresar
políticas de control de acceso
Codifica en reglas XML expresiones del tipo:
I Una persona puede leer un informe si es el propio paciente
Jose Emilio Labra Gayo
Seguridad en XML
Contenidos
Seguridad en Internet
Canonización
XML Signature
XML Encryption Otros vocabularios de seguridad
XrML
XrML (eXtensible Rights Markup Language)
Permite expresar reglas sobre derechos
Codifica expresiones del tipo:
I Un consumidor puede ver una película 6 veces durante 15 días
Jose Emilio Labra Gayo
Seguridad en XML
Contenidos
Seguridad en Internet
Canonización
XML Signature
XML Encryption Otros vocabularios de seguridad
Fin de la presentación
Jose Emilio Labra Gayo
Seguridad en XML
Comentarios de: Seguridad en XML (0)
No hay comentarios