en English
X

Select Language

Powered by Google TranslateTranslate

We hope you will find the Google translation service helpful, but we don’t promise that Google’s translation will be accurate or complete. You should not rely on Google’s translation. English is the official language of our site.

en English
X

Select Language

Powered by Google TranslateTranslate

We hope you will find the Google translation service helpful, but we don’t promise that Google’s translation will be accurate or complete. You should not rely on Google’s translation. English is the official language of our site.

Firma remota de código EV con eSigner

Con SSL.com's eSigner servicio, puede utilizar sus credenciales de usuario de SSL.com para firmar código desde cualquier dispositivo conectado a Internet. Esta guía le mostrará cómo inscribir un Firma de código EV orden de certificado en eSigner y firmar el código con la aplicación web eSigner Express, o desde la línea de comando con CodeSignTool o la API de firma de código compatible con CSC de SSL.com.

eSigner se puede utilizar para Microsoft Authenticode y la firma de código Java, y puede firmar instaladores de MSI y varios tipos de scripts. Una lista completa de tipos de archivos compatibles está disponible al final de esta guía.

Antes de comenzar, necesitará un Firma de código EV certificado de SSL.com. Para obtener información sobre cómo solicitar su certificado de SSL.com, lea esto How-To. Si desea probar eSigner con una cuenta de demostración y un certificado, lea Certificados y credenciales de demostración de eSigner para obtener credenciales e información de configuración.

Inscríbase en eSigner

Primero, deberá inscribir un pedido de certificado de firma de código EV con eSigner.

  1. Navegue hasta una orden de firma de código EV emitida en su cuenta de SSL.com. Tenga en cuenta que el pedido está etiquetado eSigner Ready.
    Orden de firma de código EV lista para eSigner
  2. Haga clic en uno de los descargar campo de golf.
    descargar enlaces
  3. Cree y confirme un PIN de 4 dígitos y haga clic en el crear PIN
Si necesita restablecer su PIN de eSigner, lea este tutorial.
Crear PIN
  • Se generará su certificado y, después de unos momentos, aparecerá un código QR encima del descargas de certificados mesa.
  • La próxima vez que vuelva a cargar la página, el código QR no será visible. Si necesita ver o restablecer su código QR de eSigner, lea este tutorial.
    Código QR
  • Escanee el código QR en una aplicación de autenticación de 2 factores en su dispositivo móvil, como google Authenticator or Authy. La aplicación le proporcionará contraseñas de un solo uso (OTP) para usar al firmar. Cada OTP es válida por 30 segundos.
    OTP en Authy
  • Consejos: Puede usar eSigner para compartir certificados de firma de código EV entre compañeros de equipo. Por favor lee Uso compartido en equipo para certificados de firma de código EV y documento eSigner para obtener instrucciones.

    Firmar código con eSigner Express

    eSigner express es una práctica herramienta GUI basada en web para firmar códigos y documentos. Aquí se explica cómo usarlo para firmar un archivo de código.

    1. Navegue hasta https://express.esigner.com/ con su navegador web.
      express.esigner.com
    2. Haga clic en el Iniciar sesión con cuenta SSL.com
      Iniciar sesión con cuenta SSL.com
    3. Ingrese su SSL.com nombre de usuario y la la contraseña, A continuación, haga clic en el Acceso de usuario
      ventana de inicio de sesión
    4. Aparecerá la pantalla principal de eSigner. Arrastre un archivo para firmarlo en el área de colocación o haga clic y navegue hasta el archivo. Tenga en cuenta que si planea firmar un archivo de más de 50 MB, deberá utilizar CodeSignTool. Hacer clic aquí para obtener instrucciones sobre cómo utilizar esta herramienta.
      Subir archivo PDF
    5. Ingrese un código de 6 dígitos de su aplicación de autenticación de dos factores.
      autenticación de dos factores
    6. Debería ver un aviso de que su archivo se ha firmado correctamente. Haga clic en el Descargar archivo y elija una ubicación para guardar el archivo.
      Descargar archivo
    7. Verifique las propiedades del archivo para confirmar la firma digital.
      Firma digital
    Nota: Si está firmando archivos de código que se incluirán en un instalador (como un archivo MSI de Windows), deberá firmar estos archivos antes de crear el instalador y luego firmar el archivo del instalador.
    Algunos usuarios de eSigner han informado problemas con firmas no válidas al firmar instaladores de MSI creados con Microsoft Visual Studio. Como solución alternativa, le sugerimos que cree sus archivos MSI con Conjunto de herramientas WiX. Para la conveniencia de los usuarios de Visual Studio, un Extensión de WiX Toolset VS está disponible.

    Firmar código con CodeSignTool

    Esta sección incluye instrucciones para firmar código con CodeSignTool, una herramienta de línea de comandos proporcionada por SSL.com. Con CodeSignTool, puede firmar un archivo con un comando. (Para obtener una descripción general completa de todas las opciones y parámetros de CodeSignTool, consulte la Guía de comandos de eSigner CodeSignTool.)

    Instalar CodeSignTool

    Primero, descargue CodeSignTool, una utilidad de firma de código de línea de comandos para eSigner. Tenga en cuenta que la descarga de Windows tiene incrustado el tiempo de ejecución de Java, pero la versión de Linux / macOS requiere que el tiempo de ejecución de Java esté instalado en su computadora.

    Para instalarlo, simplemente descargue CodeSignTool para su sistema operativo y descomprima el archivo:

    Trabajar con CodeSignTool

    Puede usar CodeSignTool para firmar código, obtener una lista de ID de credenciales asociadas con una cuenta de usuario de SSL.com o mostrar la información del certificado EV vinculada a un ID de credencial y un usuario.

    Código de firma

    1. Cuando esté listo para comenzar a firmar, abra una terminal y navegue hasta el directorio con CodeSignTool.bat (Windows) o CodeSignTool.sh (macOS / Linux).
    2. Ingrese el siguiente comando para firmar un archivo. (Reemplace los valores en MAYÚSCULAS con sus valores reales):
      CodeSignTool sign -username = USERNAME -password = PASSWORD -input_file_path = PATH / TO / FILE -output_dir_path = PATH / TO / OUTPUT / DIRECTORY
      • Si su contraseña incluye caracteres especiales, escríbala entre comillas (p. Ej. -password="P!@^^ssword12").
      • Si tiene más de un certificado de firma de código EV inscrito en eSigner, debe especificar el que se usará con el -credential-id opción. Consulte a continuación para obtener información sobre cómo recuperar una lista de ID de credenciales.
    3. Se le pedirá una OTP. Obtenga una OTP de su aplicación de autenticación e ingrésela.
      Ingrese la OTP - Presione enter para continuar: 123456
      
    La generación de la OTP puede automatizarse, lo que permite el uso automatizado de CodeSignTool en scripts de compilación y canalizaciones CI / CD. Por favor lee Automatizar la firma de código de eSigner EV para obtener más información.
  • Debería recibir un mensaje de que su archivo se firmó correctamente. Verifique las propiedades del archivo de salida para la firma digital.
    Código firmado correctamente: C: \ Users \ Aaron Russell \ Desktop \ CodeSignTool-v1.0-windows \ output \ test.exe
    Firma digital

  • Si recibe el mensaje de error, Error: invalid otp al intentar firmar un archivo, podría deberse a uno o más de estos problemas:

    • El código QR que escaneó en su aplicación de autenticación no coincide con el nombre de usuario, contraseña y / o ID de credencial de su comando. Esto podría suceder si:
      • Tiene varias cuentas configuradas para 2FA en su dispositivo y eligió la incorrecta.
      • Está intentando utilizar sus credenciales de inicio de sesión para un certificado compartido, pero escaneó un código QR compartido por un compañero de equipo desde su cuenta.
    • La OTP que ingresó ya venció.
    • Si usas la automatización, su comando incluye un secreto TOTP no válido.
    Nota: Si está firmando archivos de código que se incluirán en un instalador (como un archivo MSI de Windows), deberá firmar estos archivos antes de crear el instalador y luego firmar el archivo del instalador.
    Algunos usuarios de eSigner han informado problemas con firmas no válidas al firmar instaladores de MSI creados con Microsoft Visual Studio. Como solución alternativa, le sugerimos que cree sus archivos MSI con Conjunto de herramientas WiX. Para la conveniencia de los usuarios de Visual Studio, un Extensión de WiX Toolset VS está disponible.

    Obtener ID de credenciales

    Utilice el siguiente comando para obtener los ID de credenciales asociados con una cuenta de SSL.com. (Reemplace los valores en MAYÚSCULAS con sus valores reales):

    CodeSignTool get_credential_ids -username = USERNAME -password = PASSWORD

    Obtenga información de firma de código EV

    Utilice el siguiente comando para la información del certificado de firma de código EV vinculada a un ID de credencial y un usuario. (Reemplace los valores en MAYÚSCULAS con sus valores reales):

    CodeSignTool credential_info -username = USERNAME -password = PASSWORD -credential_id = CREDENTIAL-ID

    Firmar varios archivos

    Utilice el siguiente comando para registrar por lotes hasta 100 archivos. (Reemplace los valores en TODAS LAS MAYÚSCULAS con sus valores reales):

    CodeSignTool batch_sign -username = USERNAME -password = PASSWORD -input_dir_path = / PATH / TO / CODE / FILES -output_dir_path = / PATH / TO / OUTPUT / DIRECTORY

    Precalcular hashes

    Utilice el siguiente comando para precalcular hashes para firmar con el batch_sign_hash mando. (Reemplace los valores en MAYÚSCULAS con sus valores reales):

    CodeSignTool hash -input_dir_path = / RUTA / A / CÓDIGO / ARCHIVOS

    Hashes de signo de lote

    Utilice el siguiente comando para firmar hashes por lotes calculados con el hash mando. Tenga en cuenta que necesitará un token de acceso y OTP. (Reemplace los valores en MAYÚSCULAS con sus valores reales):

    CodeSignTool batch_sign_hash -access_token=ACCESS-TOKEN -input_dir_path=PATH/TO/HASHES -output_dir_path=PATH/TO/OUTPUT/DIRECTORY -otp=OTP

    Firmar código con API de firma de código

    También puede utilizar llamadas a la API para integrar la firma de código eSigner en sus aplicaciones y scripts. Los comandos de ejemplo que se muestran a continuación utilizan cURL, por lo que deberá asegurarse de que esté disponible en su computadora antes de comenzar. También necesitarás tu ID de cliente (también conocido como ID de aplicación. Por favor refiérase a este tutorial para obtener instrucciones sobre cómo generar esta credencial). Si su solicitud está marcada como confidencial, también necesitará su Secreto del cliente.

    Recuperar token de acceso

    El primer paso es recuperar un token de acceso de SSL.com. Necesitarás tu ID de cliente (y posiblemente tu Secreto del cliente) disponible, así como el nombre de usuario y la contraseña de su cuenta de SSL.com. Los tokens de acceso son válidos durante una hora después de su emisión.

    1. Utilice el siguiente comando para solicitar un token de acceso. Reemplace los valores mostrados en MAYÚSCULAS con sus valores reales:
      curl --location --request POST "https://login.ssl.com/oauth2/token" \ --header "Tipo de contenido: application / json" \ --data-raw "{\" client_id \ ": \ "YOUR-CLIENT-ID \", \ "grant_type \": \ "contraseña \", \ "nombre de usuario \": \ "TU-USUARIO \", \ "contraseña \": \ "TU-CONTRASEÑA \"} "
    2. Si su solicitud está marcada como confidencial, agregue también su secreto de cliente:
      curl --location --request POST "https://login.ssl.com/oauth2/token" \ --header "Tipo de contenido: application / json" \ --data-raw "{\" client_id \ ": \ "SU-ID-CLIENTE \", \ "client_secret \": \ "SU-CLIENT-SECRET \", \ "grant_type \": \ "contraseña \", \ "nombre de usuario \": \ "SU-NOMBRE-USUARIO \ ", \" contraseña \ ": \" SU-CONTRASEÑA \ "}"

       

    3. Debería recibir un objeto JSON que contiene un token de acceso y un token de actualización. Copie el valor del token de acceso para pegarlo en sus solicitudes de API. No necesitará el token de actualización para estos ejemplos.

      {"access_token":"eyJraWQiOiJmUE1yYUdlbXVMWGUtcG9JWUtLem1CMEYwYXlFczktUEpiN29lTWFlY2I0IiwiYWxnIjoiUlMyNTYifQ.eyJpc3MiOiJTU
      0wuY29tIEF1dGhlbnRpY2F0aW9uIFNlcnZpY2UiLCJleHAiOjE2MTQ4OTcxNDIsImlhdCI6MTYxNDg5MzU0MiwianRpIjoiZmI2OTZlNDUtMTIzOS00ZGE4LW
      I1MmYtODNkZDE2MTY3ZTM3IiwidXNlciI6eyJ1c2VyX2lkIjoxMzIyODU4LCJ1c2VyX2VtYWlsIjoiYWFyb24uZS5ydXNzZWxsQGdtYWlsLmNvbSIsInNzbF9
      hY2NvdW50X2lkIjo0NzQzMDJ9LCJjbGllbnQiOnsiaWQiOiJmUE1yYUdlbXVMWGUtcG9JWUtLem1CMEYwYXlFczktUEpiN29lTWFlY2I0In19.fCKDs1igjsI
      UDG2sUN_2OTb90Jw1nKNPHcD1MyEUR6sHCv_aJmcvcaFRne_eKLHzeQ9WtT5y3Fb2ppc50kMnjPG6JgX5gnFMptMn-ySsI277CtKbkSn3u-WSDSovn51jPm82
      4wTeJmuXEzdv9clRjTwp6VoM9eqHCIaDAd3MP2xpMaa35cZbDaaAFKQ7jxWo9dUuTZY7DsKK0p1LloUEnmNxtNimQ3GDwkj_M600WB1zYrhDL9_3oZKaXcUx9
      qzHcBCLzGgeaZ0xdpZtADxmXDUCcmkZi20yQ53bxqVL2w00sJ73efKB7JGeGWVehO-ZlGs3PUQwooox1JgEgcsA","token_type":"Bearer",
      "expires_in":3599,"refresh_token":"o-3V2YD1iIVCh3iJFwFonTohlq_LbGXaJcUvy37ciYA","created_at":1614893542}%

    Recuperar ID de credencial

    A continuación, deberá recuperar el ID de credencial asociado con su certificado de firma de código EV inscrito en eSigner.

    1. Utilice el siguiente comando para recuperar la lista de ID de credenciales de firma de código EV de su cuenta. (Reemplace MY-ACCESS-TOKEN con su token de acceso real):
      curl --location --request POST "https://cs.ssl.com/csc/v0/credentials/list" \ --header "Tipo de contenido: application / json" \ --header "Autorización: Portador MY- TOKEN DE ACCESO "\ --data-raw" {\ "clientData \": \ "EVCS \"} "
    2. Debería recibir un objeto JSON con una lista de ID de credenciales asociados con el usuario. Su lista probablemente contendrá un valor. Copie y pegue su ID de credencial en un editor de texto para usar en solicitudes posteriores.
      {"credentialIDs":["e4763186-5006-48de-bb15-a977e0e84281"]}%

    Subir archivo

    El siguiente paso es cargar su archivo para ser firmado.

    1. Utilice el siguiente comando para cargar un archivo para firmar. (Reemplace los valores mostrados en MAYÚSCULAS con sus valores reales):
      curl --location --request POST "https://cds.ssl.com/v1/code/upload" \ --header "Id. de credencial: MY-CREDENTIAL-ID" \ --header "Tipo de contenido: aplicación / exe "\ --header" Autorización: Portador MY-ACCESS-TOKEN "\ --data-binary" @ / PATH / TO / FILE "
    2. Debería recibir un objeto JSON con un id valor para usar en la solicitud del archivo de signo:
      {"id":"6035539b-4055-43f2-8749-3ad6e559b4cd"}%

    Firmar archivo

    1. Ahora puede firmar el archivo, utilizando el ID de archivo que obtuvo en la solicitud anterior y una OTP de su aplicación 2FA. (Reemplace los valores mostrados en MAYÚSCULAS con sus valores reales):
      curl --location --request POST "https://cds.ssl.com/v1/code/sign" \ --output "PATH / TO / OUTPUT / FILE" \ --header "Content-Transfer-Encoding: aplicación / json "\ --header" Tipo de contenido: aplicación / json "\ --header" Autorización: Portador MY-ACCESS-TOKEN "\ --data-raw" {\ "id \": \ "MY-FILE- ID \ ", \" otp \ ": \" MI-OTP \ "}"
    2. Debería recibir un archivo firmado en la ubicación que especificó con --output en el comando anterior. Verifique las propiedades del archivo para confirmar la firma digital.
      Firma digital
    Nota: Si está firmando archivos de código que se incluirán en un instalador (como un archivo MSI de Windows), deberá firmar estos archivos antes de crear el instalador y luego firmar el archivo del instalador.
    Algunos usuarios de eSigner han informado problemas con firmas no válidas al firmar instaladores de MSI creados con Microsoft Visual Studio. Como solución alternativa, le sugerimos que cree sus archivos MSI con Conjunto de herramientas WiX. Para la conveniencia de los usuarios de Visual Studio, un Extensión de WiX Toolset VS está disponible.

    Firmar hash con la API de CSC

    Si está desarrollando sus propias aplicaciones para firmar código (como SSL.com's CodeSignTool) y desea evitar la transferencia de artefactos de código a través de Internet, puede utilizar la API de Cloud Signature Consortium (CSC) para crear una firma digital a partir de un hash de archivo.

    Recuperar el token de acceso y el ID de credencial

    Primero, siga los pasos que se muestran en la sección anterior para recuperar un Token de acceso y la ID de credencial.

    Recuperar autorización

    1. Utilice el siguiente comando para recuperar la autorización para firmar un hash. Reemplazar MY-ACCESS-TOKEN, MY-CREDENTIAL-IDy MY-HASH con su información real. Obtenga una contraseña de un solo uso de su aplicación 2FA y utilícela como valor para MY-OTP.
      curl --location --request POST "https://cs.ssl.com/csc/v0/credentials/authorize" \ --header "Tipo de contenido: application / json" \ --header "Autorización: Portador MY- TOKEN DE ACCESO "\ --data-raw" {\ "credentialID \": \ "MI-ID-CREDENCIAL \", \ "numSignatures \": 1, \ "hash \": [\ "MY-HASH \" ], \ "OTP \": \ "MI-OTP \"} "
    2. Debería recibir un objeto JSON con sus datos de activación de firma (SAD).
      {"SAD":"eyJ1c2VyX2lkIjoxMzQ4MzQyLCJleHBpcmVzX2luIjoiMjAyMS0wNS0xMiAxODo1MDo1MiswMDAwIiwiaGFzaCI6WyJzVE9nd09tKzQ3NGdGajBxM
      HgxaVNOc3BLcWJjc2U0SWVpcWxEZ1wvSFd1ST0iXSwiY3JlZGVudGlhbF9pZCI6ImJjNzE1ZWRhLWQ4MjUtNDliNy1hOGQ1LWVmZGM2ZGI1ZTZkMiJ9.QncXA
      7B+fnUgOUl+SI0FA5tX7N+iKgOA1EyHKWUwUgTLs9Ft2+O4Gk6AVBcX49IEHPsoeq88A+5QPndbc6VtA+XgdExUbWu6E9X74I2EL7Eed+nzjnbR1tPbigcZI9
      DIZFTGwBC5X8af+93oWvmd6omnHSEQpnDbhQHvm3cEZm0fGK4yX9fvxk0Y9qGpKn3xK7PmYdJuAXbyPXFm24RTNIXi4rbwOWghBytt+3WC2ptubz44+X88b19
      gRzIBPKyGdayb99/Uj8xsYh90u2HcL/+J4nKn3J40VTRHckLvoD9r6x8mC/giFXYYN7Q0SKNtrRI9N7SnTX4klPVhNxolA=="}

    Signo hash

    1. Ingrese el siguiente comando para firmar el hash. Reemplazar MY-ACCESS-TOKENMY-CREDENTIAL-ID, MY-SADy MY-HASH con su información real:
      curl --location --request POST "https://cs.ssl.com/csc/v0/signatures/signHash" \ --header "Tipo de contenido: application / json" \ --header "Autorización: Portador MY- TOKEN-ACCESO "\ --data-raw" {\ "ID-credencial \": \ "MI-ID-CREDENCIAL \", \ "TRISTE \": \ "MI-TRISTE \", \ "hash \": [\ "MI-HASH \"], \ "signAlgo \": \ "1.2.840.113549.1.1.11 \"} "
    2. Debería recibir un objeto JSON que contenga su firma.
      {"signatures":["5CJUauF4WrLs6cc0c0xIVNpaWhjDZoQeRfsKEHhjDskHOrjPoxetOkaqg2wOsIVQiWzvN1fqbO1gG4UzZjU8IctsIPHUa9jU2KyZbWqLy
      bIuUl2k1Tondtp2wNszmwki1z/P5I/ff32TQDWkDiiF+RgPApC4vU8WifTfKMR+cG+2FwtYRuthtuvLoV1dgDSNob5T5tAYlnSjsgwPe9+q/L1v9grSGzre0+
      GgQQPBvN2f1KCkJ/bwJq7votwsncdxCshmPEHyXJTx2SaL9sUHOzwSB79WhOiO8R9nnCZuC90r45f3/6NNWpaUzy3/A9DZa8aHGsaKYsFsXTDQ3HUgxY=="]}

    Tipos de archivos admitidos para la firma de código eSigner

    Tipos de archivos de Microsoft Authenticode
    • acm
    • ax
    • papelera
    • cabina
    • CPL
    • DLL
    • drv
    • efi
    • exe
    • mui
    • ocx
    • scr
    • sis
    • cucharadita
    Tipos de archivos MSI
    • msi
    Tipos de archivo de secuencias de comandos de PowerShell
    • ps1
    • ps1xml
    Otros tipos de archivos de secuencias de comandos
    • js
    • vbs
    • wsf
    Tipos de archivos Java
    • tarro
    ¿No ve un tipo de archivo común que está intentando firmar y debería ser compatible? Por favor notifique a nuestro equipo al Support@SSL.com.

    Compartir en twitter
    Twitter
    Compartir en facebook
    Facebook
    Compartir en linkedin
    LinkedIn
    Compartir en Reddit
    Reddit
    Compartir en email
    Correo electrónico