XML Encryption

A medida que la tecnología XML se extiende, cada vez más información se distribuye en este formato. Pero XML nació como formato de documentos y en sí mismo no contiene elementos relacionados con la seguridad. Esto hace necesario realizar un esfuerzo concreto en esta materia, en una búsqueda para encontrar un método para proteger esa información compartida.

XML Encryption es una Recomendación del Consorcio Web ( W3C) que especifica un proceso para cifrar datos (no únicamente documentos XML) y representar esa información cifrada a su vez en XML para que viaje por los medios de transmisión. Este artículo pretende describir y ejemplificar someramente su funcionamiento, para información detallada acudir a la Especificación del Consorcio Web.

Se han publicado las graves deficiencias de seguridad de esta especificación.[1]

Aspectos generales

XML Encryption establece que para cifrar un elemento (o un contenido textual de un elemento), este va a ser sustituido por otro elemento establecido por la especificación que contendrá el dato cifrado y la información necesaria para el procesamiento, como puede ser la identificación del algoritmo utilizado o datos sobre la clave empleada. Este elemento es <EncryptedData>, de tal modo que podría aparecer como raíz del nuevo documento generado tras el proceso, o como hijo de otros elementos ya existentes previamente.

Por otro lado, la especificación establece XML Schema como esquema de modelo de datos. Dicho Schema puede ser consultado en la especificación de XML Encryption y es necesario para conocer la sintaxis a emplear.

La versión actual de XML Encryption utiliza el siguiente espacio de nombres:

xmlns:xenc='http://www.w3.org/2001/04/xmlenc#'

Other Languages
日本語: XML暗号化
русский: XML Encryption