Frequently Asked Questions

Other Languages: Dansk Deutsch Ελληνικά English Español Suomi Français Italiano Nederlands Polski Português - Brasil Português - Portugal Русский Svenska Türkçe Українська Chinese Taiwan Chinese

Java-Kodesignering: Generere en CSR

Print this Article
Last Updated: February 2, 2015 12:52 PM

Fra og med januar 2014 krever alle Java-programmer som kjører i nettlesere kodesigneringssertifikater. Etter at du har kjøpt et kodesigneringssertifikat, må du signere Java-koden din.

Flere verktøy er nødvendig for å pakke og signere Java-koden, inkludert keytool, jar og jarsigner. Fra og med JDK 5.0, kan jarsigner generere signaturer som inkluderer et tidsstempel, slik at validering av JAR-filen ble inngått mens kodesigneringssertifikatet fremdeles var gyldig.

Tilnærming 1 - be om et nytt kodesigneringssertifikat

  1. Hvis nødvendig, last ned JDK fra følgende kobling:
    http://java.sun.com/javase/downloads/index.jsp
  2. Be om et kodesigneringssertifikat fra Starfield Technologies
    • Opprette et nytt nøkkellager. Et nøkkellager er et sted hvor sikre sertifikater lagres. Dette eksempelet vil opprette et egendefinert nøkkellager kalt "codesignstore" som bare skal brukes for et kodesigneringssertifikat og den tilhørende private nøkkelen.
      keytool -genkey -alias codesigncert -keypass -keyalg RSA -keysize 2048 -dname "CN=displayname,O=companyname,C=US,ST=state,L=city" -keystore codesignstore -storepass
    • Opprette en forespørsel om sertifikatsignering (CSR). En privat nøkkel vil bli opprettet og lagret i nøkkellageret som heter "codesignstore". EN CSR-fil som kalles "mycsr.pem" vil bli opprettet i den gjeldende arbeidskatalogen.
      keytool -certreq -v -alias codesigncert -file mycsr.pem -keystore codesignstore
    • Kjøpe et kodesigneringsertifikat.
    • Klikk på kreditten for det innkjøpte kodesigneringssertifikatet i "Min konto". Dette vil ta deg til Starfield -nettapplikasjonen for kontoadministrasjon av tjenester for sikre sertifikater. CSR-genereringsmetoden må være satt til manuell på forespørselsskjemaet for at CSR-feltet skal være synlig.
    • Send CSR som en del av kodesigneringsforespørselen.
      • Etter å ha åpnet filen "mycsr.pem" i et redigeringsprogram, kopierer og limer du inn hele innholdet av filen (inkludert linjene som inneholder BEGIN NEW CERTIFICATE REQUEST" og "END NEW CERTIFICATE REQUEST") i den aktuelle delen av kodesigneringsskjemaet.
    • Bedriftsinformasjonen som du har fremlagt vil bli bekreftet. Registreringsmyndighetene kan ta kontakt med deg for å be om ytterligere informasjon, om nødvendig.
    • Når kodesigneringssertifikater har blitt utstedt, vil du motta en e-postmelding med en kobling for å laste ned sertifikatfilen og eventuelle tilhørende mellomliggende sertifikater.
  3. Plasser kodesigneringssertifikatet i det samme kodelageret som ble opprettet tidligere. Følgende eksempel antar at kodesigneringssertifikat-filen blir kalt "mycert.cer". Sertifikatfilen forventes å ligge i den gjeldende arbeidsmappen og i PKCS#7-format.
    keytool -import -trustcacerts -keystore codesignstore -storepass -alias codesigncert -file mycert.cer
  4. Signer JAR-filen ved hjelp av jarsigner og bruk kodesigneringssertifikatet og den private nøkkelen
    jarsigner -verbose -keystore codesignstore -storepass -keypass myapp.jar codesigncert
    • "Codesignstore" er et alias til nøkkellageret hvor kodesigneringssertifikatet, den private nøkkelen og alle andre sertifikater i kjeden finnes.
    • Det usignerte inndatafilnavnet er "myapp.jar" og vil bli overskrevet med den signerte versjonen av filen. Bruk "-signedjar"-alternativet til å angi separate inndata- og utdatafilnavn.
    • "Codesigncert" er et alias til den private nøkkelen i nøkkellageret.
    Følgende eksempel legger til tidsangivelsealternativer til samme eksempel som presentert over.
    jarsigner -verbose -keystore codesignstore -storepass -keypass -tsa http://tsa.starfieldtech.com/ myapp.jar codesigncert
  5. Kontroller den signerte JAR-filen
    jarsigner -verify -verbose -certs myapp.jar
  6. Distribuere koden

Tilnærming 2 - Bruk eksisterende PKCS#12-fil, som inneholder både kodesigneringssertifikat og privat nøkkel

  1. Hvis nødvendig, last ned JDK fra følgende kobling:
    http://java.sun.com/javase/downloads/index.jsp
  2. Kontroller at PFX/P12-filen kan brukes med jarsigner. Utfør følgende kommando, alias-navnet som kreves i trinn 5 vises nær toppen av utdataene:
    keytool -list -storetype pkcs12 -keystore mycert.pfx -v
  3. Opprette en JAR-fil fra Java-klassefiler, ved bruk av jar-verktøyet:
    jar cvf myapp.jar myapp.class
  4. Signere JAR-filen ved hjelp av jarsigner, bruk kodesigneringssertifikatet og den private nøkkelen:
    jarsigner -storetype pkcs12 -keystore mycert.pfx myapp.jar "aliasname"
    • "mycert.pfx" er den fullstendig banen til PFX/P12-filen som inneholder kodesigneringssertifikatet og den private nøkkelen. Filen skal også inkludere alle mellomliggende sertifikater.
    • "Aliasname" vises i utdata for trinn 2, nær toppen. Hvis PFX/P12-filen ble eksportert fra Windows, vil alias-navnet i realiteten være en GUID.
    • Når du blir bedt om det, oppgir du passordet knyttet til den private nøkkelen i PFX/P12-filen. Du kan også inkludere "-storepass"-alternativet til å angi passord i kommandolinjen.
    • Det usignerte inndatafilnavnet er "myapp.jar" og vil bli overskrevet med den signerte versjonen av filen. Bruk "-signedjar"-alternativet til å angi separate inndata- og utdatafilnavn.
    Følgende eksempel legger til tidsangivelsealternativer til samme eksempel som presentert over:
    jarsigner -storetype pkcs12 -keystore mycert.pfx -tsa http://tsa.starfieldtech.com/ myapp.jar "aliasname"
  5. Kontroller den signerte JAR-filen
    jarsigner -verify -verbose -certs myapp.jar
  6. Distribuere koden

Lenker