Después de la introducción en los albores de Internet, la infraestructura de clave pública (PKI) ha pasado por varias iteraciones de cambios y actualizaciones, pero sigue siendo la metodología tradicional para cifrar datos y asegurar la comunicación. PKI admite la privacidad y la protección de la comunicación de datos entre navegadores y servidores, pero requiere la confianza implícita de una sola entidad o cadena de entidades llamada autoridad de certificación (CA) que ha llevado a un colapso de la confianza. A través de los años, tener una entidad raíz para controlar la forma en que se emiten las claves privadas al público ha demostrado que puede causar complicaciones importantes con la transparencia y la seguridad.
En este artículo, volveremos a profundizar en los problemas del sistema actual y consideraremos las soluciones que se están desarrollando para superar las deficiencias existentes.
Desafíos actuales de la infraestructura de clave pública
El enfoque más utilizado para las infraestructuras de clave pública (PKI) es la Web PKI. Es un sistema basado en la Autoridad de Certificación que adopta una infraestructura de confianza centralizada. La tarea que resuelve PKI es garantizar la seguridad de la correspondencia entre el identificador del sujeto y su clave pública. Dicho cumplimiento debe verificarse para verificar la autenticidad de la parte con la que se establece la conexión segura. La tarea más importante es establecer la correspondencia entre la identidad (datos de identificación) y la clave pública del usuario. Este problema se resuelve utilizando un certificado de clave pública, un documento electrónico utilizado para demostrar la propiedad de una clave pública. El certificado contiene la clave pública y las credenciales del usuario, así como la firma electrónica de la parte de confianza que verifica al usuario. Para garantizar la integridad y autenticidad del certificado, está firmado por una parte confiable: una autoridad de certificación.
Las soluciones de PKI web centralizadas tienen una serie de problemas agudos:
- Existen algunos desafíos asociados con la notificación rápida del compromiso clave, ya que la formación y distribución de la lista de certificados revocados puede llevar de varios minutos a una hora. Como resultado, no existe una garantía del 100% de que esta clave pertenezca a un usuario específico en el momento actual.
- Si el certificado se verifica en línea (a pedido de la autoridad de certificación), se viola la privacidad del usuario, ya que la autoridad de certificación conocerá todo el historial de interacción del usuario.
- Dificultades asociadas con la detección de la presencia de certificados de autoridades de certificación raíz no deseadas. En este caso, el hardware se puede instalar en la ruta del tráfico cifrado entre el cliente y el servidor, lo que descifra todos los datos que el cliente y el servidor pasan desapercibidos.
- Se pueden emitir varios certificados para el mismo nombre, es decir, se puede certificar el mismo identificador en diferentes centros raíz.
- El proceso de renovación del certificado es complicado, ya que debe comunicarse con el centro de registro una vez más, cambiar los datos, regenerar el certificado y certificarlo con una autoridad de certificación.
- Existen diferentes estándares para las firmas electrónicas, como resultado de la necesidad de seleccionar algoritmos y los usuarios sufren problemas de compatibilidad.
- El centro del sistema siempre es un punto de ataque, y comprometer el certificado raíz expondrá todo el sistema a un montón de vulnerabilidades.
- La gestión del identificador está en manos de una organización centralizada y no pertenece al propio propietario del identificador.
Como podemos ver, la infraestructura de clave pública necesita urgentemente una revisión para eliminar los agujeros de seguridad que amenazan un medio sólido de proteger los sistemas empresariales. El Grupo de trabajo de ingeniería de Internet (IETF) responsable de Web PKI ha creado un
memo que describe los problemas actuales de PKI y acuerda que la implementación actual de Web PKI tiene problemas que no deben ignorarse. El diseño PKI desactualizado presenta altos riesgos de seguridad porque se puede usar un solo punto de falla para abrir cualquier comunicación encriptada en línea. Los sistemas de PKI centralizados están luchando por mantenerse al día con el panorama digital en evolución y existe la necesidad de un enfoque descentralizado y mejor diseñado para las PKI.
La descentralización llega al rescate
En PKI descentralizada, blockchain actúa como un almacenamiento descentralizado de valor clave. Es capaz de proteger los datos leídos para evitar ataques MITM (Man-In-The-Middle) y minimizar el poder de terceros. Al llevar el poder de la tecnología blockchain a los sistemas, DPKI resuelve los problemas con los sistemas PKI tradicionales. La naturaleza descentralizada del marco de gestión puede abordar los problemas con los sistemas de CA a través de la revocación de certificados, eliminando puntos únicos de falla y reaccionando rápidamente ante el mal uso de las CA. Blockchain puede hacer que el proceso sea transparente, inmutable y evitar que los atacantes intervengan, evitando así de manera efectiva los ataques MITM.
Las soluciones basadas en blockchain no requieren ningún estándar especializado para operar con datos en blockchain, solo requieren un software que les permita interactuar con la cadena. Esto permite que los sistemas de TI verifiquen los certificados con API para la interacción con la cadena de bloques y garantiza la interoperabilidad con todas las plataformas (servidor, escritorio o dispositivo móvil). Otras ventajas de blockchain en el contexto de PKI incluyen las siguientes:
- Transparencia Todos los participantes en la cadena de bloques tendrán acceso a la lógica del contrato inteligente, proporcionando transparencia sobre lo que se acuerda en el contrato digital. Las transacciones también se registran para proporcionar una pista de auditoría clara.
- Reducción de recursos. Con blockchain y contratos inteligentes que actúan como intermediarios o agentes, se pueden reducir los recursos y el tiempo necesario para las transacciones. Esto es especialmente así en el caso de contratos inteligentes en los que se acuerdan condiciones predefinidas, y un proceso de ejecución automática se lleva a cabo una vez que se cumplen estas condiciones.
- Eliminando errores. Con todos los nodos en la red procesando transacciones individualmente, actualizando y reconciliando los registros, se pueden omitir errores en los cálculos.
- Integridad Los registros se concilian entre sí para garantizar que no se realicen cambios no autorizados.
- Durabilidad Como los registros no están controlados solo por nodos particulares, no existe un único punto de falla en toda la red blockchain. Esto hace que una red blockchain sea más duradera y robusta.
- Tolerancia a fallos mejorada y resistencia DDoS. Una de las características que ofrece blockchain es la mitigación de los riesgos de ataques de denegación de servicio (DDoS). Esto se realiza descargando la presión de rendimiento entre todos los nodos de la red. Un desarrollador de aplicaciones, que utiliza el enfoque blockchain, puede alojar un nodo independiente para servir a sus usuarios o, según el caso, simplemente usar cualquier nodo disponible públicamente.
Enfoques para la PKI basada en Blockchain
Por el momento, hay varios enfoques para resolver los problemas descritos anteriormente, como sigue:
- Infraestructura de clave pública descentralizada (DPKI) basada en tecnología de vinculación de transacciones , por Andrey Chmora, Director de Tecnología e Innovaciones de ENCRY.
Andrey Chmora sugirió un nuevo enfoque para construir una PKI para eliminar las desventajas existentes utilizando la tecnología de contabilidad distribuida (blockchain). La tecnología patentada descrita en uno de nuestros artículos anteriores propone la forma de verificar que los conjuntos particulares de claves públicas realmente pertenecen a propietarios particulares sin la necesidad de centros de certificación y un concepto de certificado en su conjunto. Se propone crear una transacción nula para almacenar la información sobre el propietario y su billetera electrónica (de la cual se cobra una tarifa de comisión por agregar una transacción al libro mayor). Una transacción nula sirve como un "ancla" para conectar las próximas transacciones junto con los datos sobre claves públicas. Cada transacción de este tipo contiene una estructura de datos especializada que se denomina "notificación": un conjunto de datos estructurados de campos funcionales que almacena información sobre la clave pública del propietario y garantiza la persistencia de esta clave al agregarla a uno de los registros relacionados en el archivo distribuido libro mayor - IKP (Instant Karma PKI) - Dando la vuelta a un PKI con Blockchain , por Stephanos Matsumoto de la Universidad Carnegie Mellon y Raphael Reischuk de ETH Zurich.
Los investigadores sostienen que las mejoras de PKI basadas en registros, como la Transparencia de certificados, no ofrecen incentivos suficientes para los registros y monitores, y no ofrecen ninguna acción que los dominios puedan tomar en respuesta al mal comportamiento de CA. Para abordar este problema, proponen IKP, una mejora de PKI basada en blockchain que ofrece respuestas automáticas al mal comportamiento de CA e incentivos para aquellos que ayudan a detectar el mal comportamiento. A través de su investigación, demuestran que la naturaleza descentralizada de IKP y el sistema de contrato inteligente permite una participación abierta, ofrece incentivos para la vigilancia de las AC, permite el recurso financiero contra el mal comportamiento y que los incentivos y la mayor disuasión ofrecida por IKP son técnica y económicamente viables. - Infraestructura de clave pública descentralizada (DPKI) , patrocinada por Respect Network, PWC, Open Identity Exchange y Alacrity Software.
El grupo de investigadores argumenta que los problemas de seguridad y usabilidad de PKI pueden abordarse mediante el uso de almacenes de datos descentralizados de clave-valor para crear una especificación para una Infraestructura de clave pública descentralizada (DPKI). El precepto fundamental de DPKI es que las identidades pertenecen a las entidades que representan. Eso requiere diseñar una infraestructura descentralizada donde cada identidad sea controlada no por un tercero confiable, sino por su propietario principal. La investigación ha demostrado que DPKI funciona incluso en dispositivos móviles con recursos limitados, y que puede preservar la integridad de los identificadores al proteger a las organizaciones de la pérdida o el compromiso de la clave privada. DPKI tiene ventajas en cada etapa del ciclo de vida de PKI. Hace posible el arranque sin permiso de las identidades en línea y permite la creación simple de certificados SSL más fuertes. - Respaldando credenciales ricas con un Blockchain PKI , por Karen Lewison y Francisco Corella. Los investigadores están abordando el problema de la prueba remota de identidad. Si bien su enfoque de implementar PKI en una cadena de bloques con almacenamiento en cadena requiere la presencia de una CA emisora, tiene muchas ventajas. La verificación de revocación se realiza en la copia local del verificador de la cadena de bloques sin requerir CRL u OCSP. Esta propuesta resuelve un problema de larga data de las PKI tradicionales al no requerir el uso de un servicio que emite listas de revocación de certificados (CRL) o responde a consultas en línea del protocolo de estado de certificados (OCSP).
- PB-PKI: una PKI basada en Blockchain basada en la privacidad , por Louise Axon y Michael Goldsmith, Universidad de Oxford.
Los investigadores sostienen que las propuestas existentes no proporcionan la conciencia de privacidad que se requiere de PKI en ciertas aplicaciones presentes y emergentes. Su investigación tuvo como objetivo demostrar cómo se puede construir una PKI basada en blockchain para proporcionar diferentes niveles de conciencia de privacidad. Aunque la propuesta logra el anonimato total, esto tiene un costo de seguridad: los miembros de la red pueden alterar a corto plazo las claves públicas de otros. La seguridad de PB-PKI se puede mejorar logrando un nivel de privacidad ligeramente inferior a través de la certificación de grupos vecinos, que verifican los cambios clave en las actualizaciones.
Conclusión
La edad de PKI controlada por las autoridades de certificación está llegando a su fin. Las necesidades cambiantes de las empresas, su mayor conectividad y las capacidades mejoradas de los atacantes cada vez más sofisticados han requerido una transición a una alternativa más resistente. Esa alternativa reside en la cadena de bloques, donde no se aplican muchas de las debilidades fundamentales de la PKI tradicional. Blockchain no es una panacea de seguridad, pero en el contexto de PKI, se pueden obtener beneficios convincentes al utilizar un entorno descentralizado.