Claves y motores criptográficos

Genera, importa y opera claves sin acoplar la PKI a un proveedor concreto.

El servicio de Gestión de Claves Criptográficas (KMS) de Lamassu IoT centraliza la generación, importación, custodia y uso de las claves de la plataforma. Desde aquí se gestionan las claves que soportan a las CAs y al resto de operaciones de firma que dependen de la PKI.

En la configuración actual, Lamassu IoT trabaja exclusivamente con claves asimétricas, como RSA y curvas elípticas. Estas claves se usan para emitir certificados X.509, firmar solicitudes y realizar operaciones de autenticación y validación dentro del sistema.

Qué resuelve el KMS

El KMS unifica la gestión del ciclo de vida de las claves y evita que cada servicio tenga que integrarse directamente con un proveedor criptográfico concreto.

En la práctica, permite:

  • Generar nuevos pares de claves desde Lamassu IoT.
  • Importar claves creadas externamente.
  • Delegar la custodia y las operaciones criptográficas en motores externos.
  • Reutilizar claves ya existentes para CAs, CSR y tareas de firma o verificación.

Motores criptográficos

Lamassu puede trabajar con distintos motores criptográficos según los requisitos del despliegue. En algunos entornos bastará con un motor software; en otros será necesario delegar la custodia en un HSM, en un servicio cloud o en una plataforma especializada.

Una misma instancia puede tener varios motores configurados al mismo tiempo, incluso varias instancias del mismo tipo. Esto permite adaptar la operación a distintos niveles de seguridad, coste y requisitos regulatorios.

Esta guía se dirige al operador PKI: elige y utiliza un motor ya habilitado. La instalación, credenciales, almacenamiento persistente y conectividad corresponden a Despliegue. Antes de generar una CA, comprueba el motor predeterminado, los algoritmos publicados y que una firma de prueba funciona. La disponibilidad en tu instalación depende de su versión y configuración.

File System

Genera claves software y almacena el material privado en archivos. Su custodia depende de permisos, almacenamiento y copias de seguridad de la instalación. Antes de utilizarlo para una CA operativa, acuerda cómo se recuperará la clave y cómo accederán a ella las réplicas; el registro del KMS no sustituye esos archivos.

HashiCorp Vault

El adaptador utiliza almacenamiento KV para el material privado. No equivale a una operación de firma dentro de Vault Transit: quien pueda leer el secreto puede recuperar la clave. Revisa los permisos de lectura, disponibilidad y recuperación con el responsable de Despliegue.

El adaptador se comunica con Vault a través de su endpoint HTTP(S) configurado. El certificado del servidor de Vault se verifica contra el almacén de confianza del sistema; para confiar en un Vault con certificado emitido por una CA privada, añade ese certificado de CA al ca_cert_file del motor (codificado en PEM). insecure_skip_verify=true desactiva la verificación y es un último recurso; acuerda los ajustes de transporte con el responsable de Despliegue.

AWS Secrets Manager

Ofrece persistencia cifrada en AWS con coste asociado. Protege la clave en reposo, pero un administrador autorizado puede recuperarla; no proporciona la misma resistencia a la extracción que un KMS o HSM.

AWS KMS

Delega las firmas en el servicio AWS KMS. El adaptador también contempla importación de material externo, sujeta a las capacidades y permisos del proveedor. Una clave generada fuera del servicio ya ha existido fuera de su custodia; importarla no elimina esas copias. Comprueba generación, importación y firma como operaciones distintas.

PKCS#11

Permite integrar HSMs locales, entornos aislados y servicios Key as a Service. La generación, persistencia y resistencia a la extracción dependen del dispositivo o proveedor concreto. Es la opción más flexible cuando la política exige custodia hardware.

Azure Key Vault

El backend también dispone de adaptadores para Key Vault Keys y Key Vault Secrets. El primero delega firmas al servicio de claves; el segundo conserva material privado como secretos y firma con ese material. No intercambies ambos modelos de custodia. Confirma qué adaptador está habilitado en tu instalación y prueba las operaciones necesarias.

Lamassu muestra en la consola el listado de motores habilitados.

Cada motor define qué algoritmos soporta, como RSA o ECC/ECDSA, y qué tamaños de clave puede generar.

Revisa con el operador de Despliegue qué motor está definido como predeterminado. Ese motor se utilizará cuando un proceso necesite crear o persistir una clave y el usuario no haya seleccionado uno específico, por ejemplo al crear o importar una CA.

Inventario de claves

La pantalla principal de KMS muestra el inventario completo de claves registradas en el sistema. Es la vista de referencia para revisar qué claves existen, dónde están custodiadas y con qué entidades están relacionadas.

La tabla incluye los siguientes campos:

  • Name: nombre descriptivo de la clave.
  • Type: algoritmo y tamaño de clave, por ejemplo RSA 2048 o EC P-256.
  • Strength: indicador visual de fortaleza criptográfica.
  • Public/Private: indica si Lamassu gestiona el par completo o solo la clave pública.
  • Crypto Engine: motor criptográfico que custodia la clave.
  • Aliases: nombres alternativos asociados a la clave.
  • Tags: etiquetas para clasificación y búsqueda.
  • Related Entities: certificados u otras entidades vinculadas a esa clave.

Desde esta vista también se accede a las acciones más habituales:

  • View Details para consultar metadatos, identificadores y relaciones.
  • Generate CSR para crear una solicitud PKCS#10 con la clave seleccionada.
  • Sign / Verify para probar operaciones criptográficas sobre la clave.
  • Delete Key para eliminar la clave del sistema.

Crear o importar claves

Necesitas permisos de administración de claves y un motor accesible. El perfil de emisión debe admitir el algoritmo que eliges si la clave va a utilizarse en una CA o CSR. Abre Create New Key y elige generación o importación.

Generar un nuevo par de claves

Si la clave va a nacer dentro de Lamassu, el flujo recomendado es generar un nuevo par gestionado directamente por uno de los motores configurados.

En la primera pantalla del asistente, elige Generate New Key Pair y después define los parámetros principales:

  • Key Name: nombre único y descriptivo.
  • Crypto Engine: motor que custodiará la clave.
  • Key Type y Key Size: algoritmo y tamaño o curva.
  • Tags: metadatos para clasificar la clave.
  • Metadata: información adicional para usos avanzados.

Importar un par existente

La importación permite registrar en Lamassu una clave generada fuera de la plataforma. Es el flujo habitual en escenarios BYOK, migraciones o integración con material criptográfico que ya está en producción.

  • Cuando tienes una clave privada exportable y el motor de destino admite su importación.
  • Cuando se necesita migrar una PKI existente sin reemitir certificados.
  • Cuando Lamassu debe operar con una raíz de confianza creada por un tercero.

En el asistente, elige Import Existing Key Pair y completa los campos solicitados:

  • Key Name: nombre descriptivo dentro de Lamassu IoT.
  • Crypto Engine: motor que custodiará la clave importada.
  • Tags: etiquetas para organización y búsqueda.
  • Metadata: información adicional opcional.
  • Private Key (PEM): clave privada en formato PEM.

Si la importación termina correctamente, abre el registro, comprueba motor y clave pública y realiza una firma de prueba. Una clave no exportable en un HSM no puede cargarse mediante este formulario PEM: configura el acceso al motor y comprueba cómo se registra la clave existente. Revisa dependencias y recursos que puedan haberse creado en el proveedor si una operación falla a mitad.

Operaciones sobre una clave

Cada clave registrada dispone de una vista de detalle y de varias acciones operativas.

Ver detalles

La pantalla View Details concentra la información técnica y administrativa de la clave.

En la pestaña Overview se muestran, entre otros, estos campos:

  • Key Name: nombre descriptivo.
  • Key Identifier: identificador único del sistema. Lamassu utiliza formatos de ID basados en PKCS11.
  • Tags: etiquetas asociadas.
  • Aliases: nombres alternativos.
  • Crypto Engine: motor en el que reside la clave.
  • Algorithm, Key Size & Strength: algoritmo, parámetros y nivel de fortaleza.

La sección Related Entities muestra qué objetos de Lamassu dependen de esa clave.

La pestaña Public Key muestra el material público en PEM. El identificador y la URI del registro sirven para localizar la clave; una URI con formato PKCS#11 no demuestra que el motor sea un HSM ni que exista un módulo local para acceder a ella.

Firmar y verificar

La acción Sign / Verify sirve para validar que la clave y el motor criptográfico funcionan correctamente.

Firma un mensaje de prueba, guarda la firma y verifícala con la misma clave pública, algoritmo y codificación. Cambia después el mensaje: la verificación debe fallar. Esto comprueba una operación concreta; no certifica todas las capacidades del motor ni la cadena de una CA.

Al abrirla aparecen dos áreas: Sign y Verify.

Sign

Esta pestaña usa la clave privada para generar una firma digital sobre un mensaje o sobre un digest ya calculado.

Campos principales:

  • Algorithm: algoritmo de firma disponible para el tipo de clave.
  • Message Type: Raw para datos en claro o Digest para un hash precalculado.
  • Payload Encoding: codificación de entrada, como UTF-8, Hex o Base64.
  • Message: contenido que se va a firmar.
  • Signature: resultado de la operación, mostrado en hexadecimal.

Verify

Esta pestaña comprueba si una firma corresponde a la clave pública asociada.

Campos principales:

  • Algorithm: debe coincidir con el algoritmo usado para la firma.
  • Message Type: Raw o Digest.
  • Payload Encoding: codificación del mensaje.
  • Message: mensaje original o hash.
  • Signature: firma que se desea comprobar.
  • Result: indicador del resultado de la validación.

Generar un CSR

La acción Generate CSR crea una solicitud PKCS#10 firmada con la clave privada custodiada en Lamassu, sin exponerla fuera del motor criptográfico.

Este flujo es útil para:

  • Solicitar certificados a una CA externa.
  • Renovar una identidad manteniendo la misma clave.

Al abrir el formulario se solicitan los datos del sujeto y los atributos principales del certificado:

  • Common Name (CN): nombre principal de la identidad.
  • Organization (O): organización o empresa.
  • Organizational Unit (OU): departamento o unidad.
  • Country (C): código de país de dos letras.
  • State / Province (ST): estado o provincia.
  • Locality (L): ciudad o localidad.
  • Email Address: correo de contacto.
  • Subject Alternative Names (SANs): nombres o identificadores alternativos, como DNS o IP.

Descarga la CSR y ejecuta openssl req -in request.csr -noout -verify -text. Comprueba firma, sujeto y SAN antes de enviarla. La CSR no determina por sí sola el certificado final: la política de emisión puede sustituir sus campos.

Firma local con PKCS#11

Lamassu también ofrece una ayuda específica para integraciones locales mediante Sign locally with OpenSSL & PKCS11 tools.

Requiere el módulo, token y permisos del proveedor correspondiente. Comprueba que el identificador de Lamassu se corresponde con el objeto accesible desde ese módulo. La configuración del módulo pertenece al entorno del cliente o al Despliegue.

Antes de eliminar una clave

Revisa Related Entities y localiza CAs, certificados y procesos de validación que siguen necesitando firmas. Revocar una CA no elimina la necesidad de publicar estado durante su periodo de retención. Eliminar una clave tampoco revoca automáticamente sus certificados. Planifica sustitución y retención antes de usar Delete Key; el efecto de borrado en el proveedor depende del motor.

En esta página