Introduksjon til keytool
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 KURSET1. 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