Introduksjon til keytool

Java Top

Jeg kunngjorde nettopp det nye Lær våren kurs, med fokus på det grunnleggende i vår 5 og vårstøvel 2:

>> KONTROLLER KURSET

1. Oversikt

I denne korte opplæringen skal vi introdusere nøkkelverktøy kommando. Vi lærer å bruke nøkkelverktøy for å opprette et nytt sertifikat og sjekke informasjonen for det sertifikatet.

2. Hva er? nøkkelverktøy?

Java inkluderer nøkkelverktøy verktøy i sine utgivelser. Vi bruker det til få til nøkler og sertifikater og lagre dem i en nøkkelbutikk. De nøkkelverktøy kommandoen lar oss lage selvsignerte sertifikater og vise informasjon om nøkkelbutikken.

I de følgende avsnittene skal vi gjennomgå forskjellige funksjoner i dette verktøyet.

3. Opprette et selvsignert sertifikat

Først og fremst, la oss lage et selvsignert sertifikat som kan brukes til å etablere sikker kommunikasjon mellom prosjekter i vårt utviklingsmiljø, for eksempel.

For å generere sertifikatet, vi skal åpne en ledetekst og bruke nøkkelverktøy kommando med -genkeypair alternativ:

keytool -genkeypair -alias -keypass -validity -storepass 

La oss lære mer om hver av disse parametrene:

  • alias - navnet på sertifikatet vårt
  • tastatur - passordet til sertifikatet. Vi trenger dette passordet for å få tilgang til den private nøkkelen til sertifikatet vårt
  • gyldighet - tidspunktet (i dager) for gyldigheten av sertifikatet vårt
  • lagringsplass - passordet til nøkkelbutikken. Dette vil være passordet til nøkkelbutikken hvis butikken ikke eksisterer

La oss for eksempel generere et sertifikat som heter “Cert1” som har en privat nøkkel av “Pass123” og er gyldig i ett år. Vi vil også spesifisere “Stpass123” som nøkkeloppbevaringspassord:

keytool -genkeypair -alias cert1 -keypass pass123 -gyldighet 365 -storepass stpass123

Etter at kommandoen er utført, vil den be om litt informasjon som vi trenger å gi:

Hva er for- og etternavnet ditt? [Ukjent]: Navn Hva heter organisasjonsenheten din? [Ukjent]: Enhet Hva heter organisasjonen din? [Ukjent]: Firma Hva heter byen din eller lokaliteten din? [Ukjent]: By Hva heter staten eller provinsen din? [Ukjent]: Oppgi Hva er landskoden på to bokstaver for denne enheten? [Ukjent]: USA Er CN = navn, OU = enhet, O = selskap, L = by, ST = stat, C = USA riktig? [nei]: ja

Som nevnt, hvis vi ikke har opprettet nøkkelbutikken før, oppretter du dette sertifikatet automatisk.

Vi kan også utføre -genkeypair alternativ uten parametere. Hvis vi ikke gir dem på kommandolinjen og de er obligatoriske, blir vi bedt om det.

Merk at det generelt anbefales å ikke oppgi passordene (-keypass eller -storpass) på kommandolinjen i produksjonsmiljøer.

4. Oppføring av sertifikater i Keystore

Deretter skal vi lære hvordan se sertifikatene som er lagret i nøkkelbutikken vår. For dette formålet bruker vi -liste alternativ:

nøkkelverktøy -liste -storpass 

Utgangen for den utførte kommandoen viser sertifikatet vi har opprettet:

Keystore-type: JKS Keystore-leverandør: SUN Keystore inneholder 1 oppføring cert1, 02-ago-2020, PrivateKeyEntry, Certificate fingerprint (SHA1): 0B: 3F: 98: 2E: A4: F7: 33: 6E: C4: 2E: 29 : 72: A7: 17: E0: F5: 22: 45: 08: 2F

Hvis vi ønsker å få informasjon for et konkret sertifikat, vi trenger bare å inkludere -alias alternativ til vår kommando. For å få mer informasjon enn gitt som standard, legger vi også til -v (detaljert) alternativ:

keytool -list -v -alias -storepass 

Dette vil gi oss all informasjon relatert til det forespurte sertifikatet:

Aliasnavn: cert1 Opprettelsesdato: 02-ago-2020 Oppføringstype: PrivateKeyEntry Sertifikatkjedelengde: 1 Sertifikat [1]: Eier: CN = Navn, OU = Enhet, O = Firma, L = By, ST = Stat, C = Amerikansk utsteder: CN = Navn, OU = Enhet, O = Firma, L = By, ST = Stat, C = USA Serienummer: 11d34890 Gyldig fra: sø 02 aug 20:25:14 CEST 2020 til: man aug 02 20: 25:14 CEST 2021 Sertifikat fingeravtrykk: MD5: 16: F8: 9B: DF: 2C: 2F: 31: F0: 85: 9C: 70: C3: 56: 66: 59: 46 SHA1: 0B: 3F: 98: 2E : A4: F7: 33: 6E: C4: 2E: 29: 72: A7: 17: E0: F5: 22: 45: 08: 2F SHA256: 8C: B0: 39: 9F: A4: 43: E2: D1: 57: 4A: 6A: 97: E9: B1: 51: 38: 82: 0F: 07: F6: 9E: CE: A9: AB: 2E: 92: 52: 7A: 7E: 98: 2D: CA Signaturalgoritmnavn : SHA256withDSA Algoritme for offentlig nøkkel: 2048-biters DSA-nøkkel Versjon: 3 Utvidelser: # 1: ObjectId: 2.5.29.14 Criticality = false SubjectKeyIdentifier [KeyIdentifier [0000: A1 3E DD 9A FB C0 9F 5D B5 BE 2E EC E2 87 CD 45 .> .....] ....... E 0010: FE 0B D7 55 ... U]]

5. Andre funksjoner

Bortsett fra funksjonalitetene vi allerede har sett, er det mange tilleggsfunksjoner tilgjengelig i dette verktøyet.

For eksempel kan vi slett sertifikatet vi opprettet fra nøkkelbutikken:

nøkkelverktøy -delete -alias -storepass 

Et annet eksempel er at vi til og med vil være i stand til det endre aliaset til et sertifikat:

keytool -changealias -alias -destalias -keypass -storepass 

Til slutt, for å få mer informasjon om verktøyet, kan vi be om hjelp gjennom kommandolinjen:

nøkkelverktøy -hjelp

6. Konklusjon

I denne raske opplæringen har vi lært litt om nøkkelverktøy nytte. Vi har også lært å bruke noen grunnleggende funksjoner som er inkludert i dette verktøyet.

Java bunn

Jeg kunngjorde nettopp det nye Lær våren kurs, med fokus på det grunnleggende i vår 5 og vårstøvel 2:

>> KONTROLLER KURSET

$config[zx-auto] not found$config[zx-overlay] not found