Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

103
Views
¿Acelerar jarsigner con token de hardware?

Anteriormente firmé archivos jar usando un almacén de claves instalado localmente como parte de una compilación automatizada. Ahora me enfrento a tener que usar un dispositivo basado en hardware, debido a cambios recientes en los requisitos mínimos de firma de código, y aunque descubrí cómo hacerlo, veo ralentizaciones extremas.

Solo como un ejemplo, un archivo jar con 180 clases en el que antes podía iniciar sesión en aproximadamente medio segundo ahora demora aproximadamente 30 segundos. A medida que avanza, veo que la luz de acceso de mi dispositivo token parpadea varias veces por segundo, presumiblemente una vez para cada clase en el archivo jar.

¿Hay alguna forma de acelerar esto, por ejemplo, alguna forma de reducir los accesos de token a un solo acceso para todo el archivo jar?

over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

No fue una respuesta, pero es demasiado larga para un comentario:

Si su suposición de un acceso al token para cualquier archivo es correcta, significaría que el hash de los archivos también se calcula en el dispositivo, no solo la firma.

¿Su dispositivo PKCS11 tiene una opción de registro que podría mostrar qué llamadas pkcs11 está recibiendo el dispositivo (las operaciones hash se denominan C_Digest en PKCS11) para confirmar? Tal vez con la opción mencionada en java keytool con el proveedor de opensc pkcs#11 solo funciona con la opción de depuración habilitada (no lo he probado)

Como no sé si hay alguna manera de decirle a jarsigner que haga hash por software y firme por hardware, si no puede encontrar una mejor respuesta, tal vez pueda escribir su propio proveedor: ( http://docs.oracle. com/javase/7/docs/technotes/guides/security/crypto/HowToImplAProvider.html ):

  • implementar un hash de software (MessageDigestSpi, simplemente reenviar la llamada al proveedor de Java de software predeterminado)
  • y una firma de dispositivo (SignatureSpi, simplemente reenviando la llamada al proveedor PKCS11 configurado en Java). Creo que fue Signature signature = Signature.getInstance("SHA1withRSA", "SunPKCS11") y así sucesivamente. Y analógico para KeyStoreSpi.

Y luego llame a jarsigner con su proveedor como parámetro.

over 4 years ago · Santiago Trujillo Report

0

Intente agregar -sigalg SHA512withRSA a sus opciones de jarsigner.

Para obtener más información, consulte mi respuesta a una pregunta relacionada

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!