Teniendo en cuenta este hilo:
Crear certificado sin clave privada con OpenSSL
Tengo una situación muy similar. Tengo un USB eToken 5110 JC (Aladdin) que tiene una clave privada inaccesible, ya que es el objetivo principal. Puedo usar pkcs11-tool --module /lib/libeToken.so.9 -l --pin -s -i
y funciona bien. El libeToken.so.9 es proporcionado por el controlador SAC 9.1 (Safenet Authentication Tool). Hasta ahora todo bien.
Mi problema es: necesito generar certificados y firmarlos con este eToken. Intenté usar el motor pkcs11 con openssl sin éxito. Tal vez debido a una mala configuración (intenté enlace cómo, pero tengo muchos errores y me he rendido)
Intenté usar gpg pero recibo errores al aprender la tarjeta.
Como puedo exportar fácilmente certificados y claves públicas desde USB Token, la punta de Valentin Bossi suena bien, ya que podría ejecutar openssl x509 -force_pubkey
. ¿Es correcto hasta ahora?
¿Cuál será el problema de hacer esto? Sé que firmar es un proceso de generar un hash de algunos datos y cifrarlos con una clave privada. Cuando algunos datos se envían a alguien con su firma, el destinatario verificará cuál fue el algoritmo de hash, luego generará un hash de los datos con el mismo algoritmo y los comparará con los datos de hash descifrados con la clave pública del remitente, ¿verdad?
Entonces, al generar un certificado, no importa si los datos provienen de una CSR o una entrada estándar, la firma realizada a través de una clave pública no aseguraría la firma digital, ya que cualquiera podría obtener esta clave pública y generar certificados en nombre del propietario de eToken. / p>
¿Y ahora qué? ¿En qué me he equivocado?
Los datos cifrados con una clave privada se pueden descifrar con su clave pública y viceversa. Pero no sabía que es posible cifrar y descifrar usando la misma clave (ya que las claves son asimétricas).