Guide til Java-kodesignering

Denne vejledning får dig i gang med at underskrive din Java-kode med enten en OV / IV or EV kodesigneringscertifikat fra SSL.com. Disse instruktioner antager, at Java Development Kit (JDK) er installeret på din computer, og at keytool og jarsigner kommandoer er inkluderet i din PATH. Yubikey-kodesigneringsinstruktionerne antager, at dit certifikat er installeret i slot 9a i a YubiKey FIPS token, da de sendes af SSL.com.

Fra 1. juni 2023, SSL.com's organisationsvalidering (OV) og individuel validering (IV) kodesigneringscertifikater er blevet udstedt enten på Federal Information Processing Standard 140-2 (FIPS 140-2) USB-tokens eller gennem vores eSigner cloud-kodesigneringstjeneste. Denne ændring er i overensstemmelse med Certificate Authority/Browser (CA/B) Forums nye nøglelagringskrav for at øge sikkerheden for kodesigneringsnøgler.

Hvis du ikke har et kodesigneringscertifikat endnu og ikke er sikker på, hvilken type du har brug for, skal du læse denne ofte stillede spørgsmål.

SSL.com s OV / IV-kodesignering certifikater er en økonomisk måde at beskytte din kode mod uautoriseret manipulation og kompromis og er tilgængelige for så lidt som $ 64.50 pr.

BESTIL NU

OV/IV-kodesignering (kun for OV/IV-certifikater udstedt før 1. juni 2023)

Konfiguration

Metode 1: Generer CSR og PFX-fil i browseren

Den enkleste metode til hurtigt at komme i gang med Java-kodesignering er at generere en CSR og PFX-fil, når du henter dit certifikat fra SSL.com og installerer det i en ny Java-nøglelager.

Bemærk: Det er også muligt at underskrive din .jar filer direkte med en ikke-konverteret PFX-fil ved at tilføje -storetype pkcs12 flag til jarsigner kommando.
  1. Følg trinnene vist i Bestilling og hentning af kodesigneringscertifikater for at bestille dit certifikat og downloade en PFX-fil med dit certifikat og din private nøgle.
  2. Importer PFX til en ny keystore med den samme adgangskode ved hjælp af kommandoen nedenfor. (Erstatte MY-CERTIFICATE.p12 og MY-KEYSTORE.jks med det faktiske navn på din PFX-fil og det filnavn, du vil give din keystore. Bemærk også, at destalias er vilkårlig, og du kan muligvis bruge en anden aliasværdi, hvis det ønskes.)
    keytool -importkeystore -srckeystore MY-PFX.p12 -srcstoretype pkcs12 -srcalias 1 -destkeystore MY-KEYSTORE.jks -estestoretype JKS -destalier koder
    Bemærk: Værdien for -srcalias for PFX-filen, der downloades fra SSL.com, skal normalt være 1, men du kan bekræfte dette ved at køre kommandoen keytool -list -v -storetype pkcs12 -keystore MY-PFX.P12 og kontrol af den viste værdi for Alias name.
  3. Du bliver bedt om at angive en adgangskode til destinationsnøglebutikken og derefter om kildetastaturens adgangskode (adgangskoden, du indtastede, når du oprettede PFX). Du kan også se en advarsel, der begynder med Warning: The JKS keystore uses a proprietary format. Du kan muligvis ignorere denne meddelelse.

Metode 2: Generer nøglepar og CSR med Java

Hvis du foretrækker at generere dit nøglepar og CSR med Java, følg trinnene i dette afsnit. Processen er den samme, der bruges til at oprette en CSR for en SSL /TLS certifikat i Java.

Opret Keystore og Key Pair
  1. Først opretter vi et nøglelager og et offentligt / privat nøglepar. Java bruger filer med udvidelsen .jks (Java KeyStore) til lagring af certifikater og kryptografiske nøgler. Indtast følgende kommando for at generere en keystore og 3072-bit RSA-nøglepar. (Erstatte MY-KEYSTORE.jks med det navn, du gerne vil have filen til.)
    keytool -genkeypair -alias kodetegnelse -keyalg RSA -keysize 3072 -keystore MY-KEYSTORE.jks
  2. Du får præsenteret en række spørgsmål. Opret og bekræft først en adgangskode til keystore, indtast derefter og bekræft de ønskede oplysninger. (Udskift værdierne, der er vist i all-caps med dine egne oplysninger.)
    Indtast nøglelageradgangskode: Indtast ny adgangskode igen: Hvad er dit for- og efternavn? [Ukendt]: FIRSTNAME LASTNAME Hvad er navnet på din organisation? [Ukendt]: FIRMA Hvad er navnet på din by eller lokalitet? [Ukendt]: BY Hvad er navnet på din stat eller provins? [Ukendt]: STATE Hvad er landekoden på to bogstaver for denne enhed? [Ukendt]: US Er CN=FIRSTNAME LASTNAME, OU=DEPARTMENT, O=COMPANY, L=CITY, ST=STATE, C=US korrekt? [Nej Ja
  3. Keystore-filen er blevet genereret, og du er klar til at oprette en CSR.
Generer CSR
  1. Indtast følgende kommando for at generere en CSR fra keystore, vi lige har oprettet. (Erstatte MY-KEYSTORE.jks med den værdi, du brugte, da du oprettede tastaturet og MY-CSR.csr med det navn, du vil bruge til CSR.)
    keytool -certreq -alias kodetegnelse -fil MY-CSR.csr -keystore MY-KEYSTORE.jks
  2. Indtast det adgangskode, du oprettede, når du genererede keystore.
    Indtast keystore adgangskode:
  3. CSR er oprettet. Hvis du er klar til at bestille dit certifikat fra SSL.com, skal du åbne filen i en teksteditor for at kopiere og indsætte i CSR felt ved bestilling. Indholdet af filen ser ud som eksemplet nedenfor:
    -----BEGIN NEW CERTIFICATE REQUEST-----
    MIIC5TCCAc0CAQAwcDELMAkGA1UEBhMCVVMxDjAMBgNVBAgTBVNUQVRFMQ0wCwYD
    VQQHEwRDSVRZMRAwDgYDVQQKEwdDT01QQU5ZMRMwEQYDVQQLEwpERVBBUlRNRU5U
    MRswGQYDVQQDExJGSVJTVE5BTUUgTEFTVE5BTUUwggEiMA0GCSqGSIb3DQEBAQUA
    A4IBDwAwggEKAoIBAQCrRyk8VLs1THls+vfz0YtMJ3qYYl4c5c499d1YSbfQHa6L
    kIYhKTxvgdtbD+ePDigKB40CpeuMp5Yu8R6g2YIVBpGMrejAZYAmrzs6tfjpelh0
    ocSDwYr7H8qQ9jq6MfZTu6J7EjS5RMODB6MVq1usKg3H866xbi6lqAtcktEF+zlM
    4FW9Tm3H/DW2G7EnTjlMPzgaXNIU7lLar7YAWPJgv83NV8lQNCDW4lFlZLWBU95r
    YkJ4gfWUFUyPc+AiGbsyDdrVjPvF5yaebnFDrwheFaWeTTigSfLY688G7bpA8VvE
    lKioCl8nlJlc9HOBNKKdhs4qEtF0BwSE8tOgbkWPAgMBAAGgMDAuBgkqhkiG9w0B
    CQ4xITAfMB0GA1UdDgQWBBTmVpJp824krUaJKrQNhsSbVjJA1jANBgkqhkiG9w0B
    AQsFAAOCAQEALlux89RkXyHN4PQqQHbShSeTTWLURII+F+OSK9N1RS5l8V7AMcRM
    wvOkPP7JBRCKiaFGTW+5vcLQNnWRqQZMe0I4E0jzhL2gGsdChPIJy9Jwgn3Rzxmw
    8V0lBY1SHQ9LKgSK0jIer3PQhXHDJlE2g2Dx8nJ4WJk7l2OTF9Kkly9hg8MOQdeg
    VIcs3HLsVI9Cwd6UHRT6ruKL3+bRgEcb6qj+qcrKHkzN7KXbOEznd10nAm87wENS
    mTb012ZFMlpUDvPNAHQgoGJ6slA+pIoH1fvrkosjql7R/H7Q+onm37Qa6d9L2ZqM
    MhgNpNWVwI0UBU4Xy4p9oUCJnvHhQ7U+3w==
    -----END NEW CERTIFICATE REQUEST-----
Bestil og hent certifikat
  1. Følg trinnene vist i Bestilling og hentning af kodesigneringscertifikater gennem trin 24. I stedet for straks at klikke på Generer certifikat , markér afkrydsningsfeltet Jeg har min egen CSR.
    Jeg har min egen CSR
  2. Indsæt din CSR i formularfeltet, og klik på Generer certifikat .
    pasta CSR og generere certifikat
  3. Klik på knappen Hent knappen og gem .crt fil samme sted, som du genererede din keystore.
    Hent
Importer certifikat til Keystore
  1. Brug følgende kommando til at importere certifikatet til din Java keystore-fil. (Udskift MY-CERTIFICATE.crt og MY-KEYSTORE.jks med de faktiske filnavne.)
    keytool -importcert -fil MY-CERTIFICATE.crt -keystore MY-KEYSTORE.jks -trustcacerts -alias codeigning
  2. Indtast adgangskoden til keystore, når du bliver bedt om det.
    Indtast keystore adgangskode:  
  3. Dit certifikat er installeret i keystore, og du er klar til at begynde at signere filer.
    Certifikatsvar blev installeret i keystore

Signer filer med Jarsigner

  1. Brug følgende kommando til at tilføje en tidsstemplet digital signatur til a .jar fil. (Erstatte /PATH/TO/MY-KEYSTORE.jks og MY-JAR.jar med de faktiske filnavne, du bruger. Hvis du brugte et andet alias, når du opsatte din keystore, skal du erstatte den codesigning i kommandoen.)
    jarsigner -tsa http://ts.ssl.com -keystore MY-KEYSTORE.jks MY-JAR.jar codeigning
    Bemærk: Det er også muligt at underskrive din .jar filer direkte med en ikke-konverteret PFX-fil ved at tilføje -storetype pkcs12 flag til jarsigner kommando.

    Bemærk: Som standard understøtter SSL.com tidsstempler fra ECDSA-nøgler.

    Hvis du støder på denne fejl: The timestamp certificate does not meet a minimum public key length requirement, bør du kontakte din softwareleverandør for at tillade tidsstempler fra ECDSA-nøgler.

    Hvis der ikke er nogen måde for din softwareleverandør at tillade det normale slutpunkt at blive brugt, kan du bruge dette ældre slutpunkt http://ts.ssl.com/legacy for at få et tidsstempel fra en RSA Timestamping Unit.
  2. Indtast keystore-adgangskoden, når du bliver bedt om det.
    Angiv adgangssætning for keystore: 
  3. Filen er nu underskrevet. Du kan bekræfte signaturen med følgende kommando:
    jarsigner-verificere -verbose MY-JAR.jar
  4. Hvis din fil blev underskrevet, skal kommandoens output indeholde denne linje:
    s = signatur blev verificeret
    

 

IV-, OV- og EV-kodesignering med YubiKey

SSL.com s EV-kode underskrift certifikater tilbyder Windows 10 kerne-tilstand kodesignering og en øjeblikkelig SmartScreen omdømme boost, alt sammen til så lavt som $ 240.00 pr. De leveres sikkert YubiKey FIPS USB-tokens med tofaktorautentisering.

BESTIL NU

Konfiguration

Installer PKCS # 11 Driver og Opret eToken.cfg fil

Windows
  1. Installer OpenSC ved at følge instruktionerne i OpenSC Windows hurtigstart.
  2. Find OpenSC PKCS # 11-driveren. Standardinstallationsplaceringen er C:\Program Files\OpenSC Project\OpenSC\pkcs11\opensc-pkcs11.dll.
  3. Opret en konfigurationsfil og gem den på et praktisk sted (som dit hjemmekatalog). Filnavnet er vilkårligt, men i denne vejledning vil vi bruge yubikey-pkcs11-java.cfg. Filen skal indeholde følgende oplysninger:
    name = OpenSC-PKCS11 beskrivelse = SunPKCS11 via OpenSC bibliotek = C: \ Program Files \ OpenSC Project \ OpenSC \ pkcs11 \ opensc-pkcs11.dll slotListIndex = 0
MacOS
  1. Installer OpenSC. Hvis du bruger homebrew som pakkeadministrator kan du installere OpenSC med følgende kommando:
    bryg installation opensc
  2. Find OpenSC PKCS # 11-driveren. Hvis du installerede ved hjælp af Homebrew, skal filen være tilgængelig på /usr/local/lib/opensc-pkcs11.so.
  3. Opret en konfigurationsfil og gem den på et praktisk sted (som dit hjemmekatalog). Filnavnet er vilkårligt, men i denne vejledning vil vi bruge yubikey-pkcs11-java.cfg. Filen skal indeholde følgende oplysninger:
    navn = OpenSC-PKCS11 beskrivelse = SunPKCS11 via OpenSC bibliotek = /usr/local/lib/opensc-pkcs11.so slotListIndex = 0

Signer filer med Jarsigner

  1. Brug følgende kommando til at tilføje en tidsstemplet digital signatur til a .jar fil. (Erstatte MY-JAR.jar med det aktuelle filnavn, du bruger.)
    jarsigner -tsa http://ts.ssl.com -providerClass sun.security.pkcs11.SunPKCS11 -providerArg yubikey-pkcs11-java.cfg -keystore INGEN -storetype PKCS11 MY-JAR.jar "Certificate for PIV Authentication"
  2. Indtast din YubiKey-PIN-kode ved hjælp af adgangsfrase-prompten.
    Angiv adgangssætning for keystore: 
  3. Filen er nu underskrevet. Du kan bekræfte signaturen med følgende kommando:
    jarsigner-verificere -verbose MY-JAR.jar
  4. Hvis din fil blev underskrevet, skal kommandoens output indeholde denne linje:
    s = signatur blev verificeret
    
Tak for at du valgte SSL.com! Hvis du har spørgsmål, bedes du kontakte os via e-mail på Support@SSL.com, opkald 1-877-SSL-SECURE, eller bare klik på chatlinket nederst til højre på denne side. Du kan også finde svar på mange almindelige supportspørgsmål i vores vidensbase.

 

Twitter
Facebook
LinkedIn
Reddit
E-mail

Hold dig informeret og sikker

SSL.com er en global leder inden for cybersikkerhed, PKI og digitale certifikater. Tilmeld dig for at modtage de seneste industrinyheder, tips og produktmeddelelser fra SSL.com.

Vi vil meget gerne have din feedback

Tag vores undersøgelse og fortæl os dine tanker om dit seneste køb.