XKMS

XKMS

XKMS, sigla en inglés para XML Key Management Specification (Especificación XML para manejo de claves), usa el framework de servicios web para facilitar a los desarrolladores asegurar la comunicación entre sus aplicaciones utilizando la infraestructura de clave pública (PKI). XKMS es un protocolo desarrollado por el World Wide Web Consortium (W3C) que describe la distribución y registro de claves públicas. Además es compatible para su uso en conjunto con XML-SIG (Especificación XML de firma digital) y XML-Enc (Especficación XML de cifrado).

Contenido

Arquitectura

XKMS consta de dos partes:

XKRSS - XML Key Registration Service Specification (Especificación XML de Servicio de registro de claves)
Especifica como se registrará, revocará y recuperará claves públicas. La generación de claves se puede realizar por el cliente o al momento del registro en el servidor.
XKISS - XML Key Information Service Specification (Especificación XML de Servicio de Información de claves)
Especifica como se obtienen y validan claves públcas.

En ambos casos el principal objetivo es delegar toda la complejidad de implementaciones tradicionales de PKI a un servidor externo permitiendo a un cliente interactuar con él.

Estructura

Suponemos que el cliente tiene su llave privada Private, posee una palabra clave Password y que recibió del servidor una clave auth para autenticación.

 Auth = HMAC-SHA1 (auth, 0x1)
 Pass = HMAC-SHA1 (HMAC-SHA1 (Password, 0x2), 0x3)

XKRSS

Registro y Revocación

Petición

  • Register (Etiqueta de inicio)
    • Prototype
      • Status (Estado de la clave, al registrarse se envía "Valid" y para revocar se debe enviar "Invalid")
      • KeyID
      • ds:KeyInfo
        • ds:KeyValue (Clave pública, no incluida si en el registro se genera en el servidor)
        • ds:KeyName
      • ValidInterval (Intervalo de validez de la clave)
        • NotBefore
        • NotAfter
      • PassPhrase (Pass)
    • AuthInfo
      • AuthUserInfo
        • ProofOfPossession (Prueba de la posesión de las claves, no incluida si en el registro se genera en el servidor)
          • ds:Signature (Firma de Prototype con la clave privada)
        • KeyBindingAuth (Autentificación contra el servicio)
          • ds:Signature (Hash de Prototype con Auth como clave)
    • Respond (Lista de etiquetas de KeyInfo que se desean recibir como respuesta)
      • string (Nombre de la etiqueta, si al registrar las claves se generan en el servidor se debe especificar la etiqueta "Private" para obtener la clave privada cifrada usando como clave Auth)

Respuesta

  • RegisterResult (Etiqueta de inicio)
    • Answer
      • Status (Estado de la clave)
      • KeyID
      • ds:KeyInfo (Dentro contendrá las etiquetas especificadas en la petición)
    • Private (Solo si fue especificada al registrar clave con generación en el servidor)

XKISS

Para XKISS la sintaxís de las peticiones es de manera similar.

Obtención de clave
  • Petición
<Locate>
   <Query>
      <ds:KeyInfo>
         <ds:RetrievalMethod
           URI="http://www.PKeyDir.test/Certificates/01293122"
           Type="http://www.w3.org/2000/09/xmldsig#X509Data"/>
      </ds:KeyInfo>
   </Query>
   <Respond>
      <string>KeyName</string>
      <string>KeyValue</string>
   </Respond>
</Locate>
  • Respuesta
<LocateResult>
   <Result>Success</Result>
   <Answer>
      <ds:KeyInfo>
         <ds:KeyName>O=XMLTrustCernter.org OU="Crypto"
                        CN="Alice"</ds:KeyName>
         <ds:KeyValue>...</ds:KeyValue>
      </ds:KeyInfo>
   </Answer>
</LocateResult>
Validación
  • Petición
<Validate>
   <Query>
      <Status>Valid</Status>
      <ds:KeyInfo>
         <ds:KeyName>...</ds:KeyName>
         <ds:KeyValue>...</ds:KeyValue>
      </ds:KeyInfo>
   </Query>
   <Respond>
      <string>KeyName</string>
      <string>KeyValue</string>
   </Respond>
</Validate>
  • Respuesta
<ValidateResult>
   <Result>Success</Result>
   <Answer>
      <KeyBinding>
         <Status>Valid</Status>
         <KeyID>http://www.xmltrustcenter.org/assert/20010120-39</KeyID>
         <ds:KeyInfo>
            <ds:KeyName>...</ds:KeyName>
            <ds:KeyValue>...</ds:KeyValue>
         </ds:KeyInfo>
         <ValidityInterval>
            <NotBefore>2000-09-20T12:00:00</NotBefore>
            <NotAfter>2000-10-20T12:00:00</NotAfter>
         </ValidityInterval>
      </KeyBinding>
   </Answer>
</ValidateResult>

Características y ventajas

  • Resulta fácil implementar un cliente.
  • Estándar abierto (definido en conjunto entre la W3C y la IETF)
  • Compatible no solo con PKI, también puede soportar PGP, SPKI entre otras.

Véase también

Protocolo SOAP y definición WSDL para servicios web

Enlaces externos


Wikimedia foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Mira otros diccionarios:

  • XKMS — XML Key Management Specification XKMS (XML Key Management Specification) est une spécification de validation et d enregistrement de clé publique utilisable de façon conjointe au signature XML et proposée notamment par Microsoft et Verisign au W3C …   Wikipédia en Français

  • XKMS — XML Key Management Specification (XKMS) uses the web services framework to make it easier for developers to secure inter application communication using public key infrastructure (PKI). XML Key Management Specification is a protocol developed by… …   Wikipedia

  • XKMS — XML Key Management Specification (XKMS) используется фреймворками Веб служб для облегчения разработчикам создания безопасной связи между приложениями, используя инфраструктуру открытых ключей (PKI). XML Key Management Specification это набор… …   Википедия

  • XKMS — XML Key Management Specification (Computing » Security) …   Abbreviations dictionary

  • XKMS — XML Key Management Specification …   Acronyms

  • XKMS — XML Key Management Specification …   Acronyms von A bis Z

  • XKMS — abbr. XML Key Management Specification (W3C) …   Dictionary of abbreviations

  • XKMS — abbr. XML Key Management Specification (XML, W3C) …   United dictionary of abbreviations and acronyms

  • XML Key Management Specification — XKMS (XML Key Management Specification) est une spécification de validation et d enregistrement de clé publique utilisable de façon conjointe au signature XML et proposée notamment par Microsoft et Verisign au W3C. Sommaire 1 Objectifs 2… …   Wikipédia en Français

  • Comparison of layout engines (XML) — The following tables compare XML compatibility and support for a number of layout engines. Please see the individual products articles for further information. This article is not all inclusive or necessarily up to date. Unless otherwise… …   Wikipedia

Compartir el artículo y extractos

Link directo
Do a right-click on the link above
and select “Copy Link”