La infraestructura de clave pública simple ( SPKI , pronunciado spoo-key ) fue un intento de superar la complejidad de la infraestructura de clave pública tradicional X.509 . Fue especificada en dos especificaciones de solicitud de comentarios (RFC) del Grupo de Trabajo de Ingeniería de Internet (IETF) – RFC 2692 [ 1 ] y RFC 2693 [ 2 ] – del grupo de trabajo SPKI del IETF . Estas dos RFC nunca superaron el nivel de madurez "experimental" del estado de RFC del IETF . La especificación SPKI definió un formato de certificado de autorización, que proporciona la delimitación de privilegios, derechos u otros atributos similares (llamados autorizaciones ) y los vincula a una clave pública. En 1996, SPKI fue fusionado con la Infraestructura de Seguridad Distribuida Simple [ 3 ] ( SDSI , pronunciado sudsy ) por Ron Rivest y Butler Lampson .
Historia y descripción general
La SPKI original identificaba a las entidades principales únicamente como claves públicas , pero permitía vincular autorizaciones a dichas claves y delegar la autorización de una clave a otra. La codificación utilizada era de pares atributo:valor, similar a los encabezados de la RFC 822 .
El SDSI original vinculaba nombres locales (de individuos o grupos) a claves públicas (u otros nombres), pero solo proporcionaba autorización en listas de control de acceso (ACL) y no permitía la delegación de subconjuntos de la autorización de una entidad principal. La codificación utilizada era la expresión S estándar . Ejemplo de clave pública RSA en SPKI en "formato de transporte avanzado" (para el transporte real, la estructura estaría codificada en Base64 ):
( clave pública ( rsa-pkcs1-md5 ( e #03# ) ( n |ANHCG85jXFGmicr3MGPj53FYYSY1aWAue6PKnpFErHhKMJa4HrK4WSKTO YTTlapRznnELD2D7lWd3Q8PD0lyi1NJpNzMkxQVHrrAnIQoczeOZuiz/yY VDzJ1DdiImixyb/Jyme3D0UiUXhd6VGAz0x0cgrKefKnmjy410Kro3uW1| ))) La combinación SPKI/SDSI permite nombrar entidades principales, crear grupos de entidades principales con nombre y delegar derechos u otros atributos de una entidad principal a otra. Incluye un lenguaje para la expresión de autorización, un lenguaje que incluye una definición de "intersección" de autorizaciones. También incluye la noción de sujeto umbral , una construcción que otorga autorizaciones (o delegaciones) solo cuando K de N sujetos listados coinciden (en una solicitud de acceso o una delegación de derechos). SPKI/SDSI utiliza codificación de expresiones S, pero especifica una forma binaria extremadamente fácil de analizar (una gramática LR(0)) llamada expresiones S canónicas .
SPKI/SDSI no define un rol para una autoridad de certificación (CA) comercial. De hecho, una de las premisas de SPKI es que una CA comercial no cumple ninguna función útil. [ 4 ] Como resultado, SPKI/SDSI se implementa principalmente en soluciones cerradas y en proyectos de demostración de interés académico. Otro efecto secundario de este elemento de diseño es que resulta difícil monetizar SPKI/SDSI por sí solo. Puede ser un componente de algún otro producto, pero no existe un modelo de negocio para desarrollar herramientas y servicios SPKI/SDSI, salvo como parte de otro producto.
Las implementaciones generales más destacadas de SPKI/SDSI son E-speak, un producto de middleware de HP que utilizaba SPKI/SDSI para el control de acceso a métodos web, y UPnP Security, que utiliza un dialecto XML de SPKI/SDSI para el control de acceso a métodos web, la delegación de derechos entre participantes de la red, etc.
Véase también
Referencias
- ↑ C. Ellison (septiembre de 1999). Requisitos de SPKI . Grupo de trabajo de redes. doi : 10.17487/RFC2692 . RFC 2692 .Experimental.
- ↑ C. Ellison; B. Frantz; B. Lampson; R. Rivest ; B. Thomas; T. Ylonen (septiembre de 1999). Teoría del certificado SPKI . Grupo de trabajo de redes. doi : 10.17487/RFC2693 . RFC 2693 .Experimental.
- ↑ "SDSI – Una infraestructura de seguridad distribuida simple" . people.csail.mit.edu . Consultado el 15 de marzo de 2017 .
- ↑ Ellison, Carl (1996). "Establecimiento de identidad sin autoridades de certificación". 6.º Simposio de Seguridad de USENIX . CiteSeerX 10.1.1.31.7263 .
Enlaces externos
- Página principal de SPKI ,
- JSDSI (esfuerzo de desarrollo de código abierto)
- CDSA (esfuerzo de desarrollo de código abierto) .
- Gestión clave